From 5d5fd14fbb610c988e00b22a7a4585c75b04309d Mon Sep 17 00:00:00 2001 From: drgorillamd <83670532+drgorillamd@users.noreply.github.com> Date: Tue, 29 Oct 2024 11:18:30 +0100 Subject: [PATCH 01/28] chore: properties md update --- test/invariants/PROPERTIES.md | 66 ++++++++++++++++++++++++++++++++--- 1 file changed, 62 insertions(+), 4 deletions(-) diff --git a/test/invariants/PROPERTIES.md b/test/invariants/PROPERTIES.md index e48439c..2bd0601 100644 --- a/test/invariants/PROPERTIES.md +++ b/test/invariants/PROPERTIES.md @@ -1,4 +1,62 @@ -| Properties | Type | -|---------------------------------------------------|------------| -| Greeting should never be empty | Valid state | -| Only the owner can set the greeting | State transition | \ No newline at end of file +# Properties + +## Principles +Precondition for proposing/disputing: stake(token) and provision on Horizon staking contract + +Prophet modules in use (some modified from the example repo): +- request: eboRequestCreator -> eboRequestModule +- response: bondedResponseModule +- dispute: bondedDisputeEscalationModule (claimEscalationReward tries to slash, if revert oog (too many users), then has new fn `slash()` is called) +- resolution: arbitratorModule + ArbitratorContract (receive resolution, then calls resolveDispute and tries to finalize) +- finality: eboFinalityModule (emit event and check if request created via eboRequestCreator) +- AccessControl: every external function is gated, for Horizon operators (ie `caller` is either msg.sender or msg.sender is authorized as +operator for `caller`) + + +- Requester + - Can always create a request + - only one chainId/epoch can be requested at a time (a tuple can have second request if finalized without answer) + +- Proposer + - Can always send answer before the deadline if enough token to bound in Horizon staking contract AND if any previous response is disputed OR no response at all + - Can escalate MAX ESCALATION times + - Every escalation creates a new tying buffer for further escalation (even if past deadline) + +- Disputer + - Can always dispute if before finalisation/during dispute window, if enough token to bound in Horizon staking and not previously disputed + - only first disputed response is escalated (others go to resolution) + - Can escalate MAX ESCALATION times + - every escalation creates a new tying buffer for further escalation (even if past deadline) + +- Pledgers: + - can pledge on any active dispute or resolution, during tying buffer/before deadline, if it’s that side’s turn + - Can only pledge one pledge at a time (you can only surpass other team by one pledge at a time), first to tie then to out-pledge (always 2 ties by side) + +- Protocol + - finalise only after deadline + - no possible way for a given actor to use another one’s bonded token (no bonding or pledging/claiming on behalf of someone else if not allowed in the Horison staking contract) + - bonded amount only accessible by one requestId + - disputeId and responseId can only be tied to a given requestId + - arbitrator: can always settled a dispute if not finalised (can be a no resolution) + + +- disputer + +wins → his money + proposer bonded amt +loose loose all +no resolution his money (when no pledging or max escalation on both side or other resolution module logic if only dispute module) + +- pledger +wins → their money + enemy +no resolution -> their money + +**winning determined by *pledger*s (b, c)** + +bonded dispute goes to resolution if: escalateDispute or tie + +## Properties & Invariants + +| Id | Properties | Type | +|----|---------------------------------------------------|------------| + +## Handler coverage From 3b777150842063c9afe621174f408a92a3abf3c4 Mon Sep 17 00:00:00 2001 From: drgorillamd <83670532+drgorillamd@users.noreply.github.com> Date: Sun, 10 Nov 2024 23:03:23 +0100 Subject: [PATCH 02/28] test(medusa): handlers and working setup --- test/invariants/FuzzTest.t.sol | 10 + test/invariants/PROPERTIES.md | 95 +++++++- test/invariants/Setup.t.sol | 208 ++++++++++++++++++ test/invariants/handlers/BaseHandler.t.sol | 79 +++++++ .../handlers/HandlerArbitrable.t.sol | 25 +++ .../HandlerBondEscalationModule.t.sol | 92 ++++++++ .../HandlerBondedResponseModule.t.sol | 56 +++++ .../handlers/HandlerCouncilArbitrator.t.sol | 37 ++++ .../handlers/HandlerEBOFinalityModule.t.sol | 46 ++++ .../handlers/HandlerEBORequestCreator.t.sol | 91 ++++++++ .../handlers/HandlerEBORequestModule.t.sol | 16 ++ .../HandlerHorizonAccountingExtension.t.sol | 128 +++++++++++ test/invariants/handlers/HandlerOracle.t.sol | 150 +++++++++++++ test/invariants/handlers/HandlerParent.t.sol | 28 +++ test/invariants/helpers/Actors.t.sol | 25 +++ test/invariants/helpers/FuzzERC20.sol | 32 +++ test/invariants/helpers/IStdCheats.sol | 88 ++++++++ .../invariants/helpers/MockEpochManager.t.sol | 14 ++ .../helpers/MockHorizonStaking.t.sol | 44 ++++ test/invariants/helpers/Utils.t.sol | 90 ++++++++ test/invariants/properties/PropertyA.t.sol | 9 + .../properties/PropertyParent.t.sol | 9 + yarn.lock | 4 +- 23 files changed, 1371 insertions(+), 5 deletions(-) create mode 100644 test/invariants/FuzzTest.t.sol create mode 100644 test/invariants/Setup.t.sol create mode 100644 test/invariants/handlers/BaseHandler.t.sol create mode 100644 test/invariants/handlers/HandlerArbitrable.t.sol create mode 100644 test/invariants/handlers/HandlerBondEscalationModule.t.sol create mode 100644 test/invariants/handlers/HandlerBondedResponseModule.t.sol create mode 100644 test/invariants/handlers/HandlerCouncilArbitrator.t.sol create mode 100644 test/invariants/handlers/HandlerEBOFinalityModule.t.sol create mode 100644 test/invariants/handlers/HandlerEBORequestCreator.t.sol create mode 100644 test/invariants/handlers/HandlerEBORequestModule.t.sol create mode 100644 test/invariants/handlers/HandlerHorizonAccountingExtension.t.sol create mode 100644 test/invariants/handlers/HandlerOracle.t.sol create mode 100644 test/invariants/handlers/HandlerParent.t.sol create mode 100644 test/invariants/helpers/Actors.t.sol create mode 100644 test/invariants/helpers/FuzzERC20.sol create mode 100644 test/invariants/helpers/IStdCheats.sol create mode 100644 test/invariants/helpers/MockEpochManager.t.sol create mode 100644 test/invariants/helpers/MockHorizonStaking.t.sol create mode 100644 test/invariants/helpers/Utils.t.sol create mode 100644 test/invariants/properties/PropertyA.t.sol create mode 100644 test/invariants/properties/PropertyParent.t.sol diff --git a/test/invariants/FuzzTest.t.sol b/test/invariants/FuzzTest.t.sol new file mode 100644 index 0000000..c1fe413 --- /dev/null +++ b/test/invariants/FuzzTest.t.sol @@ -0,0 +1,10 @@ +// SPDX-License-Identifier: MIT +pragma solidity 0.8.26; + +import {PropertyParent} from './properties/PropertyParent.t.sol'; + +contract FuzzTest is PropertyParent { + function test_debug() public { + assert(true); + } +} diff --git a/test/invariants/PROPERTIES.md b/test/invariants/PROPERTIES.md index 2bd0601..b643240 100644 --- a/test/invariants/PROPERTIES.md +++ b/test/invariants/PROPERTIES.md @@ -50,13 +50,102 @@ no resolution his money (when no pledging or max escalation on both side or othe wins → their money + enemy no resolution -> their money -**winning determined by *pledger*s (b, c)** +**winning determined by *pledgers* (b, c)** bonded dispute goes to resolution if: escalateDispute or tie ## Properties & Invariants -| Id | Properties | Type | -|----|---------------------------------------------------|------------| +| Id | Properties | Type | +| --- | ---------- | ---- | ## Handler coverage + +EBORequestCreator +| Function | Handler | +| ---------------------------------------------------------------------- | ------- | +| createRequest(uint256,string) | [] | +| addChain(string) | [] | +| removeChain(string) | [] | +| setRequestModuleData(address,IEBORequestModule.RequestParameters) | [] | +| setResponseModuleData(address,IBondedResponseModule.RequestParameters) | [] | +| setDisputeModuleData(address,IBondEscalationModule.RequestParameters) | [] | +| setResolutionModuleData(address,IArbitratorModule.RequestParameters) | [] | +| setFinalityModuleData(address) | [] | +| setEpochManager(IEpochManager) | [] | + +EBORequestModule +| Function | Handler | +| ------------------------------------------- | ------- | +| createRequest(bytes32,bytes,address) | [] | +| addEBORequestCreator(IEBORequestCreator) | [] | +| removeEBORequestCreator(IEBORequestCreator) | [] | + +BondedResponseModule +| Function | Handler | +| ----------------------------------------------------------- | ------- | +| propose(IOracle.Request,IOracle.Response,address) | [] | +| finalizeRequest(IOracle.Request,IOracle.Response,address) | [] | +| releaseUnutilizedResponse(IOracle.Request,IOracle.Response) | [] | + +BondEscalationModule +| Function | Handler | +| ------------------------------------------------------------------------------- | ------- | +| disputeResponse(IOracle.Request,IOracle.Response,IOracle.Dispute) | [] | +| onDisputeStatusChange(bytes32,IOracle.Request,IOracle.Response,IOracle.Dispute) | [] | +| pledgeForDispute(IOracle.Request, IOracle.Dispute) | [] | +| pledgeAgainstDispute(IOracle.Request, IOracle.Dispute) | [] | +| settleBondEscalation(IOracle.Request,IOracle.Response,IOracle.Dispute) | [] | + +CouncilArbitrator +| Function | Handler | +| --------------------------------------------------------- | ------- | +| resolve(IOracle.Request,IOracle.Response,IOracle.Dispute) | [] | +| arbitrateDispute(bytes32,IOracle.DisputeStatus) | [] | + +EBOFinalityModule +| Function | Handler | +| --------------------------------------------------------- | ------- | +| finalizeRequest(IOracle.Request,IOracle.Response,address) | [] | +| amendEpoch(uint256,string[],uint256[]) | [] | +| addEBORequestCreator(IEBORequestCreator) | [] | +| removeEBORequestCreator(IEBORequestCreator) | [] | + +HorizonAccountingExtension +| Function | Handler | +| ------------------------------------------------------------------------------ | ------- | +| approveModule(address) | [] | +| revokeModule(address) | [] | +| pledge(address,IOracle.Request,IOracle.Dispute,IERC20,uint256) | [] | +| onSettleBondEscalation(IOracle.Request,IOracle.Dispute,IERC20,uint256,uint256) | [] | +| claimEscalationReward(bytes32,address) | [] | +| pay(bytes32,address,address,IERC20,uint256) | [] | +| bond(address,bytes32,IERC20,uint256) | [] | +| bond(address,bytes32,IERC20,uint256,address) | [] | +| release(address,bytes32,IERC20,uint256) | [] | +| slash(bytes32,uint256,uint256) | [] | +| setMaxUsersToCheck(uint128) | [] | + +Arbitrable +| Function | Handler | +| --------------------------- | ------- | +| arbitrator() | [] | +| council() | [] | +| pendingCouncil() | [] | +| validateArbitrator(address) | [] | +| setArbitrator(address) | [] | +| setPendingCouncil(address) | [] | +| confirmCouncil() | [] | + +Oracle +| Function | Handler | +| -------------------------------------------------------------------- | ------- | +| createRequest(Request,bytes32) external returns (bytes32) | [] | +| createRequests(Request[],bytes32[]) external returns (bytes32[]) | [] | +| listRequestIds(uint256,uint256) external view returns (bytes32[]) | [] | +| proposeResponse(Request,Response) external returns (bytes32) | [] | +| disputeResponse(Request,Response,Dispute) external returns (bytes32) | [] | +| escalateDispute(Request,Response,Dispute) external | [] | +| resolveDispute(Request,Response,Dispute) external | [] | +| updateDisputeStatus(Request,Response,Dispute,DisputeStatus) external | [] | +| finalize(Request,Response) external | [] | diff --git a/test/invariants/Setup.t.sol b/test/invariants/Setup.t.sol new file mode 100644 index 0000000..5d8a97d --- /dev/null +++ b/test/invariants/Setup.t.sol @@ -0,0 +1,208 @@ +// SPDX-License-Identifier: MIT +pragma solidity 0.8.26; + +import {ValidatorLib} from '@defi-wonderland/prophet-core/solidity/libraries/ValidatorLib.sol'; + +import { + BondEscalationModule, + IBondEscalationModule +} from '@defi-wonderland/prophet-modules/solidity/contracts/modules/dispute/BondEscalationModule.sol'; + +import { + ArbitratorModule, + IArbitratorModule +} from '@defi-wonderland/prophet-modules/solidity/contracts/modules/resolution/ArbitratorModule.sol'; +import { + BondedResponseModule, + IBondedResponseModule +} from '@defi-wonderland/prophet-modules/solidity/contracts/modules/response/BondedResponseModule.sol'; +import {IArbitrator} from '@defi-wonderland/prophet-modules/solidity/interfaces/IArbitrator.sol'; +import {IAccountingExtension} from + '@defi-wonderland/prophet-modules/solidity/interfaces/extensions/IAccountingExtension.sol'; +import {IBondEscalationAccounting} from + '@defi-wonderland/prophet-modules/solidity/interfaces/extensions/IBondEscalationAccounting.sol'; + +import {IArbitrable, IArbitratorModule, ICouncilArbitrator, IOracle} from 'interfaces/ICouncilArbitrator.sol'; + +import {Utils} from './helpers/Utils.t.sol'; + +import {IEBOFinalityModule} from 'interfaces/IEBOFinalityModule.sol'; +import {IEBORequestModule} from 'interfaces/IEBORequestModule.sol'; + +import {IEpochManager} from 'interfaces/external/IEpochManager.sol'; +import {IHorizonStaking} from 'interfaces/external/IHorizonStaking.sol'; + +import {FuzzERC20, IERC20} from './helpers/FuzzERC20.sol'; + +import {IOracle, Oracle} from '@defi-wonderland/prophet-core/solidity/contracts/Oracle.sol'; + +import {BondEscalationModule} from + '@defi-wonderland/prophet-modules/solidity/contracts/modules/dispute/BondEscalationModule.sol'; +import {BondedResponseModule} from + '@defi-wonderland/prophet-modules/solidity/contracts/modules/response/BondedResponseModule.sol'; + +import {Arbitrable} from 'contracts/Arbitrable.sol'; +import {CouncilArbitrator} from 'contracts/CouncilArbitrator.sol'; +import {EBOFinalityModule} from 'contracts/EBOFinalityModule.sol'; +import {EBORequestCreator, IEBORequestCreator} from 'contracts/EBORequestCreator.sol'; +import {EBORequestModule} from 'contracts/EBORequestModule.sol'; + +import {HorizonAccountingExtension} from 'contracts/HorizonAccountingExtension.sol'; + +import {MockEpochManager} from './helpers/MockEpochManager.t.sol'; +import {MockHorizonStaking} from './helpers/MockHorizonStaking.t.sol'; + +contract Setup is Utils { + // Core contracts + Oracle internal oracle; + EBORequestCreator internal eboRequestCreator; + EBORequestModule internal eboRequestModule; + BondedResponseModule internal bondedResponseModule; + BondEscalationModule internal bondEscalationModule; + CouncilArbitrator internal councilArbitrator; + EBOFinalityModule internal eboFinalityModule; + Arbitrable internal arbitrable; + HorizonAccountingExtension internal horizonAccountingExtension; + ArbitratorModule internal arbitratorModule; + + // External contracts (mocked) + IHorizonStaking internal horizonStaking; + IERC20 internal GRT; + IEpochManager internal epochManager; + + // Constants + uint256 internal constant START_EPOCH = 1000; + uint64 internal constant MIN_THAWING_PERIOD = 1 days; + uint128 internal constant INITIAL_MAX_USERS_TO_CHECK = 10; + uint32 internal constant MAX_VERIFIER_CUT = 1_000_000; + + uint256 internal constant PAYMENT_AMOUNT = 0 ether; + + uint256 internal constant RESPONSE_BOND_SIZE = 0.5 ether; + uint256 internal constant RESPONSE_DEADLINE = 5 days; + uint256 internal constant RESPONSE_DISPUTE_WINDOW = 1 weeks; + + uint256 internal constant DISPUTE_BOND_SIZE = 0.3 ether; + uint256 internal constant MAX_NB_ESCALATION = 2; + uint256 internal constant DISPUTE_DEADLINE = 10 days; + uint256 internal constant TYING_BUFFER = 3 days; + uint256 internal constant DISPUTE_DISPUTE_WINDOW = 2 weeks; + + constructor() { + // Deploy mock contracts + GRT = IERC20(address(new FuzzERC20())); + epochManager = IEpochManager(address(new MockEpochManager(START_EPOCH))); + horizonStaking = IHorizonStaking(address(new MockHorizonStaking(GRT))); + + // Deploy core contracts + arbitrable = new Arbitrable( + address(this), // Initial arbitrator + address(this) // Initial council + ); + + oracle = new Oracle(); + + eboRequestModule = new EBORequestModule( + oracle, + EBORequestCreator(address(0)), //eboRequestCreator will be set after creation + arbitrable + ); + + bondedResponseModule = new BondedResponseModule(oracle); + + bondEscalationModule = new BondEscalationModule(oracle); + + arbitratorModule = new ArbitratorModule(oracle); + + councilArbitrator = new CouncilArbitrator(arbitratorModule, arbitrable); + + eboFinalityModule = new EBOFinalityModule( + oracle, + EBORequestCreator(address(0)), // Will be set after creation + arbitrable + ); + + // Set up accounting extension + address[] memory authorizedCallers = new address[](1); + authorizedCallers[0] = address(bondEscalationModule); + + horizonAccountingExtension = new HorizonAccountingExtension( + horizonStaking, oracle, GRT, arbitrable, MIN_THAWING_PERIOD, INITIAL_MAX_USERS_TO_CHECK, authorizedCallers + ); + + // Create EBO request creator with initial parameters + IOracle.Request memory initialRequest = IOracle.Request({ + requestModule: address(eboRequestModule), + responseModule: address(bondedResponseModule), + disputeModule: address(bondEscalationModule), + resolutionModule: address(arbitratorModule), + finalityModule: address(eboFinalityModule), + requester: address(0), // Will be set to eboRequestCreator's address + requestModuleData: '', + responseModuleData: '', + disputeModuleData: '', + resolutionModuleData: '', + finalityModuleData: '', + nonce: 0 + }); + + eboRequestCreator = new EBORequestCreator(oracle, epochManager, arbitrable, initialRequest); + + // Initialize modules with eboRequestCreator + eboRequestModule.addEBORequestCreator(eboRequestCreator); + eboFinalityModule.addEBORequestCreator(eboRequestCreator); + + // Set up module permissions + horizonAccountingExtension.approveModule(address(bondedResponseModule)); + horizonAccountingExtension.approveModule(address(bondEscalationModule)); + + // Set up initial chain IDs + eboRequestCreator.addChain('mainnet'); + eboRequestCreator.addChain('optimism'); + eboRequestCreator.addChain('arbitrum'); + + // Set up initial module parameters + _setupModuleParameters(); + } + + function _setupModuleParameters() internal { + // Set up request module parameters + IEBORequestModule.RequestParameters memory requestParams = IEBORequestModule.RequestParameters({ + epoch: START_EPOCH, + chainId: 'mainnet', + accountingExtension: IAccountingExtension(address(horizonAccountingExtension)), + paymentAmount: PAYMENT_AMOUNT + }); + eboRequestCreator.setRequestModuleData(address(eboRequestModule), requestParams); + + // Set up response module parameters + IBondedResponseModule.RequestParameters memory responseParams = IBondedResponseModule.RequestParameters({ + accountingExtension: IAccountingExtension(address(horizonAccountingExtension)), + bondToken: GRT, + bondSize: RESPONSE_BOND_SIZE, + deadline: RESPONSE_DEADLINE, + disputeWindow: RESPONSE_DISPUTE_WINDOW + }); + eboRequestCreator.setResponseModuleData(address(bondedResponseModule), responseParams); + + // Set up dispute module parameters + IBondEscalationModule.RequestParameters memory disputeParams = IBondEscalationModule.RequestParameters({ + accountingExtension: IBondEscalationAccounting(address(horizonAccountingExtension)), + bondToken: GRT, + bondSize: DISPUTE_BOND_SIZE, + maxNumberOfEscalations: MAX_NB_ESCALATION, + bondEscalationDeadline: DISPUTE_DEADLINE, + tyingBuffer: TYING_BUFFER, + disputeWindow: DISPUTE_DISPUTE_WINDOW + }); + eboRequestCreator.setDisputeModuleData(address(bondEscalationModule), disputeParams); + + // Set up resolution module parameters + IArbitratorModule.RequestParameters memory resolutionParams = + IArbitratorModule.RequestParameters({arbitrator: address(councilArbitrator)}); + eboRequestCreator.setResolutionModuleData(address(arbitratorModule), resolutionParams); + + // Set finality module + eboRequestCreator.setFinalityModuleData(address(eboFinalityModule)); + } +} diff --git a/test/invariants/handlers/BaseHandler.t.sol b/test/invariants/handlers/BaseHandler.t.sol new file mode 100644 index 0000000..51301fd --- /dev/null +++ b/test/invariants/handlers/BaseHandler.t.sol @@ -0,0 +1,79 @@ +// SPDX-License-Identifier: MIT +pragma solidity 0.8.26; + +import /*{} from*/ '../Setup.t.sol'; +import {Actors} from '../helpers/Actors.t.sol'; + +// Base handler with tracking logic +contract BaseHandler is Setup, Actors { + // Track all created request IDs + bytes32[] internal _ghost_requests; + + // Track request details + mapping(bytes32 => IOracle.Request) internal _ghost_requestData; + + // Track responses for requests + mapping(bytes32 => bytes32) internal _ghost_activeResponses; // requestId => responseId + mapping(bytes32 => IOracle.Response) internal _ghost_responseData; + mapping(bytes32 => bool) internal _ghost_finalizedResponses; + + // Track disputes + mapping(bytes32 => bytes32[]) internal _ghost_disputes; // requestId => disputeIds + mapping(bytes32 => IOracle.Dispute) internal _ghost_disputeData; + mapping(bytes32 => IOracle.DisputeStatus) internal _ghost_disputeStatuses; + + // Track which requests came from EBORequestCreator + mapping(bytes32 => bool) internal _ghost_validRequests; + + // Track chain IDs used per epoch to prevent duplicates + mapping(uint256 => mapping(string => bool)) internal _ghost_epochChainIds; + + // Track bonds and pledges + mapping(address => mapping(bytes32 => uint256)) internal _ghost_bonds; + mapping(address => mapping(bytes32 => uint256)) internal _ghost_pledgesFor; + mapping(address => mapping(bytes32 => uint256)) internal _ghost_pledgesAgainst; + + // Helper functions + function _boundEpoch(uint256 _epoch) internal view returns (uint256) { + return bound(_epoch, START_EPOCH, START_EPOCH + 1000); + } + + function _boundAmount(uint256 _amount) internal pure returns (uint256) { + return bound(_amount, 1, 1_000_000e18); + } + + function _boundBlockNumber(uint256 _blockNumber) internal view returns (uint256) { + return bound(_blockNumber, block.number - 1000, block.number); + } + + function _generateChainId(uint256 _seed) internal pure returns (string memory) { + string[3] memory chains = ['mainnet', 'optimism', 'arbitrum']; + return chains[_seed % 3]; + } + + function _getRandomRequest(uint256 _seed) internal view returns (bytes32) { + if (_ghost_requests.length == 0) return bytes32(0); + return _ghost_requests[_seed % _ghost_requests.length]; + } + + function _getRandomActiveResponse(bytes32 _requestId) internal view returns (IOracle.Response memory) { + bytes32 responseId = _ghost_activeResponses[_requestId]; + return _ghost_responseData[responseId]; + } + + function _getRandomDispute(bytes32 _requestId, uint256 _seed) internal view returns (IOracle.Dispute memory) { + bytes32[] storage disputes = _ghost_disputes[_requestId]; + if (disputes.length == 0) { + return IOracle.Dispute(address(0), address(0), bytes32(0), 0); + } + bytes32 disputeId = disputes[_seed % disputes.length]; + return _ghost_disputeData[disputeId]; + } + + // Events to track state changes + event RequestCreated(bytes32 indexed requestId, uint256 epoch, string chainId); + event ResponseProposed(bytes32 indexed requestId, bytes32 indexed responseId); + event DisputeCreated(bytes32 indexed requestId, bytes32 indexed responseId, bytes32 indexed disputeId); + event ResponseFinalized(bytes32 indexed requestId, bytes32 indexed responseId); + event DisputeResolved(bytes32 indexed disputeId, IOracle.DisputeStatus status); +} diff --git a/test/invariants/handlers/HandlerArbitrable.t.sol b/test/invariants/handlers/HandlerArbitrable.t.sol new file mode 100644 index 0000000..7fb7cfd --- /dev/null +++ b/test/invariants/handlers/HandlerArbitrable.t.sol @@ -0,0 +1,25 @@ +// SPDX-License-Identifier: MIT +pragma solidity 0.8.26; + +import {BaseHandler} from './BaseHandler.t.sol'; + +contract HandlerArbitrable is BaseHandler { + function handleValidateArbitrator(uint256 _actorSeed) external { + address caller = _pickActor(_actorSeed); + arbitrable.validateArbitrator(caller); + } + + function handleSetArbitrator(uint256 _actorSeed) external { + address newArbitrator = _pickActor(_actorSeed); + arbitrable.setArbitrator(newArbitrator); + } + + function handleSetPendingCouncil(uint256 _actorSeed) external { + address pendingCouncil = _pickActor(_actorSeed); + arbitrable.setPendingCouncil(pendingCouncil); + } + + function handleConfirmCouncil() external { + arbitrable.confirmCouncil(); + } +} diff --git a/test/invariants/handlers/HandlerBondEscalationModule.t.sol b/test/invariants/handlers/HandlerBondEscalationModule.t.sol new file mode 100644 index 0000000..791e280 --- /dev/null +++ b/test/invariants/handlers/HandlerBondEscalationModule.t.sol @@ -0,0 +1,92 @@ +// SPDX-License-Identifier: MIT +pragma solidity 0.8.26; + +import {BaseHandler, IOracle} from './BaseHandler.t.sol'; + +contract HandlerBondEscalationModule is BaseHandler { + function handleDisputeResponseBondEscalationModule(uint256 _requestSeed, uint256 _actorSeed) external { + bytes32 requestId = _getRandomRequest(_requestSeed); + if (requestId == bytes32(0) || !_ghost_validRequests[requestId]) return; + + bytes32 responseId = _ghost_activeResponses[requestId]; + if (responseId == bytes32(0)) return; + + IOracle.Response memory response = _ghost_responseData[responseId]; + if (_ghost_finalizedResponses[responseId]) return; + + // Create dispute data + address disputer = _pickActor(_actorSeed); + uint256 bond = _boundAmount(1e18); + + IOracle.Dispute memory dispute = + IOracle.Dispute({disputer: disputer, proposer: msg.sender, responseId: responseId, requestId: requestId}); + + // Submit dispute + bondEscalationModule.disputeResponse(_ghost_requestData[requestId], response, dispute); + + // Track dispute + bytes32 disputeId = keccak256(abi.encode(dispute)); + _ghost_disputes[requestId].push(disputeId); + _ghost_disputeData[disputeId] = dispute; + _ghost_bonds[disputer][requestId] = bond; + _ghost_disputeStatuses[disputeId] = IOracle.DisputeStatus.Escalated; + + emit DisputeCreated(requestId, responseId, disputeId); + } + + function handleOnDisputeStatusChange(uint256 _requestSeed, uint256 _disputeIndex) external { + bytes32 requestId = _getRandomRequest(_requestSeed); + if (requestId == bytes32(0)) return; + + IOracle.Dispute memory dispute = _getRandomDispute(requestId, _disputeIndex); + if (dispute.requestId == bytes32(0)) return; + + bytes32 disputeId = keccak256(abi.encode(dispute)); + bondEscalationModule.onDisputeStatusChange( + disputeId, _ghost_requestData[requestId], _ghost_responseData[dispute.responseId], dispute + ); + } + + function handlePledgeForDispute(uint256 _requestSeed, uint256 _disputeIndex, uint256 _actorSeed) external { + bytes32 requestId = _getRandomRequest(_requestSeed); + if (requestId == bytes32(0)) return; + + IOracle.Dispute memory dispute = _getRandomDispute(requestId, _disputeIndex); + if (dispute.requestId == bytes32(0)) return; + + if (_ghost_disputeStatuses[keccak256(abi.encode(dispute))] != IOracle.DisputeStatus.Escalated) return; + + address pledger = _pickActor(_actorSeed); + bondEscalationModule.pledgeForDispute(_ghost_requestData[requestId], dispute); + + bytes32 disputeId = keccak256(abi.encode(dispute)); + _ghost_pledgesFor[pledger][disputeId] += _boundAmount(1e18); + } + + function handlePledgeAgainstDispute(uint256 _requestSeed, uint256 _disputeIndex, uint256 _actorSeed) external { + bytes32 requestId = _getRandomRequest(_requestSeed); + if (requestId == bytes32(0)) return; + + IOracle.Dispute memory dispute = _getRandomDispute(requestId, _disputeIndex); + if (dispute.requestId == bytes32(0)) return; + + if (_ghost_disputeStatuses[keccak256(abi.encode(dispute))] != IOracle.DisputeStatus.Escalated) return; + + address pledger = _pickActor(_actorSeed); + bondEscalationModule.pledgeAgainstDispute(_ghost_requestData[requestId], dispute); + + bytes32 disputeId = keccak256(abi.encode(dispute)); + _ghost_pledgesAgainst[pledger][disputeId] += _boundAmount(1e18); + } + + function handleSettleBondEscalation(uint256 _requestSeed, uint256 _disputeIndex) external { + bytes32 requestId = _getRandomRequest(_requestSeed); + if (requestId == bytes32(0)) return; + + IOracle.Dispute memory dispute = _getRandomDispute(requestId, _disputeIndex); + if (dispute.requestId == bytes32(0)) return; + + IOracle.Response memory response = _ghost_responseData[dispute.responseId]; + bondEscalationModule.settleBondEscalation(_ghost_requestData[requestId], response, dispute); + } +} diff --git a/test/invariants/handlers/HandlerBondedResponseModule.t.sol b/test/invariants/handlers/HandlerBondedResponseModule.t.sol new file mode 100644 index 0000000..53f36fc --- /dev/null +++ b/test/invariants/handlers/HandlerBondedResponseModule.t.sol @@ -0,0 +1,56 @@ +// SPDX-License-Identifier: MIT +pragma solidity 0.8.26; + +import {BaseHandler, IOracle} from './BaseHandler.t.sol'; + +contract HandlerBondedResponseModule is BaseHandler { + function handlePropose(uint256 _requestSeed, uint256 _blockNumber, uint256 _actorSeed) external { + bytes32 requestId = _getRandomRequest(_requestSeed); + if (requestId == bytes32(0) || !_ghost_validRequests[requestId]) return; + if (_ghost_activeResponses[requestId] != bytes32(0)) return; // Only one active response at a time + + // Create response data + address proposer = _pickActor(_actorSeed); + _blockNumber = _boundBlockNumber(_blockNumber); + + IOracle.Request memory request = _ghost_requestData[requestId]; + IOracle.Response memory response = + IOracle.Response({requestId: requestId, response: abi.encode(_blockNumber), proposer: proposer}); + + // Submit response + bondedResponseModule.propose(request, response, proposer); + + // Track response + bytes32 responseId = keccak256(abi.encode(response)); + _ghost_activeResponses[requestId] = responseId; + _ghost_responseData[responseId] = response; + + emit ResponseProposed(requestId, responseId); + } + + function handleFinalizeRequestResponseModule(uint256 _requestSeed) external { + bytes32 requestId = _getRandomRequest(_requestSeed); + if (requestId == bytes32(0) || !_ghost_validRequests[requestId]) return; + + bytes32 responseId = _ghost_activeResponses[requestId]; + if (responseId == bytes32(0)) return; + + IOracle.Response memory response = _ghost_responseData[responseId]; + if (_ghost_finalizedResponses[responseId]) return; + + bondedResponseModule.finalizeRequest(_ghost_requestData[requestId], response, response.proposer); + + _ghost_finalizedResponses[responseId] = true; + emit ResponseFinalized(requestId, responseId); + } + + function handleReleaseUnutilizedResponse(uint256 _requestSeed) external { + bytes32 requestId = _getRandomRequest(_requestSeed); + if (requestId == bytes32(0)) return; + + IOracle.Response memory response = _getRandomActiveResponse(requestId); + if (response.requestId == bytes32(0)) return; + + bondedResponseModule.releaseUnutilizedResponse(_ghost_requestData[requestId], response); + } +} diff --git a/test/invariants/handlers/HandlerCouncilArbitrator.t.sol b/test/invariants/handlers/HandlerCouncilArbitrator.t.sol new file mode 100644 index 0000000..b1129e0 --- /dev/null +++ b/test/invariants/handlers/HandlerCouncilArbitrator.t.sol @@ -0,0 +1,37 @@ +// SPDX-License-Identifier: MIT +pragma solidity 0.8.26; + +import {BaseHandler, IOracle} from './BaseHandler.t.sol'; + +contract HandlerCouncilArbitrator is BaseHandler { + function handleResolve(uint256 _requestSeed, uint256 _disputeIndex) external { + bytes32 requestId = _getRandomRequest(_requestSeed); + if (requestId == bytes32(0)) return; + + IOracle.Dispute memory dispute = _getRandomDispute(requestId, _disputeIndex); + if (dispute.requestId == bytes32(0)) return; + + IOracle.Response memory response = _ghost_responseData[dispute.responseId]; + councilArbitrator.resolve(_ghost_requestData[requestId], response, dispute); + } + + function handleArbitrateDispute(uint256 _requestSeed, uint256 _disputeIndex, uint256 _statusSeed) external { + bytes32 requestId = _getRandomRequest(_requestSeed); + if (requestId == bytes32(0)) return; + + IOracle.Dispute memory dispute = _getRandomDispute(requestId, _disputeIndex); + if (dispute.requestId == bytes32(0)) return; + + bytes32 disputeId = keccak256(abi.encode(dispute)); + + // Generate a valid dispute status (NoResolution, Won, Lost) + IOracle.DisputeStatus status = IOracle.DisputeStatus( + bound(_statusSeed, uint8(IOracle.DisputeStatus.NoResolution), uint8(IOracle.DisputeStatus.Lost)) + ); + + councilArbitrator.arbitrateDispute(disputeId, status); + _ghost_disputeStatuses[disputeId] = status; + + emit DisputeResolved(disputeId, status); + } +} diff --git a/test/invariants/handlers/HandlerEBOFinalityModule.t.sol b/test/invariants/handlers/HandlerEBOFinalityModule.t.sol new file mode 100644 index 0000000..26d7ecf --- /dev/null +++ b/test/invariants/handlers/HandlerEBOFinalityModule.t.sol @@ -0,0 +1,46 @@ +// SPDX-License-Identifier: MIT +pragma solidity 0.8.26; + +import {BaseHandler, IEBORequestCreator, IOracle} from './BaseHandler.t.sol'; + +contract HandlerEBOFinalityModule is BaseHandler { + function handleFinalizeRequestFinalityModule(uint256 _requestSeed) external { + bytes32 requestId = _getRandomRequest(_requestSeed); + if (requestId == bytes32(0) || !_ghost_validRequests[requestId]) return; + + bytes32 responseId = _ghost_activeResponses[requestId]; + if (responseId == bytes32(0)) return; + + IOracle.Response memory response = _ghost_responseData[responseId]; + eboFinalityModule.finalizeRequest(_ghost_requestData[requestId], response, response.proposer); + } + + function handleAmendEpoch( + uint256 _epoch, + uint256[] calldata _chainIdSeeds, + uint256[] calldata _blockNumbers + ) external { + if (_chainIdSeeds.length != _blockNumbers.length) return; + + _epoch = _boundEpoch(_epoch); + string[] memory chainIds = new string[](_chainIdSeeds.length); + uint256[] memory blockNums = new uint256[](_blockNumbers.length); + + for (uint256 i = 0; i < _chainIdSeeds.length; i++) { + chainIds[i] = _generateChainId(_chainIdSeeds[i]); + blockNums[i] = _boundBlockNumber(_blockNumbers[i]); + } + + eboFinalityModule.amendEpoch(_epoch, chainIds, blockNums); + } + + function handleAddEBORequestCreatorFinalityModule(uint256 _actorSeed) external { + address creator = _pickActor(_actorSeed); + eboFinalityModule.addEBORequestCreator(IEBORequestCreator(creator)); + } + + function handleRemoveEBORequestCreatorFinalityModule(uint256 _actorSeed) external { + address creator = _pickActor(_actorSeed); + eboFinalityModule.removeEBORequestCreator(IEBORequestCreator(creator)); + } +} diff --git a/test/invariants/handlers/HandlerEBORequestCreator.t.sol b/test/invariants/handlers/HandlerEBORequestCreator.t.sol new file mode 100644 index 0000000..2104da1 --- /dev/null +++ b/test/invariants/handlers/HandlerEBORequestCreator.t.sol @@ -0,0 +1,91 @@ +// SPDX-License-Identifier: MIT +pragma solidity 0.8.26; + +import { + BaseHandler, + IArbitratorModule, + IBondEscalationModule, + IBondedResponseModule, + IEBORequestModule, + IEpochManager, + IOracle +} from './BaseHandler.t.sol'; + +contract HandlerEBORequestCreator is BaseHandler { + function handleCreateRequest(uint256 _epoch, uint256 _chainIdSeed) external { + _epoch = _boundEpoch(_epoch); + string memory chainId = _generateChainId(_chainIdSeed); + + // Prevent duplicate chainId for same epoch + if (_ghost_epochChainIds[_epoch][chainId]) return; + + // Create request via EBORequestCreator + eboRequestCreator.createRequest(_epoch, chainId); + + // Get current request data + IOracle.Request memory requestData = eboRequestCreator.getRequestData(); + + // Calculate request ID using same logic as Oracle + bytes32 requestId = keccak256(abi.encode(requestData)); + + // Track the request + _ghost_requests.push(requestId); + _ghost_requestData[requestId] = requestData; + _ghost_validRequests[requestId] = true; + _ghost_epochChainIds[_epoch][chainId] = true; + + emit RequestCreated(requestId, _epoch, chainId); + } + + function handleAddChain(uint256 _chainIdSeed) external { + string memory chainId = _generateChainId(_chainIdSeed); + eboRequestCreator.addChain(chainId); + } + + function handleRemoveChain(uint256 _chainIdSeed) external { + string memory chainId = _generateChainId(_chainIdSeed); + eboRequestCreator.removeChain(chainId); + } + + function handleSetRequestModuleData( + uint256 _actorSeed, + IEBORequestModule.RequestParameters calldata _params + ) external { + address module = _pickActor(_actorSeed); + eboRequestCreator.setRequestModuleData(module, _params); + } + + function handleSetResponseModuleData( + uint256 _actorSeed, + IBondedResponseModule.RequestParameters calldata _params + ) external { + address module = _pickActor(_actorSeed); + eboRequestCreator.setResponseModuleData(module, _params); + } + + function handleSetDisputeModuleData( + uint256 _actorSeed, + IBondEscalationModule.RequestParameters calldata _params + ) external { + address module = _pickActor(_actorSeed); + eboRequestCreator.setDisputeModuleData(module, _params); + } + + function handleSetResolutionModuleData( + uint256 _actorSeed, + IArbitratorModule.RequestParameters calldata _params + ) external { + address module = _pickActor(_actorSeed); + eboRequestCreator.setResolutionModuleData(module, _params); + } + + function handleSetFinalityModuleData(uint256 _actorSeed) external { + address module = _pickActor(_actorSeed); + eboRequestCreator.setFinalityModuleData(module); + } + + function handleSetEpochManager(uint256 _actorSeed) external { + address manager = _pickActor(_actorSeed); + eboRequestCreator.setEpochManager(IEpochManager(manager)); + } +} diff --git a/test/invariants/handlers/HandlerEBORequestModule.t.sol b/test/invariants/handlers/HandlerEBORequestModule.t.sol new file mode 100644 index 0000000..ce0c9e0 --- /dev/null +++ b/test/invariants/handlers/HandlerEBORequestModule.t.sol @@ -0,0 +1,16 @@ +// SPDX-License-Identifier: MIT +pragma solidity 0.8.26; + +import {BaseHandler, IEBORequestCreator} from './BaseHandler.t.sol'; + +contract HandlerEBORequestModule is BaseHandler { + function handleAddEBORequestCreatorRequestModule(uint256 _actorSeed) external { + address creator = _pickActor(_actorSeed); + eboRequestModule.addEBORequestCreator(IEBORequestCreator(creator)); + } + + function handleRemoveEBORequestCreatorRequestModule(uint256 _actorSeed) external { + address creator = _pickActor(_actorSeed); + eboRequestModule.removeEBORequestCreator(IEBORequestCreator(creator)); + } +} diff --git a/test/invariants/handlers/HandlerHorizonAccountingExtension.t.sol b/test/invariants/handlers/HandlerHorizonAccountingExtension.t.sol new file mode 100644 index 0000000..fb6dfd1 --- /dev/null +++ b/test/invariants/handlers/HandlerHorizonAccountingExtension.t.sol @@ -0,0 +1,128 @@ +// SPDX-License-Identifier: MIT +pragma solidity 0.8.26; + +import {BaseHandler, IOracle} from './BaseHandler.t.sol'; + +contract HandlerHorizonAccountingExtension is BaseHandler { + function handleApproveModule(uint256 _actorSeed) external { + address module = _pickActor(_actorSeed); + horizonAccountingExtension.approveModule(module); + } + + function handleRevokeModule(uint256 _actorSeed) external { + address module = _pickActor(_actorSeed); + horizonAccountingExtension.revokeModule(module); + } + + function handlePledge(uint256 _pledgerSeed, uint256 _requestSeed, uint256 _disputeIndex, uint256 _amount) external { + address pledger = _pickActor(_pledgerSeed); + bytes32 requestId = _getRandomRequest(_requestSeed); + if (requestId == bytes32(0)) return; + + IOracle.Dispute memory dispute = _getRandomDispute(requestId, _disputeIndex); + if (dispute.requestId == bytes32(0)) return; + + _amount = _boundAmount(_amount); + horizonAccountingExtension.pledge(pledger, _ghost_requestData[requestId], dispute, GRT, _amount); + } + + function handleOnSettleBondEscalation( + uint256 _requestSeed, + uint256 _disputeIndex, + uint256 _amountPerPledger, + uint256 _winningPledgersLength + ) external { + bytes32 requestId = _getRandomRequest(_requestSeed); + if (requestId == bytes32(0)) return; + + IOracle.Dispute memory dispute = _getRandomDispute(requestId, _disputeIndex); + if (dispute.requestId == bytes32(0)) return; + + _amountPerPledger = _boundAmount(_amountPerPledger); + horizonAccountingExtension.onSettleBondEscalation( + _ghost_requestData[requestId], dispute, GRT, _amountPerPledger, _winningPledgersLength + ); + } + + function handleClaimEscalationReward(uint256 _requestSeed, uint256 _disputeIndex, uint256 _actorSeed) external { + bytes32 requestId = _getRandomRequest(_requestSeed); + if (requestId == bytes32(0)) return; + + IOracle.Dispute memory dispute = _getRandomDispute(requestId, _disputeIndex); + if (dispute.requestId == bytes32(0)) return; + + address pledger = _pickActor(_actorSeed); + bytes32 disputeId = keccak256(abi.encode(dispute)); + + horizonAccountingExtension.claimEscalationReward(disputeId, pledger); + } + + function handlePay(uint256 _requestSeed, uint256 _payerSeed, uint256 _receiverSeed, uint256 _amount) external { + bytes32 requestId = _getRandomRequest(_requestSeed); + if (requestId == bytes32(0)) return; + + address payer = _pickActor(_payerSeed); + address receiver = _pickActor(_receiverSeed); + _amount = _boundAmount(_amount); + + horizonAccountingExtension.pay(requestId, payer, receiver, GRT, _amount); + } + + function handleBond(uint256 _bonderSeed, uint256 _requestSeed, uint256 _amount) external { + address bonder = _pickActor(_bonderSeed); + bytes32 requestId = _getRandomRequest(_requestSeed); + if (requestId == bytes32(0)) return; + + _amount = _boundAmount(_amount); + horizonAccountingExtension.bond(bonder, requestId, GRT, _amount); + } + + function handleBondWithSender( + uint256 _bonderSeed, + uint256 _requestSeed, + uint256 _amount, + uint256 _senderSeed + ) external { + address bonder = _pickActor(_bonderSeed); + bytes32 requestId = _getRandomRequest(_requestSeed); + if (requestId == bytes32(0)) return; + + _amount = _boundAmount(_amount); + address sender = _pickActor(_senderSeed); + + horizonAccountingExtension.bond(bonder, requestId, GRT, _amount, sender); + } + + function handleRelease(uint256 _bonderSeed, uint256 _requestSeed, uint256 _amount) external { + address bonder = _pickActor(_bonderSeed); + bytes32 requestId = _getRandomRequest(_requestSeed); + if (requestId == bytes32(0)) return; + + _amount = _boundAmount(_amount); + horizonAccountingExtension.release(bonder, requestId, GRT, _amount); + } + + function handleSlash( + uint256 _requestSeed, + uint256 _disputeIndex, + uint256 _usersToSlash, + uint256 _maxUsersToCheck + ) external { + bytes32 requestId = _getRandomRequest(_requestSeed); + if (requestId == bytes32(0)) return; + + IOracle.Dispute memory dispute = _getRandomDispute(requestId, _disputeIndex); + if (dispute.requestId == bytes32(0)) return; + + bytes32 disputeId = keccak256(abi.encode(dispute)); + _usersToSlash = bound(_usersToSlash, 1, 10); + _maxUsersToCheck = bound(_maxUsersToCheck, _usersToSlash, 20); + + horizonAccountingExtension.slash(disputeId, _usersToSlash, _maxUsersToCheck); + } + + function handleSetMaxUsersToCheck(uint256 _maxUsers) external { + _maxUsers = bound(_maxUsers, 1, 100); + horizonAccountingExtension.setMaxUsersToCheck(uint128(_maxUsers)); + } +} diff --git a/test/invariants/handlers/HandlerOracle.t.sol b/test/invariants/handlers/HandlerOracle.t.sol new file mode 100644 index 0000000..1bff9c2 --- /dev/null +++ b/test/invariants/handlers/HandlerOracle.t.sol @@ -0,0 +1,150 @@ +// SPDX-License-Identifier: MIT +pragma solidity 0.8.26; + +import {BaseHandler, IOracle} from './BaseHandler.t.sol'; + +contract HandlerOracle is BaseHandler { + function handleCreateRequest(uint256 _requestSeed, bytes32 _previousId) external returns (bytes32) { + bytes32 requestId = _getRandomRequest(_requestSeed); + if (requestId == bytes32(0)) return bytes32(0); + + return oracle.createRequest(_ghost_requestData[requestId], _previousId); + } + + function handleCreateRequests( + uint256[] calldata _requestSeeds, + bytes32[] calldata _previousIds + ) external returns (bytes32[] memory) { + if (_requestSeeds.length != _previousIds.length) { + return new bytes32[](0); + } + + IOracle.Request[] memory requests = new IOracle.Request[](_requestSeeds.length); + for (uint256 i = 0; i < _requestSeeds.length; i++) { + bytes32 requestId = _getRandomRequest(_requestSeeds[i]); + if (requestId == bytes32(0)) return new bytes32[](0); + requests[i] = _ghost_requestData[requestId]; + } + + return oracle.createRequests(requests, _previousIds); + } + + function handleProposeResponse( + uint256 _requestSeed, + uint256 _blockNumber, + uint256 _actorSeed + ) external returns (bytes32) { + bytes32 requestId = _getRandomRequest(_requestSeed); + if (requestId == bytes32(0) || !_ghost_validRequests[requestId]) { + return bytes32(0); + } + if (_ghost_activeResponses[requestId] != bytes32(0)) return bytes32(0); + + address proposer = _pickActor(_actorSeed); + _blockNumber = _boundBlockNumber(_blockNumber); + + IOracle.Request memory request = _ghost_requestData[requestId]; + IOracle.Response memory response = + IOracle.Response({requestId: requestId, response: abi.encode(_blockNumber), proposer: proposer}); + + bytes32 responseId = oracle.proposeResponse(request, response); + + // Track response + _ghost_activeResponses[requestId] = responseId; + _ghost_responseData[responseId] = response; + + emit ResponseProposed(requestId, responseId); + + return responseId; + } + + function handleDisputeResponseOracle(uint256 _requestSeed, uint256 _actorSeed) external returns (bytes32) { + bytes32 requestId = _getRandomRequest(_requestSeed); + if (requestId == bytes32(0) || !_ghost_validRequests[requestId]) { + return bytes32(0); + } + + bytes32 responseId = _ghost_activeResponses[requestId]; + if (responseId == bytes32(0)) return bytes32(0); + + IOracle.Response memory response = _ghost_responseData[responseId]; + if (_ghost_finalizedResponses[responseId]) return bytes32(0); + + address disputer = _pickActor(_actorSeed); + uint256 bond = _boundAmount(1e18); + + IOracle.Dispute memory dispute = + IOracle.Dispute({disputer: disputer, proposer: response.proposer, requestId: requestId, responseId: responseId}); + + bytes32 disputeId = oracle.disputeResponse(_ghost_requestData[requestId], response, dispute); + + // Track dispute + _ghost_disputes[requestId].push(disputeId); + _ghost_disputeData[disputeId] = dispute; + _ghost_bonds[disputer][requestId] = bond; + _ghost_disputeStatuses[disputeId] = IOracle.DisputeStatus.Escalated; + + emit DisputeCreated(requestId, responseId, disputeId); + + return disputeId; + } + + function handleEscalateDispute(uint256 _requestSeed, uint256 _disputeIndex) external { + bytes32 requestId = _getRandomRequest(_requestSeed); + if (requestId == bytes32(0)) return; + + IOracle.Dispute memory dispute = _getRandomDispute(requestId, _disputeIndex); + if (dispute.requestId == bytes32(0)) return; + + if (_ghost_disputeStatuses[keccak256(abi.encode(dispute))] != IOracle.DisputeStatus.Escalated) return; + + IOracle.Response memory response = _ghost_responseData[dispute.responseId]; + oracle.escalateDispute(_ghost_requestData[requestId], response, dispute); + } + + function handleResolveDispute(uint256 _requestSeed, uint256 _disputeIndex) external { + bytes32 requestId = _getRandomRequest(_requestSeed); + if (requestId == bytes32(0)) return; + + IOracle.Dispute memory dispute = _getRandomDispute(requestId, _disputeIndex); + if (dispute.requestId == bytes32(0)) return; + + IOracle.Response memory response = _ghost_responseData[dispute.responseId]; + oracle.resolveDispute(_ghost_requestData[requestId], response, dispute); + } + + function handleUpdateDisputeStatus(uint256 _requestSeed, uint256 _disputeIndex, uint256 _statusSeed) external { + bytes32 requestId = _getRandomRequest(_requestSeed); + if (requestId == bytes32(0)) return; + + IOracle.Dispute memory dispute = _getRandomDispute(requestId, _disputeIndex); + if (dispute.requestId == bytes32(0)) return; + + // Generate a valid dispute status (NoResolution, Won, Lost) + IOracle.DisputeStatus status = IOracle.DisputeStatus( + bound(_statusSeed, uint8(IOracle.DisputeStatus.NoResolution), uint8(IOracle.DisputeStatus.Lost)) + ); + + IOracle.Response memory response = _ghost_responseData[dispute.responseId]; + oracle.updateDisputeStatus(_ghost_requestData[requestId], response, dispute, status); + + bytes32 disputeId = keccak256(abi.encode(dispute)); + _ghost_disputeStatuses[disputeId] = status; + + emit DisputeResolved(disputeId, status); + } + + function handleFinalize(uint256 _requestSeed) external { + bytes32 requestId = _getRandomRequest(_requestSeed); + if (requestId == bytes32(0)) return; + + bytes32 responseId = _ghost_activeResponses[requestId]; + if (responseId == bytes32(0)) return; + + IOracle.Response memory response = _ghost_responseData[responseId]; + oracle.finalize(_ghost_requestData[requestId], response); + + _ghost_finalizedResponses[responseId] = true; + emit ResponseFinalized(requestId, responseId); + } +} diff --git a/test/invariants/handlers/HandlerParent.t.sol b/test/invariants/handlers/HandlerParent.t.sol new file mode 100644 index 0000000..33b3297 --- /dev/null +++ b/test/invariants/handlers/HandlerParent.t.sol @@ -0,0 +1,28 @@ +// SPDX-License-Identifier: MIT +pragma solidity 0.8.26; + +import {HandlerArbitrable} from './HandlerArbitrable.t.sol'; + +import {HandlerBondEscalationModule} from './HandlerBondEscalationModule.t.sol'; +import {HandlerBondedResponseModule} from './HandlerBondedResponseModule.t.sol'; +import {HandlerCouncilArbitrator} from './HandlerCouncilArbitrator.t.sol'; +import {HandlerEBOFinalityModule} from './HandlerEBOFinalityModule.t.sol'; +import {HandlerEBORequestCreator} from './HandlerEBORequestCreator.t.sol'; +import {HandlerEBORequestModule} from './HandlerEBORequestModule.t.sol'; +import {HandlerHorizonAccountingExtension} from './HandlerHorizonAccountingExtension.t.sol'; +import {HandlerOracle} from './HandlerOracle.t.sol'; + +contract HandlerParent is + HandlerArbitrable, + HandlerBondedResponseModule, + HandlerBondEscalationModule, + HandlerCouncilArbitrator, + HandlerEBOFinalityModule, + HandlerEBORequestCreator, + HandlerEBORequestModule, + HandlerHorizonAccountingExtension, + HandlerOracle +{ + //solhint-disable no-empty-blocks + constructor() {} +} diff --git a/test/invariants/helpers/Actors.t.sol b/test/invariants/helpers/Actors.t.sol new file mode 100644 index 0000000..5b0612b --- /dev/null +++ b/test/invariants/helpers/Actors.t.sol @@ -0,0 +1,25 @@ +// SPDX-License-Identifier: UNLICENSED +pragma solidity ^0.8.19; + +import {Utils} from './Utils.t.sol'; + +contract Actors is Utils { + address[] internal _ghost_actors = [ + address(0x10000), + address(0x20000), + address(0x30000), + address(0x40000), + address(0x50000), + address(0x60000), + address(0x70000), + address(0x80000), + address(0x90000), + address(0xa0000) + ]; + + event ActorsLog(string); + + function _pickActor(uint256 _seed) internal view returns (address) { + return _ghost_actors[_seed % _ghost_actors.length]; + } +} diff --git a/test/invariants/helpers/FuzzERC20.sol b/test/invariants/helpers/FuzzERC20.sol new file mode 100644 index 0000000..ed42f9d --- /dev/null +++ b/test/invariants/helpers/FuzzERC20.sol @@ -0,0 +1,32 @@ +// SPDX-License-Identifier: MIT +pragma solidity ^0.8.19; + +import {ERC20, IERC20} from '@openzeppelin/contracts/token/ERC20/ERC20.sol'; + +contract FuzzERC20 is ERC20 { + address testContract; + + constructor() ERC20('FuzzERC20', 'FuzzERC20') { + testContract = msg.sender; + } + + function transfer(address to, uint256 amount) public override returns (bool) { + address owner = _msgSender(); + + // FuzzTest has an infinite mint + if (owner == testContract) { + _mint(testContract, amount); + } + + _transfer(owner, to, amount); + return true; + } + + function mint(address _to, uint256 _amount) public { + _mint(_to, _amount); + } + + function burn(address _from, uint256 _amount) public { + _burn(_from, _amount); + } +} diff --git a/test/invariants/helpers/IStdCheats.sol b/test/invariants/helpers/IStdCheats.sol new file mode 100644 index 0000000..cdaa531 --- /dev/null +++ b/test/invariants/helpers/IStdCheats.sol @@ -0,0 +1,88 @@ +// SPDX-License-Identifier: UNLICENSED +pragma solidity ^0.8.19; + +interface IStdCheats { + // Set block.timestamp + function warp(uint256) external; + + // Set block.number + function roll(uint256) external; + + // Set block.basefee + function fee(uint256) external; + + // Set block.difficulty and block.prevrandao + function difficulty(uint256) external; + + // Set block.chainid + function chainId(uint256) external; + + // Sets the block.coinbase + function coinbase(address) external; + + // Loads a storage slot from an address + function load(address account, bytes32 slot) external returns (bytes32); + + // Stores a value to an address' storage slot + function store(address account, bytes32 slot, bytes32 value) external; + + // Sets the *next* call's msg.sender to be the input address + function prank(address) external; + + // Set msg.sender to the input address until the current call exits + function prankHere(address) external; + + // Sets an address' balance + function deal(address who, uint256 newBalance) external; + + // Sets an address' code + function etch(address who, bytes calldata code) external; + + // Signs data + function sign(uint256 privateKey, bytes32 digest) external returns (uint8 v, bytes32 r, bytes32 s); + + // Computes address for a given private key + function addr(uint256 privateKey) external returns (address); + + // Gets the nonce of an account + function getNonce(address account) external returns (uint64); + + // Sets the nonce of an account + // The new nonce must be higher than the current nonce of the account + function setNonce(address account, uint64 nonce) external; + + // Performs a foreign function call via terminal + function ffi(string[] calldata) external returns (bytes memory); + + // Take a snapshot of the current state of the EVM + function snapshot() external returns (uint256); + + // Revert state back to a snapshot + function revertTo(uint256) external returns (bool); + + // Convert Solidity types to strings + function toString(address) external returns (string memory); + + function toString(bytes calldata) external returns (string memory); + + function toString(bytes32) external returns (string memory); + + function toString(bool) external returns (string memory); + + function toString(uint256) external returns (string memory); + + function toString(int256) external returns (string memory); + + // Convert strings into Solidity types + function parseBytes(string memory) external returns (bytes memory); + + function parseBytes32(string memory) external returns (bytes32); + + function parseAddress(string memory) external returns (address); + + function parseUint(string memory) external returns (uint256); + + function parseInt(string memory) external returns (int256); + + function parseBool(string memory) external returns (bool); +} diff --git a/test/invariants/helpers/MockEpochManager.t.sol b/test/invariants/helpers/MockEpochManager.t.sol new file mode 100644 index 0000000..ffd54ea --- /dev/null +++ b/test/invariants/helpers/MockEpochManager.t.sol @@ -0,0 +1,14 @@ +// SPDX-License-Identifier: MIT +pragma solidity 0.8.26; + +contract MockEpochManager { + uint256 public currentEpoch; + + constructor(uint256 _startEpoch) { + currentEpoch = _startEpoch; + } + + function setEpoch(uint256 _epoch) external { + currentEpoch = _epoch; + } +} diff --git a/test/invariants/helpers/MockHorizonStaking.t.sol b/test/invariants/helpers/MockHorizonStaking.t.sol new file mode 100644 index 0000000..3ab32a3 --- /dev/null +++ b/test/invariants/helpers/MockHorizonStaking.t.sol @@ -0,0 +1,44 @@ +// SPDX-License-Identifier: MIT +pragma solidity 0.8.26; + +import {IERC20} from '@openzeppelin/contracts/token/ERC20/IERC20.sol'; +import {IHorizonStaking} from 'interfaces/external/IHorizonStaking.sol'; + +contract MockHorizonStaking { + IERC20 public immutable GRT; + mapping(address => mapping(address => IHorizonStaking.Provision)) public provisions; + + constructor(IERC20 _grt) { + GRT = _grt; + } + + function getProvision( + address _serviceProvider, + address _verifier + ) external view returns (IHorizonStaking.Provision memory) { + return provisions[_serviceProvider][_verifier]; + } + + function provision( + address _serviceProvider, + address _verifier, + uint256 _tokens, + uint32 _maxVerifierCut, + uint64 _thawingPeriod + ) external { + provisions[_serviceProvider][_verifier] = IHorizonStaking.Provision({ + tokens: _tokens, + tokensThawing: 0, + sharesThawing: 0, + maxVerifierCut: _maxVerifierCut, + thawingPeriod: _thawingPeriod, + createdAt: uint64(block.timestamp), + maxVerifierCutPending: 0, + thawingPeriodPending: 0 + }); + } + + function slash(address, uint256, uint256 _tokensVerifier, address _verifierDestination) external { + GRT.transfer(_verifierDestination, _tokensVerifier); + } +} diff --git a/test/invariants/helpers/Utils.t.sol b/test/invariants/helpers/Utils.t.sol new file mode 100644 index 0000000..55f830b --- /dev/null +++ b/test/invariants/helpers/Utils.t.sol @@ -0,0 +1,90 @@ +// SPDX-License-Identifier: MIT +pragma solidity ^0.8.19; + +import {IStdCheats} from './IStdCheats.sol'; + +// override forge-std: +// - vm, avoiding unsupported cheatcode +// - assertEq, allowing custom message in Medusa +// - assertTrue, allowing custom message in Medusa +// - makeAddr, bypassing the limitation of non-existing label cheatcode +// etc +contract Utils { + IStdCheats internal vm = IStdCheats(address(0x7109709ECfa91a80626fF3989D68f67F5b1DD12D)); + + event TestFailure(string reason); + event AddressMade(string label, address addressGenerated); + + function makeAddr(string memory label) internal returns (address) { + address genAddress = address(uint160(uint256(keccak256(abi.encodePacked(label))))); + emit AddressMade(label, genAddress); + return genAddress; + } + + // same as forge-std + function bound(uint256 x, uint256 min, uint256 max) internal pure returns (uint256 result) { + //solhint-disable custom-errors + require(min <= max, 'StdUtils bound(uint256,uint256,uint256): Max is less than min.'); + + uint256 UINT256_MAX = 2 ** 256 - 1; + + // If x is between min and max, return x directly. This is to ensure that dictionary values + // do not get shifted if the min is nonzero. More info: https://github.com/foundry-rs/forge-std/issues/188 + if (x >= min && x <= max) return x; + + uint256 size = max - min + 1; + + // If the value is 0, 1, 2, 3, wrap that to min, min+1, min+2, min+3. Similarly for the UINT256_MAX side. + // This helps ensure coverage of the min/max values. + if (x <= 3 && size > x) return min + x; + if (x >= UINT256_MAX - 3 && size > UINT256_MAX - x) { + return max - (UINT256_MAX - x); + } + + // Otherwise, wrap x into the range [min, max], i.e. the range is inclusive. + if (x > max) { + uint256 diff = x - max; + uint256 rem = diff % size; + if (rem == 0) return max; + result = min + rem - 1; + } else if (x < min) { + uint256 diff = min - x; + uint256 rem = diff % size; + if (rem == 0) return min; + result = max - rem + 1; + } + } + + function assertEq(uint256 a, uint256 b) internal { + assertEq(a, b, 'assertEq: a != b'); + } + + function assertEq(uint256 a, uint256 b, string memory reason) internal { + if (a != b) { + emit TestFailure(reason); + assert(false); + } + } + + function assertEq(address a, address b) internal { + assertEq(a, b, 'assertEq: a != b'); + } + + function assertEq(address a, address b, string memory reason) internal { + if (a != b) { + emit TestFailure(reason); + assert(false); + } + } + + function assertTrue(bool a) internal { + assertTrue(a, 'assertTrue: !a'); + } + + function assertTrue(bool a, string memory reason) internal { + if (!a) { + emit TestFailure(reason); + assert(false); + } + } +} diff --git a/test/invariants/properties/PropertyA.t.sol b/test/invariants/properties/PropertyA.t.sol new file mode 100644 index 0000000..8cad264 --- /dev/null +++ b/test/invariants/properties/PropertyA.t.sol @@ -0,0 +1,9 @@ +// SPDX-License-Identifier: MIT +pragma solidity 0.8.26; + +import {HandlerParent} from '../handlers/HandlerParent.t.sol'; + +contract PropertyA is HandlerParent { + //solhint-disable no-empty-blocks + constructor() {} +} diff --git a/test/invariants/properties/PropertyParent.t.sol b/test/invariants/properties/PropertyParent.t.sol new file mode 100644 index 0000000..755f405 --- /dev/null +++ b/test/invariants/properties/PropertyParent.t.sol @@ -0,0 +1,9 @@ +// SPDX-License-Identifier: MIT +pragma solidity 0.8.26; + +import {PropertyA} from './PropertyA.t.sol'; + +contract PropertyParent is PropertyA { + //solhint-disable no-empty-blocks + constructor() {} +} diff --git a/yarn.lock b/yarn.lock index e1288e9..84f1b7d 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1732,9 +1732,9 @@ solhint-community@4.0.0: optionalDependencies: prettier "^2.8.3" -"solmate@git+https://github.com/transmissions11/solmate.git#bfc9c25865a274a7827fea5abf6e4fb64fc64e6c": +"solmate@https://github.com/transmissions11/solmate.git#bfc9c25865a274a7827fea5abf6e4fb64fc64e6c": version "6.1.0" - resolved "git+https://github.com/transmissions11/solmate.git#bfc9c25865a274a7827fea5abf6e4fb64fc64e6c" + resolved "https://github.com/transmissions11/solmate.git#bfc9c25865a274a7827fea5abf6e4fb64fc64e6c" sort-object-keys@^1.1.3: version "1.1.3" From 1b537634ea6ae0adbe3504cca70f619ff3abe189 Mon Sep 17 00:00:00 2001 From: drgorillamd <83670532+drgorillamd@users.noreply.github.com> Date: Sun, 10 Nov 2024 23:30:50 +0100 Subject: [PATCH 03/28] test(medusa): add lib to crytic compile --- medusa.json | 87 +++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 87 insertions(+) create mode 100644 medusa.json diff --git a/medusa.json b/medusa.json new file mode 100644 index 0000000..6bb53b5 --- /dev/null +++ b/medusa.json @@ -0,0 +1,87 @@ +{ + "fuzzing": { + "workers": 10, + "workerResetLimit": 50, + "timeout": 0, + "testLimit": 0, + "shrinkLimit": 100000, + "callSequenceLength": 100, + "corpusDirectory": "test/invariants/fuzz/corpus", + "coverageEnabled": true, + "targetContracts": ["FuzzTest"], + "predeployedContracts": {}, + "targetContractsBalances": [], + "constructorArgs": {}, + "deployerAddress": "0x30000", + "senderAddresses": [ + "0x10000", + "0x20000", + "0x30000", + "0x40000", + "0x50000", + "0x60000", + "0x70000", + "0x80000", + "0x90000", + "0xa0000" + ], + "blockNumberDelayMax": 60480, + "blockTimestampDelayMax": 604800, + "blockGasLimit": 125000000, + "transactionGasLimit": 12500000, + "testing": { + "stopOnFailedTest": true, + "stopOnFailedContractMatching": false, + "stopOnNoTests": true, + "testAllContracts": false, + "traceAll": false, + "assertionTesting": { + "enabled": true, + "testViewMethods": true, + "panicCodeConfig": { + "failOnCompilerInsertedPanic": false, + "failOnAssertion": true, + "failOnArithmeticUnderflow": false, + "failOnDivideByZero": false, + "failOnEnumTypeConversionOutOfBounds": false, + "failOnIncorrectStorageAccess": false, + "failOnPopEmptyArray": false, + "failOnOutOfBoundsArrayAccess": false, + "failOnAllocateTooMuchMemory": false, + "failOnCallUninitializedVariable": false + } + }, + "propertyTesting": { + "enabled": true, + "testPrefixes": ["property_"] + }, + "optimizationTesting": { + "enabled": true, + "testPrefixes": ["optimize_"] + }, + "targetFunctionSignatures": [], + "excludeFunctionSignatures": [""] + }, + "chainConfig": { + "codeSizeCheckDisabled": true, + "cheatCodes": { + "cheatCodesEnabled": true, + "enableFFI": false + } + } + }, + "compilation": { + "platform": "crytic-compile", + "platformConfig": { + "target": "test/invariants/FuzzTest.t.sol", + "solcVersion": "", + "exportDirectory": "", + "args": ["--compile-libraries=(ValidatorLib,0xf0)"] + } + }, + "logging": { + "level": "info", + "logDirectory": "", + "noColor": false + } +} From 98de161c55e0caa228d054de7c15a7272eb64c96 Mon Sep 17 00:00:00 2001 From: drgorillamd <83670532+drgorillamd@users.noreply.github.com> Date: Sun, 10 Nov 2024 23:50:06 +0100 Subject: [PATCH 04/28] test(medusa): prop 0 sanity check ok --- test/invariants/FuzzTest.t.sol | 2 +- ...-9d2d56aa-59cf-4190-ad90-113fcac7c07b.json | 25 + ...-1740f705-594e-4ba4-86b9-a7397841852a.json | 101 + ...-f241289c-0658-4e22-beca-b8ee18fa1c5e.json | 205 + ...-1f6e1bdd-fc3f-4a44-b6a7-36b505a2bc08.json | 222 + ...-cb45345a-eb47-4796-90de-54189aa91906.json | 297 + ...-ade8ba36-35c6-4c26-a794-1358fc248c91.json | 336 + ...-d3487e2f-b5c3-4ba6-a4ad-bd45f3059e7b.json | 457 + ...-87a8141e-a121-46dc-a00f-776de71bb0b1.json | 502 + ...-73ba1036-f664-420c-8d38-fc474d664848.json | 432 + ...-7b0538fd-d4b9-43b3-92c7-691cc391e386.json | 521 + ...-d68a6881-2741-489a-b7bd-a28264c8897a.json | 635 + ...-d99cfb6e-8259-4051-98fc-484c2b1166c0.json | 529 + ...-cba6387c-87fd-4774-b883-b02dc21edbe1.json | 501 + ...-741509d7-8c95-4626-b5c3-c17625f529b5.json | 829 + ...-5693c2ca-1af1-4296-b5e4-039401f77778.json | 552 + ...-7e10b2dd-f253-4d1d-b859-ec8a710b55b8.json | 741 + ...-2901a619-fff5-448f-99fe-6220b810c578.json | 849 + ...-8cf92baa-a0a3-4010-9457-96b2f6261d69.json | 862 + ...-125ef6cd-6d4b-4800-ad62-0f4317b13564.json | 1015 + ...-ab0f8e03-6145-4021-98bc-bc4414e1edac.json | 80 + ...-2b517ff1-9d51-4eb3-9295-59aef5edfe82.json | 25 + ...-871a08c3-b8b7-48ec-b0f3-8f40a4b63667.json | 101 + ...-58712d84-87f6-4a52-b17f-0a1efd24dc9a.json | 104 + ...-b61b8318-0b73-4814-96b9-ffd4a7bf2c0a.json | 103 + ...-b4c04c00-0029-44d8-a7a6-df5aa8196990.json | 133 + ...-2dfcb57a-f822-4ba8-935c-c6ef623952cf.json | 49 + ...-e8877634-86e5-4563-9155-7f538767b281.json | 103 + ...-9ce76d8d-3fdf-4be0-a718-67783ed4f0bd.json | 150 + ...-2f49b3b2-64e5-483d-8360-df43563d2ae4.json | 149 + ...-69edad03-8dfd-4c82-a029-e43ba88f8c78.json | 154 + ...-7c923095-534b-4a11-b54e-2d2ef4e1b46b.json | 156 + ...-b159dfaa-e3ec-46e5-98f1-23e5b2c960d2.json | 103 + ...-cdb80630-09f6-4557-a579-1f22c6aad840.json | 158 + ...-457a1374-bc7f-42db-8cbe-f5b69bd2aa06.json | 127 + ...-f157d325-29b7-4f9f-bdb5-7e0eba3fcb5c.json | 172 + ...-f0c7f0bf-41b6-4568-9911-e2d805265711.json | 174 + ...-25d5bdb7-8d18-498d-a97d-d95a6fb8c9a8.json | 119 + ...-1f6f9435-92ad-4363-9f0c-1e54059c5dc4.json | 209 + ...-83d29a38-d185-4da1-bf7c-796c32549172.json | 187 + ...-a886f310-136b-4d5e-b32b-512a0240982f.json | 181 + ...-4d28fe91-5746-4c39-a8f0-ed56ca160a14.json | 128 + ...-b20b34f9-5e1b-4d0f-8572-f21362b0e345.json | 173 + ...-be76a133-7392-4cf1-904a-fb9e7463d9ff.json | 221 + ...-78189ca7-7948-4439-966b-4447023b9d74.json | 199 + ...-6e98b3d8-7a3c-44ab-886c-20808a9bbc0a.json | 145 + ...-cfe80931-2a26-43cf-ac19-9333113edb1b.json | 260 + ...-dca8d182-bcd4-4450-b3b8-ab15f9ec2b20.json | 232 + ...-0934697b-6b99-4564-bc59-fcfff205e7a8.json | 199 + ...-6fd137e0-c5b3-46bf-b7cc-1b9ada70f8cb.json | 244 + ...-86cd1183-238f-46f1-89fb-e31c381aa9cd.json | 224 + ...-dac7fc11-4da0-43b6-a704-b5d5e0f01355.json | 289 + ...-bdb9aaa4-0806-4b34-a670-488774d109df.json | 194 + ...-df75f9a7-1493-4f85-933b-41e16a40a9aa.json | 277 + ...-9a69c5d6-6e9c-4112-b48d-c967ce827264.json | 267 + ...-aa14cc9b-89e7-4ad3-bd27-cebd20d762fd.json | 255 + ...-913a5283-6ee7-4539-b536-25e88067c71c.json | 302 + ...-aa3d9573-1529-4050-b0e3-d3a2c82060ad.json | 275 + ...-4f7eeec0-56e3-48d7-b30c-79fd53ad3971.json | 314 + ...-8d816111-c114-4b60-9a27-9562e7740699.json | 327 + ...-642c65dc-71fa-4e6a-a148-f2dc8dbd48fd.json | 449 + ...-078046e8-41b1-4d52-9ec7-cba3101036d7.json | 401 + ...-e006588c-7192-4449-bd09-0abc99a17369.json | 385 + ...-22ecd0b6-4fd9-4521-9067-46171675f011.json | 718 + ...-a3361f1b-c64e-4877-b104-9e005664b987.json | 490 + ...-336e2810-dd51-4d25-9729-a91266346caf.json | 394 + ...-1be16f79-52f8-40fb-91c4-ea3d3e097ca0.json | 485 + ...-3017e126-f28b-4de3-a2d0-55924f78cb18.json | 865 + ...-1075c611-326d-47eb-b752-8450c62dbeff.json | 1226 + ...-d5281764-a7b2-4459-a57a-1d3573814c84.json | 1623 + ...-b6d2204e-b85e-4a35-937c-c1bc3c2af34d.json | 2161 + .../fuzz/corpus/coverage_report.html | 197588 +++++++++++++++ ...-32dff114-6a03-4430-9d95-836289099cbe.json | 23 + ...-d4125812-54d1-4fe8-b2da-34d5e34dc9fa.json | 23 + ...-0a807f4b-d878-4428-b5b9-a9f85a8454cb.json | 23 + ...-1ef75ec6-dacf-4714-ac4e-b14b0e6db321.json | 23 + ...-ab38a60b-d225-4ae7-b02b-7b0e34fbc487.json | 23 + ...-a56168a4-d5f3-41bd-a2e4-952218f3cb5d.json | 23 + ...-31a6e666-e7fb-4748-8532-81b12c1dcc7d.json | 23 + ...-d3a81c39-8004-4bff-b6fc-5ebcc72e5663.json | 23 + ...-600969d3-9967-402d-a424-4aa6f788b3cc.json | 23 + test/invariants/helpers/Utils.t.sol | 19 + .../{PropertyA.t.sol => PropertyEbo.t.sol} | 2 +- .../properties/PropertyParent.t.sol | 5 +- .../properties/PropertySanityCheck.t.sol | 99 + 85 files changed, 223988 insertions(+), 4 deletions(-) create mode 100755 test/invariants/fuzz/corpus/call_sequences/immutable/1731277803570201000-9d2d56aa-59cf-4190-ad90-113fcac7c07b.json create mode 100755 test/invariants/fuzz/corpus/call_sequences/immutable/1731277803572719000-1740f705-594e-4ba4-86b9-a7397841852a.json create mode 100755 test/invariants/fuzz/corpus/call_sequences/immutable/1731277803582478000-f241289c-0658-4e22-beca-b8ee18fa1c5e.json create mode 100755 test/invariants/fuzz/corpus/call_sequences/immutable/1731277803585801000-1f6e1bdd-fc3f-4a44-b6a7-36b505a2bc08.json create mode 100755 test/invariants/fuzz/corpus/call_sequences/immutable/1731277803593014000-cb45345a-eb47-4796-90de-54189aa91906.json create mode 100755 test/invariants/fuzz/corpus/call_sequences/immutable/1731277803593410000-ade8ba36-35c6-4c26-a794-1358fc248c91.json create mode 100755 test/invariants/fuzz/corpus/call_sequences/immutable/1731277803593538000-d3487e2f-b5c3-4ba6-a4ad-bd45f3059e7b.json create mode 100755 test/invariants/fuzz/corpus/call_sequences/immutable/1731277803599728000-87a8141e-a121-46dc-a00f-776de71bb0b1.json create mode 100755 test/invariants/fuzz/corpus/call_sequences/immutable/1731277803605108000-73ba1036-f664-420c-8d38-fc474d664848.json create mode 100755 test/invariants/fuzz/corpus/call_sequences/immutable/1731277803605587000-7b0538fd-d4b9-43b3-92c7-691cc391e386.json create mode 100755 test/invariants/fuzz/corpus/call_sequences/immutable/1731277803606635000-d68a6881-2741-489a-b7bd-a28264c8897a.json create mode 100755 test/invariants/fuzz/corpus/call_sequences/immutable/1731277803607978000-d99cfb6e-8259-4051-98fc-484c2b1166c0.json create mode 100755 test/invariants/fuzz/corpus/call_sequences/immutable/1731277803608778000-cba6387c-87fd-4774-b883-b02dc21edbe1.json create mode 100755 test/invariants/fuzz/corpus/call_sequences/immutable/1731277803609589000-741509d7-8c95-4626-b5c3-c17625f529b5.json create mode 100755 test/invariants/fuzz/corpus/call_sequences/immutable/1731277803612336000-5693c2ca-1af1-4296-b5e4-039401f77778.json create mode 100755 test/invariants/fuzz/corpus/call_sequences/immutable/1731277803616547000-7e10b2dd-f253-4d1d-b859-ec8a710b55b8.json create mode 100755 test/invariants/fuzz/corpus/call_sequences/immutable/1731277803617615000-2901a619-fff5-448f-99fe-6220b810c578.json create mode 100755 test/invariants/fuzz/corpus/call_sequences/immutable/1731277803620612000-8cf92baa-a0a3-4010-9457-96b2f6261d69.json create mode 100755 test/invariants/fuzz/corpus/call_sequences/immutable/1731277803621764000-125ef6cd-6d4b-4800-ad62-0f4317b13564.json create mode 100755 test/invariants/fuzz/corpus/call_sequences/mutable/1731277803567787000-ab0f8e03-6145-4021-98bc-bc4414e1edac.json create mode 100755 test/invariants/fuzz/corpus/call_sequences/mutable/1731277803569568000-2b517ff1-9d51-4eb3-9295-59aef5edfe82.json create mode 100755 test/invariants/fuzz/corpus/call_sequences/mutable/1731277803569770000-871a08c3-b8b7-48ec-b0f3-8f40a4b63667.json create mode 100755 test/invariants/fuzz/corpus/call_sequences/mutable/1731277803570237000-58712d84-87f6-4a52-b17f-0a1efd24dc9a.json create mode 100755 test/invariants/fuzz/corpus/call_sequences/mutable/1731277803570989000-b61b8318-0b73-4814-96b9-ffd4a7bf2c0a.json create mode 100755 test/invariants/fuzz/corpus/call_sequences/mutable/1731277803571997000-b4c04c00-0029-44d8-a7a6-df5aa8196990.json create mode 100755 test/invariants/fuzz/corpus/call_sequences/mutable/1731277803572903000-2dfcb57a-f822-4ba8-935c-c6ef623952cf.json create mode 100755 test/invariants/fuzz/corpus/call_sequences/mutable/1731277803573530000-e8877634-86e5-4563-9155-7f538767b281.json create mode 100755 test/invariants/fuzz/corpus/call_sequences/mutable/1731277803573604000-9ce76d8d-3fdf-4be0-a718-67783ed4f0bd.json create mode 100755 test/invariants/fuzz/corpus/call_sequences/mutable/1731277803573691000-2f49b3b2-64e5-483d-8360-df43563d2ae4.json create mode 100755 test/invariants/fuzz/corpus/call_sequences/mutable/1731277803574933000-69edad03-8dfd-4c82-a029-e43ba88f8c78.json create mode 100755 test/invariants/fuzz/corpus/call_sequences/mutable/1731277803575378000-7c923095-534b-4a11-b54e-2d2ef4e1b46b.json create mode 100755 test/invariants/fuzz/corpus/call_sequences/mutable/1731277803575499000-b159dfaa-e3ec-46e5-98f1-23e5b2c960d2.json create mode 100755 test/invariants/fuzz/corpus/call_sequences/mutable/1731277803575632000-cdb80630-09f6-4557-a579-1f22c6aad840.json create mode 100755 test/invariants/fuzz/corpus/call_sequences/mutable/1731277803576501000-457a1374-bc7f-42db-8cbe-f5b69bd2aa06.json create mode 100755 test/invariants/fuzz/corpus/call_sequences/mutable/1731277803576958000-f157d325-29b7-4f9f-bdb5-7e0eba3fcb5c.json create mode 100755 test/invariants/fuzz/corpus/call_sequences/mutable/1731277803577371000-f0c7f0bf-41b6-4568-9911-e2d805265711.json create mode 100755 test/invariants/fuzz/corpus/call_sequences/mutable/1731277803577541000-25d5bdb7-8d18-498d-a97d-d95a6fb8c9a8.json create mode 100755 test/invariants/fuzz/corpus/call_sequences/mutable/1731277803577723000-1f6f9435-92ad-4363-9f0c-1e54059c5dc4.json create mode 100755 test/invariants/fuzz/corpus/call_sequences/mutable/1731277803577914000-83d29a38-d185-4da1-bf7c-796c32549172.json create mode 100755 test/invariants/fuzz/corpus/call_sequences/mutable/1731277803579664000-a886f310-136b-4d5e-b32b-512a0240982f.json create mode 100755 test/invariants/fuzz/corpus/call_sequences/mutable/1731277803580224000-4d28fe91-5746-4c39-a8f0-ed56ca160a14.json create mode 100755 test/invariants/fuzz/corpus/call_sequences/mutable/1731277803580455000-b20b34f9-5e1b-4d0f-8572-f21362b0e345.json create mode 100755 test/invariants/fuzz/corpus/call_sequences/mutable/1731277803581400000-be76a133-7392-4cf1-904a-fb9e7463d9ff.json create mode 100755 test/invariants/fuzz/corpus/call_sequences/mutable/1731277803581661000-78189ca7-7948-4439-966b-4447023b9d74.json create mode 100755 test/invariants/fuzz/corpus/call_sequences/mutable/1731277803582447000-6e98b3d8-7a3c-44ab-886c-20808a9bbc0a.json create mode 100755 test/invariants/fuzz/corpus/call_sequences/mutable/1731277803582764000-cfe80931-2a26-43cf-ac19-9333113edb1b.json create mode 100755 test/invariants/fuzz/corpus/call_sequences/mutable/1731277803583775000-dca8d182-bcd4-4450-b3b8-ab15f9ec2b20.json create mode 100755 test/invariants/fuzz/corpus/call_sequences/mutable/1731277803584460000-0934697b-6b99-4564-bc59-fcfff205e7a8.json create mode 100755 test/invariants/fuzz/corpus/call_sequences/mutable/1731277803584811000-6fd137e0-c5b3-46bf-b7cc-1b9ada70f8cb.json create mode 100755 test/invariants/fuzz/corpus/call_sequences/mutable/1731277803585754000-86cd1183-238f-46f1-89fb-e31c381aa9cd.json create mode 100755 test/invariants/fuzz/corpus/call_sequences/mutable/1731277803586882000-dac7fc11-4da0-43b6-a704-b5d5e0f01355.json create mode 100755 test/invariants/fuzz/corpus/call_sequences/mutable/1731277803587294000-bdb9aaa4-0806-4b34-a670-488774d109df.json create mode 100755 test/invariants/fuzz/corpus/call_sequences/mutable/1731277803587717000-df75f9a7-1493-4f85-933b-41e16a40a9aa.json create mode 100755 test/invariants/fuzz/corpus/call_sequences/mutable/1731277803588141000-9a69c5d6-6e9c-4112-b48d-c967ce827264.json create mode 100755 test/invariants/fuzz/corpus/call_sequences/mutable/1731277803590022000-aa14cc9b-89e7-4ad3-bd27-cebd20d762fd.json create mode 100755 test/invariants/fuzz/corpus/call_sequences/mutable/1731277803590829000-913a5283-6ee7-4539-b536-25e88067c71c.json create mode 100755 test/invariants/fuzz/corpus/call_sequences/mutable/1731277803591721000-aa3d9573-1529-4050-b0e3-d3a2c82060ad.json create mode 100755 test/invariants/fuzz/corpus/call_sequences/mutable/1731277803592555000-4f7eeec0-56e3-48d7-b30c-79fd53ad3971.json create mode 100755 test/invariants/fuzz/corpus/call_sequences/mutable/1731277803595622000-8d816111-c114-4b60-9a27-9562e7740699.json create mode 100755 test/invariants/fuzz/corpus/call_sequences/mutable/1731277803597300000-642c65dc-71fa-4e6a-a148-f2dc8dbd48fd.json create mode 100755 test/invariants/fuzz/corpus/call_sequences/mutable/1731277803598316000-078046e8-41b1-4d52-9ec7-cba3101036d7.json create mode 100755 test/invariants/fuzz/corpus/call_sequences/mutable/1731277803599309000-e006588c-7192-4449-bd09-0abc99a17369.json create mode 100755 test/invariants/fuzz/corpus/call_sequences/mutable/1731277803600377000-22ecd0b6-4fd9-4521-9067-46171675f011.json create mode 100755 test/invariants/fuzz/corpus/call_sequences/mutable/1731277803601066000-a3361f1b-c64e-4877-b104-9e005664b987.json create mode 100755 test/invariants/fuzz/corpus/call_sequences/mutable/1731277803601793000-336e2810-dd51-4d25-9729-a91266346caf.json create mode 100755 test/invariants/fuzz/corpus/call_sequences/mutable/1731277803602532000-1be16f79-52f8-40fb-91c4-ea3d3e097ca0.json create mode 100755 test/invariants/fuzz/corpus/call_sequences/mutable/1731277803615385000-3017e126-f28b-4de3-a2d0-55924f78cb18.json create mode 100755 test/invariants/fuzz/corpus/call_sequences/mutable/1731277803619106000-1075c611-326d-47eb-b752-8450c62dbeff.json create mode 100755 test/invariants/fuzz/corpus/call_sequences/mutable/1731277803628684000-d5281764-a7b2-4459-a57a-1d3573814c84.json create mode 100755 test/invariants/fuzz/corpus/call_sequences/mutable/1731277803638838000-b6d2204e-b85e-4a35-937c-c1bc3c2af34d.json create mode 100644 test/invariants/fuzz/corpus/coverage_report.html create mode 100755 test/invariants/fuzz/corpus/test_results/1731277916310343000-32dff114-6a03-4430-9d95-836289099cbe.json create mode 100755 test/invariants/fuzz/corpus/test_results/1731277916315548000-d4125812-54d1-4fe8-b2da-34d5e34dc9fa.json create mode 100755 test/invariants/fuzz/corpus/test_results/1731277916315901000-0a807f4b-d878-4428-b5b9-a9f85a8454cb.json create mode 100755 test/invariants/fuzz/corpus/test_results/1731277916316125000-1ef75ec6-dacf-4714-ac4e-b14b0e6db321.json create mode 100755 test/invariants/fuzz/corpus/test_results/1731277916317250000-ab38a60b-d225-4ae7-b02b-7b0e34fbc487.json create mode 100755 test/invariants/fuzz/corpus/test_results/1731277916317637000-a56168a4-d5f3-41bd-a2e4-952218f3cb5d.json create mode 100755 test/invariants/fuzz/corpus/test_results/1731277916318080000-31a6e666-e7fb-4748-8532-81b12c1dcc7d.json create mode 100755 test/invariants/fuzz/corpus/test_results/1731277916318104000-d3a81c39-8004-4bff-b6fc-5ebcc72e5663.json create mode 100755 test/invariants/fuzz/corpus/test_results/1731277916318142000-600969d3-9967-402d-a424-4aa6f788b3cc.json rename test/invariants/properties/{PropertyA.t.sol => PropertyEbo.t.sol} (81%) create mode 100644 test/invariants/properties/PropertySanityCheck.t.sol diff --git a/test/invariants/FuzzTest.t.sol b/test/invariants/FuzzTest.t.sol index c1fe413..ce7a9b5 100644 --- a/test/invariants/FuzzTest.t.sol +++ b/test/invariants/FuzzTest.t.sol @@ -5,6 +5,6 @@ import {PropertyParent} from './properties/PropertyParent.t.sol'; contract FuzzTest is PropertyParent { function test_debug() public { - assert(true); + this.property_sanityCheck(); } } diff --git a/test/invariants/fuzz/corpus/call_sequences/immutable/1731277803570201000-9d2d56aa-59cf-4190-ad90-113fcac7c07b.json b/test/invariants/fuzz/corpus/call_sequences/immutable/1731277803570201000-9d2d56aa-59cf-4190-ad90-113fcac7c07b.json new file mode 100755 index 0000000..51c460e --- /dev/null +++ b/test/invariants/fuzz/corpus/call_sequences/immutable/1731277803570201000-9d2d56aa-59cf-4190-ad90-113fcac7c07b.json @@ -0,0 +1,25 @@ +[ + { + "call": { + "from": "0x0000000000000000000000000000000000050000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xc5c171570000000000000000000000000647a2b37d508178e906383325307f78da653649", + "dataAbiValues": { + "methodSignature": "handleAddChain(uint256)", + "inputValues": [ + "35851470801474844628522781619661439362520135241" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 17285, + "blockTimestampDelay": 259199 + } +] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/call_sequences/immutable/1731277803572719000-1740f705-594e-4ba4-86b9-a7397841852a.json b/test/invariants/fuzz/corpus/call_sequences/immutable/1731277803572719000-1740f705-594e-4ba4-86b9-a7397841852a.json new file mode 100755 index 0000000..07ffa02 --- /dev/null +++ b/test/invariants/fuzz/corpus/call_sequences/immutable/1731277803572719000-1740f705-594e-4ba4-86b9-a7397841852a.json @@ -0,0 +1,101 @@ +[ + { + "call": { + "from": "0x0000000000000000000000000000000000030000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x13a8b8040000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000034000000000000000000000000000000000000000000000000000000000000000170000000000000000000000000000000000000000000000000000000000d2f000ffffc0000000000000000000000000000000000000000000000000000000000181dc31bc03ad9bc8a966de91dfc8c49b929f6d5fd44a9c22a7f5bb37cebfc106bca412bb66f5a786f1f157a7fc9a7a410fdc25af263685a02f7fba0f220b6917fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b825bc2cfc37067e378b4feef3f3411136744d0b2851c161c601669654cf27bfe6100000000000000000000000000000000000000000000000000000000000000006cd40d93882a844c2becf361c7579664aef7a6ef6e8b79d6bf6f6f76426e9b14039e696f94058cfd274de97421f65916ac135f4d55083d357b9c1f34820c9376000000000000000000000000000000000000000000000000000000000003fffe000000000000000000000000000000000000000000000000000000000000000167e6a528e0202cf23a36eacf513eee303475d3e4c983b2ae2d616b11c440f70a4ac07813439b9213b22d4d86340307a2982de60c241368ad288dfea742b6eb5efffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9686c2d73382b1edfa908bcaeb6b9ac0073f469887a9150c80831642e47e35a614c1bffffffffffffffffffffffffffffffffffffffffffffe48e5eb33a3a7f000000104a13a90c13653470268ea78892361e7e91e706d859aabaaf45ddd18c956640809a37cc7335cdf29b7d988dc8c05e2c1899ad1795364e6fa667088b49487472000000000000000000000000000000000000000000000000000000000000fff6fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b80756993dc4be6ecf1e46c48d6f9cae9255a8b46ef956a3d85442a5f41f70ecf93000000000000000000000000000000000000000000000000000000000076a700a77a4c48695a0407441e86efc633aee092d2ebd99c87fdfeebcd904fe33e086d000000000000000000000000000000000000000000000000000000000000001d563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd0633ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed6958658aad3329b56f2f98187bbaed7351982ae06a00b9382adcb723b8b393d1f5e2def8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b4498bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef328d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad82082401f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade0554594d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae962914f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cbba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c33f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8fd276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f6617237058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf259a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe2665f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a219fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb", + "dataAbiValues": { + "methodSignature": "handleCreateRequests(uint256[],bytes32[])", + "inputValues": [ + [ + "13824000", + "115791647525550000827488589184312722123641027794666345134718053606362806484993", + "58737407075920930096693749632210245280794127876199190949253348332199714210054", + "85324707736064915141600617856415742369037048538489516430413284888496340429079", + "115792089237316195423570985008687907853269984665640564039457584007913129380738", + "41504671482165347584846103287222174319130579613222615088745194098566077611617", + "0", + "49224452924880417829398231270379785502530069722970149981823851608145893694228", + "1636828073493779560152621491074002847609709387720111137750911676859097584502", + "262142", + "1", + "46995738119123743123282428161140493004285235666026628953647859202250191730442", + "33811214160519685654400438720767591502827986970858420988841187408488311483230", + "115792089237316195423570985008687907853269984665640564039457584007913129207916", + "20557653259021005890251421269967042420225955023564768794272035576696478452763", + "115792089237316195423570985008687907853269984665640563909857584007913129639936", + "7367887950809164700104084563884591449786965425123545364576065505479275931200", + "58168524174645209900719041489934173752247098791866719219864340874379345294450", + "65526", + "115792089237316195423570985008687907853269984665640564039457584007913129380736", + "53107142721938561923251317745913031228477959801596843755970727929974933606291", + "7776000", + "75752327540241786815348607290604056680494387521335977257182003214564422715501" + ], + [ + "563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe", + "27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a", + "9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd06", + "33ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865", + "8aad3329b56f2f98187bbaed7351982ae06a00b9382adcb723b8b393d1f5e2de", + "f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1", + "c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b44", + "98bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01", + "108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef32", + "8d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea", + "94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad8208240", + "1f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade05545", + "94d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056", + "cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae96291", + "4f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa", + "9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874", + "ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cb", + "ba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c3", + "3f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8f", + "d276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99", + "fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce", + "3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb", + "4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f661723", + "7058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78", + "994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25", + "9a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe26", + "65f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a2", + "19fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c", + "51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb" + ] + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 21265, + "blockTimestampDelay": 360627 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000050000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xbf938c53", + "dataAbiValues": { + "methodSignature": "property_sanityCheck()", + "inputValues": [] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 15835, + "blockTimestampDelay": 490250 + } +] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/call_sequences/immutable/1731277803582478000-f241289c-0658-4e22-beca-b8ee18fa1c5e.json b/test/invariants/fuzz/corpus/call_sequences/immutable/1731277803582478000-f241289c-0658-4e22-beca-b8ee18fa1c5e.json new file mode 100755 index 0000000..6283a3c --- /dev/null +++ b/test/invariants/fuzz/corpus/call_sequences/immutable/1731277803582478000-f241289c-0658-4e22-beca-b8ee18fa1c5e.json @@ -0,0 +1,205 @@ +[ + { + "call": { + "from": "0x0000000000000000000000000000000000030000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x13a8b8040000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000034000000000000000000000000000000000000000000000000000000000000000170000000000000000000000000000000000000000000000000000000000d2f000ffffc0000000000000000000000000000000000000000000000000000000000181dc31bc03ad9bc8a966de91dfc8c49b929f6d5fd44a9c22a7f5bb37cebfc106ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed8ee8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b825bc2cfc37067e378b4feef3f3411136744d0b2851c161c601669654cf27bfe610000000000000000000000000000000000000000000000000000000000000000578750b27e877a957d33dc50d914b1caf972efffa4bb78b85e66dd813a864ca4039e696f94058cfd274de97421f65916ac135f4d55083d357b9c1f34820c9376000000000000000000000000000000000000000000000000000000000003fffe000000000000000000000000000000000000000000000000000000000000000167e6a528e0202cf23a36eacf513eee303475d3e4c983b2ae2d616b11c440f70a4ac07813439b9213b22d4d86340307a2982de60c241368ad288dfea742b6eb5efffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9686c2d73382b1edfa908bcaeb6b9ac0073f469887a9150c80831642e47e35a614c1bffffffffffffffffffffffffffffffffffffffffffffe48e5eb33a3a7f000000104a13a90c13653470268ea78892361e7e91e706d859aabaaf45ddd18c956640809a37cc7335cdf29b7d988dc8c05e2c1899ad1795364e6fa667088b49487472000000000000000000000000000000000000000000000000000000000000fff6fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b800000000000000000000000000000000000000000000000000329c51ac594cf93000000000000000000000000000000000000000000000000000000000076a700a77a4c48695a0407441e86efc633aee092d2ebd99c87fdfeebcd904fe33e086d000000000000000000000000000000000000000000000000000000000000001d563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd0633ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865d5d6866ffb684491364a0853403f689144f5664f5d50de1b1a30d683ff29f21bf8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b4498bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef328d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad82082401f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade0554594d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae96291d8c581a922d52cd477658fcc2e2ca1f954f274ed2cd833a98e6d1d4455581f9d9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cbba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c33f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8fd276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f6617237058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf259a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe2665f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a219fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb", + "dataAbiValues": { + "methodSignature": "handleCreateRequests(uint256[],bytes32[])", + "inputValues": [ + [ + "13824000", + "115791647525550000827488589184312722123641027794666345134718053606362806484993", + "58737407075920930096693749632210245280794127876199190949253348332199714210054", + "115792089237316195423570985008687907853269984665640564039457584007913128431336", + "115792089237316195423570985008687907853269984665640564039457584007913129380738", + "41504671482165347584846103287222174319130579613222615088745194098566077611617", + "0", + "39590299132392589184737138068833640165131826767556478003143025413084726840484", + "1636828073493779560152621491074002847609709387720111137750911676859097584502", + "262142", + "1", + "46995738119123743123282428161140493004285235666026628953647859202250191730442", + "33811214160519685654400438720767591502827986970858420988841187408488311483230", + "115792089237316195423570985008687907853269984665640564039457584007913129207916", + "20557653259021005890251421269967042420225955023564768794272035576696478452763", + "115792089237316195423570985008687907853269984665640563909857584007913129639936", + "7367887950809164700104084563884591449786965425123545364576065505479275931200", + "58168524174645209900719041489934173752247098791866719219864340874379345294450", + "65526", + "115792089237316195423570985008687907853269984665640564039457584007913129380736", + "227929974933606291", + "7776000", + "75752327540241786815348607290604056680494387521335977257182003214564422715501" + ], + [ + "563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe", + "27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a", + "9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd06", + "33ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865", + "d5d6866ffb684491364a0853403f689144f5664f5d50de1b1a30d683ff29f21b", + "f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1", + "c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b44", + "98bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01", + "108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef32", + "8d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea", + "94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad8208240", + "1f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade05545", + "94d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056", + "cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae96291", + "d8c581a922d52cd477658fcc2e2ca1f954f274ed2cd833a98e6d1d4455581f9d", + "9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874", + "ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cb", + "ba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c3", + "3f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8f", + "d276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99", + "fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce", + "3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb", + "4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f661723", + "7058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78", + "994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25", + "9a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe26", + "65f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a2", + "19fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c", + "51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb" + ] + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 21265, + "blockTimestampDelay": 360627 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000020000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x161c7318", + "dataAbiValues": { + "methodSignature": "test_debug()", + "inputValues": [] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 15325, + "blockTimestampDelay": 189245 + }, + { + "call": { + "from": "0x00000000000000000000000000000000000a0000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x88b05f294e5c5739570432e46e997185cf2683c287e8339e1ce7ab9502db4f4b4f0c1b77000000000000000000000000000000000000000000000000000000000012750000000000000000000000000000000000000000000000000006f05b59d3b200003c3b20fe3c6474ef6112cec6e2e1e2a66147c502767418c32e65c3bfa035d898948fc45007206ff5c0b2215d0b5c97d5551a84ed653f28e284b8567c463ce3650000000000000000000000000000000000000000000000000000000000069780ffffffffffffffffffffffffffffffffffffffffffffffffffffffec398000000000000000000000000000000000000000000000000000000000000000093a80", + "dataAbiValues": { + "methodSignature": "handleSetDisputeModuleData(uint256,(address,address,uint256,uint256,uint256,uint256,uint256))", + "inputValues": [ + "35443554117267417118592017165536035041230544133048285386578266163756344810359", + { + "accountingExtension": "0x0000000000000000000000000000000000127500", + "bondEscalationDeadline": "432000", + "bondSize": "27243242601887521753615714576112380311306725462768124357416761313244220872856", + "bondToken": "0x00000000000000000000000006f05b59d3b20000", + "disputeWindow": "604800", + "maxNumberOfEscalations": "67196315620416968751812103706326677402054656808860235011842083525495944438629", + "tyingBuffer": "115792089237316195423570985008687907853269984665640564039457584007828194983936" + } + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 24101, + "blockTimestampDelay": 185392 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000040000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x3c26dcf8000000000000000000000000000000000000000000000853a0d2313c00000000", + "dataAbiValues": { + "methodSignature": "handleSetEpochManager(uint256)", + "inputValues": [ + "39321600000000000000000" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 23050, + "blockTimestampDelay": 360593 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000070000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x1c6850cfb0e3106162bbf50b7b4f4127a44fc6dee30686640d85ab8a97c7a387e688d09200000000000000000000000000000000000000000000000000000000000151800000000000000000000000000000000000000000000000000de0b6b3a7640000", + "dataAbiValues": { + "methodSignature": "handleUpdateDisputeStatus(uint256,uint256,uint256)", + "inputValues": [ + "80008248687813878652618995284154503941697939794158322754224777983398987223186", + "86400", + "1000000000000000000" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 17066, + "blockTimestampDelay": 86400 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000020000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xc0106a6cce21db24dd246f08ad02e64e7a8e8742fa9607e8fdf81425d16e85c70f3de5d85907be10f550a4ab3f84480cf0ea723b2a74da20322f8a7c02918a70cdb15ac9", + "dataAbiValues": { + "methodSignature": "handleCreateRequest(uint256,uint256)", + "inputValues": [ + "93236265237587594263022487768855356786420509345912517467786824227481808922072", + "40269523242363880299786798295795090179015741572111778996238876869560403843785" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 0, + "blockTimestampDelay": 101426 + } +] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/call_sequences/immutable/1731277803585801000-1f6e1bdd-fc3f-4a44-b6a7-36b505a2bc08.json b/test/invariants/fuzz/corpus/call_sequences/immutable/1731277803585801000-1f6e1bdd-fc3f-4a44-b6a7-36b505a2bc08.json new file mode 100755 index 0000000..4cdce6a --- /dev/null +++ b/test/invariants/fuzz/corpus/call_sequences/immutable/1731277803585801000-1f6e1bdd-fc3f-4a44-b6a7-36b505a2bc08.json @@ -0,0 +1,222 @@ +[ + { + "call": { + "from": "0x0000000000000000000000000000000000030000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x13a8b8040000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000034000000000000000000000000000000000000000000000000000000000000000170000000000000000000000000000000000000000000000000000000000d2f000ffffc0000000000000000000000000000000000000000000000000000000000181dc31bc03ad9bc8a966de91dfc8c49b929f6d5fd44a9c22a7f5bb37cebfc106ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed8ee8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b825bc2cfc37067e378b4feef3f3411136744d0b2851c161c601669654cf27bfe6100000000000000000000000000000000000000000000000000000000000000006cd40d93882a844c2becf361c7579664aef7a6ef6e8b79d6bf6f6f76426e9b14039e696f94058cfd274de97421f65916ac135f4d55083d357b9c1f34820c9376000000000000000000000000000000000000000000000000000000000003fffe000000000000000000000000000000000000000000000000000000000000000167e6a528e0202cf23a36eacf513eee303475d3e4c983b2ae2d616b11c440f70a4ac07813439b9213b22d4d86340307a2982de60c241368ad288dfea742b6eb5efffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9686c2d73382b1edfa908bcaeb6b9ac0073f469887a9150c80831642e47e35a614c1bffffffffffffffffffffffffffffffffffffffffffffe48e5eb33a3a7f000000104a13a90c13653470268ea78892361e7e91e706d859aabaaf45ddd18c956640809a37cc7335cdf29b7d988dc8c05e2c1899ad1795364e6fa667088b49487472ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffee00b4fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b80756993dc4be6ecf1e46c48d6f9cae9255a8b46ef956a3d85442a5f41f70ecf93000000000000000000000000000000000000000000000000000000000076a700a77a4c48695a0407441e86efc633aee092d2ebd99c87fdfeebcd904fe33e086d000000000000000000000000000000000000000000000000000000000000001d563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd0633ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865a46715d7736dde0bcf6527392542031b42d0197ab2c1bb4c4d2d7abaed280007f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b4498bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef328d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad82082401f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade0554594d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae962914f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cbba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c33f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8fd276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f6617237058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf259a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe260d35d19771f7c1af646e114de36d19c25e3fc040b27be76073113bb33db17d5d19fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb", + "dataAbiValues": { + "methodSignature": "handleCreateRequests(uint256[],bytes32[])", + "inputValues": [ + [ + "13824000", + "115791647525550000827488589184312722123641027794666345134718053606362806484993", + "58737407075920930096693749632210245280794127876199190949253348332199714210054", + "115792089237316195423570985008687907853269984665640564039457584007913128431336", + "115792089237316195423570985008687907853269984665640564039457584007913129380738", + "41504671482165347584846103287222174319130579613222615088745194098566077611617", + "0", + "49224452924880417829398231270379785502530069722970149981823851608145893694228", + "1636828073493779560152621491074002847609709387720111137750911676859097584502", + "262142", + "1", + "46995738119123743123282428161140493004285235666026628953647859202250191730442", + "33811214160519685654400438720767591502827986970858420988841187408488311483230", + "115792089237316195423570985008687907853269984665640564039457584007913129207916", + "20557653259021005890251421269967042420225955023564768794272035576696478452763", + "115792089237316195423570985008687907853269984665640563909857584007913129639936", + "7367887950809164700104084563884591449786965425123545364576065505479275931200", + "58168524174645209900719041489934173752247098791866719219864340874379345294450", + "115792089237316195423570985008687907853269984665640564039457584007913128460468", + "115792089237316195423570985008687907853269984665640564039457584007913129380736", + "53107142721938561923251317745913031228477959801596843755970727929974933606291", + "7776000", + "75752327540241786815348607290604056680494387521335977257182003214564422715501" + ], + [ + "563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe", + "27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a", + "9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd06", + "33ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865", + "a46715d7736dde0bcf6527392542031b42d0197ab2c1bb4c4d2d7abaed280007", + "f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1", + "c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b44", + "98bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01", + "108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef32", + "8d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea", + "94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad8208240", + "1f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade05545", + "94d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056", + "cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae96291", + "4f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa", + "9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874", + "ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cb", + "ba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c3", + "3f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8f", + "d276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99", + "fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce", + "3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb", + "4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f661723", + "7058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78", + "994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25", + "9a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe26", + "0d35d19771f7c1af646e114de36d19c25e3fc040b27be76073113bb33db17d5d", + "19fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c", + "51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb" + ] + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 21265, + "blockTimestampDelay": 360627 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000080000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x51b295e3caac5b7c00ae43f0a0d2465bc3a827daefa6255afc3feafd105a01b058af4cc3", + "dataAbiValues": { + "methodSignature": "handleFinalize(uint256)", + "inputValues": [ + "91671724510984325847623981850838041499373483072178023597879983910219265559747" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 616, + "blockTimestampDelay": 245182 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000070000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x62e8fd357410315e284ca2250b236ba99041acd7e7626e3fc66727657ddcb75ed512355238b8e299444e7771cad3e9cc9efbc8237922a7b18f034d56199ddaad5f62f70c", + "dataAbiValues": { + "methodSignature": "handleOnDisputeStatusChange(uint256,uint256)", + "inputValues": [ + "52496900712745351460185096722717982602139275703227615313943886816707427317074", + "25656183307321870319256066529210878052151786525540532817103830451324188817164" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 0, + "blockTimestampDelay": 0 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000010000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x5cc02fa53b4e8ff8cbb94866d057a07c347e0cb79a079e6c49875d6adb448ca8b36b2f93", + "dataAbiValues": { + "methodSignature": "handleSetPendingCouncil(uint256)", + "inputValues": [ + "26825265794714411535119211388793422995701606456004679527746190657884506501011" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 22951, + "blockTimestampDelay": 222797 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000090000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x7aeb6faba969b1150e65eb039223322d37083c0f930e9f96e767cfaf888c1440b89042a7ffffffffffffffffffffffffffffffffffffffffffffffffffffffbe15000000", + "dataAbiValues": { + "methodSignature": "handleDisputeResponseBondEscalationModule(uint256,uint256)", + "inputValues": [ + "76627612529152310655938988775485703136714009850335653768166292952282670580391", + "115792089237316195423570985008687907853269984665640564039457584007630014119936" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 23866, + "blockTimestampDelay": 274647 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000030000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 2, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xf4fbbf9b0000000000000000000000000000000000000000000000000000000000000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed8b007c3160c01450d95568fbc7e3fe876965aa411c1bf13d7be2baabf28cedd3012f", + "dataAbiValues": { + "methodSignature": "handleBond(uint256,uint256,uint256)", + "inputValues": [ + "0", + "115792089237316195423570985008687907853269984665640564039457584007913128430336", + "56174036476597730143689219709059961134239333858317208755745576773703517274415" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 0, + "blockTimestampDelay": 404026 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000060000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x94ae6f8c0000000000000000000000000000000000000000000000000000000000000120", + "dataAbiValues": { + "methodSignature": "handleValidateArbitrator(uint256)", + "inputValues": [ + "288" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 28898, + "blockTimestampDelay": 360593 + } +] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/call_sequences/immutable/1731277803593014000-cb45345a-eb47-4796-90de-54189aa91906.json b/test/invariants/fuzz/corpus/call_sequences/immutable/1731277803593014000-cb45345a-eb47-4796-90de-54189aa91906.json new file mode 100755 index 0000000..0266883 --- /dev/null +++ b/test/invariants/fuzz/corpus/call_sequences/immutable/1731277803593014000-cb45345a-eb47-4796-90de-54189aa91906.json @@ -0,0 +1,297 @@ +[ + { + "call": { + "from": "0x0000000000000000000000000000000000030000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x13a8b8040000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000034000000000000000000000000000000000000000000000000000000000000000170000000000000000000000000000000000000000000000000000000000d2f000ffffc0000000000000000000000000000000000000000000000000000000000181dc31bc03ad9bc8a966de91dfc8c49b929f6d5fd44a9c22a7f5bb37cebfc106ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed8ee8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b825bc2cfc37067e378b4feef3f3411136744d0b2851c161c601669654cf27bfe6100000000000000000000000000000000000000000000000000000000000000006cd40d93882a844c2becf361c7579664aef7a6ef6e8b79d6bf6f6f76426e9b14039e696f94058cfd274de97421f65916ac135f4d55083d357b9c1f34820c9376000000000000000000000000000000000000000000000000000000000003fffe000000000000000000000000000000000000000000000000000000000000000167e6a528e0202cf23a36eacf513eee303475d3e4c983b2ae2d616b11c440f70a4ac07813439b9213b22d4d86340307a2982de60c241368ad288dfea742b6eb5efffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9686c2d73382b1edfa908bcaeb6b9ac0073f469887a9150c80831642e47e35a614c1bffffffffffffffffffffffffffffffffffffffffffffe48e5eb33a3a7f000000104a13a90c13653470268ea78892361e7e91e706d859aabaaf45ddd18c956640809a37cc7335cdf29b7d988dc8c05e2c1899ad1795364e6fa667088b49487472000000000000000000000000000000000000000000000000000000000000fff6fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b80756993dc4be6ecf1e46c48d6f9cae9255a8b46ef956a3d85442a5f41f70ecf93000000000000000000000000000000000000000000000000000000000076a700a77a4c48695a0407441e86efc633aee092d2ebd99c87fdfeebcd904fe33e086d000000000000000000000000000000000000000000000000000000000000001d563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd0633ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed6958658aad3329b56f2f98187bbaed7351982ae06a00b9382adcb723b8b393d1f5e2def8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b4498bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef328d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad82082401f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade0554594d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae962914f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cbba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c33f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8fd276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f6617237058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf259a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe2665f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a219fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb", + "dataAbiValues": { + "methodSignature": "handleCreateRequests(uint256[],bytes32[])", + "inputValues": [ + [ + "13824000", + "115791647525550000827488589184312722123641027794666345134718053606362806484993", + "58737407075920930096693749632210245280794127876199190949253348332199714210054", + "115792089237316195423570985008687907853269984665640564039457584007913128431336", + "115792089237316195423570985008687907853269984665640564039457584007913129380738", + "41504671482165347584846103287222174319130579613222615088745194098566077611617", + "0", + "49224452924880417829398231270379785502530069722970149981823851608145893694228", + "1636828073493779560152621491074002847609709387720111137750911676859097584502", + "262142", + "1", + "46995738119123743123282428161140493004285235666026628953647859202250191730442", + "33811214160519685654400438720767591502827986970858420988841187408488311483230", + "115792089237316195423570985008687907853269984665640564039457584007913129207916", + "20557653259021005890251421269967042420225955023564768794272035576696478452763", + "115792089237316195423570985008687907853269984665640563909857584007913129639936", + "7367887950809164700104084563884591449786965425123545364576065505479275931200", + "58168524174645209900719041489934173752247098791866719219864340874379345294450", + "65526", + "115792089237316195423570985008687907853269984665640564039457584007913129380736", + "53107142721938561923251317745913031228477959801596843755970727929974933606291", + "7776000", + "75752327540241786815348607290604056680494387521335977257182003214564422715501" + ], + [ + "563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe", + "27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a", + "9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd06", + "33ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865", + "8aad3329b56f2f98187bbaed7351982ae06a00b9382adcb723b8b393d1f5e2de", + "f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1", + "c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b44", + "98bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01", + "108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef32", + "8d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea", + "94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad8208240", + "1f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade05545", + "94d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056", + "cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae96291", + "4f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa", + "9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874", + "ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cb", + "ba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c3", + "3f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8f", + "d276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99", + "fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce", + "3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb", + "4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f661723", + "7058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78", + "994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25", + "9a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe26", + "65f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a2", + "19fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c", + "51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb" + ] + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 21265, + "blockTimestampDelay": 360627 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000050000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x91e32c74e0613faa5f896b73380078af3c1ee8605eec949aaf9c8f422f264f3de916b58dc905ee964be623d23ba97ccc5a2b838249eaa10a8671d6a68f97b09746107abf", + "dataAbiValues": { + "methodSignature": "handleCreateRequest(uint256,bytes32)", + "inputValues": [ + "101489901651207154401933345705911812335881908306802664469868899807780031346061", + "c905ee964be623d23ba97ccc5a2b838249eaa10a8671d6a68f97b09746107abf" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 23884, + "blockTimestampDelay": 297676 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000020000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x161c7318", + "dataAbiValues": { + "methodSignature": "test_debug()", + "inputValues": [] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 0, + "blockTimestampDelay": 1 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000070000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xaa1a5bd9ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffee2cac1a259bf9695aac61487b4606621f281407f44a6d621116f436e53e00628b", + "dataAbiValues": { + "methodSignature": "handleResolveDispute(uint256,uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913129639918", + "20205843492154653597326893919151713313559584018734749877274787063574636290699" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 23891, + "blockTimestampDelay": 328958 + }, + { + "call": { + "from": "0x00000000000000000000000000000000000a0000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xec5bf215fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff60000", + "dataAbiValues": { + "methodSignature": "handleFinalizeRequestResponseModule(uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913128984576" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 23883, + "blockTimestampDelay": 276784 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000020000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xd1a55655fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe9c", + "dataAbiValues": { + "methodSignature": "handleRevokeModule(uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913129639580" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 14210, + "blockTimestampDelay": 524288 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000060000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x727899fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffb001400000000000000000000000000000000000000000000000000000000001275000000000000000000000000000000000000000000000000000000000000000000a46e28ce399e11c208b07a84e457189f5b64e15f51e128b7baf507642bfef8c6", + "dataAbiValues": { + "methodSignature": "handlePledge(uint256,uint256,uint256,uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913129312276", + "1209600", + "0", + "74373941974452021616102119156230516273735358461823357873191033522071497799878" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 1, + "blockTimestampDelay": 256 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000040000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xa44b098effffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0003", + "dataAbiValues": { + "methodSignature": "handleSetArbitrator(uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913129574403" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 43748, + "blockTimestampDelay": 541010 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000010000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x8f790139ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0", + "dataAbiValues": { + "methodSignature": "handleReleaseUnutilizedResponse(uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913129639904" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 11833, + "blockTimestampDelay": 213928 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000090000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xa59d317d7f4bab9c72ef04decea93d5f106890883b64be0e4f50aa1ceebd5a435a7fa13a0000000000000000000000001302f0402bb094e65a1c38fc8979628fa7cb7eb80000000000000000000000000000000000000000000000000000000000093a8000000000000000000000000000000000000000000000000000000000000d2f00fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff70000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff", + "dataAbiValues": { + "methodSignature": "handleSetResponseModuleData(uint256,(address,address,uint256,uint256,uint256))", + "inputValues": [ + "57577429716414119383889913852992200380066446236494108346454295294682507223354", + { + "accountingExtension": "0x1302F0402bb094e65a1c38fC8979628FA7cb7eB8", + "bondSize": "864000", + "bondToken": "0x0000000000000000000000000000000000093A80", + "deadline": "115792089237316195423570985008687907853269984665640564039457584007913129050112", + "disputeWindow": "115792089237316195423570985008687907853269984665640564039457584007913129639935" + } + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 30759, + "blockTimestampDelay": 56734 + } +] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/call_sequences/immutable/1731277803593410000-ade8ba36-35c6-4c26-a794-1358fc248c91.json b/test/invariants/fuzz/corpus/call_sequences/immutable/1731277803593410000-ade8ba36-35c6-4c26-a794-1358fc248c91.json new file mode 100755 index 0000000..8b166a9 --- /dev/null +++ b/test/invariants/fuzz/corpus/call_sequences/immutable/1731277803593410000-ade8ba36-35c6-4c26-a794-1358fc248c91.json @@ -0,0 +1,336 @@ +[ + { + "call": { + "from": "0x0000000000000000000000000000000000040000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x52e3cb9c6b0d264b5add160d5053aa476132c22d6540d3605ad8dfb850790b1ba996569b", + "dataAbiValues": { + "methodSignature": "handleSetMaxUsersToCheck(uint256)", + "inputValues": [ + "48420708108177856443123222644862532857390746786695606854692354379525674915483" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 59698, + "blockTimestampDelay": 331757 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000020000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x62e8fd3500000000000000000000000000000000000000000000000000000000000000124ab950c09e2414c3ec444389b5281e1bdfda8ecfec5392240af8d376f3781e4f", + "dataAbiValues": { + "methodSignature": "handleOnDisputeStatusChange(uint256,uint256)", + "inputValues": [ + "18", + "33798574834817402171861624718400176195923458571787846279113220864863863578191" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 41059, + "blockTimestampDelay": 386818 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000040000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x161c7318", + "dataAbiValues": { + "methodSignature": "test_debug()", + "inputValues": [] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 2290, + "blockTimestampDelay": 360593 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000050000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xb05752f700000000000000000000000000000000000000000000000014d1120d7b160000fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa0100ffffe666666666666666666666666666666666666666666666666666666666670000000000000000000000000000000000000000000000000000000000000001", + "dataAbiValues": { + "methodSignature": "handleOnSettleBondEscalation(uint256,uint256,uint256,uint256)", + "inputValues": [ + "1500000000000000000", + "115792089237316195423570985008687907853269984665640564039457584007913129246976", + "115791912552609717585138026678937833561418401917250876477561771847293000377959", + "1" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 35958, + "blockTimestampDelay": 189815 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000080000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xd1a556550000000000000000000000000000000000000000000000000000000000093a80", + "dataAbiValues": { + "methodSignature": "handleRevokeModule(uint256)", + "inputValues": [ + "604800" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 23866, + "blockTimestampDelay": 120766 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000040000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 2, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xf60285cafffffffffffffffffffffffffffffffffffffffffffffffffffffffffffb00001f6163d95156c50021d434e3914437a6419fd074db58aba632a1165e1049633a3bf295102083f98484e4163605f3f088673969b3a53bced8eb97b90d6679470f0000000000000000000000000000000000000000000000000000000000000014", + "dataAbiValues": { + "methodSignature": "handleBondWithSender(uint256,uint256,uint256,uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913129312256", + "14193771603127510897806160380156132720630156725507671248204049821265402880826", + "27115063851078188957254873925429362151386502274781693755807630999965205612303", + "20" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 14998, + "blockTimestampDelay": 528331 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000050000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x51b295e3fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc18", + "dataAbiValues": { + "methodSignature": "handleFinalize(uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913129638936" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 23876, + "blockTimestampDelay": 327680 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000060000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x2047c4493b1bb599e967df2247a0bde0e15c19a16d95520dbb9eb811b647dd1c5a50d970bda0d1adb4d017dcf6513d613392f361bfe0847acfbe5bbfd267240bef7125cd61ebaebab2bac3aa4819e2caf8f85c718565871747241e292cc36db91888e520d873b789d8f47c6606b2d5358f69133b1dd4937cee526c90ac095190af102de2", + "dataAbiValues": { + "methodSignature": "handlePay(uint256,uint256,uint256,uint256)", + "inputValues": [ + "26735416302702836720504774004574936090245153519362370366870156849631651223920", + "85771271060700958624081931951489906403580871476691194667860842730768850560461", + "44290761310036599938494988979380191776366734083697389368196279735913800066336", + "97904029442377240838501909618781928147909909174040210570358457032104622435810" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 54628, + "blockTimestampDelay": 362209 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000020000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x9f6259e57cf479b021a816743ff5b53a6f3e5c2c247b2adb9311a44237c3858abd44df0e0000000000000000000000000000000000000000000000000000000000127118", + "dataAbiValues": { + "methodSignature": "handleResolve(uint256,uint256)", + "inputValues": [ + "56518743767933985910260346386765678340564227438862784222762849925209918856974", + "1208600" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 35385, + "blockTimestampDelay": 50692 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000050000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 2, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x0fb55087fffffffffffffffffffffffffffffffffffffffffffffffffffffff400000000", + "dataAbiValues": { + "methodSignature": "handleApproveModule(uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007861590032384" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 1, + "blockTimestampDelay": 57134 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000050000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 3, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x5356b6811b3175568497fde3c31fe069ccc7985311b0506f3b43e70969ab59ea722d2599", + "dataAbiValues": { + "methodSignature": "handleAddEBORequestCreatorFinalityModule(uint256)", + "inputValues": [ + "12299832254764069471447641000592064088020729744720327828938364394997925356953" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 0, + "blockTimestampDelay": 0 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000050000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 4, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xa44b098ea6e532d597161bf414844541b5281607abc0fedcfbe19700823ca81bfeffd5da", + "dataAbiValues": { + "methodSignature": "handleSetArbitrator(uint256)", + "inputValues": [ + "75488891688353701349182521546099519030572206284453220585196006136091846366682" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 13249, + "blockTimestampDelay": 486500 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000090000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x727899ff000000000000000000000000000000000000000000000000000000000009688043d2cc6bee2c75afbb0a2d8e686ed8d850d35e4220dab9eaaad8c1f2bbd315eb000040ba1702262dc3924484fe5b466a7207d688c9429f8aaeb64c1acd0d86e1fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff70000", + "dataAbiValues": { + "methodSignature": "handlePledge(uint256,uint256,uint256,uint256)", + "inputValues": [ + "616576", + "30677409604733962472433633135176719636373390531562919397962760076773674915307", + "446728739341497667529209047101419397582060126024847855090499938302133985", + "115792089237316195423570985008687907853269984665640564039457584007913129050112" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 28736, + "blockTimestampDelay": 576650 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000040000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 3, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x52e3cb9cfffffffffffffffffffffffffffffffffffffffffffffffff90fa4a62c4e0000", + "dataAbiValues": { + "methodSignature": "handleSetMaxUsersToCheck(uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457084007913129639936" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 14857, + "blockTimestampDelay": 578411 + } +] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/call_sequences/immutable/1731277803593538000-d3487e2f-b5c3-4ba6-a4ad-bd45f3059e7b.json b/test/invariants/fuzz/corpus/call_sequences/immutable/1731277803593538000-d3487e2f-b5c3-4ba6-a4ad-bd45f3059e7b.json new file mode 100755 index 0000000..9d2093f --- /dev/null +++ b/test/invariants/fuzz/corpus/call_sequences/immutable/1731277803593538000-d3487e2f-b5c3-4ba6-a4ad-bd45f3059e7b.json @@ -0,0 +1,457 @@ +[ + { + "call": { + "from": "0x0000000000000000000000000000000000030000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x13a8b8040000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000034000000000000000000000000000000000000000000000000000000000000000170000000000000000000000000000000000000000000000000000000000d2f000ffffc0000000000000000000000000000000000000000000000000000000000181dc31bc03ad9bc8a966de91dfc8c49b929f6d5fd44a9c22a7f5bb37cebfc106ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed8ee8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b825bc2cfc37067e378b4feef3f3411136744d0b2851c161c601669654cf27bfe6100000000000000000000000000000000000000000000000000000000000000006cd40d93882a844c2becf361c7579664aef7a6ef6e8b79d6bf6f6f76426e9b14039e696f94058cfd274de97421f65916ac135f4d55083d357b9c1f34820c9376000000000000000000000000000000000000000000000000000000000003fffe000000000000000000000000000000000000000000000000000000000000000167e6a528e0202cf23a36eacf513eee303475d3e4c983b2ae2d616b11c440f70a4ac07813439b9213b22d4d86340307a2982de60c241368ad288dfea742b6eb5efffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9686c2d73382b1edfa908bcaeb6b9ac0073f469887a9150c80831642e47e35a614c1bffffffffffffffffffffffffffffffffffffffffffffe48e5eb33a3a7f000000104a13a90c13653470268ea78892361e7e91e706d859aabaaf45ddd18c956640809a37cc7335cdf29b7d988dc8c05e2c1899ad1795364e6fa667088b49487472ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffee00b4fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b80756993dc4be6ecf1e46c48d6f9cae9255a8b46ef956a3d85442a5f41f70ecf93000000000000000000000000000000000000000000000000000000000076a700a77a4c48695a0407441e86efc633aee092d2ebd99c87fdfeebcd904fe33e086d000000000000000000000000000000000000000000000000000000000000001d563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd0633ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865a46715d7736dde0bcf6527392542031b42d0197ab2c1bb4c4d2d7abaed280007f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b4498bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef328d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad82082401f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade0554594d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae962914f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cbba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c33f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8fd276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f6617237058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf259a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe260d35d19771f7c1af646e114de36d19c25e3fc040b27be76073113bb33db17d5d19fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb", + "dataAbiValues": { + "methodSignature": "handleCreateRequests(uint256[],bytes32[])", + "inputValues": [ + [ + "13824000", + "115791647525550000827488589184312722123641027794666345134718053606362806484993", + "58737407075920930096693749632210245280794127876199190949253348332199714210054", + "115792089237316195423570985008687907853269984665640564039457584007913128431336", + "115792089237316195423570985008687907853269984665640564039457584007913129380738", + "41504671482165347584846103287222174319130579613222615088745194098566077611617", + "0", + "49224452924880417829398231270379785502530069722970149981823851608145893694228", + "1636828073493779560152621491074002847609709387720111137750911676859097584502", + "262142", + "1", + "46995738119123743123282428161140493004285235666026628953647859202250191730442", + "33811214160519685654400438720767591502827986970858420988841187408488311483230", + "115792089237316195423570985008687907853269984665640564039457584007913129207916", + "20557653259021005890251421269967042420225955023564768794272035576696478452763", + "115792089237316195423570985008687907853269984665640563909857584007913129639936", + "7367887950809164700104084563884591449786965425123545364576065505479275931200", + "58168524174645209900719041489934173752247098791866719219864340874379345294450", + "115792089237316195423570985008687907853269984665640564039457584007913128460468", + "115792089237316195423570985008687907853269984665640564039457584007913129380736", + "53107142721938561923251317745913031228477959801596843755970727929974933606291", + "7776000", + "75752327540241786815348607290604056680494387521335977257182003214564422715501" + ], + [ + "563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe", + "27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a", + "9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd06", + "33ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865", + "a46715d7736dde0bcf6527392542031b42d0197ab2c1bb4c4d2d7abaed280007", + "f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1", + "c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b44", + "98bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01", + "108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef32", + "8d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea", + "94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad8208240", + "1f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade05545", + "94d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056", + "cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae96291", + "4f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa", + "9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874", + "ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cb", + "ba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c3", + "3f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8f", + "d276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99", + "fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce", + "3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb", + "4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f661723", + "7058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78", + "994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25", + "9a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe26", + "0d35d19771f7c1af646e114de36d19c25e3fc040b27be76073113bb33db17d5d", + "19fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c", + "51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb" + ] + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 21265, + "blockTimestampDelay": 360627 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000080000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x51b295e3caac5b7c00ae43f0a0d2465bc3a827daefa6255afc3feafd105a01b058af4cc3", + "dataAbiValues": { + "methodSignature": "handleFinalize(uint256)", + "inputValues": [ + "91671724510984325847623981850838041499373483072178023597879983910219265559747" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 616, + "blockTimestampDelay": 245182 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000070000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x62e8fd357410315e284ca2250b236ba99041acd7e7626e3fc66727657ddcb75ed512355238b8e299444e7771cad3e9cc9efbc8237922a7b18f034d56199ddaad5f62f70c", + "dataAbiValues": { + "methodSignature": "handleOnDisputeStatusChange(uint256,uint256)", + "inputValues": [ + "52496900712745351460185096722717982602139275703227615313943886816707427317074", + "25656183307321870319256066529210878052151786525540532817103830451324188817164" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 0, + "blockTimestampDelay": 0 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000010000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x5cc02fa53b4e8ff8cbb94866d057a07c347e0cb79a079e6c49875d6adb448ca8b36b2f93", + "dataAbiValues": { + "methodSignature": "handleSetPendingCouncil(uint256)", + "inputValues": [ + "26825265794714411535119211388793422995701606456004679527746190657884506501011" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 22951, + "blockTimestampDelay": 222797 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000090000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x7aeb6faba969b1150e65eb039223322d37083c0f930e9f96e767cfaf888c1440b89042a7ffffffffffffffffffffffffffffffffffffffffffffffffffffffbe15000000", + "dataAbiValues": { + "methodSignature": "handleDisputeResponseBondEscalationModule(uint256,uint256)", + "inputValues": [ + "76627612529152310655938988775485703136714009850335653768166292952282670580391", + "115792089237316195423570985008687907853269984665640564039457584007630014119936" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 23866, + "blockTimestampDelay": 274647 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000030000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 2, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xf4fbbf9b0000000000000000000000000000000000000000000000000000000000000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed8b007c3160c01450d95568fbc7e3fe876965aa411c1bf13d7be2baabf28cedd3012f", + "dataAbiValues": { + "methodSignature": "handleBond(uint256,uint256,uint256)", + "inputValues": [ + "0", + "115792089237316195423570985008687907853269984665640564039457584007913128430336", + "56174036476597730143689219709059961134239333858317208755745576773703517274415" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 0, + "blockTimestampDelay": 404026 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000060000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x94ae6f8c0000000000000000000000000000000000000000000000000000000000000120", + "dataAbiValues": { + "methodSignature": "handleValidateArbitrator(uint256)", + "inputValues": [ + "288" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 28898, + "blockTimestampDelay": 360593 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000020000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x0692ea7e0000000000000000000000000000000000000000000000000000000000000100", + "dataAbiValues": { + "methodSignature": "handleRemoveChain(uint256)", + "inputValues": [ + "256" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 10120, + "blockTimestampDelay": 442746 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000030000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 3, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xb05752f77477db96404997c322ba9a11ba66d9f58fa471415b5c82afcf1965a16b52aa310000000000000000000000000000000000000000000000000000000000060000a3d04e821fd24d173d46c5c6591bac6f9d3ee4250e38f6752d158a2114dae86a7312ea15e2dc75c19cc06e815ad4c43b0e39987ce5ac5a5bac39cbb127f734e6", + "dataAbiValues": { + "methodSignature": "handleOnSettleBondEscalation(uint256,uint256,uint256,uint256)", + "inputValues": [ + "52680060769579736990081276342150508425883578818293859365287572298297987213873", + "393216", + "74095040352905635550053635482030730013005988265241047193937642446333545212010", + "52049396432936944477776417116733628414171704893437425841548460736384299644134" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 23866, + "blockTimestampDelay": 360369 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000020000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x9d2e6a6fb7ab9b804f5e3b07b64589457afe860d64ca8a1102a99dc3b01e9042b84b54c8", + "dataAbiValues": { + "methodSignature": "handleRemoveEBORequestCreatorRequestModule(uint256)", + "inputValues": [ + "83076455368730213982012688072579720945989878255995701383969604691644153287880" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 3912, + "blockTimestampDelay": 284189 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000050000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x13a8b80400000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000001dfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b820000000000000000000000000000000000000000000000000000000000000000ce675a74f87f83662332b39024ab66f66d3ad8159fb92d1081e73d8747ac44a2fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa0000f99ab80a56afb5cf2d406681086184fa568b2c59b23b9eed0fb97babbdd70dcb987572aba5f9d1eb2bdfd7db4a60daa53ab31e663abe9ea14abc72f369d5dae3d49d00025d7681398c1ac8e5b18d32589a9d3aee941f68217de08b573fb0ef22270657897cfb0e6dff27bde358d9cd33988862a59eafeb150f97e1fb0bd5db1eb09668549dc88efb456b69b806d30443b7484266af42ae24fadce2ada2bf2e00ffffffffffffffffffffffff8ef68f613056e57f9d900c6762970980a4e22ed300000000000000000000000000000000000000000000000000000000000100006558973ea0cf6ef065af511cdd91dcf8ebf51e410d0e710b8482f875357b01e5a82a9a69bb78fc7065db036b90eebef2590e8a9797d50a66dfb4ab86433720e10000000000000000000000000000000000000000000000000000000000002700fffffffffffffffffffffffffffffffffffffffffffffffff90fa4a62c4e00000000000000000000000000000000000000000000000000000000000000010000688ad2bfdd1982f027350b11d5a66e4eb674020afc643610b6411864c705684cbaab39a71efe2422fd2229cf398d057b9b06ccfbe74bc3a4994ba9deed6f93052af9415df05e3b4e4bb3efd2328b1fac61e86adbbb1f32d9fe4d9fa96ef608ab9d48454c637331b80fc8bdfe0b16c68d224ae00eca2bc8b6b5b82eeb5dbb05bdffffffffffffffffffffffff8ef68f613056e57f9d900c6762970980a4e22ed3aaa89e9ec9968c5d9717eac26037a4e7abb9cc9d43af24edb06275ca7126a4c8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff2d0f6000000000000000000000000000000000000000000000000000000000009000056db5811b60eafc5a06420c40941879ca1aae8ba576dbb8f9dd9cbe1e4e187fb14c4c80ff0fa9624d2a9e63be6e238aa088864d7cd2780d36bc6dee000c42d1b000000000000000000000000000000000000000000000000000000000003f48058825231460c027d950a84d667bec6ad5f4731e0cfaef9f9b65d7008ad39ff50fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa0000000000000000000000000000000000000000000000000000000000000029f87ffe759d510e1c1d646f2c46946d2e09cce6ece48d285eecbab28b6da0aaafbe4233335f0868c51a18ff4b577aba2300ff0e1110fe6ebcf65aab5b22a0cd7af45a3243de6773b2ac820589df08ee53500a017476ffbb1bc4ceb09189a3a8688430464e8052902c1bf8131a3b65b1b8579578c0674f6b54e6508ebe3e773f92f62a3923b7d048bd00e06c64c9764f411dd42925c5a3bc087d2acf2dd45670afee5922c58e2ab2a48008017cf695319fc8f68540c785800cac4fb40071265bc6c57dd1da3996638b1d193cb3f0de7290b528e8c2553b44fdb00bd2f7afeb507f780ecfa7e55b67e34060e5a3ab3fc7c2fd6270fb027a69d0e3430e553adf6819c8dbcc8fe9ee062b2c79b12ff5516725f8025598c75085e7022536add4c3462e067f6eb57330f4a2635836735eb4e0053c2a02ad8f30b1ebb63d99a2cd2153db645c350fe8e5c04c29094fa388abef6a8faa96395cb0ff0901d9a9031f7631b22558fb38048fa6c225997c825a3070205c6bcc28d8335499c58531230e56b3a4aec270fc970dd1c77c0c5296114545b189f9c61f42ccea793f3b2f3b6c3b46fd6fb449fc87916235c006bf56db0c5c21f31410623781ece548911499cc23d8ac091676bc100d89c7174c55fa0bd83529b7e4cd0d2fb4476413f61972f0f860f6c403befbb5f69d0e304161de4e70ca3042a1d04835a72006a53c3175c5109baf4182d0da9a3e83b98e43af1ad858e630be26febe27f2c8a4f67eec52f53b0d005a92a11a1dd559351c3b253a1d1a70c23193b67441c058e70e67ac3f8ac4aee50ed009392925b73b400df2177c6a10fe1f591984b99794e9156c3bd0b4a2ed7517c12532c97966b24ef7deb1cf9e6cf37ab8f578cfd25cc9f82f16474fe7e1bde4298cc60088e914f35d7d5a66ef30363aca7be4e251f53e2f64b81e00b44a4f3ed31e5f1f4a517d25b06946975a9d79df88cf56c616ae4c81922660d533aa9317d842f948b3d2a5cab98f377cd1b719e1be52bfb774c70bd5ed589e3a4bff539f55e90e58abc8536ecc396cd34b566e938f0f4864fe1d6ff24fb8e3e3ab1b4c42b42c06700cd46a831b567bbdea115be603b7703579c8280ed0e5d4f20a9e510271e5bb61a194d5b0b205124c05d8991782e8e73158b0fd60717823b82eb7b4dd90cf778f8607913cad2914c4dfe829100903d1830199c1fbf569d6e37e2adb5d073c66fd3991eb8187063de6745dcedadabd41f6a70c7b2bc8e61d100de94b032f6d262a2e7a314c8a07740f33d9c56d018c1e78418ac315f32e91eed3eacbcded8e609c83aef09642cbfb3b717abe19c73fd5e49e008e320b3ee4ccaed6c353284dc811b9981746d05d363d35325d6f5e61340a544bf9b32b7b6cec1644b91e0b92085ff64c8d92b30f5ad1033570b6077b8bc2bb7a44a70045644d7bccb31cd1d59dc43541430d346d2a743381036d2f2e2a7a59e07c0c65de024350786615d3e7aa2c597a5d7e035e9d109e65d7d4badc94bc4bd2e55e3bc724b748e74a0fcacb73a2a9ee52f36347a5ae6072f300d6fd2f62bf08605016a6931767f353ac73babce9625b51569ab81df833bee00d3ff2bbb3badef2878a170d7d7109f33ab0f46bc96f4fc89ca727c7d8bc4282604b5bf3bbf0eea2bab4f7798601d86277e09f88645c1d56a4cae35b59d720e8b57f7e4abc5ea43a53526265c5cc4dedc5b72f127134d3d97a31a652f905f82ee74953598bf2a05f52dd89152ca9400523884d909d0469c6a966a2d841f4f01b74e98660ea5a28534174638ba83bf16343fcc653aaed6743963ad798004516fca1ba790701142e7b44788e2b9a4c6744", + "dataAbiValues": { + "methodSignature": "handleCreateRequests(uint256[],bytes32[])", + "inputValues": [ + [ + "115792089237316195423570985008687907853269984665640564039457584007913129380738", + "0", + "93359056366519978384575301215212766084552195127475241400321367131381031519394", + "115792089237316195423570985008687907853269984665640564039457584007913129246720", + "112899263945265618091091185689767054075036928377626216345331905228274830609867", + "68959065517949274316588826283101587750558165013430347817640346533866916666083", + "96167718952585367175045237006581483249627268288674080939511722496406722768674", + "17651406335742926396690394648438989354403684618877496125906122976087978138398", + "79872808473243763044716704952744950461935635665535412421360192734135943376384", + "115792089237316195423570985008042581378843437462327153970303678099387767205587", + "65536", + "45840124100760761585173752354748948632868900822901326367871013022630665716197", + "76063831858184420518861268628451249077285698597102935859033978034718219116769", + "9984", + "115792089237316195423570985008687907853269984665640564039457084007913129639936", + "65536", + "47285815686966272144121693505188799597744533049049783177959832040536684193868", + "84432718589681428792934245815119003114976466487051385221334973405702499832581", + "19437535705728302099767088929537200823274258212636994203273729259332963797163", + "71140808496164046925239908329887697304458696034799907436633500076327881606589", + "115792089237316195423570985008042581378843437462327153970303678099387767205587", + "77191109322862123514795600886680155988643876662484090273820952307332291142856", + "115792089237316195423570985008687907853269984665640564039457584007913128775926", + "589824", + "39286452316517865283766389032392547299789935223147165990478078739011264940027", + "9393939775408484523215953034946785494006122941999182174070733730995117501723", + "259200", + "40033788065363256588949523368348146912228695325379481069044606228254426791760", + "115792089237316195423570985008687907853269984665640564039457584007913129639930" + ], + [ + "f87ffe759d510e1c1d646f2c46946d2e09cce6ece48d285eecbab28b6da0aaaf", + "be4233335f0868c51a18ff4b577aba2300ff0e1110fe6ebcf65aab5b22a0cd7a", + "f45a3243de6773b2ac820589df08ee53500a017476ffbb1bc4ceb09189a3a868", + "8430464e8052902c1bf8131a3b65b1b8579578c0674f6b54e6508ebe3e773f92", + "f62a3923b7d048bd00e06c64c9764f411dd42925c5a3bc087d2acf2dd45670af", + "ee5922c58e2ab2a48008017cf695319fc8f68540c785800cac4fb40071265bc6", + "c57dd1da3996638b1d193cb3f0de7290b528e8c2553b44fdb00bd2f7afeb507f", + "780ecfa7e55b67e34060e5a3ab3fc7c2fd6270fb027a69d0e3430e553adf6819", + "c8dbcc8fe9ee062b2c79b12ff5516725f8025598c75085e7022536add4c3462e", + "067f6eb57330f4a2635836735eb4e0053c2a02ad8f30b1ebb63d99a2cd2153db", + "645c350fe8e5c04c29094fa388abef6a8faa96395cb0ff0901d9a9031f7631b2", + "2558fb38048fa6c225997c825a3070205c6bcc28d8335499c58531230e56b3a4", + "aec270fc970dd1c77c0c5296114545b189f9c61f42ccea793f3b2f3b6c3b46fd", + "6fb449fc87916235c006bf56db0c5c21f31410623781ece548911499cc23d8ac", + "091676bc100d89c7174c55fa0bd83529b7e4cd0d2fb4476413f61972f0f860f6", + "c403befbb5f69d0e304161de4e70ca3042a1d04835a72006a53c3175c5109baf", + "4182d0da9a3e83b98e43af1ad858e630be26febe27f2c8a4f67eec52f53b0d00", + "5a92a11a1dd559351c3b253a1d1a70c23193b67441c058e70e67ac3f8ac4aee5", + "0ed009392925b73b400df2177c6a10fe1f591984b99794e9156c3bd0b4a2ed75", + "17c12532c97966b24ef7deb1cf9e6cf37ab8f578cfd25cc9f82f16474fe7e1bd", + "e4298cc60088e914f35d7d5a66ef30363aca7be4e251f53e2f64b81e00b44a4f", + "3ed31e5f1f4a517d25b06946975a9d79df88cf56c616ae4c81922660d533aa93", + "17d842f948b3d2a5cab98f377cd1b719e1be52bfb774c70bd5ed589e3a4bff53", + "9f55e90e58abc8536ecc396cd34b566e938f0f4864fe1d6ff24fb8e3e3ab1b4c", + "42b42c06700cd46a831b567bbdea115be603b7703579c8280ed0e5d4f20a9e51", + "0271e5bb61a194d5b0b205124c05d8991782e8e73158b0fd60717823b82eb7b4", + "dd90cf778f8607913cad2914c4dfe829100903d1830199c1fbf569d6e37e2adb", + "5d073c66fd3991eb8187063de6745dcedadabd41f6a70c7b2bc8e61d100de94b", + "032f6d262a2e7a314c8a07740f33d9c56d018c1e78418ac315f32e91eed3eacb", + "cded8e609c83aef09642cbfb3b717abe19c73fd5e49e008e320b3ee4ccaed6c3", + "53284dc811b9981746d05d363d35325d6f5e61340a544bf9b32b7b6cec1644b9", + "1e0b92085ff64c8d92b30f5ad1033570b6077b8bc2bb7a44a70045644d7bccb3", + "1cd1d59dc43541430d346d2a743381036d2f2e2a7a59e07c0c65de0243507866", + "15d3e7aa2c597a5d7e035e9d109e65d7d4badc94bc4bd2e55e3bc724b748e74a", + "0fcacb73a2a9ee52f36347a5ae6072f300d6fd2f62bf08605016a6931767f353", + "ac73babce9625b51569ab81df833bee00d3ff2bbb3badef2878a170d7d7109f3", + "3ab0f46bc96f4fc89ca727c7d8bc4282604b5bf3bbf0eea2bab4f7798601d862", + "77e09f88645c1d56a4cae35b59d720e8b57f7e4abc5ea43a53526265c5cc4ded", + "c5b72f127134d3d97a31a652f905f82ee74953598bf2a05f52dd89152ca94005", + "23884d909d0469c6a966a2d841f4f01b74e98660ea5a28534174638ba83bf163", + "43fcc653aaed6743963ad798004516fca1ba790701142e7b44788e2b9a4c6744" + ] + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 18813, + "blockTimestampDelay": 166386 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000050000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xb6c75efa21e47192f11d3f380576fd394ec9e1b4eb90a89bceb9b651bba78bf6ab564d9dfffffffffffffffffffffffffffffffffffffffffffffffff90fa4a62c4d00002c95da414ee489142bbc6e001fef7a12692a3b9d1210170c80e8d07cec96b7c5", + "dataAbiValues": { + "methodSignature": "handleClaimEscalationReward(uint256,uint256,uint256)", + "inputValues": [ + "15329948992898956970077422041464151575333773433396765238718102692294303305117", + "115792089237316195423570985008687907853269984665640564039457084007913129574400", + "20166531891724206848272694213144022190042376042953875838430089970096862050245" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 7764, + "blockTimestampDelay": 145528 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000090000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x161c7318", + "dataAbiValues": { + "methodSignature": "test_debug()", + "inputValues": [] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 15165, + "blockTimestampDelay": 79666 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000050000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 2, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x94c9ca03", + "dataAbiValues": { + "methodSignature": "handleConfirmCouncil()", + "inputValues": [] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 18, + "blockTimestampDelay": 12967 + } +] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/call_sequences/immutable/1731277803599728000-87a8141e-a121-46dc-a00f-776de71bb0b1.json b/test/invariants/fuzz/corpus/call_sequences/immutable/1731277803599728000-87a8141e-a121-46dc-a00f-776de71bb0b1.json new file mode 100755 index 0000000..3c59287 --- /dev/null +++ b/test/invariants/fuzz/corpus/call_sequences/immutable/1731277803599728000-87a8141e-a121-46dc-a00f-776de71bb0b1.json @@ -0,0 +1,502 @@ +[ + { + "call": { + "from": "0x0000000000000000000000000000000000030000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x13a8b8040000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000034000000000000000000000000000000000000000000000000000000000000000170000000000000000000000000000000000000000000000000000000000d2f000ffffc0000000000000000000000000000000000000000000000000000000000181dc31bc03ad9bc8a966de91dfc8c49b929f6d5fd44a9c22a7f5bb37cebfc106000000000000000000000000000000000000000000007ff72b2c19616ab00000e645df196666f5e4e940c577b9670b086db2c746878e45aae0dbee6c63a0e6a35bc2cfc37067e378b4feef3f3411136744d0b2851c161c601669654cf27bfe6100000000000000000000000000000000000000000000000000000000000000006cd40d93882a844c2becf361c7579664aef7a6ef6e8b79d6bf6f6f76426e9b14039e696f94058cfd274de97421f65916ac135f4d55083d357b9c1f34820c9376000000000000000000000000000000000000000000000000000000000003fffe000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000004ac07813439b9213b22d4d86340307a2982de60c241368ad288dfea742b6eb5efffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9686c2d73382b1edfa908bcaeb6b9ac0073f469887a9150c80831642e47e35a614c1bffffffffffffffffffffffffffffffffffffffffffffe48e5eb33a3a7f000000104a13a90c13653470268ea78892361e7e91e706d859aabaaf45ddd18c956640809a37cc7335cdf29b7d988dc8c05e2c1899ad1795364e6fa667088b49487472000000000000000000000000000000000000000000000000000000000000fff6fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b80756993dc4be6ecf1e46c48d6f9cae9255a8b46ef956a3d85442a5f41f70ecf93000000000000000000000000000000000000000000000000000000000076a700a77a4c48695a0407441e86efc633aee092d2ebd99c87fdfeebcd904fe33e086d000000000000000000000000000000000000000000000000000000000000001d563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd0633ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed6958658aad3329b56f2f98187bbaed7351982ae06a00b9382adcb723b8b393d1f5e2def8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b4498bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a0171bc7dd16f0e277b94f2e46980d7e8e6c3c5187bf68be378e2d72cd0e70293ef8d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad82082401f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade0554594d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae962914f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874465e592f6d3f1d78fbc619b878d95794035829bd9b1285f3eb021d72f8e45638ba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c33f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8fd276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a9925e5ea45a807ae40eb654d82982bacb30bb1da6060d308d0b63004f4e1926b0c3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f6617237058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf259a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe2665f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a219fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb", + "dataAbiValues": { + "methodSignature": "handleCreateRequests(uint256[],bytes32[])", + "inputValues": [ + [ + "13824000", + "115791647525550000827488589184312722123641027794666345134718053606362806484993", + "58737407075920930096693749632210245280794127876199190949253348332199714210054", + "604300000000000000000000", + "104155407395839188072220307346509508179171066778602859964492537460856123877027", + "41504671482165347584846103287222174319130579613222615088745194098566077611617", + "0", + "49224452924880417829398231270379785502530069722970149981823851608145893694228", + "1636828073493779560152621491074002847609709387720111137750911676859097584502", + "262142", + "1", + "0", + "33811214160519685654400438720767591502827986970858420988841187408488311483230", + "115792089237316195423570985008687907853269984665640564039457584007913129207916", + "20557653259021005890251421269967042420225955023564768794272035576696478452763", + "115792089237316195423570985008687907853269984665640563909857584007913129639936", + "7367887950809164700104084563884591449786965425123545364576065505479275931200", + "58168524174645209900719041489934173752247098791866719219864340874379345294450", + "65526", + "115792089237316195423570985008687907853269984665640564039457584007913129380736", + "53107142721938561923251317745913031228477959801596843755970727929974933606291", + "7776000", + "75752327540241786815348607290604056680494387521335977257182003214564422715501" + ], + [ + "563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe", + "27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a", + "9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd06", + "33ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865", + "8aad3329b56f2f98187bbaed7351982ae06a00b9382adcb723b8b393d1f5e2de", + "f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1", + "c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b44", + "98bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01", + "71bc7dd16f0e277b94f2e46980d7e8e6c3c5187bf68be378e2d72cd0e70293ef", + "8d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea", + "94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad8208240", + "1f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade05545", + "94d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056", + "cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae96291", + "4f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa", + "9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874", + "465e592f6d3f1d78fbc619b878d95794035829bd9b1285f3eb021d72f8e45638", + "ba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c3", + "3f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8f", + "d276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99", + "25e5ea45a807ae40eb654d82982bacb30bb1da6060d308d0b63004f4e1926b0c", + "3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb", + "4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f661723", + "7058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78", + "994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25", + "9a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe26", + "65f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a2", + "19fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c", + "51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb" + ] + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 21265, + "blockTimestampDelay": 360627 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000030000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 2, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x0692ea7eeaaa73118d1da2c1db95511517ab896f87445c2331029aecdc7f065f634e6b46", + "dataAbiValues": { + "methodSignature": "handleRemoveChain(uint256)", + "inputValues": [ + "106142364743506859045918558596602602319943607038906547683486076996802461985606" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 2001, + "blockTimestampDelay": 455470 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000090000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x864e2da9fffffffffffffffffffffffffffffffffffffffffffffffff90fa4a62c573a80b81e8d97661fbf779db19fd00793e39f3b40bca612ee408ab75ff1c6439cf047509736e50626b1084ee93f4294000f73db102927cdc7fc34de68c384da900e6c", + "dataAbiValues": { + "methodSignature": "handleArbitrateDispute(uint256,uint256,uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457084007913130244736", + "83279546779206125286340055887058748934887896216240549764862301155730028032071", + "36452200662221151095065482565067302916782446267779931962683895890335455252076" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 41956, + "blockTimestampDelay": 475112 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000090000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xb6c75efaab191ad64d8fba3d052ab8ef37a088ba9faf5a1be696a47310de3441525ef897fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe3aaae444ec5312714f03b0566d2b40e5d34f58f068cabf3625fc0d7cfe3db912", + "dataAbiValues": { + "methodSignature": "handleClaimEscalationReward(uint256,uint256,uint256)", + "inputValues": [ + "77389853507359787864882669351213362161735184606551274462865365263877886900375", + "115792089237316195423570985008687907853269984665640564039457584007913129639934", + "26536084675173092165947634556752584404681954305155475174391110206140234709266" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 18699, + "blockTimestampDelay": 240561 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000030000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 3, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xf84d6dfcd2d78e343e1607b919341e2fe248544a49a0028fbd677a717f6a437862ddbc00", + "dataAbiValues": { + "methodSignature": "handleAddEBORequestCreatorRequestModule(uint256)", + "inputValues": [ + "95366551777850189910113500849756061153261920552639335948298155642211775921152" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 16776, + "blockTimestampDelay": 165634 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000060000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x0fb55087cd27e66c1a6365fdd2d452e5a6a582655000c0811d209ba0499f4483caf4b2da", + "dataAbiValues": { + "methodSignature": "handleApproveModule(uint256)", + "inputValues": [ + "92794631311208978202520326772644046682922248037671286389514014341863059010266" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 6256, + "blockTimestampDelay": 488143 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000060000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xaa1a5bd9128a1b5b9d7d3061f14bea63c8830170dadc5f154b01425336f91cc6d8611588ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00", + "dataAbiValues": { + "methodSignature": "handleResolveDispute(uint256,uint256)", + "inputValues": [ + "8385644986530251641334144830118419649455771804161689778824132977763480049032", + "115792089237316195423570985008687907853269984665640564039457584007913129639680" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 35699, + "blockTimestampDelay": 65536 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000020000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x51b295e30000000000000000000000000000000000000000000000000de0b6b3a7640000", + "dataAbiValues": { + "methodSignature": "handleFinalize(uint256)", + "inputValues": [ + "1000000000000000000" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 41252, + "blockTimestampDelay": 375602 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000020000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xf60285caff44fb6a2363fac767b088aff222c3143f1ed041c9b3e47d6474ee4922e1979fec9d178675775c3aa5161a5a209a68597466d991483528cc71c8d6ac533d0955a137b7e6f635f28c37dc46d14755f62f1ce7b659dc1873b04e1744e54dc225b665dad307139d75a132cdb60e373e4b35bba44673f5ee3d0bfbf1ac491c3d0e75", + "dataAbiValues": { + "methodSignature": "handleBondWithSender(uint256,uint256,uint256,uint256)", + "inputValues": [ + "115461657188952309751477762153544746327107707569543270374831352475679717431199", + "107023389619990543669223297468939824753654796115418022982959364890624175966549", + "72920814456766912229072746410044959713398794893085675262607692768311068730806", + "46070226826296101107756227560930518318774961046515756120293728876851585945205" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 39447, + "blockTimestampDelay": 175903 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000040000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xa59d317d37645351a8f36eba3b366024eafac86b09ad5a52e0d3cf42eb52112344ab3206000000000000000000000000d12fb9f7a711eb0caf6aac68aeaf04277804b39e000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000000000000000000000000000000000000003200000fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffb00000b2104824bc90dc4bcf1e407a769278e1c443fdba6cf324b44962e4fea636424", + "dataAbiValues": { + "methodSignature": "handleSetResponseModuleData(uint256,(address,address,uint256,uint256,uint256))", + "inputValues": [ + "25054466425052560783839884851311066245042877293899029878022208182382616064518", + { + "accountingExtension": "0xd12fb9f7A711Eb0caF6aaC68AEaF04277804B39e", + "bondSize": "52428800", + "bondToken": "0x000000000000000000000000000000000000000A", + "deadline": "115792089237316195423570985008687907853269984665640564039457584007913129312256", + "disputeWindow": "5033778407313201451107747851099848118306043382601391308246767880599192691748" + } + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 26656, + "blockTimestampDelay": 604799 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000040000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x0692ea7efffffffffffffffffffffffffffffffffffffffffffffffffbd62f96e74f8b00", + "dataAbiValues": { + "methodSignature": "handleRemoveChain(uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457284007913128430336" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 56799, + "blockTimestampDelay": 262144 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000020000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 2, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x4741f6dcfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd0000", + "dataAbiValues": { + "methodSignature": "handleSetFinalityModuleData(uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913129443328" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 23786, + "blockTimestampDelay": 327680 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000050000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x13a8b804000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000e00000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000d2f0087104a1ac49782a4e16877da31b055635722ebf513f4c9d4971ee8ba22ecc4a6eec651143a3c6f38d013752a6418c6f09e02c569047e21b1821746f674b34b1c0000000000000000000000000000000000000000000000000000000000000036fa4a08dc093aad94a53150a69958ea5701d0cdfc0457647f4a00851f2b3ffa4ffd8a6288227c780955edaf8b4dede4dd79b2d6a1b9670dc32f84033dbf8be3094a3581399d5766a955990785635f7387f42bc3ac7aefc687d70bedd0207993bc4c485bed03b3790844630b99699bb40f5069c1d8403298cdfda2575a3317f64ae11593ffb0ec0927fe5913230c741395327603a0cb862e6b83dfda2f6220ae47cc515c273c51f6f72596a67c49bd9c8c601629067e48532c86a5ec436da6c5d4a086dd03f412f823cb3b33845d313ed20d3eb30a8c1738fe538f8ce08dda6bc903393b682ce82af7ad546cbd6f5e6b633403a16c9539778326f27093154073c189ff0c2a9bf1d9e0c1340059cb502459adc6848943173465070dbc70f56c9773a380843bf072ee4ebcdaa6db9c9b1bcdd7accd8376418847fe049b50be079824e34e17ba796d22717b906c8ae168c515652b146e98f67ff81a17d32cfbb3a45d70b80d8aebc1f699d448d6bb373046a46055cea8663f1e133e3b318bd3bbf341831782f5c84d3a2e123ae7cf9de566a9e5958314dac1f2f943af76cc5a4ed5d61bb435d28f2bc87a2c6a8b92b314537495d986c635f3f24b0c89bb8431fd15da1f20ecad2204c5f2c899891deee290ce478f20d080be1f01b0631cfde6d77c174a0451dff325ceca911fe96cc8e506f589259f7ae6d81a6562ad17da5ac2668afb4dfae5387e68f8f182b4cd18e2d04b3d23801beadb0e540b89182a8ef12544bf301a4ed791f0937f2169890e091a55113e6f5869333627389cfa9013231650d5b1193bc5c6faf12c4caedc4c1de1a155f1caac4b1b386f2c9fb59c0edddb79370ea902ef6cdf5724565bfb35d2d999e5b8ae7d2997c94e3ce7b6bfc8698850f5bea6ed28d2670ed0bc72485811f4579eee682784c336392515b9f38b305760c5f2a08ab4ab5c4e4dc94bfd7fe5a3c37df0d10561d5eee3109a165aa8d09aee107d8bc0847badc5833e23b36da204e51497d3f1716162337b2ca72a6d9b0df65af932d7fe5768c3a7a91282332e7768f46e57727280521bd0e3c9f183fa04f1c0e3d82bf7ea3b756ba92372a93cb61e730e2e59814916b3e92ea0d14277077195c6e7500b9f864c7baa380be57ffd71a995ea5594800861a797da989e5e145ccb01db898f989f4c6fde7d34bf056442d3839d229d6e8c8fd581525acabfa32dfd933d425b58fea110c87b5d18bd00fffbffa00d873198e501a825357e75a85912832c0f7dc92f5825797c2460c978f3e875aea0a979c0a4060871bbd79a9babf07212d556a72bb84496ad42f34884efeed068bfad56613cf714bca57b67944ed964fa024cbdc39fe0848bdeb5c884858a5ac18070bc1e4c0329f2d89fcaadcfdab6ef8a1532af54954a15ea5e23ce45325d9f98f0e3fb86d60b7a0397d2453942930b89e474cdda078d4d62f83b306800b744f407abb12457ab2002a4c1babaebbacd167f44ae7a2bcba0576b2bba82a9e92a2177c482c7e3607c94e731f1a05d19d027153f2b2e5e5fa02b5887eadf045f884b7410bc1af1eb756ae71476a0623a5c27fbd454617541c911c1ca7f76e1017369953940959affc0126bd3ec9ee985c1ac0733a0d152dc33ad991a56c05ed402b56772c434095bf2c563875bd1ef4f339a0116feea24de95ead8342f2cc38eb2eb85b85c3ecbb25e77ae77cbbeb5b4bbc22e5b5bae35469b6565c089be978e383bca0d9ea2bdf66b2c2022976a424700038eb0dd496185b4406b017eb667af2336bd343a6518cdb282ed1f4ad156a51a420357c104c259ffefcc61717fc2d33bbac669fd340b62448e7b1ff79817d2faacc25d75413c7765d42904380717b7dfba97b043ecf6e68448d74c814a84fcec4b8e91924a2d84756257a3f7b5be9993390cb0d83ea216c344cd01747e580a018abe2b78ff31d78a0376939df219b6e4348501b5cd4005a711a4cf2585665816a7e23ad88e6fce9816231f577a8a4cc99f0fb7042243727ff97dfb91a943382ca90c2df1ad395083a12f7234582ea05fb002ebe876e39b32b192b8ada3a742f234ac609ba886fe26fc693ae013386f1b8b4d4b3c0fca228fbbd7af483f28f0a6a1363b275abecc85f2bee9d3c5c82a69692d9e81a977c050c94a09db9ac1ec9c86f3a6e0085d60e0d08cd2f8711d90b4066d0b5dfa922675d11a734712b53ba0ccab9ab7a8fe313144d531d11397926ca47601f444c6e995d8c7bfe71bac0249f67ef196e0656ff7e065d21224aea23f74592d0df86b3869e0a08de6c436ae57b76cc6821c11d16b120219ecb3e66724bb9b913be1da889b5d3900926e267b2beaeca176baaa9f8c82b8d74a308a307751320c46e850a5eaea83c5acccf639b783f5606cebaf54d8c04499037c3ab777163747416a6910cb0352002b67", + "dataAbiValues": { + "methodSignature": "handleCreateRequests(uint256[],bytes32[])", + "inputValues": [ + [ + "2", + "864000", + "61091015562669229328302511622207838274133483677802899134756790701318101320870", + "108000853268429518120666974822971079545728317287326968663692222929051051051804" + ], + [ + "fa4a08dc093aad94a53150a69958ea5701d0cdfc0457647f4a00851f2b3ffa4f", + "fd8a6288227c780955edaf8b4dede4dd79b2d6a1b9670dc32f84033dbf8be309", + "4a3581399d5766a955990785635f7387f42bc3ac7aefc687d70bedd0207993bc", + "4c485bed03b3790844630b99699bb40f5069c1d8403298cdfda2575a3317f64a", + "e11593ffb0ec0927fe5913230c741395327603a0cb862e6b83dfda2f6220ae47", + "cc515c273c51f6f72596a67c49bd9c8c601629067e48532c86a5ec436da6c5d4", + "a086dd03f412f823cb3b33845d313ed20d3eb30a8c1738fe538f8ce08dda6bc9", + "03393b682ce82af7ad546cbd6f5e6b633403a16c9539778326f27093154073c1", + "89ff0c2a9bf1d9e0c1340059cb502459adc6848943173465070dbc70f56c9773", + "a380843bf072ee4ebcdaa6db9c9b1bcdd7accd8376418847fe049b50be079824", + "e34e17ba796d22717b906c8ae168c515652b146e98f67ff81a17d32cfbb3a45d", + "70b80d8aebc1f699d448d6bb373046a46055cea8663f1e133e3b318bd3bbf341", + "831782f5c84d3a2e123ae7cf9de566a9e5958314dac1f2f943af76cc5a4ed5d6", + "1bb435d28f2bc87a2c6a8b92b314537495d986c635f3f24b0c89bb8431fd15da", + "1f20ecad2204c5f2c899891deee290ce478f20d080be1f01b0631cfde6d77c17", + "4a0451dff325ceca911fe96cc8e506f589259f7ae6d81a6562ad17da5ac2668a", + "fb4dfae5387e68f8f182b4cd18e2d04b3d23801beadb0e540b89182a8ef12544", + "bf301a4ed791f0937f2169890e091a55113e6f5869333627389cfa9013231650", + "d5b1193bc5c6faf12c4caedc4c1de1a155f1caac4b1b386f2c9fb59c0edddb79", + "370ea902ef6cdf5724565bfb35d2d999e5b8ae7d2997c94e3ce7b6bfc8698850", + "f5bea6ed28d2670ed0bc72485811f4579eee682784c336392515b9f38b305760", + "c5f2a08ab4ab5c4e4dc94bfd7fe5a3c37df0d10561d5eee3109a165aa8d09aee", + "107d8bc0847badc5833e23b36da204e51497d3f1716162337b2ca72a6d9b0df6", + "5af932d7fe5768c3a7a91282332e7768f46e57727280521bd0e3c9f183fa04f1", + "c0e3d82bf7ea3b756ba92372a93cb61e730e2e59814916b3e92ea0d142770771", + "95c6e7500b9f864c7baa380be57ffd71a995ea5594800861a797da989e5e145c", + "cb01db898f989f4c6fde7d34bf056442d3839d229d6e8c8fd581525acabfa32d", + "fd933d425b58fea110c87b5d18bd00fffbffa00d873198e501a825357e75a859", + "12832c0f7dc92f5825797c2460c978f3e875aea0a979c0a4060871bbd79a9bab", + "f07212d556a72bb84496ad42f34884efeed068bfad56613cf714bca57b67944e", + "d964fa024cbdc39fe0848bdeb5c884858a5ac18070bc1e4c0329f2d89fcaadcf", + "dab6ef8a1532af54954a15ea5e23ce45325d9f98f0e3fb86d60b7a0397d24539", + "42930b89e474cdda078d4d62f83b306800b744f407abb12457ab2002a4c1baba", + "ebbacd167f44ae7a2bcba0576b2bba82a9e92a2177c482c7e3607c94e731f1a0", + "5d19d027153f2b2e5e5fa02b5887eadf045f884b7410bc1af1eb756ae71476a0", + "623a5c27fbd454617541c911c1ca7f76e1017369953940959affc0126bd3ec9e", + "e985c1ac0733a0d152dc33ad991a56c05ed402b56772c434095bf2c563875bd1", + "ef4f339a0116feea24de95ead8342f2cc38eb2eb85b85c3ecbb25e77ae77cbbe", + "b5b4bbc22e5b5bae35469b6565c089be978e383bca0d9ea2bdf66b2c2022976a", + "424700038eb0dd496185b4406b017eb667af2336bd343a6518cdb282ed1f4ad1", + "56a51a420357c104c259ffefcc61717fc2d33bbac669fd340b62448e7b1ff798", + "17d2faacc25d75413c7765d42904380717b7dfba97b043ecf6e68448d74c814a", + "84fcec4b8e91924a2d84756257a3f7b5be9993390cb0d83ea216c344cd01747e", + "580a018abe2b78ff31d78a0376939df219b6e4348501b5cd4005a711a4cf2585", + "665816a7e23ad88e6fce9816231f577a8a4cc99f0fb7042243727ff97dfb91a9", + "43382ca90c2df1ad395083a12f7234582ea05fb002ebe876e39b32b192b8ada3", + "a742f234ac609ba886fe26fc693ae013386f1b8b4d4b3c0fca228fbbd7af483f", + "28f0a6a1363b275abecc85f2bee9d3c5c82a69692d9e81a977c050c94a09db9a", + "c1ec9c86f3a6e0085d60e0d08cd2f8711d90b4066d0b5dfa922675d11a734712", + "b53ba0ccab9ab7a8fe313144d531d11397926ca47601f444c6e995d8c7bfe71b", + "ac0249f67ef196e0656ff7e065d21224aea23f74592d0df86b3869e0a08de6c4", + "36ae57b76cc6821c11d16b120219ecb3e66724bb9b913be1da889b5d3900926e", + "267b2beaeca176baaa9f8c82b8d74a308a307751320c46e850a5eaea83c5accc", + "f639b783f5606cebaf54d8c04499037c3ab777163747416a6910cb0352002b67" + ] + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 40713, + "blockTimestampDelay": 288890 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000040000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 2, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x51b295e3bb1a2084cb159fd6a10d243726c06ecc2c061e64fa5637a4e1e36ecd536af41a", + "dataAbiValues": { + "methodSignature": "handleFinalize(uint256)", + "inputValues": [ + "84628665144738400938347255498120459236162163404711567437113231227400449881114" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 40461, + "blockTimestampDelay": 86400 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000010000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x51b295e35136d12e4fabb2fa40b59d097a7d5e4dc2581129e405d2d808b39933f643e93e", + "dataAbiValues": { + "methodSignature": "handleFinalize(uint256)", + "inputValues": [ + "36734194190276940096273241257659402973542659853799331442674641708617136597310" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 0, + "blockTimestampDelay": 0 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000090000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 2, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xc0106a6cffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0a9473a1fb03242c6ca0cf72ce918a668d75a7aef4f15a0d33f1a7b490a38de2b", + "dataAbiValues": { + "methodSignature": "handleCreateRequest(uint256,uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913129639904", + "76566718707773384903225614118535891165433973603151251259517762515743289171499" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 47596, + "blockTimestampDelay": 550258 + } +] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/call_sequences/immutable/1731277803605108000-73ba1036-f664-420c-8d38-fc474d664848.json b/test/invariants/fuzz/corpus/call_sequences/immutable/1731277803605108000-73ba1036-f664-420c-8d38-fc474d664848.json new file mode 100755 index 0000000..c3f2dc8 --- /dev/null +++ b/test/invariants/fuzz/corpus/call_sequences/immutable/1731277803605108000-73ba1036-f664-420c-8d38-fc474d664848.json @@ -0,0 +1,432 @@ +[ + { + "call": { + "from": "0x0000000000000000000000000000000000040000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x52e3cb9c6b0d264b5add160d5053aa476132c22d6540d3605ad8dfb850790b1ba996569b", + "dataAbiValues": { + "methodSignature": "handleSetMaxUsersToCheck(uint256)", + "inputValues": [ + "48420708108177856443123222644862532857390746786695606854692354379525674915483" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 59698, + "blockTimestampDelay": 331757 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000020000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x62e8fd3500000000000000000000000000000000000000000000000000000000000000124ab950c09e2414c3ec444389b5281e1bdfda8ecfec5392240af8d376f3781e4f", + "dataAbiValues": { + "methodSignature": "handleOnDisputeStatusChange(uint256,uint256)", + "inputValues": [ + "18", + "33798574834817402171861624718400176195923458571787846279113220864863863578191" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 41059, + "blockTimestampDelay": 386818 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000040000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x161c7318", + "dataAbiValues": { + "methodSignature": "test_debug()", + "inputValues": [] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 2290, + "blockTimestampDelay": 360593 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000050000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xb05752f700000000000000000000000000000000000000000000000014d1120d7b160000fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa0100ffffe666666666666666666666666666666666666666666666666666666666670000000000000000000000000000000000000000000000000000000000000001", + "dataAbiValues": { + "methodSignature": "handleOnSettleBondEscalation(uint256,uint256,uint256,uint256)", + "inputValues": [ + "1500000000000000000", + "115792089237316195423570985008687907853269984665640564039457584007913129246976", + "115791912552609717585138026678937833561418401917250876477561771847293000377959", + "1" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 35958, + "blockTimestampDelay": 189815 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000080000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xd1a556550000000000000000000000000000000000000000000000000000000000093a80", + "dataAbiValues": { + "methodSignature": "handleRevokeModule(uint256)", + "inputValues": [ + "604800" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 23866, + "blockTimestampDelay": 120766 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000040000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 2, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xf60285cafffffffffffffffffffffffffffffffffffffffffffffffffffffffffffb00001f6163d95156c50021d434e3914437a6419fd074db58aba632a1165e1049633a3bf295102083f98484e4163605f3f088673969b3a53bced8eb97b90d6679470f0000000000000000000000000000000000000000000000000000000000000014", + "dataAbiValues": { + "methodSignature": "handleBondWithSender(uint256,uint256,uint256,uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913129312256", + "14193771603127510897806160380156132720630156725507671248204049821265402880826", + "27115063851078188957254873925429362151386502274781693755807630999965205612303", + "20" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 14998, + "blockTimestampDelay": 528331 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000050000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x51b295e3fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc18", + "dataAbiValues": { + "methodSignature": "handleFinalize(uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913129638936" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 23876, + "blockTimestampDelay": 327680 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000060000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x2047c4493b1bb599e967df2247a0bde0e15c19a16d95520dbb9eb811b647dd1c5a50d970bda0d1adb4d017dcf6513d613392f361bfe0847acfbe5bbfd267240bef7125cd61ebaebab2bac3aa4819e2caf8f85c718565871747241e292cc36db91888e520d873b789d8f47c6606b2d5358f69133b1dd4937cee526c90ac095190af102de2", + "dataAbiValues": { + "methodSignature": "handlePay(uint256,uint256,uint256,uint256)", + "inputValues": [ + "26735416302702836720504774004574936090245153519362370366870156849631651223920", + "85771271060700958624081931951489906403580871476691194667860842730768850560461", + "44290761310036599938494988979380191776366734083697389368196279735913800066336", + "97904029442377240838501909618781928147909909174040210570358457032104622435810" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 54628, + "blockTimestampDelay": 362209 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000020000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x9f6259e57cf479b021a816743ff5b53a6f3e5c2c247b2adb9311a44237c3858abd44df0e0000000000000000000000000000000000000000000000000000000000127118", + "dataAbiValues": { + "methodSignature": "handleResolve(uint256,uint256)", + "inputValues": [ + "56518743767933985910260346386765678340564227438862784222762849925209918856974", + "1208600" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 35385, + "blockTimestampDelay": 50692 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000050000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 2, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x0fb55087fffffffffffffffffffffffffffffffffffffffffffffffffffffff400000000", + "dataAbiValues": { + "methodSignature": "handleApproveModule(uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007861590032384" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 1, + "blockTimestampDelay": 57134 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000050000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 3, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x5356b6811b3175568497fde3c31fe069ccc7985311b0506f3b43e70969ab59ea722d2599", + "dataAbiValues": { + "methodSignature": "handleAddEBORequestCreatorFinalityModule(uint256)", + "inputValues": [ + "12299832254764069471447641000592064088020729744720327828938364394997925356953" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 0, + "blockTimestampDelay": 0 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000050000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 4, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xa44b098ea6e532d597161bf414844541b5281607abc0fedcfbe19700823ca81bfeffd5da", + "dataAbiValues": { + "methodSignature": "handleSetArbitrator(uint256)", + "inputValues": [ + "75488891688353701349182521546099519030572206284453220585196006136091846366682" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 13249, + "blockTimestampDelay": 486500 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000090000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x727899ff000000000000000000000000000000000000000000000000000000000009688043d2cc6bee2c75afbb0a2d8e686ed8d850d35e4220dab9eaaad8c1f2bbd315eb000040ba1702262dc3924484fe5b466a7207d688c9429f8aaeb64c1acd0d86e1fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff70000", + "dataAbiValues": { + "methodSignature": "handlePledge(uint256,uint256,uint256,uint256)", + "inputValues": [ + "616576", + "30677409604733962472433633135176719636373390531562919397962760076773674915307", + "446728739341497667529209047101419397582060126024847855090499938302133985", + "115792089237316195423570985008687907853269984665640564039457584007913129050112" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 28736, + "blockTimestampDelay": 576650 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000040000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 3, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x52e3cb9cfffffffffffffffffffffffffffffffffffffffffffffffff90fa4a62c4e0000", + "dataAbiValues": { + "methodSignature": "handleSetMaxUsersToCheck(uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457084007913129639936" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 14857, + "blockTimestampDelay": 578411 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000070000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x91e32c74fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8000053817ae4082823f7b7ef4f21ea8eaf2d55883b146199ee5cd9707c39a3f025ab", + "dataAbiValues": { + "methodSignature": "handleCreateRequest(uint256,bytes32)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913129115648", + "53817ae4082823f7b7ef4f21ea8eaf2d55883b146199ee5cd9707c39a3f025ab" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 23, + "blockTimestampDelay": 32 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000070000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x48a41c2700db944f945348b4c6cffca09ace97414e862af57bfe67d15e8f4ba3813ede4b3d688e69cd534e15f8ccc3765fd50e2ab30d2b740b3ff6d5865213182fe783c63b4bac2923dad06e124a6e05ae7aa5ae1b3e8edff0154acd1de94e5fe6e26732", + "dataAbiValues": { + "methodSignature": "handlePropose(uint256,uint256,uint256)", + "inputValues": [ + "387963111102058097323071002434237761651493831039740349958407635767455047243", + "27775818758715135462630212585325327395456425224261459780030383525521640620998", + "26820159805776502209708934821205059577225837408551437026198979884765463865138" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 25200, + "blockTimestampDelay": 27983 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000020000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 2, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xc0106a6cfffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7fc1800001fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff", + "dataAbiValues": { + "methodSignature": "handleCreateRequest(uint256,uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913129114648", + "220855883097298041197912187592864814478435487109452369765200775161577471" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 50518, + "blockTimestampDelay": 458752 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000050000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 5, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x9d2e6a6f000000000000000000000000000000000000000000000000000000000005d100", + "dataAbiValues": { + "methodSignature": "handleRemoveEBORequestCreatorRequestModule(uint256)", + "inputValues": [ + "381184" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 23639, + "blockTimestampDelay": 195785 + } +] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/call_sequences/immutable/1731277803605587000-7b0538fd-d4b9-43b3-92c7-691cc391e386.json b/test/invariants/fuzz/corpus/call_sequences/immutable/1731277803605587000-7b0538fd-d4b9-43b3-92c7-691cc391e386.json new file mode 100755 index 0000000..0125ab6 --- /dev/null +++ b/test/invariants/fuzz/corpus/call_sequences/immutable/1731277803605587000-7b0538fd-d4b9-43b3-92c7-691cc391e386.json @@ -0,0 +1,521 @@ +[ + { + "call": { + "from": "0x0000000000000000000000000000000000030000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x13a8b8040000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000034000000000000000000000000000000000000000000000000000000000000000170000000000000000000000000000000000000000000000000000000000d2f000ffffc0000000000000000000000000000000000000000000000000000000000181dc31bc03ad9bc8a966de91dfc8c49b929f6d5fd44a9c22a7f5bb37cebfc106ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed8ee8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b825bc2cfc37067e378b4feef3f3411136744d0b2851c161c601669654cf27bfe610000000000000000000000000000000000000000000000000000000000000000578750b27e877a957d33dc50d914b1caf972efffa4bb78b85e66dd813a864ca4039e696f94058cfd274de97421f65916ac135f4d55083d357b9c1f34820c9376000000000000000000000000000000000000000000000000000000000003fffe000000000000000000000000000000000000000000000000000000000000000167e6a528e0202cf23a36eacf513eee303475d3e4c983b2ae2d616b11c440f70a4ac07813439b9213b22d4d86340307a2982de60c241368ad288dfea742b6eb5efffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9686c2d73382b1edfa908bcaeb6b9ac0073f469887a9150c80831642e47e35a614c1bffffffffffffffffffffffffffffffffffffffffffffe48e5eb33a3a7f000000104a13a90c13653470268ea78892361e7e91e706d859aabaaf45ddd18c956640809a37cc7335cdf29b7d988dc8c05e2c1899ad1795364e6fa667088b49487472000000000000000000000000000000000000000000000000000000000000fff6fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b800000000000000000000000000000000000000000000000000329c51ac594cf93000000000000000000000000000000000000000000000000000000000076a700a77a4c48695a0407441e86efc633aee092d2ebd99c87fdfeebcd904fe33e086d000000000000000000000000000000000000000000000000000000000000001d563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd0633ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865d5d6866ffb684491364a0853403f689144f5664f5d50de1b1a30d683ff29f21bf8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b4498bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef328d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad82082401f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade0554594d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae96291d8c581a922d52cd477658fcc2e2ca1f954f274ed2cd833a98e6d1d4455581f9d9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cbba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c33f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8fd276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f6617237058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf259a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe2665f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a219fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb", + "dataAbiValues": { + "methodSignature": "handleCreateRequests(uint256[],bytes32[])", + "inputValues": [ + [ + "13824000", + "115791647525550000827488589184312722123641027794666345134718053606362806484993", + "58737407075920930096693749632210245280794127876199190949253348332199714210054", + "115792089237316195423570985008687907853269984665640564039457584007913128431336", + "115792089237316195423570985008687907853269984665640564039457584007913129380738", + "41504671482165347584846103287222174319130579613222615088745194098566077611617", + "0", + "39590299132392589184737138068833640165131826767556478003143025413084726840484", + "1636828073493779560152621491074002847609709387720111137750911676859097584502", + "262142", + "1", + "46995738119123743123282428161140493004285235666026628953647859202250191730442", + "33811214160519685654400438720767591502827986970858420988841187408488311483230", + "115792089237316195423570985008687907853269984665640564039457584007913129207916", + "20557653259021005890251421269967042420225955023564768794272035576696478452763", + "115792089237316195423570985008687907853269984665640563909857584007913129639936", + "7367887950809164700104084563884591449786965425123545364576065505479275931200", + "58168524174645209900719041489934173752247098791866719219864340874379345294450", + "65526", + "115792089237316195423570985008687907853269984665640564039457584007913129380736", + "227929974933606291", + "7776000", + "75752327540241786815348607290604056680494387521335977257182003214564422715501" + ], + [ + "563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe", + "27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a", + "9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd06", + "33ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865", + "d5d6866ffb684491364a0853403f689144f5664f5d50de1b1a30d683ff29f21b", + "f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1", + "c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b44", + "98bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01", + "108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef32", + "8d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea", + "94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad8208240", + "1f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade05545", + "94d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056", + "cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae96291", + "d8c581a922d52cd477658fcc2e2ca1f954f274ed2cd833a98e6d1d4455581f9d", + "9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874", + "ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cb", + "ba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c3", + "3f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8f", + "d276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99", + "fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce", + "3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb", + "4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f661723", + "7058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78", + "994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25", + "9a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe26", + "65f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a2", + "19fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c", + "51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb" + ] + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 21265, + "blockTimestampDelay": 360627 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000020000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x161c7318", + "dataAbiValues": { + "methodSignature": "test_debug()", + "inputValues": [] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 15325, + "blockTimestampDelay": 189245 + }, + { + "call": { + "from": "0x00000000000000000000000000000000000a0000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x88b05f294e5c5739570432e46e997185cf2683c287e8339e1ce7ab9502db4f4b4f0c1b77000000000000000000000000000000000000000000000000000000000012750000000000000000000000000000000000000000000000000006f05b59d3b200003c3b20fe3c6474ef6112cec6e2e1e2a66147c502767418c32e65c3bfa035d898948fc45007206ff5c0b2215d0b5c97d5551a84ed653f28e284b8567c463ce3650000000000000000000000000000000000000000000000000000000000069780ffffffffffffffffffffffffffffffffffffffffffffffffffffffec398000000000000000000000000000000000000000000000000000000000000000093a80", + "dataAbiValues": { + "methodSignature": "handleSetDisputeModuleData(uint256,(address,address,uint256,uint256,uint256,uint256,uint256))", + "inputValues": [ + "35443554117267417118592017165536035041230544133048285386578266163756344810359", + { + "accountingExtension": "0x0000000000000000000000000000000000127500", + "bondEscalationDeadline": "432000", + "bondSize": "27243242601887521753615714576112380311306725462768124357416761313244220872856", + "bondToken": "0x00000000000000000000000006f05b59d3b20000", + "disputeWindow": "604800", + "maxNumberOfEscalations": "67196315620416968751812103706326677402054656808860235011842083525495944438629", + "tyingBuffer": "115792089237316195423570985008687907853269984665640564039457584007828194983936" + } + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 24101, + "blockTimestampDelay": 185392 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000040000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x3c26dcf8000000000000000000000000000000000000000000000853a0d2313c00000000", + "dataAbiValues": { + "methodSignature": "handleSetEpochManager(uint256)", + "inputValues": [ + "39321600000000000000000" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 23050, + "blockTimestampDelay": 360593 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000070000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x1c6850cfb0e3106162bbf50b7b4f4127a44fc6dee30686640d85ab8a97c7a387e688d09200000000000000000000000000000000000000000000000000000000000151800000000000000000000000000000000000000000000000000de0b6b3a7640000", + "dataAbiValues": { + "methodSignature": "handleUpdateDisputeStatus(uint256,uint256,uint256)", + "inputValues": [ + "80008248687813878652618995284154503941697939794158322754224777983398987223186", + "86400", + "1000000000000000000" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 17066, + "blockTimestampDelay": 86400 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000020000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xc0106a6cce21db24dd246f08ad02e64e7a8e8742fa9607e8fdf81425d16e85c70f3de5d85907be10f550a4ab3f84480cf0ea723b2a74da20322f8a7c02918a70cdb15ac9", + "dataAbiValues": { + "methodSignature": "handleCreateRequest(uint256,uint256)", + "inputValues": [ + "93236265237587594263022487768855356786420509345912517467786824227481808922072", + "40269523242363880299786798295795090179015741572111778996238876869560403843785" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 0, + "blockTimestampDelay": 101426 + }, + { + "call": { + "from": "0x00000000000000000000000000000000000a0000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x9d2e6a6f998e4550a0de435d19cec4771f09fda88c2b7664624260171a192d839c6e2a65", + "dataAbiValues": { + "methodSignature": "handleRemoveEBORequestCreatorRequestModule(uint256)", + "inputValues": [ + "69455236510673350336024647478873143438234265695463592178397393693034284984933" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 35869, + "blockTimestampDelay": 315170 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000020000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 2, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xd1a55655fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6c580", + "dataAbiValues": { + "methodSignature": "handleRevokeModule(uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913129035136" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 55790, + "blockTimestampDelay": 111616 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000010000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x55438465815bedc734908418031caab89516e183218d7f0edf8e3c493ab40a8fcacc98210000000000000000000000001260c0c92cc0a0b1b5b54cb0501ed367353befeb", + "dataAbiValues": { + "methodSignature": "handleSetResolutionModuleData(uint256,(address))", + "inputValues": [ + "58510781634585462798122964402259920591361435129587016659431711127985600632865", + { + "arbitrator": "0x1260c0c92cc0A0b1B5b54cb0501eD367353befeB" + } + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 25042, + "blockTimestampDelay": 70452 + }, + { + "call": { + "from": "0x00000000000000000000000000000000000a0000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 2, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x9d2e6a6ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6c580", + "dataAbiValues": { + "methodSignature": "handleRemoveEBORequestCreatorRequestModule(uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913129035136" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 25184, + "blockTimestampDelay": 168977 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000050000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x7aeb6fabc80cc1410f822f39c5490f53cdc96dd08eb43974e7995e4657ae6b6bf548e7f2871b07795e307166d3b23beb0529cf4a4051c8b01210b5127b57c6be3cac11f1", + "dataAbiValues": { + "methodSignature": "handleDisputeResponseBondEscalationModule(uint256,uint256)", + "inputValues": [ + "90485105672505321392083992946066544751897224405196443707030040081777413384178", + "61109991013787236767457822530506378720905044490242359531817392410759292260849" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 41797, + "blockTimestampDelay": 101425 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000090000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xa59d317dfffffffffffffffffffffffffffffffffffffffffffffffffffffffffff90000000000000000000000000000ca826f8feadcf20b2c0d50019199cea2b62c4cc700000000000000000000000075f502741def771b94c656bf8b5b7b7f148a930e00000000000000000000000000000000000000000000000006f05b59d3b20003f8dd5e39a09165ac6f78d6e4e38c07ee1b85cd9c0c109e3875dd38c411542ff4f3b3ccb415be6bb6735532f53ea67d407e49e0d5d7b99fe0de0f5c49f9da3fad", + "dataAbiValues": { + "methodSignature": "handleSetResponseModuleData(uint256,(address,address,uint256,uint256,uint256))", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913129181184", + { + "accountingExtension": "0xCA826F8feAdcF20b2c0d50019199ceA2B62C4cC7", + "bondSize": "500000000000000003", + "bondToken": "0x75f502741def771B94c656BF8b5b7b7F148a930e", + "deadline": "112564709967749425184314086071684882232174773517983829235624129600201071800308", + "disputeWindow": "110229700641664101210984642912501714027284836539036269317787492668732763422637" + } + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 38892, + "blockTimestampDelay": 395331 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000030000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 2, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x5356b681ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed8b00", + "dataAbiValues": { + "methodSignature": "handleAddEBORequestCreatorFinalityModule(uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913128430336" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 1, + "blockTimestampDelay": 4 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000020000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 3, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xc82f34f9fffffffffffffffffffffffffffffffffffffffffffffffff90fa4a62c4e0000fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffb0000", + "dataAbiValues": { + "methodSignature": "handleSettleBondEscalation(uint256,uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457084007913129639936", + "115792089237316195423570985008687907853269984665640564039457584007913129312256" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 23866, + "blockTimestampDelay": 113161 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000010000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x2047c4492e64b41916de5b94d992b242b245ce626a3dd9c7254209d1570cf319fa441fd1000000000000000000000000000000000000000000000000000000000008fffd0fa843072bf2005848c182b7849f66291f398bbb4dafa0e91ec02b6a91d418b672d4cd830dfe7246067a1b8779402dfb7b658d530dd840edc5012d689d2c9579", + "dataAbiValues": { + "methodSignature": "handlePay(uint256,uint256,uint256,uint256)", + "inputValues": [ + "20984318732057524363726518924471354496680932310149856273743839135273616416721", + "589821", + "7081985645984608152432907279403883877639977254641757337320076223831621245110", + "51939654707453224176314972721194901176628383443245907877596385748832861590905" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 17276, + "blockTimestampDelay": 163731 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000050000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x91e32c740000000000000000000000000000000000000000000000000000000000010000b7d9c274be2bab775c3f0c67272c24e432bd17847d8d572c22e3bcbb93effe8a", + "dataAbiValues": { + "methodSignature": "handleCreateRequest(uint256,bytes32)", + "inputValues": [ + "65536", + "b7d9c274be2bab775c3f0c67272c24e432bd17847d8d572c22e3bcbb93effe8a" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 5055, + "blockTimestampDelay": 233600 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000070000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x0fb550870000000000000000000000000000000000000000000000000000000000090000", + "dataAbiValues": { + "methodSignature": "handleApproveModule(uint256)", + "inputValues": [ + "589824" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 32888, + "blockTimestampDelay": 86400 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000060000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x554384651676267f0f7bea50c3144ae4e2baa4c5c6c43120dd776d813464250e09efd5560000000000000000000000005d52af464621f4bc06c88cb2ce9f9e7d74fd3422", + "dataAbiValues": { + "methodSignature": "handleSetResolutionModuleData(uint256,(address))", + "inputValues": [ + "10159636314380774835278947121760878401829355612383499588542760074484202329430", + { + "arbitrator": "0x5D52af464621f4Bc06c88cB2cE9F9e7D74Fd3422" + } + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 53908, + "blockTimestampDelay": 60042 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000080000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xbf938c53", + "dataAbiValues": { + "methodSignature": "property_sanityCheck()", + "inputValues": [] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 17266, + "blockTimestampDelay": 360623 + } +] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/call_sequences/immutable/1731277803606635000-d68a6881-2741-489a-b7bd-a28264c8897a.json b/test/invariants/fuzz/corpus/call_sequences/immutable/1731277803606635000-d68a6881-2741-489a-b7bd-a28264c8897a.json new file mode 100755 index 0000000..bffec95 --- /dev/null +++ b/test/invariants/fuzz/corpus/call_sequences/immutable/1731277803606635000-d68a6881-2741-489a-b7bd-a28264c8897a.json @@ -0,0 +1,635 @@ +[ + { + "call": { + "from": "0x0000000000000000000000000000000000030000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x13a8b8040000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000034000000000000000000000000000000000000000000000000000000000000000170000000000000000000000000000000000000000000000000000000000d2f000ffffc0000000000000000000000000000000000000000000000000000000000181dc31bc03ad9bc8a966de91dfc8c49b929f6d5fd44a9c22a7f5bb37cebfc106000000000000000000000000000000000000000000007ff72b2c19616ab00000e645df196666f5e4e940c577b9670b086db2c746878e45aae0dbee6c63a0e6a35bc2cfc37067e378b4feef3f3411136744d0b2851c161c601669654cf27bfe6100000000000000000000000000000000000000000000000000000000000000006cd40d93882a844c2becf361c7579664aef7a6ef6e8b79d6bf6f6f76426e9b14039e696f94058cfd274de97421f65916ac135f4d55083d357b9c1f34820c9376000000000000000000000000000000000000000000000000000000000003fffe000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000004ac07813439b9213b22d4d86340307a2982de60c241368ad288dfea742b6eb5efffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9686c2d73382b1edfa908bcaeb6b9ac0073f469887a9150c80831642e47e35a614c1bffffffffffffffffffffffffffffffffffffffffffffe48e5eb33a3a7f000000104a13a90c13653470268ea78892361e7e91e706d859aabaaf45ddd18c956640809a37cc7335cdf29b7d988dc8c05e2c1899ad1795364e6fa667088b49487472000000000000000000000000000000000000000000000000000000000000fff6fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b80756993dc4be6ecf1e46c48d6f9cae9255a8b46ef956a3d85442a5f41f70ecf93000000000000000000000000000000000000000000000000000000000076a700a77a4c48695a0407441e86efc633aee092d2ebd99c87fdfeebcd904fe33e086d000000000000000000000000000000000000000000000000000000000000001d563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd0633ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed6958658aad3329b56f2f98187bbaed7351982ae06a00b9382adcb723b8b393d1f5e2def8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b4498bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a0171bc7dd16f0e277b94f2e46980d7e8e6c3c5187bf68be378e2d72cd0e70293ef8d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad82082401f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade0554594d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae962914f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874465e592f6d3f1d78fbc619b878d95794035829bd9b1285f3eb021d72f8e45638ba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c33f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8fd276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a9925e5ea45a807ae40eb654d82982bacb30bb1da6060d308d0b63004f4e1926b0c3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f6617237058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf259a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe2665f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a219fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb", + "dataAbiValues": { + "methodSignature": "handleCreateRequests(uint256[],bytes32[])", + "inputValues": [ + [ + "13824000", + "115791647525550000827488589184312722123641027794666345134718053606362806484993", + "58737407075920930096693749632210245280794127876199190949253348332199714210054", + "604300000000000000000000", + "104155407395839188072220307346509508179171066778602859964492537460856123877027", + "41504671482165347584846103287222174319130579613222615088745194098566077611617", + "0", + "49224452924880417829398231270379785502530069722970149981823851608145893694228", + "1636828073493779560152621491074002847609709387720111137750911676859097584502", + "262142", + "1", + "0", + "33811214160519685654400438720767591502827986970858420988841187408488311483230", + "115792089237316195423570985008687907853269984665640564039457584007913129207916", + "20557653259021005890251421269967042420225955023564768794272035576696478452763", + "115792089237316195423570985008687907853269984665640563909857584007913129639936", + "7367887950809164700104084563884591449786965425123545364576065505479275931200", + "58168524174645209900719041489934173752247098791866719219864340874379345294450", + "65526", + "115792089237316195423570985008687907853269984665640564039457584007913129380736", + "53107142721938561923251317745913031228477959801596843755970727929974933606291", + "7776000", + "75752327540241786815348607290604056680494387521335977257182003214564422715501" + ], + [ + "563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe", + "27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a", + "9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd06", + "33ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865", + "8aad3329b56f2f98187bbaed7351982ae06a00b9382adcb723b8b393d1f5e2de", + "f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1", + "c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b44", + "98bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01", + "71bc7dd16f0e277b94f2e46980d7e8e6c3c5187bf68be378e2d72cd0e70293ef", + "8d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea", + "94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad8208240", + "1f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade05545", + "94d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056", + "cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae96291", + "4f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa", + "9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874", + "465e592f6d3f1d78fbc619b878d95794035829bd9b1285f3eb021d72f8e45638", + "ba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c3", + "3f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8f", + "d276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99", + "25e5ea45a807ae40eb654d82982bacb30bb1da6060d308d0b63004f4e1926b0c", + "3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb", + "4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f661723", + "7058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78", + "994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25", + "9a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe26", + "65f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a2", + "19fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c", + "51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb" + ] + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 21265, + "blockTimestampDelay": 360627 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000030000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 2, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x0692ea7eeaaa73118d1da2c1db95511517ab896f87445c2331029aecdc7f065f634e6b46", + "dataAbiValues": { + "methodSignature": "handleRemoveChain(uint256)", + "inputValues": [ + "106142364743506859045918558596602602319943607038906547683486076996802461985606" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 2001, + "blockTimestampDelay": 455470 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000090000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x864e2da9fffffffffffffffffffffffffffffffffffffffffffffffff90fa4a62c573a80b81e8d97661fbf779db19fd00793e39f3b40bca612ee408ab75ff1c6439cf047509736e50626b1084ee93f4294000f73db102927cdc7fc34de68c384da900e6c", + "dataAbiValues": { + "methodSignature": "handleArbitrateDispute(uint256,uint256,uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457084007913130244736", + "83279546779206125286340055887058748934887896216240549764862301155730028032071", + "36452200662221151095065482565067302916782446267779931962683895890335455252076" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 41956, + "blockTimestampDelay": 475112 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000090000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xb6c75efaab191ad64d8fba3d052ab8ef37a088ba9faf5a1be696a47310de3441525ef897fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe3aaae444ec5312714f03b0566d2b40e5d34f58f068cabf3625fc0d7cfe3db912", + "dataAbiValues": { + "methodSignature": "handleClaimEscalationReward(uint256,uint256,uint256)", + "inputValues": [ + "77389853507359787864882669351213362161735184606551274462865365263877886900375", + "115792089237316195423570985008687907853269984665640564039457584007913129639934", + "26536084675173092165947634556752584404681954305155475174391110206140234709266" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 18699, + "blockTimestampDelay": 240561 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000030000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 3, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xf84d6dfcd2d78e343e1607b919341e2fe248544a49a0028fbd677a717f6a437862ddbc00", + "dataAbiValues": { + "methodSignature": "handleAddEBORequestCreatorRequestModule(uint256)", + "inputValues": [ + "95366551777850189910113500849756061153261920552639335948298155642211775921152" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 16776, + "blockTimestampDelay": 165634 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000060000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x0fb55087cd27e66c1a6365fdd2d452e5a6a582655000c0811d209ba0499f4483caf4b2da", + "dataAbiValues": { + "methodSignature": "handleApproveModule(uint256)", + "inputValues": [ + "92794631311208978202520326772644046682922248037671286389514014341863059010266" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 6256, + "blockTimestampDelay": 488143 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000060000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xaa1a5bd9128a1b5b9d7d3061f14bea63c8830170dadc5f154b01425336f91cc6d8611588ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00", + "dataAbiValues": { + "methodSignature": "handleResolveDispute(uint256,uint256)", + "inputValues": [ + "8385644986530251641334144830118419649455771804161689778824132977763480049032", + "115792089237316195423570985008687907853269984665640564039457584007913129639680" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 35699, + "blockTimestampDelay": 65536 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000020000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x51b295e30000000000000000000000000000000000000000000000000de0b6b3a7640000", + "dataAbiValues": { + "methodSignature": "handleFinalize(uint256)", + "inputValues": [ + "1000000000000000000" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 41252, + "blockTimestampDelay": 375602 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000020000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xf60285caff44fb6a2363fac767b088aff222c3143f1ed041c9b3e47d6474ee4922e1979fec9d178675775c3aa5161a5a209a68597466d991483528cc71c8d6ac533d0955a137b7e6f635f28c37dc46d14755f62f1ce7b659dc1873b04e1744e54dc225b665dad307139d75a132cdb60e373e4b35bba44673f5ee3d0bfbf1ac491c3d0e75", + "dataAbiValues": { + "methodSignature": "handleBondWithSender(uint256,uint256,uint256,uint256)", + "inputValues": [ + "115461657188952309751477762153544746327107707569543270374831352475679717431199", + "107023389619990543669223297468939824753654796115418022982959364890624175966549", + "72920814456766912229072746410044959713398794893085675262607692768311068730806", + "46070226826296101107756227560930518318774961046515756120293728876851585945205" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 39447, + "blockTimestampDelay": 175903 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000040000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xa59d317d37645351a8f36eba3b366024eafac86b09ad5a52e0d3cf42eb52112344ab3206000000000000000000000000d12fb9f7a711eb0caf6aac68aeaf04277804b39e000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000000000000000000000000000000000000003200000fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffb00000b2104824bc90dc4bcf1e407a769278e1c443fdba6cf324b44962e4fea636424", + "dataAbiValues": { + "methodSignature": "handleSetResponseModuleData(uint256,(address,address,uint256,uint256,uint256))", + "inputValues": [ + "25054466425052560783839884851311066245042877293899029878022208182382616064518", + { + "accountingExtension": "0xd12fb9f7A711Eb0caF6aaC68AEaF04277804B39e", + "bondSize": "52428800", + "bondToken": "0x000000000000000000000000000000000000000A", + "deadline": "115792089237316195423570985008687907853269984665640564039457584007913129312256", + "disputeWindow": "5033778407313201451107747851099848118306043382601391308246767880599192691748" + } + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 26656, + "blockTimestampDelay": 604799 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000040000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x0692ea7efffffffffffffffffffffffffffffffffffffffffffffffffbd62f96e74f8b00", + "dataAbiValues": { + "methodSignature": "handleRemoveChain(uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457284007913128430336" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 56799, + "blockTimestampDelay": 262144 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000020000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 2, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x4741f6dcfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd0000", + "dataAbiValues": { + "methodSignature": "handleSetFinalityModuleData(uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913129443328" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 23786, + "blockTimestampDelay": 327680 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000050000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x13a8b804000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000e00000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000d2f0087104a1ac49782a4e16877da31b055635722ebf513f4c9d4971ee8ba22ecc4a6eec651143a3c6f38d013752a6418c6f09e02c569047e21b1821746f674b34b1c0000000000000000000000000000000000000000000000000000000000000036fa4a08dc093aad94a53150a69958ea5701d0cdfc0457647f4a00851f2b3ffa4ffd8a6288227c780955edaf8b4dede4dd79b2d6a1b9670dc32f84033dbf8be3094a3581399d5766a955990785635f7387f42bc3ac7aefc687d70bedd0207993bc4c485bed03b3790844630b99699bb40f5069c1d8403298cdfda2575a3317f64ae11593ffb0ec0927fe5913230c741395327603a0cb862e6b83dfda2f6220ae47cc515c273c51f6f72596a67c49bd9c8c601629067e48532c86a5ec436da6c5d4a086dd03f412f823cb3b33845d313ed20d3eb30a8c1738fe538f8ce08dda6bc903393b682ce82af7ad546cbd6f5e6b633403a16c9539778326f27093154073c189ff0c2a9bf1d9e0c1340059cb502459adc6848943173465070dbc70f56c9773a380843bf072ee4ebcdaa6db9c9b1bcdd7accd8376418847fe049b50be079824e34e17ba796d22717b906c8ae168c515652b146e98f67ff81a17d32cfbb3a45d70b80d8aebc1f699d448d6bb373046a46055cea8663f1e133e3b318bd3bbf341831782f5c84d3a2e123ae7cf9de566a9e5958314dac1f2f943af76cc5a4ed5d61bb435d28f2bc87a2c6a8b92b314537495d986c635f3f24b0c89bb8431fd15da1f20ecad2204c5f2c899891deee290ce478f20d080be1f01b0631cfde6d77c174a0451dff325ceca911fe96cc8e506f589259f7ae6d81a6562ad17da5ac2668afb4dfae5387e68f8f182b4cd18e2d04b3d23801beadb0e540b89182a8ef12544bf301a4ed791f0937f2169890e091a55113e6f5869333627389cfa9013231650d5b1193bc5c6faf12c4caedc4c1de1a155f1caac4b1b386f2c9fb59c0edddb79370ea902ef6cdf5724565bfb35d2d999e5b8ae7d2997c94e3ce7b6bfc8698850f5bea6ed28d2670ed0bc72485811f4579eee682784c336392515b9f38b305760c5f2a08ab4ab5c4e4dc94bfd7fe5a3c37df0d10561d5eee3109a165aa8d09aee107d8bc0847badc5833e23b36da204e51497d3f1716162337b2ca72a6d9b0df65af932d7fe5768c3a7a91282332e7768f46e57727280521bd0e3c9f183fa04f1c0e3d82bf7ea3b756ba92372a93cb61e730e2e59814916b3e92ea0d14277077195c6e7500b9f864c7baa380be57ffd71a995ea5594800861a797da989e5e145ccb01db898f989f4c6fde7d34bf056442d3839d229d6e8c8fd581525acabfa32dfd933d425b58fea110c87b5d18bd00fffbffa00d873198e501a825357e75a85912832c0f7dc92f5825797c2460c978f3e875aea0a979c0a4060871bbd79a9babf07212d556a72bb84496ad42f34884efeed068bfad56613cf714bca57b67944ed964fa024cbdc39fe0848bdeb5c884858a5ac18070bc1e4c0329f2d89fcaadcfdab6ef8a1532af54954a15ea5e23ce45325d9f98f0e3fb86d60b7a0397d2453942930b89e474cdda078d4d62f83b306800b744f407abb12457ab2002a4c1babaebbacd167f44ae7a2bcba0576b2bba82a9e92a2177c482c7e3607c94e731f1a05d19d027153f2b2e5e5fa02b5887eadf045f884b7410bc1af1eb756ae71476a0623a5c27fbd454617541c911c1ca7f76e1017369953940959affc0126bd3ec9ee985c1ac0733a0d152dc33ad991a56c05ed402b56772c434095bf2c563875bd1ef4f339a0116feea24de95ead8342f2cc38eb2eb85b85c3ecbb25e77ae77cbbeb5b4bbc22e5b5bae35469b6565c089be978e383bca0d9ea2bdf66b2c2022976a424700038eb0dd496185b4406b017eb667af2336bd343a6518cdb282ed1f4ad156a51a420357c104c259ffefcc61717fc2d33bbac669fd340b62448e7b1ff79817d2faacc25d75413c7765d42904380717b7dfba97b043ecf6e68448d74c814a84fcec4b8e91924a2d84756257a3f7b5be9993390cb0d83ea216c344cd01747e580a018abe2b78ff31d78a0376939df219b6e4348501b5cd4005a711a4cf2585665816a7e23ad88e6fce9816231f577a8a4cc99f0fb7042243727ff97dfb91a943382ca90c2df1ad395083a12f7234582ea05fb002ebe876e39b32b192b8ada3a742f234ac609ba886fe26fc693ae013386f1b8b4d4b3c0fca228fbbd7af483f28f0a6a1363b275abecc85f2bee9d3c5c82a69692d9e81a977c050c94a09db9ac1ec9c86f3a6e0085d60e0d08cd2f8711d90b4066d0b5dfa922675d11a734712b53ba0ccab9ab7a8fe313144d531d11397926ca47601f444c6e995d8c7bfe71bac0249f67ef196e0656ff7e065d21224aea23f74592d0df86b3869e0a08de6c436ae57b76cc6821c11d16b120219ecb3e66724bb9b913be1da889b5d3900926e267b2beaeca176baaa9f8c82b8d74a308a307751320c46e850a5eaea83c5acccf639b783f5606cebaf54d8c04499037c3ab777163747416a6910cb0352002b67", + "dataAbiValues": { + "methodSignature": "handleCreateRequests(uint256[],bytes32[])", + "inputValues": [ + [ + "2", + "864000", + "61091015562669229328302511622207838274133483677802899134756790701318101320870", + "108000853268429518120666974822971079545728317287326968663692222929051051051804" + ], + [ + "fa4a08dc093aad94a53150a69958ea5701d0cdfc0457647f4a00851f2b3ffa4f", + "fd8a6288227c780955edaf8b4dede4dd79b2d6a1b9670dc32f84033dbf8be309", + "4a3581399d5766a955990785635f7387f42bc3ac7aefc687d70bedd0207993bc", + "4c485bed03b3790844630b99699bb40f5069c1d8403298cdfda2575a3317f64a", + "e11593ffb0ec0927fe5913230c741395327603a0cb862e6b83dfda2f6220ae47", + "cc515c273c51f6f72596a67c49bd9c8c601629067e48532c86a5ec436da6c5d4", + "a086dd03f412f823cb3b33845d313ed20d3eb30a8c1738fe538f8ce08dda6bc9", + "03393b682ce82af7ad546cbd6f5e6b633403a16c9539778326f27093154073c1", + "89ff0c2a9bf1d9e0c1340059cb502459adc6848943173465070dbc70f56c9773", + "a380843bf072ee4ebcdaa6db9c9b1bcdd7accd8376418847fe049b50be079824", + "e34e17ba796d22717b906c8ae168c515652b146e98f67ff81a17d32cfbb3a45d", + "70b80d8aebc1f699d448d6bb373046a46055cea8663f1e133e3b318bd3bbf341", + "831782f5c84d3a2e123ae7cf9de566a9e5958314dac1f2f943af76cc5a4ed5d6", + "1bb435d28f2bc87a2c6a8b92b314537495d986c635f3f24b0c89bb8431fd15da", + "1f20ecad2204c5f2c899891deee290ce478f20d080be1f01b0631cfde6d77c17", + "4a0451dff325ceca911fe96cc8e506f589259f7ae6d81a6562ad17da5ac2668a", + "fb4dfae5387e68f8f182b4cd18e2d04b3d23801beadb0e540b89182a8ef12544", + "bf301a4ed791f0937f2169890e091a55113e6f5869333627389cfa9013231650", + "d5b1193bc5c6faf12c4caedc4c1de1a155f1caac4b1b386f2c9fb59c0edddb79", + "370ea902ef6cdf5724565bfb35d2d999e5b8ae7d2997c94e3ce7b6bfc8698850", + "f5bea6ed28d2670ed0bc72485811f4579eee682784c336392515b9f38b305760", + "c5f2a08ab4ab5c4e4dc94bfd7fe5a3c37df0d10561d5eee3109a165aa8d09aee", + "107d8bc0847badc5833e23b36da204e51497d3f1716162337b2ca72a6d9b0df6", + "5af932d7fe5768c3a7a91282332e7768f46e57727280521bd0e3c9f183fa04f1", + "c0e3d82bf7ea3b756ba92372a93cb61e730e2e59814916b3e92ea0d142770771", + "95c6e7500b9f864c7baa380be57ffd71a995ea5594800861a797da989e5e145c", + "cb01db898f989f4c6fde7d34bf056442d3839d229d6e8c8fd581525acabfa32d", + "fd933d425b58fea110c87b5d18bd00fffbffa00d873198e501a825357e75a859", + "12832c0f7dc92f5825797c2460c978f3e875aea0a979c0a4060871bbd79a9bab", + "f07212d556a72bb84496ad42f34884efeed068bfad56613cf714bca57b67944e", + "d964fa024cbdc39fe0848bdeb5c884858a5ac18070bc1e4c0329f2d89fcaadcf", + "dab6ef8a1532af54954a15ea5e23ce45325d9f98f0e3fb86d60b7a0397d24539", + "42930b89e474cdda078d4d62f83b306800b744f407abb12457ab2002a4c1baba", + "ebbacd167f44ae7a2bcba0576b2bba82a9e92a2177c482c7e3607c94e731f1a0", + "5d19d027153f2b2e5e5fa02b5887eadf045f884b7410bc1af1eb756ae71476a0", + "623a5c27fbd454617541c911c1ca7f76e1017369953940959affc0126bd3ec9e", + "e985c1ac0733a0d152dc33ad991a56c05ed402b56772c434095bf2c563875bd1", + "ef4f339a0116feea24de95ead8342f2cc38eb2eb85b85c3ecbb25e77ae77cbbe", + "b5b4bbc22e5b5bae35469b6565c089be978e383bca0d9ea2bdf66b2c2022976a", + "424700038eb0dd496185b4406b017eb667af2336bd343a6518cdb282ed1f4ad1", + "56a51a420357c104c259ffefcc61717fc2d33bbac669fd340b62448e7b1ff798", + "17d2faacc25d75413c7765d42904380717b7dfba97b043ecf6e68448d74c814a", + "84fcec4b8e91924a2d84756257a3f7b5be9993390cb0d83ea216c344cd01747e", + "580a018abe2b78ff31d78a0376939df219b6e4348501b5cd4005a711a4cf2585", + "665816a7e23ad88e6fce9816231f577a8a4cc99f0fb7042243727ff97dfb91a9", + "43382ca90c2df1ad395083a12f7234582ea05fb002ebe876e39b32b192b8ada3", + "a742f234ac609ba886fe26fc693ae013386f1b8b4d4b3c0fca228fbbd7af483f", + "28f0a6a1363b275abecc85f2bee9d3c5c82a69692d9e81a977c050c94a09db9a", + "c1ec9c86f3a6e0085d60e0d08cd2f8711d90b4066d0b5dfa922675d11a734712", + "b53ba0ccab9ab7a8fe313144d531d11397926ca47601f444c6e995d8c7bfe71b", + "ac0249f67ef196e0656ff7e065d21224aea23f74592d0df86b3869e0a08de6c4", + "36ae57b76cc6821c11d16b120219ecb3e66724bb9b913be1da889b5d3900926e", + "267b2beaeca176baaa9f8c82b8d74a308a307751320c46e850a5eaea83c5accc", + "f639b783f5606cebaf54d8c04499037c3ab777163747416a6910cb0352002b67" + ] + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 40713, + "blockTimestampDelay": 288890 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000040000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 2, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x51b295e3bb1a2084cb159fd6a10d243726c06ecc2c061e64fa5637a4e1e36ecd536af41a", + "dataAbiValues": { + "methodSignature": "handleFinalize(uint256)", + "inputValues": [ + "84628665144738400938347255498120459236162163404711567437113231227400449881114" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 40461, + "blockTimestampDelay": 86400 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000010000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x51b295e35136d12e4fabb2fa40b59d097a7d5e4dc2581129e405d2d808b39933f643e93e", + "dataAbiValues": { + "methodSignature": "handleFinalize(uint256)", + "inputValues": [ + "36734194190276940096273241257659402973542659853799331442674641708617136597310" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 0, + "blockTimestampDelay": 0 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000090000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 2, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xc0106a6cffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0a9473a1fb03242c6ca0cf72ce918a668d75a7aef4f15a0d33f1a7b490a38de2b", + "dataAbiValues": { + "methodSignature": "handleCreateRequest(uint256,uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913129639904", + "76566718707773384903225614118535891165433973603151251259517762515743289171499" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 47596, + "blockTimestampDelay": 550258 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000030000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 4, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xcd10417a00000000000000000000000000000000000000000000000000000000000300000000000000000000000000000000000000000000000000000000000000000000", + "dataAbiValues": { + "methodSignature": "handleEscalateDispute(uint256,uint256)", + "inputValues": [ + "196608", + "0" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 49468, + "blockTimestampDelay": 531192 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000050000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x48a41c27f5e2b5585f4a318b516ae77e2bcf1d0c6c69d73f617d0ad2dbeddce25ff7ba910000000000000000000000000000000000000000000000000000000000000100ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff01", + "dataAbiValues": { + "methodSignature": "handlePropose(uint256,uint256,uint256)", + "inputValues": [ + "111217206938139444968553110676306921351727538827093245698432831002069798730385", + "256", + "115792089237316195423570985008687907853269984665640564039457584007913129639681" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 58448, + "blockTimestampDelay": 291208 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000040000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 3, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x223b137447d666f967a2435f360ae1a5d74411418e2552cde02c3fbb44404f0b7f0b7418000000000000000000000000000000000000000000000000000000000000004016d6fce3ebe57504d74c895dd764984c1a0fd9bc84e53996fe9d1fdbe18087310000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000000000000000000000000000000000000382997ddbd0ec071e601a74bec3b18f95a929e2c8f2fc57697f8fb476f87fce56000000000000000000000000000000000000000000000000000000000000000273d0000000000000000000000000000000000000000000000000000000000000", + "dataAbiValues": { + "methodSignature": "handleSetRequestModuleData(uint256,(uint256,string,address,uint256))", + "inputValues": [ + "32493028223342497817984115926415147953105366173154533585631663319985412600856", + { + "accountingExtension": "0x0000000000000000000000000000000000000003", + "chainId": "s\ufffd", + "epoch": "10330733325524501176169902709898413906911149832921865654336546665583987427121", + "paymentAmount": "59071866561259445092599584718662586641316079064498865051383233255850771467862" + } + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 60461, + "blockTimestampDelay": 141927 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000020000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 3, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xa44b098efffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeae7d", + "dataAbiValues": { + "methodSignature": "handleSetArbitrator(uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913129553533" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 0, + "blockTimestampDelay": 0 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000050000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 2, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x88b05f294612566bf9a56551713402058b178bf9334e16a430e78e53610b3f6114f2e572000000000000000000000000000000000000000000000000000000000000000200000000000000000000000018d46a62722e6eafc069b97c7a78574ce775f12972176491145ebf6cab47d070a505484213e19c33bd80bea8025c039a73381b46fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b80fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd97e0eb0dc1b379e381e4fe6763a824517b98db81bcc6b00d254c5ccfca3f2ac18b9668134e813d08414573dcc8f081b6e06ecf54faff7d640eb4d6256186486c", + "dataAbiValues": { + "methodSignature": "handleSetDisputeModuleData(uint256,(address,address,uint256,uint256,uint256,uint256,uint256))", + "inputValues": [ + "31694299109185575978093051252844457975556191736261404991840997988919212696946", + { + "accountingExtension": "0x0000000000000000000000000000000000000002", + "bondEscalationDeadline": "115792089237316195423570985008687907853269984665640564039457584007913129639933", + "bondSize": "51604996306954439705122303006796123301392110440900451331152134443247940934470", + "bondToken": "0x18D46A62722e6EaFC069B97C7a78574Ce775f129", + "disputeWindow": "63137231314917362874984632942434005220138982617699967905479977286643722111084", + "maxNumberOfEscalations": "115792089237316195423570985008687907853269984665640564039457584007913129380736", + "tyingBuffer": "68696636159853489678209085642458599054486261706714901038271685491028301654721" + } + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 20610, + "blockTimestampDelay": 50559 + } +] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/call_sequences/immutable/1731277803607978000-d99cfb6e-8259-4051-98fc-484c2b1166c0.json b/test/invariants/fuzz/corpus/call_sequences/immutable/1731277803607978000-d99cfb6e-8259-4051-98fc-484c2b1166c0.json new file mode 100755 index 0000000..594868b --- /dev/null +++ b/test/invariants/fuzz/corpus/call_sequences/immutable/1731277803607978000-d99cfb6e-8259-4051-98fc-484c2b1166c0.json @@ -0,0 +1,529 @@ +[ + { + "call": { + "from": "0x0000000000000000000000000000000000030000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x13a8b8040000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000034000000000000000000000000000000000000000000000000000000000000000170000000000000000000000000000000000000000000000000000000000d2f000ffffc0000000000000000000000000000000000000000000000000000000000181dc31bc03ad9bc8a966de91dfc8c49b929f6d5fd44a9c22a7f5bb37cebfc106ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed8ee8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b825bc2cfc37067e378b4feef3f3411136744d0b2851c161c601669654cf27bfe6100000000000000000000000000000000000000000000000000000000000000006cd40d93882a844c2becf361c7579664aef7a6ef6e8b79d6bf6f6f76426e9b14039e696f94058cfd274de97421f65916ac135f4d55083d357b9c1f34820c9376000000000000000000000000000000000000000000000000000000000003fffe000000000000000000000000000000000000000000000000000000000000000167e6a528e0202cf23a36eacf513eee303475d3e4c983b2ae2d616b11c440f70a4ac07813439b9213b22d4d86340307a2982de60c241368ad288dfea742b6eb5efffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9686c2d73382b1edfa908bcaeb6b9ac0073f469887a9150c80831642e47e35a614c1bffffffffffffffffffffffffffffffffffffffffffffe48e5eb33a3a7f000000104a13a90c13653470268ea78892361e7e91e706d859aabaaf45ddd18c956640809a37cc7335cdf29b7d988dc8c05e2c1899ad1795364e6fa667088b49487472000000000000000000000000000000000000000000000000000000000000fff6fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b80756993dc4be6ecf1e46c48d6f9cae9255a8b46ef956a3d85442a5f41f70ecf93000000000000000000000000000000000000000000000000000000000076a700a77a4c48695a0407441e86efc633aee092d2ebd99c87fdfeebcd904fe33e086d000000000000000000000000000000000000000000000000000000000000001d563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd0633ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed6958658aad3329b56f2f98187bbaed7351982ae06a00b9382adcb723b8b393d1f5e2def8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b4498bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef328d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad82082401f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade0554594d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae962914f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cbba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c33f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8fd276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f6617237058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf259a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe2665f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a219fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb", + "dataAbiValues": { + "methodSignature": "handleCreateRequests(uint256[],bytes32[])", + "inputValues": [ + [ + "13824000", + "115791647525550000827488589184312722123641027794666345134718053606362806484993", + "58737407075920930096693749632210245280794127876199190949253348332199714210054", + "115792089237316195423570985008687907853269984665640564039457584007913128431336", + "115792089237316195423570985008687907853269984665640564039457584007913129380738", + "41504671482165347584846103287222174319130579613222615088745194098566077611617", + "0", + "49224452924880417829398231270379785502530069722970149981823851608145893694228", + "1636828073493779560152621491074002847609709387720111137750911676859097584502", + "262142", + "1", + "46995738119123743123282428161140493004285235666026628953647859202250191730442", + "33811214160519685654400438720767591502827986970858420988841187408488311483230", + "115792089237316195423570985008687907853269984665640564039457584007913129207916", + "20557653259021005890251421269967042420225955023564768794272035576696478452763", + "115792089237316195423570985008687907853269984665640563909857584007913129639936", + "7367887950809164700104084563884591449786965425123545364576065505479275931200", + "58168524174645209900719041489934173752247098791866719219864340874379345294450", + "65526", + "115792089237316195423570985008687907853269984665640564039457584007913129380736", + "53107142721938561923251317745913031228477959801596843755970727929974933606291", + "7776000", + "75752327540241786815348607290604056680494387521335977257182003214564422715501" + ], + [ + "563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe", + "27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a", + "9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd06", + "33ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865", + "8aad3329b56f2f98187bbaed7351982ae06a00b9382adcb723b8b393d1f5e2de", + "f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1", + "c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b44", + "98bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01", + "108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef32", + "8d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea", + "94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad8208240", + "1f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade05545", + "94d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056", + "cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae96291", + "4f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa", + "9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874", + "ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cb", + "ba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c3", + "3f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8f", + "d276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99", + "fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce", + "3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb", + "4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f661723", + "7058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78", + "994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25", + "9a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe26", + "65f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a2", + "19fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c", + "51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb" + ] + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 21265, + "blockTimestampDelay": 360627 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000050000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x91e32c74e0613faa5f896b73380078af3c1ee8605eec949aaf9c8f422f264f3de916b58dc905ee964be623d23ba97ccc5a2b838249eaa10a8671d6a68f97b09746107abf", + "dataAbiValues": { + "methodSignature": "handleCreateRequest(uint256,bytes32)", + "inputValues": [ + "101489901651207154401933345705911812335881908306802664469868899807780031346061", + "c905ee964be623d23ba97ccc5a2b838249eaa10a8671d6a68f97b09746107abf" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 23884, + "blockTimestampDelay": 297676 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000020000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x161c7318", + "dataAbiValues": { + "methodSignature": "test_debug()", + "inputValues": [] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 0, + "blockTimestampDelay": 1 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000070000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xaa1a5bd9ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffee2cac1a259bf9695aac61487b4606621f281407f44a6d621116f436e53e00628b", + "dataAbiValues": { + "methodSignature": "handleResolveDispute(uint256,uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913129639918", + "20205843492154653597326893919151713313559584018734749877274787063574636290699" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 23891, + "blockTimestampDelay": 328958 + }, + { + "call": { + "from": "0x00000000000000000000000000000000000a0000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xec5bf215fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff60000", + "dataAbiValues": { + "methodSignature": "handleFinalizeRequestResponseModule(uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913128984576" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 23883, + "blockTimestampDelay": 276784 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000020000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xd1a55655fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe9c", + "dataAbiValues": { + "methodSignature": "handleRevokeModule(uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913129639580" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 14210, + "blockTimestampDelay": 524288 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000060000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x727899fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffb001400000000000000000000000000000000000000000000000000000000001275000000000000000000000000000000000000000000000000000000000000000000a46e28ce399e11c208b07a84e457189f5b64e15f51e128b7baf507642bfef8c6", + "dataAbiValues": { + "methodSignature": "handlePledge(uint256,uint256,uint256,uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913129312276", + "1209600", + "0", + "74373941974452021616102119156230516273735358461823357873191033522071497799878" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 1, + "blockTimestampDelay": 256 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000040000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xa44b098effffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0003", + "dataAbiValues": { + "methodSignature": "handleSetArbitrator(uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913129574403" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 43748, + "blockTimestampDelay": 541010 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000010000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x8f790139ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0", + "dataAbiValues": { + "methodSignature": "handleReleaseUnutilizedResponse(uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913129639904" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 11833, + "blockTimestampDelay": 213928 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000090000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xa59d317d7f4bab9c72ef04decea93d5f106890883b64be0e4f50aa1ceebd5a435a7fa13a0000000000000000000000001302f0402bb094e65a1c38fc8979628fa7cb7eb80000000000000000000000000000000000000000000000000000000000093a8000000000000000000000000000000000000000000000000000000000000d2f00fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff70000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff", + "dataAbiValues": { + "methodSignature": "handleSetResponseModuleData(uint256,(address,address,uint256,uint256,uint256))", + "inputValues": [ + "57577429716414119383889913852992200380066446236494108346454295294682507223354", + { + "accountingExtension": "0x1302F0402bb094e65a1c38fC8979628FA7cb7eB8", + "bondSize": "864000", + "bondToken": "0x0000000000000000000000000000000000093A80", + "deadline": "115792089237316195423570985008687907853269984665640564039457584007913129050112", + "disputeWindow": "115792089237316195423570985008687907853269984665640564039457584007913129639935" + } + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 30759, + "blockTimestampDelay": 56734 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000060000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x864e2da9ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff30838cd661e07d4920a4bce6f00da019a66f1a0c976d396f8827e2cc52ed8ce1fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff80000", + "dataAbiValues": { + "methodSignature": "handleArbitrateDispute(uint256,uint256,uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913129639935", + "21943445721707534311606538764242968064099548519492097564976924267444655983841", + "115792089237316195423570985008687907853269984665640564039457584007913129115648" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 1, + "blockTimestampDelay": 2 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000090000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x9f6259e5fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd0000ffff800000000000000000000000000000000000000000000000000000000007", + "dataAbiValues": { + "methodSignature": "handleResolve(uint256,uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913129443328", + "115791205813783806231406193359937536394012070923692126229978523204812483330055" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 23928, + "blockTimestampDelay": 603784 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000050000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x91e32c7440906eb1080127929789d55c169cd890ff51930058d460b835803e947a1382a9e3a84eb76ecf8f296e15f27686df9d7107dae93af0929c31ee8d76fd38476ee4", + "dataAbiValues": { + "methodSignature": "handleCreateRequest(uint256,bytes32)", + "inputValues": [ + "29203212251508816547276680880804676973046658682524638891611434720618890887849", + "e3a84eb76ecf8f296e15f27686df9d7107dae93af0929c31ee8d76fd38476ee4" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 8633, + "blockTimestampDelay": 384652 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000070000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xcd10417afffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00000e9d23751886f170e2b576c9a16ce5725aaa7d6b5a51829b582417606f258a52e", + "dataAbiValues": { + "methodSignature": "handleEscalateDispute(uint256,uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913128591360", + "105760313397677454187313767699264694345051805328600745402406216015374137730350" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 0, + "blockTimestampDelay": 0 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000070000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 2, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xdb106ace00000000000000000000000000000000000000000000000000000000000700000000000000000000000000000000000000000000000000000000000000000b8000000000000000000000000000000000000000000000000000000000000000018e16328353e4335d4857f0c0272a56e894016a8e7fd5018abf59e4d63ffccc5d", + "dataAbiValues": { + "methodSignature": "handleSlash(uint256,uint256,uint256,uint256)", + "inputValues": [ + "458752", + "2944", + "1", + "64267643762154101036828179854063870619362775084021579500394794132351915707485" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 164, + "blockTimestampDelay": 328 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000070000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 3, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x64d6e6d34c37e1c6d066da117417045ecbb977d5fedb1a4f579c688036dfc2df96e8752a043feae6e9cd4dd5562baba0f9a2b8b88a6d24a210411d2a9ec010c887b2bbe857bd07a491da874930cf70d2603f546341bf1b41678d94212ad0d7f75f1f8c34", + "dataAbiValues": { + "methodSignature": "handlePledgeAgainstDispute(uint256,uint256,uint256)", + "inputValues": [ + "34474511333835792082501049571137601504043270057660531960180087278390018077994", + "1922183993469207343531967439441002744253338739077547349842513920358809254888", + "39685204671003151059797908428363376637491661590041500229844100997746182294580" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 13776, + "blockTimestampDelay": 196607 + }, + { + "call": { + "from": "0x00000000000000000000000000000000000a0000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xec5bf2150000000000000000000000000000000000000000000000000429d069189e0000", + "dataAbiValues": { + "methodSignature": "handleFinalizeRequestResponseModule(uint256)", + "inputValues": [ + "300000000000000000" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 73, + "blockTimestampDelay": 256 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000040000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x88b05f29ef15b65782cfe591a01276bbd3a4a416a4bc7c3c46d4a2a065776ceef8729dba0000000000000000000000000413cb2b8393acd243f05fe1fc92f0f33645674b0000000000000000000000000000000000000000000000000000000000030000fffffffffffffffffffffffffffffffffffffffffffffffff90fa4a62c4e0000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed8b000000000000000000000000000000000000000000000000000000000000000000fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff70000d2ba62ed8591040e27c905c9f23b93ea29ed2e248c13da4976202a1dc77c2ba8", + "dataAbiValues": { + "methodSignature": "handleSetDisputeModuleData(uint256,(address,address,uint256,uint256,uint256,uint256,uint256))", + "inputValues": [ + "108141133076887610497531349483470932814278164634546444848861358676425430965690", + { + "accountingExtension": "0x0413cb2b8393aCD243f05fe1fC92f0F33645674B", + "bondEscalationDeadline": "0", + "bondSize": "115792089237316195423570985008687907853269984665640564039457084007913129639936", + "bondToken": "0x0000000000000000000000000000000000030000", + "disputeWindow": "95315014531250257482381499157059680862481424202393349630157942686167364021160", + "maxNumberOfEscalations": "115792089237316195423570985008687907853269984665640564039457584007913128430336", + "tyingBuffer": "115792089237316195423570985008687907853269984665640564039457584007913129050112" + } + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 38581, + "blockTimestampDelay": 108799 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000010000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x223b137450d770be3b639c40475b7c2d9b38d9e215fe44b7581f0c70a37d8c0a641edafd0000000000000000000000000000000000000000000000000000000000000040fffffffffffffffffffffffffffffffffffffffffffffffffbd62f96e762000000000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000429d069189e0000faaa954e38a0b2b00899664d61354e2cfff2f66f0626a1fe18153ff26908fb17000000000000000000000000000000000000000000000000000000000000002245524332303a206275726e20616d6f756e7420657863656564732062616c616e6365000000000000000000000000000000000000000000000000000000000000", + "dataAbiValues": { + "methodSignature": "handleSetRequestModuleData(uint256,(uint256,string,address,uint256))", + "inputValues": [ + "36565678129823773534549762252589227787369831080370959419522126439904133962493", + { + "accountingExtension": "0x0000000000000000000000000429d069189E0000", + "chainId": "ERC20: burn amount exceeds balance", + "epoch": "115792089237316195423570985008687907853269984665640564039457284007913129639936", + "paymentAmount": "113379606615874029916799118804079911196343283863948566571202567108031238699799" + } + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 37714, + "blockTimestampDelay": 360627 + } +] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/call_sequences/immutable/1731277803608778000-cba6387c-87fd-4774-b883-b02dc21edbe1.json b/test/invariants/fuzz/corpus/call_sequences/immutable/1731277803608778000-cba6387c-87fd-4774-b883-b02dc21edbe1.json new file mode 100755 index 0000000..3e46697 --- /dev/null +++ b/test/invariants/fuzz/corpus/call_sequences/immutable/1731277803608778000-cba6387c-87fd-4774-b883-b02dc21edbe1.json @@ -0,0 +1,501 @@ +[ + { + "call": { + "from": "0x0000000000000000000000000000000000040000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x52e3cb9c6b0d264b5add160d5053aa476132c22d6540d3605ad8dfb850790b1ba996569b", + "dataAbiValues": { + "methodSignature": "handleSetMaxUsersToCheck(uint256)", + "inputValues": [ + "48420708108177856443123222644862532857390746786695606854692354379525674915483" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 59698, + "blockTimestampDelay": 331757 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000020000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x62e8fd3500000000000000000000000000000000000000000000000000000000000000124ab950c09e2414c3ec444389b5281e1bdfda8ecfec5392240af8d376f3781e4f", + "dataAbiValues": { + "methodSignature": "handleOnDisputeStatusChange(uint256,uint256)", + "inputValues": [ + "18", + "33798574834817402171861624718400176195923458571787846279113220864863863578191" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 41059, + "blockTimestampDelay": 386818 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000040000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x161c7318", + "dataAbiValues": { + "methodSignature": "test_debug()", + "inputValues": [] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 2290, + "blockTimestampDelay": 360593 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000050000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xb05752f700000000000000000000000000000000000000000000000014d1120d7b160000fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa0100ffffe666666666666666666666666666666666666666666666666666666666670000000000000000000000000000000000000000000000000000000000000001", + "dataAbiValues": { + "methodSignature": "handleOnSettleBondEscalation(uint256,uint256,uint256,uint256)", + "inputValues": [ + "1500000000000000000", + "115792089237316195423570985008687907853269984665640564039457584007913129246976", + "115791912552609717585138026678937833561418401917250876477561771847293000377959", + "1" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 35958, + "blockTimestampDelay": 189815 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000080000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xd1a556550000000000000000000000000000000000000000000000000000000000093a80", + "dataAbiValues": { + "methodSignature": "handleRevokeModule(uint256)", + "inputValues": [ + "604800" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 23866, + "blockTimestampDelay": 120766 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000040000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 2, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xf60285cafffffffffffffffffffffffffffffffffffffffffffffffffffffffffffb00001f6163d95156c50021d434e3914437a6419fd074db58aba632a1165e1049633a3bf295102083f98484e4163605f3f088673969b3a53bced8eb97b90d6679470f0000000000000000000000000000000000000000000000000000000000000014", + "dataAbiValues": { + "methodSignature": "handleBondWithSender(uint256,uint256,uint256,uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913129312256", + "14193771603127510897806160380156132720630156725507671248204049821265402880826", + "27115063851078188957254873925429362151386502274781693755807630999965205612303", + "20" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 14998, + "blockTimestampDelay": 528331 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000050000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x51b295e3fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc18", + "dataAbiValues": { + "methodSignature": "handleFinalize(uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913129638936" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 23876, + "blockTimestampDelay": 327680 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000060000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x2047c4493b1bb599e967df2247a0bde0e15c19a16d95520dbb9eb811b647dd1c5a50d970bda0d1adb4d017dcf6513d613392f361bfe0847acfbe5bbfd267240bef7125cd61ebaebab2bac3aa4819e2caf8f85c718565871747241e292cc36db91888e520d873b789d8f47c6606b2d5358f69133b1dd4937cee526c90ac095190af102de2", + "dataAbiValues": { + "methodSignature": "handlePay(uint256,uint256,uint256,uint256)", + "inputValues": [ + "26735416302702836720504774004574936090245153519362370366870156849631651223920", + "85771271060700958624081931951489906403580871476691194667860842730768850560461", + "44290761310036599938494988979380191776366734083697389368196279735913800066336", + "97904029442377240838501909618781928147909909174040210570358457032104622435810" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 54628, + "blockTimestampDelay": 362209 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000020000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x9f6259e57cf479b021a816743ff5b53a6f3e5c2c247b2adb9311a44237c3858abd44df0e0000000000000000000000000000000000000000000000000000000000127118", + "dataAbiValues": { + "methodSignature": "handleResolve(uint256,uint256)", + "inputValues": [ + "56518743767933985910260346386765678340564227438862784222762849925209918856974", + "1208600" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 35385, + "blockTimestampDelay": 50692 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000050000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 2, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x0fb55087fffffffffffffffffffffffffffffffffffffffffffffffffffffff400000000", + "dataAbiValues": { + "methodSignature": "handleApproveModule(uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007861590032384" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 1, + "blockTimestampDelay": 57134 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000050000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 3, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x5356b6811b3175568497fde3c31fe069ccc7985311b0506f3b43e70969ab59ea722d2599", + "dataAbiValues": { + "methodSignature": "handleAddEBORequestCreatorFinalityModule(uint256)", + "inputValues": [ + "12299832254764069471447641000592064088020729744720327828938364394997925356953" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 0, + "blockTimestampDelay": 0 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000050000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 4, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xa44b098ea6e532d597161bf414844541b5281607abc0fedcfbe19700823ca81bfeffd5da", + "dataAbiValues": { + "methodSignature": "handleSetArbitrator(uint256)", + "inputValues": [ + "75488891688353701349182521546099519030572206284453220585196006136091846366682" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 13249, + "blockTimestampDelay": 486500 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000090000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x727899ff000000000000000000000000000000000000000000000000000000000009688043d2cc6bee2c75afbb0a2d8e686ed8d850d35e4220dab9eaaad8c1f2bbd315eb000040ba1702262dc3924484fe5b466a7207d688c9429f8aaeb64c1acd0d86e1fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff70000", + "dataAbiValues": { + "methodSignature": "handlePledge(uint256,uint256,uint256,uint256)", + "inputValues": [ + "616576", + "30677409604733962472433633135176719636373390531562919397962760076773674915307", + "446728739341497667529209047101419397582060126024847855090499938302133985", + "115792089237316195423570985008687907853269984665640564039457584007913129050112" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 28736, + "blockTimestampDelay": 576650 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000040000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 3, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x52e3cb9cfffffffffffffffffffffffffffffffffffffffffffffffff90fa4a62c4e0000", + "dataAbiValues": { + "methodSignature": "handleSetMaxUsersToCheck(uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457084007913129639936" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 14857, + "blockTimestampDelay": 578411 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000070000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x91e32c74fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8000053817ae4082823f7b7ef4f21ea8eaf2d55883b146199ee5cd9707c39a3f025ab", + "dataAbiValues": { + "methodSignature": "handleCreateRequest(uint256,bytes32)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913129115648", + "53817ae4082823f7b7ef4f21ea8eaf2d55883b146199ee5cd9707c39a3f025ab" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 23, + "blockTimestampDelay": 32 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000070000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x48a41c2700db944f945348b4c6cffca09ace97414e862af57bfe67d15e8f4ba3813ede4b3d688e69cd534e15f8ccc3765fd50e2ab30d2b740b3ff6d5865213182fe783c63b4bac2923dad06e124a6e05ae7aa5ae1b3e8edff0154acd1de94e5fe6e26732", + "dataAbiValues": { + "methodSignature": "handlePropose(uint256,uint256,uint256)", + "inputValues": [ + "387963111102058097323071002434237761651493831039740349958407635767455047243", + "27775818758715135462630212585325327395456425224261459780030383525521640620998", + "26820159805776502209708934821205059577225837408551437026198979884765463865138" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 25200, + "blockTimestampDelay": 27983 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000020000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 2, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xc0106a6cfffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7fc1800001fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff", + "dataAbiValues": { + "methodSignature": "handleCreateRequest(uint256,uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913129114648", + "220855883097298041197912187592864814478435487109452369765200775161577471" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 50518, + "blockTimestampDelay": 458752 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000050000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 5, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x9d2e6a6f000000000000000000000000000000000000000000000000000000000005d100", + "dataAbiValues": { + "methodSignature": "handleRemoveEBORequestCreatorRequestModule(uint256)", + "inputValues": [ + "381184" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 23639, + "blockTimestampDelay": 195785 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000040000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 4, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x3edc7cbd1599870fe02ecf9ec87ee76accd2d760e7eba60278962813ea05d348dc178e41", + "dataAbiValues": { + "methodSignature": "handleFinalizeRequestFinalityModule(uint256)", + "inputValues": [ + "9769829584924913960676332702159746411403704490750429962740385280098947272257" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 2685, + "blockTimestampDelay": 487244 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000080000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x0fb55087fffffffffffffffffffffffffedea0275f3411a7ad187b0108aa786a3f16bde9", + "dataAbiValues": { + "methodSignature": "handleApproveModule(uint256)", + "inputValues": [ + "115792089237316195423570985008681454588525719193607429938766044948827876015593" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 15207, + "blockTimestampDelay": 220921 + }, + { + "call": { + "from": "0x00000000000000000000000000000000000a0000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x6b125a57e286bb06cb42cc1cd185bc3f02cfcd592fc3e9b10aa00b2c2b633d09978af7a7", + "dataAbiValues": { + "methodSignature": "handleRemoveEBORequestCreatorFinalityModule(uint256)", + "inputValues": [ + "102460752096230911141037771748726806398872347580671159824723173728064937588647" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 12095, + "blockTimestampDelay": 12289 + } +] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/call_sequences/immutable/1731277803609589000-741509d7-8c95-4626-b5c3-c17625f529b5.json b/test/invariants/fuzz/corpus/call_sequences/immutable/1731277803609589000-741509d7-8c95-4626-b5c3-c17625f529b5.json new file mode 100755 index 0000000..506127c --- /dev/null +++ b/test/invariants/fuzz/corpus/call_sequences/immutable/1731277803609589000-741509d7-8c95-4626-b5c3-c17625f529b5.json @@ -0,0 +1,829 @@ +[ + { + "call": { + "from": "0x0000000000000000000000000000000000030000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x13a8b8040000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000034000000000000000000000000000000000000000000000000000000000000000170000000000000000000000000000000000000000000000000000000000d2f000ffffc0000000000000000000000000000000000000000000000000000000000181dc31bc03ad9bc8a966de91dfc8c49b929f6d5fd44a9c22a7f5bb37cebfc106000000000000000000000000000000000000000000007ff72b2c19616ab00000e645df196666f5e4e940c577b9670b086db2c746878e45aae0dbee6c63a0e6a35bc2cfc37067e378b4feef3f3411136744d0b2851c161c601669654cf27bfe6100000000000000000000000000000000000000000000000000000000000000006cd40d93882a844c2becf361c7579664aef7a6ef6e8b79d6bf6f6f76426e9b14039e696f94058cfd274de97421f65916ac135f4d55083d357b9c1f34820c9376000000000000000000000000000000000000000000000000000000000003fffe000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000004ac07813439b9213b22d4d86340307a2982de60c241368ad288dfea742b6eb5efffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9686c2d73382b1edfa908bcaeb6b9ac0073f469887a9150c80831642e47e35a614c1bffffffffffffffffffffffffffffffffffffffffffffe48e5eb33a3a7f000000104a13a90c13653470268ea78892361e7e91e706d859aabaaf45ddd18c956640809a37cc7335cdf29b7d988dc8c05e2c1899ad1795364e6fa667088b49487472000000000000000000000000000000000000000000000000000000000000fff6fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b80756993dc4be6ecf1e46c48d6f9cae9255a8b46ef956a3d85442a5f41f70ecf93000000000000000000000000000000000000000000000000000000000076a700a77a4c48695a0407441e86efc633aee092d2ebd99c87fdfeebcd904fe33e086d000000000000000000000000000000000000000000000000000000000000001d563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd0633ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed6958658aad3329b56f2f98187bbaed7351982ae06a00b9382adcb723b8b393d1f5e2def8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b4498bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a0171bc7dd16f0e277b94f2e46980d7e8e6c3c5187bf68be378e2d72cd0e70293ef8d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad82082401f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade0554594d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae962914f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874465e592f6d3f1d78fbc619b878d95794035829bd9b1285f3eb021d72f8e45638ba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c33f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8fd276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a9925e5ea45a807ae40eb654d82982bacb30bb1da6060d308d0b63004f4e1926b0c3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f6617237058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf259a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe2665f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a219fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb", + "dataAbiValues": { + "methodSignature": "handleCreateRequests(uint256[],bytes32[])", + "inputValues": [ + [ + "13824000", + "115791647525550000827488589184312722123641027794666345134718053606362806484993", + "58737407075920930096693749632210245280794127876199190949253348332199714210054", + "604300000000000000000000", + "104155407395839188072220307346509508179171066778602859964492537460856123877027", + "41504671482165347584846103287222174319130579613222615088745194098566077611617", + "0", + "49224452924880417829398231270379785502530069722970149981823851608145893694228", + "1636828073493779560152621491074002847609709387720111137750911676859097584502", + "262142", + "1", + "0", + "33811214160519685654400438720767591502827986970858420988841187408488311483230", + "115792089237316195423570985008687907853269984665640564039457584007913129207916", + "20557653259021005890251421269967042420225955023564768794272035576696478452763", + "115792089237316195423570985008687907853269984665640563909857584007913129639936", + "7367887950809164700104084563884591449786965425123545364576065505479275931200", + "58168524174645209900719041489934173752247098791866719219864340874379345294450", + "65526", + "115792089237316195423570985008687907853269984665640564039457584007913129380736", + "53107142721938561923251317745913031228477959801596843755970727929974933606291", + "7776000", + "75752327540241786815348607290604056680494387521335977257182003214564422715501" + ], + [ + "563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe", + "27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a", + "9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd06", + "33ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865", + "8aad3329b56f2f98187bbaed7351982ae06a00b9382adcb723b8b393d1f5e2de", + "f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1", + "c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b44", + "98bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01", + "71bc7dd16f0e277b94f2e46980d7e8e6c3c5187bf68be378e2d72cd0e70293ef", + "8d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea", + "94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad8208240", + "1f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade05545", + "94d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056", + "cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae96291", + "4f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa", + "9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874", + "465e592f6d3f1d78fbc619b878d95794035829bd9b1285f3eb021d72f8e45638", + "ba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c3", + "3f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8f", + "d276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99", + "25e5ea45a807ae40eb654d82982bacb30bb1da6060d308d0b63004f4e1926b0c", + "3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb", + "4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f661723", + "7058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78", + "994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25", + "9a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe26", + "65f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a2", + "19fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c", + "51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb" + ] + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 21265, + "blockTimestampDelay": 360627 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000030000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 2, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x0692ea7eeaaa73118d1da2c1db95511517ab896f87445c2331029aecdc7f065f634e6b46", + "dataAbiValues": { + "methodSignature": "handleRemoveChain(uint256)", + "inputValues": [ + "106142364743506859045918558596602602319943607038906547683486076996802461985606" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 2001, + "blockTimestampDelay": 455470 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000090000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x864e2da9fffffffffffffffffffffffffffffffffffffffffffffffff90fa4a62c573a80b81e8d97661fbf779db19fd00793e39f3b40bca612ee408ab75ff1c6439cf047509736e50626b1084ee93f4294000f73db102927cdc7fc34de68c384da900e6c", + "dataAbiValues": { + "methodSignature": "handleArbitrateDispute(uint256,uint256,uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457084007913130244736", + "83279546779206125286340055887058748934887896216240549764862301155730028032071", + "36452200662221151095065482565067302916782446267779931962683895890335455252076" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 41956, + "blockTimestampDelay": 475112 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000090000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xb6c75efaab191ad64d8fba3d052ab8ef37a088ba9faf5a1be696a47310de3441525ef897fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe3aaae444ec5312714f03b0566d2b40e5d34f58f068cabf3625fc0d7cfe3db912", + "dataAbiValues": { + "methodSignature": "handleClaimEscalationReward(uint256,uint256,uint256)", + "inputValues": [ + "77389853507359787864882669351213362161735184606551274462865365263877886900375", + "115792089237316195423570985008687907853269984665640564039457584007913129639934", + "26536084675173092165947634556752584404681954305155475174391110206140234709266" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 18699, + "blockTimestampDelay": 240561 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000030000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 3, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xf84d6dfcd2d78e343e1607b919341e2fe248544a49a0028fbd677a717f6a437862ddbc00", + "dataAbiValues": { + "methodSignature": "handleAddEBORequestCreatorRequestModule(uint256)", + "inputValues": [ + "95366551777850189910113500849756061153261920552639335948298155642211775921152" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 16776, + "blockTimestampDelay": 165634 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000060000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x0fb55087cd27e66c1a6365fdd2d452e5a6a582655000c0811d209ba0499f4483caf4b2da", + "dataAbiValues": { + "methodSignature": "handleApproveModule(uint256)", + "inputValues": [ + "92794631311208978202520326772644046682922248037671286389514014341863059010266" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 6256, + "blockTimestampDelay": 488143 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000060000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xaa1a5bd9128a1b5b9d7d3061f14bea63c8830170dadc5f154b01425336f91cc6d8611588ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00", + "dataAbiValues": { + "methodSignature": "handleResolveDispute(uint256,uint256)", + "inputValues": [ + "8385644986530251641334144830118419649455771804161689778824132977763480049032", + "115792089237316195423570985008687907853269984665640564039457584007913129639680" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 35699, + "blockTimestampDelay": 65536 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000020000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x51b295e30000000000000000000000000000000000000000000000000de0b6b3a7640000", + "dataAbiValues": { + "methodSignature": "handleFinalize(uint256)", + "inputValues": [ + "1000000000000000000" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 41252, + "blockTimestampDelay": 375602 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000020000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xf60285caff44fb6a2363fac767b088aff222c3143f1ed041c9b3e47d6474ee4922e1979fec9d178675775c3aa5161a5a209a68597466d991483528cc71c8d6ac533d0955a137b7e6f635f28c37dc46d14755f62f1ce7b659dc1873b04e1744e54dc225b665dad307139d75a132cdb60e373e4b35bba44673f5ee3d0bfbf1ac491c3d0e75", + "dataAbiValues": { + "methodSignature": "handleBondWithSender(uint256,uint256,uint256,uint256)", + "inputValues": [ + "115461657188952309751477762153544746327107707569543270374831352475679717431199", + "107023389619990543669223297468939824753654796115418022982959364890624175966549", + "72920814456766912229072746410044959713398794893085675262607692768311068730806", + "46070226826296101107756227560930518318774961046515756120293728876851585945205" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 39447, + "blockTimestampDelay": 175903 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000040000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xa59d317d37645351a8f36eba3b366024eafac86b09ad5a52e0d3cf42eb52112344ab3206000000000000000000000000d12fb9f7a711eb0caf6aac68aeaf04277804b39e000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000000000000000000000000000000000000003200000fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffb00000b2104824bc90dc4bcf1e407a769278e1c443fdba6cf324b44962e4fea636424", + "dataAbiValues": { + "methodSignature": "handleSetResponseModuleData(uint256,(address,address,uint256,uint256,uint256))", + "inputValues": [ + "25054466425052560783839884851311066245042877293899029878022208182382616064518", + { + "accountingExtension": "0xd12fb9f7A711Eb0caF6aaC68AEaF04277804B39e", + "bondSize": "52428800", + "bondToken": "0x000000000000000000000000000000000000000A", + "deadline": "115792089237316195423570985008687907853269984665640564039457584007913129312256", + "disputeWindow": "5033778407313201451107747851099848118306043382601391308246767880599192691748" + } + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 26656, + "blockTimestampDelay": 604799 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000040000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x0692ea7efffffffffffffffffffffffffffffffffffffffffffffffffbd62f96e74f8b00", + "dataAbiValues": { + "methodSignature": "handleRemoveChain(uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457284007913128430336" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 56799, + "blockTimestampDelay": 262144 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000020000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 2, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x4741f6dcfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd0000", + "dataAbiValues": { + "methodSignature": "handleSetFinalityModuleData(uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913129443328" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 23786, + "blockTimestampDelay": 327680 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000050000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x13a8b804000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000e00000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000d2f0087104a1ac49782a4e16877da31b055635722ebf513f4c9d4971ee8ba22ecc4a6eec651143a3c6f38d013752a6418c6f09e02c569047e21b1821746f674b34b1c0000000000000000000000000000000000000000000000000000000000000036fa4a08dc093aad94a53150a69958ea5701d0cdfc0457647f4a00851f2b3ffa4ffd8a6288227c780955edaf8b4dede4dd79b2d6a1b9670dc32f84033dbf8be3094a3581399d5766a955990785635f7387f42bc3ac7aefc687d70bedd0207993bc4c485bed03b3790844630b99699bb40f5069c1d8403298cdfda2575a3317f64ae11593ffb0ec0927fe5913230c741395327603a0cb862e6b83dfda2f6220ae47cc515c273c51f6f72596a67c49bd9c8c601629067e48532c86a5ec436da6c5d4a086dd03f412f823cb3b33845d313ed20d3eb30a8c1738fe538f8ce08dda6bc903393b682ce82af7ad546cbd6f5e6b633403a16c9539778326f27093154073c189ff0c2a9bf1d9e0c1340059cb502459adc6848943173465070dbc70f56c9773a380843bf072ee4ebcdaa6db9c9b1bcdd7accd8376418847fe049b50be079824e34e17ba796d22717b906c8ae168c515652b146e98f67ff81a17d32cfbb3a45d70b80d8aebc1f699d448d6bb373046a46055cea8663f1e133e3b318bd3bbf341831782f5c84d3a2e123ae7cf9de566a9e5958314dac1f2f943af76cc5a4ed5d61bb435d28f2bc87a2c6a8b92b314537495d986c635f3f24b0c89bb8431fd15da1f20ecad2204c5f2c899891deee290ce478f20d080be1f01b0631cfde6d77c174a0451dff325ceca911fe96cc8e506f589259f7ae6d81a6562ad17da5ac2668afb4dfae5387e68f8f182b4cd18e2d04b3d23801beadb0e540b89182a8ef12544bf301a4ed791f0937f2169890e091a55113e6f5869333627389cfa9013231650d5b1193bc5c6faf12c4caedc4c1de1a155f1caac4b1b386f2c9fb59c0edddb79370ea902ef6cdf5724565bfb35d2d999e5b8ae7d2997c94e3ce7b6bfc8698850f5bea6ed28d2670ed0bc72485811f4579eee682784c336392515b9f38b305760c5f2a08ab4ab5c4e4dc94bfd7fe5a3c37df0d10561d5eee3109a165aa8d09aee107d8bc0847badc5833e23b36da204e51497d3f1716162337b2ca72a6d9b0df65af932d7fe5768c3a7a91282332e7768f46e57727280521bd0e3c9f183fa04f1c0e3d82bf7ea3b756ba92372a93cb61e730e2e59814916b3e92ea0d14277077195c6e7500b9f864c7baa380be57ffd71a995ea5594800861a797da989e5e145ccb01db898f989f4c6fde7d34bf056442d3839d229d6e8c8fd581525acabfa32dfd933d425b58fea110c87b5d18bd00fffbffa00d873198e501a825357e75a85912832c0f7dc92f5825797c2460c978f3e875aea0a979c0a4060871bbd79a9babf07212d556a72bb84496ad42f34884efeed068bfad56613cf714bca57b67944ed964fa024cbdc39fe0848bdeb5c884858a5ac18070bc1e4c0329f2d89fcaadcfdab6ef8a1532af54954a15ea5e23ce45325d9f98f0e3fb86d60b7a0397d2453942930b89e474cdda078d4d62f83b306800b744f407abb12457ab2002a4c1babaebbacd167f44ae7a2bcba0576b2bba82a9e92a2177c482c7e3607c94e731f1a05d19d027153f2b2e5e5fa02b5887eadf045f884b7410bc1af1eb756ae71476a0623a5c27fbd454617541c911c1ca7f76e1017369953940959affc0126bd3ec9ee985c1ac0733a0d152dc33ad991a56c05ed402b56772c434095bf2c563875bd1ef4f339a0116feea24de95ead8342f2cc38eb2eb85b85c3ecbb25e77ae77cbbeb5b4bbc22e5b5bae35469b6565c089be978e383bca0d9ea2bdf66b2c2022976a424700038eb0dd496185b4406b017eb667af2336bd343a6518cdb282ed1f4ad156a51a420357c104c259ffefcc61717fc2d33bbac669fd340b62448e7b1ff79817d2faacc25d75413c7765d42904380717b7dfba97b043ecf6e68448d74c814a84fcec4b8e91924a2d84756257a3f7b5be9993390cb0d83ea216c344cd01747e580a018abe2b78ff31d78a0376939df219b6e4348501b5cd4005a711a4cf2585665816a7e23ad88e6fce9816231f577a8a4cc99f0fb7042243727ff97dfb91a943382ca90c2df1ad395083a12f7234582ea05fb002ebe876e39b32b192b8ada3a742f234ac609ba886fe26fc693ae013386f1b8b4d4b3c0fca228fbbd7af483f28f0a6a1363b275abecc85f2bee9d3c5c82a69692d9e81a977c050c94a09db9ac1ec9c86f3a6e0085d60e0d08cd2f8711d90b4066d0b5dfa922675d11a734712b53ba0ccab9ab7a8fe313144d531d11397926ca47601f444c6e995d8c7bfe71bac0249f67ef196e0656ff7e065d21224aea23f74592d0df86b3869e0a08de6c436ae57b76cc6821c11d16b120219ecb3e66724bb9b913be1da889b5d3900926e267b2beaeca176baaa9f8c82b8d74a308a307751320c46e850a5eaea83c5acccf639b783f5606cebaf54d8c04499037c3ab777163747416a6910cb0352002b67", + "dataAbiValues": { + "methodSignature": "handleCreateRequests(uint256[],bytes32[])", + "inputValues": [ + [ + "2", + "864000", + "61091015562669229328302511622207838274133483677802899134756790701318101320870", + "108000853268429518120666974822971079545728317287326968663692222929051051051804" + ], + [ + "fa4a08dc093aad94a53150a69958ea5701d0cdfc0457647f4a00851f2b3ffa4f", + "fd8a6288227c780955edaf8b4dede4dd79b2d6a1b9670dc32f84033dbf8be309", + "4a3581399d5766a955990785635f7387f42bc3ac7aefc687d70bedd0207993bc", + "4c485bed03b3790844630b99699bb40f5069c1d8403298cdfda2575a3317f64a", + "e11593ffb0ec0927fe5913230c741395327603a0cb862e6b83dfda2f6220ae47", + "cc515c273c51f6f72596a67c49bd9c8c601629067e48532c86a5ec436da6c5d4", + "a086dd03f412f823cb3b33845d313ed20d3eb30a8c1738fe538f8ce08dda6bc9", + "03393b682ce82af7ad546cbd6f5e6b633403a16c9539778326f27093154073c1", + "89ff0c2a9bf1d9e0c1340059cb502459adc6848943173465070dbc70f56c9773", + "a380843bf072ee4ebcdaa6db9c9b1bcdd7accd8376418847fe049b50be079824", + "e34e17ba796d22717b906c8ae168c515652b146e98f67ff81a17d32cfbb3a45d", + "70b80d8aebc1f699d448d6bb373046a46055cea8663f1e133e3b318bd3bbf341", + "831782f5c84d3a2e123ae7cf9de566a9e5958314dac1f2f943af76cc5a4ed5d6", + "1bb435d28f2bc87a2c6a8b92b314537495d986c635f3f24b0c89bb8431fd15da", + "1f20ecad2204c5f2c899891deee290ce478f20d080be1f01b0631cfde6d77c17", + "4a0451dff325ceca911fe96cc8e506f589259f7ae6d81a6562ad17da5ac2668a", + "fb4dfae5387e68f8f182b4cd18e2d04b3d23801beadb0e540b89182a8ef12544", + "bf301a4ed791f0937f2169890e091a55113e6f5869333627389cfa9013231650", + "d5b1193bc5c6faf12c4caedc4c1de1a155f1caac4b1b386f2c9fb59c0edddb79", + "370ea902ef6cdf5724565bfb35d2d999e5b8ae7d2997c94e3ce7b6bfc8698850", + "f5bea6ed28d2670ed0bc72485811f4579eee682784c336392515b9f38b305760", + "c5f2a08ab4ab5c4e4dc94bfd7fe5a3c37df0d10561d5eee3109a165aa8d09aee", + "107d8bc0847badc5833e23b36da204e51497d3f1716162337b2ca72a6d9b0df6", + "5af932d7fe5768c3a7a91282332e7768f46e57727280521bd0e3c9f183fa04f1", + "c0e3d82bf7ea3b756ba92372a93cb61e730e2e59814916b3e92ea0d142770771", + "95c6e7500b9f864c7baa380be57ffd71a995ea5594800861a797da989e5e145c", + "cb01db898f989f4c6fde7d34bf056442d3839d229d6e8c8fd581525acabfa32d", + "fd933d425b58fea110c87b5d18bd00fffbffa00d873198e501a825357e75a859", + "12832c0f7dc92f5825797c2460c978f3e875aea0a979c0a4060871bbd79a9bab", + "f07212d556a72bb84496ad42f34884efeed068bfad56613cf714bca57b67944e", + "d964fa024cbdc39fe0848bdeb5c884858a5ac18070bc1e4c0329f2d89fcaadcf", + "dab6ef8a1532af54954a15ea5e23ce45325d9f98f0e3fb86d60b7a0397d24539", + "42930b89e474cdda078d4d62f83b306800b744f407abb12457ab2002a4c1baba", + "ebbacd167f44ae7a2bcba0576b2bba82a9e92a2177c482c7e3607c94e731f1a0", + "5d19d027153f2b2e5e5fa02b5887eadf045f884b7410bc1af1eb756ae71476a0", + "623a5c27fbd454617541c911c1ca7f76e1017369953940959affc0126bd3ec9e", + "e985c1ac0733a0d152dc33ad991a56c05ed402b56772c434095bf2c563875bd1", + "ef4f339a0116feea24de95ead8342f2cc38eb2eb85b85c3ecbb25e77ae77cbbe", + "b5b4bbc22e5b5bae35469b6565c089be978e383bca0d9ea2bdf66b2c2022976a", + "424700038eb0dd496185b4406b017eb667af2336bd343a6518cdb282ed1f4ad1", + "56a51a420357c104c259ffefcc61717fc2d33bbac669fd340b62448e7b1ff798", + "17d2faacc25d75413c7765d42904380717b7dfba97b043ecf6e68448d74c814a", + "84fcec4b8e91924a2d84756257a3f7b5be9993390cb0d83ea216c344cd01747e", + "580a018abe2b78ff31d78a0376939df219b6e4348501b5cd4005a711a4cf2585", + "665816a7e23ad88e6fce9816231f577a8a4cc99f0fb7042243727ff97dfb91a9", + "43382ca90c2df1ad395083a12f7234582ea05fb002ebe876e39b32b192b8ada3", + "a742f234ac609ba886fe26fc693ae013386f1b8b4d4b3c0fca228fbbd7af483f", + "28f0a6a1363b275abecc85f2bee9d3c5c82a69692d9e81a977c050c94a09db9a", + "c1ec9c86f3a6e0085d60e0d08cd2f8711d90b4066d0b5dfa922675d11a734712", + "b53ba0ccab9ab7a8fe313144d531d11397926ca47601f444c6e995d8c7bfe71b", + "ac0249f67ef196e0656ff7e065d21224aea23f74592d0df86b3869e0a08de6c4", + "36ae57b76cc6821c11d16b120219ecb3e66724bb9b913be1da889b5d3900926e", + "267b2beaeca176baaa9f8c82b8d74a308a307751320c46e850a5eaea83c5accc", + "f639b783f5606cebaf54d8c04499037c3ab777163747416a6910cb0352002b67" + ] + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 40713, + "blockTimestampDelay": 288890 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000040000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 2, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x51b295e3bb1a2084cb159fd6a10d243726c06ecc2c061e64fa5637a4e1e36ecd536af41a", + "dataAbiValues": { + "methodSignature": "handleFinalize(uint256)", + "inputValues": [ + "84628665144738400938347255498120459236162163404711567437113231227400449881114" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 40461, + "blockTimestampDelay": 86400 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000010000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x51b295e35136d12e4fabb2fa40b59d097a7d5e4dc2581129e405d2d808b39933f643e93e", + "dataAbiValues": { + "methodSignature": "handleFinalize(uint256)", + "inputValues": [ + "36734194190276940096273241257659402973542659853799331442674641708617136597310" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 0, + "blockTimestampDelay": 0 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000090000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 2, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xc0106a6cffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0a9473a1fb03242c6ca0cf72ce918a668d75a7aef4f15a0d33f1a7b490a38de2b", + "dataAbiValues": { + "methodSignature": "handleCreateRequest(uint256,uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913129639904", + "76566718707773384903225614118535891165433973603151251259517762515743289171499" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 47596, + "blockTimestampDelay": 550258 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000030000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 4, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xcd10417a00000000000000000000000000000000000000000000000000000000000300000000000000000000000000000000000000000000000000000000000000000000", + "dataAbiValues": { + "methodSignature": "handleEscalateDispute(uint256,uint256)", + "inputValues": [ + "196608", + "0" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 49468, + "blockTimestampDelay": 531192 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000050000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x48a41c27f5e2b5585f4a318b516ae77e2bcf1d0c6c69d73f617d0ad2dbeddce25ff7ba910000000000000000000000000000000000000000000000000000000000000100ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff01", + "dataAbiValues": { + "methodSignature": "handlePropose(uint256,uint256,uint256)", + "inputValues": [ + "111217206938139444968553110676306921351727538827093245698432831002069798730385", + "256", + "115792089237316195423570985008687907853269984665640564039457584007913129639681" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 58448, + "blockTimestampDelay": 291208 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000040000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 3, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x223b137447d666f967a2435f360ae1a5d74411418e2552cde02c3fbb44404f0b7f0b7418000000000000000000000000000000000000000000000000000000000000004016d6fce3ebe57504d74c895dd764984c1a0fd9bc84e53996fe9d1fdbe18087310000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000000000000000000000000000000000000382997ddbd0ec071e601a74bec3b18f95a929e2c8f2fc57697f8fb476f87fce56000000000000000000000000000000000000000000000000000000000000000273d0000000000000000000000000000000000000000000000000000000000000", + "dataAbiValues": { + "methodSignature": "handleSetRequestModuleData(uint256,(uint256,string,address,uint256))", + "inputValues": [ + "32493028223342497817984115926415147953105366173154533585631663319985412600856", + { + "accountingExtension": "0x0000000000000000000000000000000000000003", + "chainId": "s\ufffd", + "epoch": "10330733325524501176169902709898413906911149832921865654336546665583987427121", + "paymentAmount": "59071866561259445092599584718662586641316079064498865051383233255850771467862" + } + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 60461, + "blockTimestampDelay": 141927 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000020000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 3, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xa44b098efffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeae7d", + "dataAbiValues": { + "methodSignature": "handleSetArbitrator(uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913129553533" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 0, + "blockTimestampDelay": 0 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000050000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 2, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x88b05f294612566bf9a56551713402058b178bf9334e16a430e78e53610b3f6114f2e572000000000000000000000000000000000000000000000000000000000000000200000000000000000000000018d46a62722e6eafc069b97c7a78574ce775f12972176491145ebf6cab47d070a505484213e19c33bd80bea8025c039a73381b46fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b80fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd97e0eb0dc1b379e381e4fe6763a824517b98db81bcc6b00d254c5ccfca3f2ac18b9668134e813d08414573dcc8f081b6e06ecf54faff7d640eb4d6256186486c", + "dataAbiValues": { + "methodSignature": "handleSetDisputeModuleData(uint256,(address,address,uint256,uint256,uint256,uint256,uint256))", + "inputValues": [ + "31694299109185575978093051252844457975556191736261404991840997988919212696946", + { + "accountingExtension": "0x0000000000000000000000000000000000000002", + "bondEscalationDeadline": "115792089237316195423570985008687907853269984665640564039457584007913129639933", + "bondSize": "51604996306954439705122303006796123301392110440900451331152134443247940934470", + "bondToken": "0x18D46A62722e6EaFC069B97C7a78574Ce775f129", + "disputeWindow": "63137231314917362874984632942434005220138982617699967905479977286643722111084", + "maxNumberOfEscalations": "115792089237316195423570985008687907853269984665640564039457584007913129380736", + "tyingBuffer": "68696636159853489678209085642458599054486261706714901038271685491028301654721" + } + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 20610, + "blockTimestampDelay": 50559 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000010000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x91e32c742e693f54b35fa5d59ec7953d3d92c6c7321e518cbc79bb814991c6e38f5e3a3b39aa5c9d593e01f0e71bc219c99a7b0f669cacf8042cd6f7799e6b55d0d6b295", + "dataAbiValues": { + "methodSignature": "handleCreateRequest(uint256,bytes32)", + "inputValues": [ + "20992347070177599493552861158782242658616332286840658514010375208108738624059", + "39aa5c9d593e01f0e71bc219c99a7b0f669cacf8042cd6f7799e6b55d0d6b295" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 20220, + "blockTimestampDelay": 415244 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000070000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x5cc02fa5628fe26e3155794c9672436827dce1d88dc59c36825e4dbc840be7b15b3945f3", + "dataAbiValues": { + "methodSignature": "handleSetPendingCouncil(uint256)", + "inputValues": [ + "44580881056887387257556915461952599311513410767387100456778677309001344566771" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 20553, + "blockTimestampDelay": 432000 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000070000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x40605c3f0000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000009600000000000000000000000000000000000000000000000000000000000000047687677d0c6f67a9956de9987d3e8b159a0d3c12ad8f44dcf63a5e9fe7ae5ed3836c16ceef8f711d08c56d2883a542ac041c7b48b785d2419068f9a62edcd7aea0000000000000000000000000000000000000000000000000000000000000000edf7ce6770dd66f7bdcce36fc92a787d6426f09349d5baa2304120109a773e6881e245155e0ed0cd3d341cd42a57b85936f48fb474504d089e886946d60b7576e3a146458f9f31b03b050bfd1076e75bd82c2a42ee9f781bd024c95aaed1c3328f5fbec5b96c71ef236600dc1c449129b85c991ad1b7523aa54e8ea5621f5987e12335585b7f58b9b432b8b95f5fd4b96c0b638e4520eff7ebe46e3da077283efffffffffffffffffffffffffffffffffffffffffffffffffffffffffff5ff00000000000000000000000000000000000000000000000000000000000000000208c3d9dcb20ce04dfbed1a8c1c517cbb033585ec3e9aa7dfe09e91e3bb36464d98fba04831dcd2b3e695b54803c55187d640e45af514fe5c0f8081f44fbcbeadfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff60000000000000000000000000000000000000000000000000000000000080000a7914c10414c7bbb28e53dc2c688b52ca379cb0617309744884835320aa1713a80e524d9968af1ce0b859abebe59bf209b97f4e355d4be48e33124a9a4c73c9d4d0c53ce9c8d29ba273e68a6b3d85ca9f293cd46561486c23200749a0d8d411f6fc9448bb49ba795c03571e22825f0641bba1bc2a8b54733e949f6724d96eb884495e22ccb540d20202d5fa0d71109610521d4e07b0cd370531ef82b7255a85c696b94cec6c8592bc81599bafa0c68c62418dab9f4186ab1e69b7c59b92e80a51ba716e5f4c3d0fbaadae95ec36df0525837af55a6febc2c9689dc3927ef9078000000000000000000000000000000000000000000000000000000000000000a47d016964331660942cdcfa0676a830caedaf4db51a76f4b83ddea96ca711643fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6c580022ec5efeafce51a8de578c83e5d849f66594a0d307c30a3187052b6c205f99c109be70d42a58d5a7da348ccb74b3ed1ddd72a8836d6a852bad67603a37ba875000000000000000000000000000000000000000000000000000000000001518053d957c2c1f5ccc418309c4069b6c0be545d7b5ffb47492c0a301d7f0ec4b1d685963b153983c03f793bb0b8478e9a98c71ae488586e6f7c198453b6434914ae468a811a40716f1bc76e368a87a2ce5f45b008407f425d25953533f66cf9a7de808bb0b45503a9b7c4992dff96ccf858f68f88d385a58a45852255e7c2a401e8e096bedec30949990986924a9e8efb76f8fa9e1c9809016ea95f61bf96edbc2f492e56bea6a5df3db0a92fe23c15ffbc48aecf3d2d9a1d11077ee5c10aa3b8b500000000000000000000000000000000000000000000000000000000000500000000c22e450672894ab6cd8efb11d33f5617839a5bc7dea00c22e450672894a99df55d0f76bee4bcf80f8e37f4c035ac38c35fb484100a223cd0dfa9dd353eaafffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0000000000000000000000000000000000000000000000000000000000069780d924264f3898c6ca908dbe653a4417f1bbb7adfd75548319bf0485ad6aafde822e12ace8656b33eb3d6dcf829cec280dad58216e3441a45d78320f925ef4c2c7fc161600886833ad8999595a9b8a17b8340b50b143261691dd53847fc73a3c570000000000000000000000000000000000000000000000000429d069189e000090afd283d5b15af0cc55f32ed879b6b4e364cf16dd61c7c125c3abdcfe5bbc76c1ea7d56a449217e98179261720bf72d7c5fe9766e2407de8efc6be0fa889996af78a8298488eb83653785ff21b936ce9c27e44f997e65e11a10a806b28e85144e55f67548be509222b88e150fbded4b86112ef6a9a3fa5061634c10ccd26f89219311f916d4d4d069c10e5df546fcda58432bef62508e4d1e6d3fc962cc8eacffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeb0000fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7000004b7c87fff4044b4e74cac01bc926f8a66b5ffbcc5ab275d24215c0ed31e8cbc000033333333333333333333333333333333333333333333333333333333333380a241d03559e8bfba0485b0d7abed07712e2e479dd0ce47734c8c46e79ea99176f059ac75dcfddf5ab3c3eaa2f1b0a908f293a445b5b1aae50c94085b395aabb15fd23ae87d78f85eebbe80d089443433e09f7875fa1fe1e878ac8f02bac14d47db68178557f8b86fcc1e70033a6b23f36861c69650b2e1b1c54c3e4e38bec6fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff80000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed8b00c24c1bac90ebf08d9ac58f77aab9761be35a4df59a1e123ce0a52a5e459d1193abac291b6c7cf32a1c1bf4e4c34ca9f40e45197022fb5eb0336b6581998a0966b981721422af5dcbf394fb82c9530a9e41372ff98c8b715b2604518bdd53c123fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa00000000000000000000000000000000000000000000000000000429d06918a000008763a1dc6288781834628921decf9797a012b55a7340402df0aac23f1ec1c4010000000000000000000000000000000000000000000000000000000000000012fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffb000091e6bf1af91c7b654fd2e5a39fc7b291948e66ef98428300a0f1c069bf5157675a62cebece86f10ff59982c702bab09ea6efa05c1f4638d0b3cb64bc03528e2cf835137cbb5048d30b838c22241d38f1ba1211ccddcf9238cf1c7a55613b0f2c0000136b06e70b74211247c17f81c85322358d29092d96433469e3a1a3ea7544fde48049eaff4aa6184c129d4d9b2ae30d27c85fb125fabf6622a8b91539e40bea3aa7abe8774d0b75c9f61880a5eb87e8d5e9c540d1e5575a87ee6a919c4f40000000000000000000000000000000000000000000000000000000000000001a243520fba835c81d96c5aec594af13983ec1bbc4bbb65fe3c42cbad86d2f8d0b000000000000000000000000000000000000000000000000000000000000000a61bdf8e170aeac32df600557fc9109a0e1931a89ce037f7a73f4e27014cbeb3ee2999738af6c65ef91f63f8d37d38b836cf45786877c54eca436cebcfe970103e2495cba7c4e13e87ea6fd3ecaec2767555a4b05bb3a46970b2a52e369833c229c98af5791b9eb10a9ce4f8877b29a0d3d252c26e8978fc0f06dc76e5c773e0d7d18299afb7f04306c841ad4dde10b0e85299468c5542d959cc2a9eb4a224adec971ae980c3aca7594e053e53f02f2cbb507dff5ad84d765f47e082cad37088dffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000000064fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc00000000000000000000000000000000000000000000000000000429d06918a30000cfe3163c31cd941c4908c92e98dbae78eb610b5dc95280675541c644dcf9c8f500000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000070000c2df88ffb895bb3ee5e308a9f9b59def710f56ead713536fef962d1921952f52507d6ffcb75e4b55151ff6aed1a0b9bb6d8fcd8d5c591258860c6432d79b66deb6ca18f9955582373ef05fe8a0ea15469e2e42507df1773160264edb03b93d4afffffffffffffffffffffffffffffffffffffffffffffffffffffef2852482d1fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9002028aa14e24eabf324687cff69eac9445a8b6d322afd1f749d06e2db36542f15bf0000000000000000000000000000000000000000000000000000000000030000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffec64dc0896a8cd2481b4de12c4c15c61ec7269a601900ab5064de099ddc4815c21fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff96880", + "dataAbiValues": { + "methodSignature": "handleAmendEpoch(uint256,uint256[],uint256[])", + "inputValues": [ + "131072", + [ + "47249851142740957875757900722779564657107273723906910256311739213982676151608", + "24766647138290460177752181234244218002669932821712329987517949466155636587242", + "0", + "107635980887742396802989946387564943771597423793872822880446020389851475951208", + "58748141700443537731924179025379299905124924268648486910397741139492126553462", + "102959964003436531771605190463160185179521415668756700512209123474929947362098", + "64849904481003809351316455932003660004683549313112719287715608903446404487559", + "101832598753169673332434200866859671573583992662842345135767087566893488744510", + "115792089237316195423570985008687907853269984665640564039457584007913128984320", + "2", + "3964541595194321251049067066727095442150914503457355275421156022122200843853", + "69196137823698655653179131081748492787753217343508675585086117321321112977069", + "115792089237316195423570985008687907853269984665640564039457584007913129639926", + "524288", + "75792963508756617716638337164822687693930529122081563495913601860663238553914", + "58300906925523261178190550226810506704237340748656034105474573547804618603677", + "34849869920871438155430600521556864444509859388103082685646642846820738089247", + "50562335537967437952552687066491099733264203586317703438897045144079049354120", + "31022094918639093592809734205946854493687731921234396095826256308342577539164", + "47682928770316848609484539286410371707483684010538998761101216800973410697381", + "12507668409590352176172458789061820918700048371081002479886390349704123617400", + "10", + "32481872328373691918491608409201337116411995929807719754470895460896910415427", + "115792089237316195423570985008687907853269984665640564039457584007913129035136", + "987266774351020839026202647140160929484406452454656930109189606660181981596", + "7512461533277042537650113826310416800190431280406474926456260795113588631669", + "86400", + "37925977948056232333212671950177614183909984801269218202283041467764136260054", + "60423043696541527786411067027331108736077933111445718401854939120676383560878", + "31906615328792064267287065751203493967441657403485782729489444603549659539422", + "58142855929762780006244349247823147669055400828717759145815619594102285533672", + "101584422479822196487353742809726641621647381263703357860936186417864256633903", + "33100711601684018991909556451825954777243047261585260172245805028334775810229", + "327680", + "1340186218024493002587627141304258192746180378074543565271499814906401961", + "71446637037758358116465784240690108798175037326038801993773476812486740360874", + "115792089237316195423570985008687907853269984665640564039457584007913129639934", + "432000", + "98215759039058129811069975962076516563865141423407928082078011663829313773186", + "20839387647756181674923298419552294886853857628058613012393606876825426117319", + "114021860331193221546298748801449163227736451520005563918149923632276456488023", + "300000000000000000", + "65443701353316894436567772279582990841706584775134004403299385948764787948662", + "87710687043878617200016562937082580838310086473928443054884759037111133837718", + "79367930762546646363195273083176957226771595872507422347465520372259073459476", + "35432285181576787435411052955550450505300949325786212997760353422194162954121", + "15186174566889253010204046787236418120118689199202142220826285962993569926828", + "115792089237316195423570985008687907853269984665640564039457584007913128263680", + "115792089237316195423570985008687907853269984665640564039457584007913129050112", + "2133968207251167582431772071102515689799560696939649201928863585509853531324", + "353369412955676865916659500148583703165496779375123791624321240258523955", + "58182728069952182075105014396527452811135033226950986415304485007647280376209", + "53797578333320386010456122044156857743869580805840963593876795181230590614187", + "80228675625285898042656808560537019109829718306369783404321506803462795084109", + "32501870172339943500186166407857619651344111150644834648060840735320957304518", + "115792089237316195423570985008687907853269984665640564039457584007913129115648", + "115792089237316195423570985008687907853269984665640564039457584007913128430336", + "87883164001601056595617337236338321635271327694861418666965294740904263618963", + "77649678513824341834462714929317783260475812428214921694262117336984404494694", + "83906587601195920361441906297987737596060683960919063624786619529343500796195", + "115792089237316195423570985008687907853269984665640564039457584007913129246720", + "300000000000131072", + "61238269540880867255905792063103824629886144667112593231825926894695712146433", + "18", + "115792089237316195423570985008687907853269984665640564039457584007913129312256", + "65993056830217982500232177698232701243193826692204311110170855515525531916135", + "40882734288729406091300429366702778355211210171364316858691443667620666183212", + "112267363839023720090900192093569439082045663236816136381119901541587977178924", + "134018621802449300258762714130425819274618037807454356527149981490640196", + "114838877238692460901739037435708768147992899524492322670651309852230992651275", + "105944840924513804511236867160081932556494222659003216854401617204424367427392" + ], + [ + "16377133083975144612803209916890759276116079793347708892259939332490555002123", + "10", + "44209998118768791307014642136652120267704279192218906644488834105212924586814", + "102494075072658918779959176572030905228085485918607969092905532405942307979523", + "102352323603851854147303090326961438456288187821786226964274201402124301188130", + "70830575299308684007858248487084455137350147340081636707263387232100381310477", + "56581797552380621635106000276727873672203516396150582086354318630661782653662", + "91115741286620669112937454104354410989556251121248953782619196069266559797389", + "115792089237316195423570985008687907853269984665640564039457584007913129574400", + "262144", + "100", + "115792089237316195423570985008687907853269984665640564039457584007913129377792", + "300000000000327680", + "94029987401702137462237430126565305540660377850025797500486713728434821515509", + "256", + "458752", + "88143645052327880294016331672884386697866318870146480968988222959112275963730", + "36406656676820602772473438963511049244974309266248500307301099349900791604958", + "82678013919905467091748735010739230611958440922307682242577676600485986516298", + "115792089237316195423570985008687907853269984665640564039457584006755722232529", + "115792089237316195423570985008687907853269984665640564039457584007913129181216", + "18393022080502958242737873783961131068118909769972148436847751681820714800575", + "196608", + "115792089237316195423570985008687907853269984665640564039457584007913129639916", + "45620050488317513559777904066204761490045812513350707192575523630828126034977", + "115792089237316195423570985008687907853269984665640564039457584007913129207936" + ] + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 47284, + "blockTimestampDelay": 478924 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000070000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 2, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xf84d6dfc592b97c781e37069fb1746e80fce7a05bdc0db067121ed67b8f0c5341f98343f", + "dataAbiValues": { + "methodSignature": "handleAddEBORequestCreatorRequestModule(uint256)", + "inputValues": [ + "40332865490102779880692380169491232729036205025855948737372216034766219654207" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 0, + "blockTimestampDelay": 113401 + } +] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/call_sequences/immutable/1731277803612336000-5693c2ca-1af1-4296-b5e4-039401f77778.json b/test/invariants/fuzz/corpus/call_sequences/immutable/1731277803612336000-5693c2ca-1af1-4296-b5e4-039401f77778.json new file mode 100755 index 0000000..1390a86 --- /dev/null +++ b/test/invariants/fuzz/corpus/call_sequences/immutable/1731277803612336000-5693c2ca-1af1-4296-b5e4-039401f77778.json @@ -0,0 +1,552 @@ +[ + { + "call": { + "from": "0x0000000000000000000000000000000000030000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x13a8b8040000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000034000000000000000000000000000000000000000000000000000000000000000170000000000000000000000000000000000000000000000000000000000d2f000ffffc0000000000000000000000000000000000000000000000000000000000181dc31bc03ad9bc8a966de91dfc8c49b929f6d5fd44a9c22a7f5bb37cebfc106ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed8ee8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b825bc2cfc37067e378b4feef3f3411136744d0b2851c161c601669654cf27bfe6100000000000000000000000000000000000000000000000000000000000000006cd40d93882a844c2becf361c7579664aef7a6ef6e8b79d6bf6f6f76426e9b14039e696f94058cfd274de97421f65916ac135f4d55083d357b9c1f34820c9376000000000000000000000000000000000000000000000000000000000003fffe000000000000000000000000000000000000000000000000000000000000000167e6a528e0202cf23a36eacf513eee303475d3e4c983b2ae2d616b11c440f70a4ac07813439b9213b22d4d86340307a2982de60c241368ad288dfea742b6eb5efffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9686c2d73382b1edfa908bcaeb6b9ac0073f469887a9150c80831642e47e35a614c1bffffffffffffffffffffffffffffffffffffffffffffe48e5eb33a3a7f000000104a13a90c13653470268ea78892361e7e91e706d859aabaaf45ddd18c956640809a37cc7335cdf29b7d988dc8c05e2c1899ad1795364e6fa667088b49487472000000000000000000000000000000000000000000000000000000000000fff6fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b80756993dc4be6ecf1e46c48d6f9cae9255a8b46ef956a3d85442a5f41f70ecf93000000000000000000000000000000000000000000000000000000000076a700a77a4c48695a0407441e86efc633aee092d2ebd99c87fdfeebcd904fe33e086d000000000000000000000000000000000000000000000000000000000000001d563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd0633ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed6958658aad3329b56f2f98187bbaed7351982ae06a00b9382adcb723b8b393d1f5e2def8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b4498bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef328d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad82082401f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade0554594d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae962914f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cbba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c33f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8fd276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f6617237058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf259a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe2665f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a219fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb", + "dataAbiValues": { + "methodSignature": "handleCreateRequests(uint256[],bytes32[])", + "inputValues": [ + [ + "13824000", + "115791647525550000827488589184312722123641027794666345134718053606362806484993", + "58737407075920930096693749632210245280794127876199190949253348332199714210054", + "115792089237316195423570985008687907853269984665640564039457584007913128431336", + "115792089237316195423570985008687907853269984665640564039457584007913129380738", + "41504671482165347584846103287222174319130579613222615088745194098566077611617", + "0", + "49224452924880417829398231270379785502530069722970149981823851608145893694228", + "1636828073493779560152621491074002847609709387720111137750911676859097584502", + "262142", + "1", + "46995738119123743123282428161140493004285235666026628953647859202250191730442", + "33811214160519685654400438720767591502827986970858420988841187408488311483230", + "115792089237316195423570985008687907853269984665640564039457584007913129207916", + "20557653259021005890251421269967042420225955023564768794272035576696478452763", + "115792089237316195423570985008687907853269984665640563909857584007913129639936", + "7367887950809164700104084563884591449786965425123545364576065505479275931200", + "58168524174645209900719041489934173752247098791866719219864340874379345294450", + "65526", + "115792089237316195423570985008687907853269984665640564039457584007913129380736", + "53107142721938561923251317745913031228477959801596843755970727929974933606291", + "7776000", + "75752327540241786815348607290604056680494387521335977257182003214564422715501" + ], + [ + "563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe", + "27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a", + "9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd06", + "33ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865", + "8aad3329b56f2f98187bbaed7351982ae06a00b9382adcb723b8b393d1f5e2de", + "f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1", + "c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b44", + "98bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01", + "108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef32", + "8d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea", + "94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad8208240", + "1f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade05545", + "94d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056", + "cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae96291", + "4f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa", + "9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874", + "ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cb", + "ba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c3", + "3f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8f", + "d276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99", + "fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce", + "3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb", + "4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f661723", + "7058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78", + "994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25", + "9a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe26", + "65f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a2", + "19fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c", + "51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb" + ] + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 21265, + "blockTimestampDelay": 360627 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000050000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x91e32c74e0613faa5f896b73380078af3c1ee8605eec949aaf9c8f422f264f3de916b58dc905ee964be623d23ba97ccc5a2b838249eaa10a8671d6a68f97b09746107abf", + "dataAbiValues": { + "methodSignature": "handleCreateRequest(uint256,bytes32)", + "inputValues": [ + "101489901651207154401933345705911812335881908306802664469868899807780031346061", + "c905ee964be623d23ba97ccc5a2b838249eaa10a8671d6a68f97b09746107abf" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 23884, + "blockTimestampDelay": 297676 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000020000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x161c7318", + "dataAbiValues": { + "methodSignature": "test_debug()", + "inputValues": [] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 0, + "blockTimestampDelay": 1 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000070000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xaa1a5bd9ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffee2cac1a259bf9695aac61487b4606621f281407f44a6d621116f436e53e00628b", + "dataAbiValues": { + "methodSignature": "handleResolveDispute(uint256,uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913129639918", + "20205843492154653597326893919151713313559584018734749877274787063574636290699" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 23891, + "blockTimestampDelay": 328958 + }, + { + "call": { + "from": "0x00000000000000000000000000000000000a0000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xec5bf215fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff60000", + "dataAbiValues": { + "methodSignature": "handleFinalizeRequestResponseModule(uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913128984576" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 23883, + "blockTimestampDelay": 276784 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000020000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xd1a55655fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe9c", + "dataAbiValues": { + "methodSignature": "handleRevokeModule(uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913129639580" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 14210, + "blockTimestampDelay": 524288 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000060000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x727899fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffb001400000000000000000000000000000000000000000000000000000000001275000000000000000000000000000000000000000000000000000000000000000000a46e28ce399e11c208b07a84e457189f5b64e15f51e128b7baf507642bfef8c6", + "dataAbiValues": { + "methodSignature": "handlePledge(uint256,uint256,uint256,uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913129312276", + "1209600", + "0", + "74373941974452021616102119156230516273735358461823357873191033522071497799878" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 1, + "blockTimestampDelay": 256 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000040000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xa44b098effffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0003", + "dataAbiValues": { + "methodSignature": "handleSetArbitrator(uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913129574403" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 43748, + "blockTimestampDelay": 541010 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000010000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x8f790139ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0", + "dataAbiValues": { + "methodSignature": "handleReleaseUnutilizedResponse(uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913129639904" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 11833, + "blockTimestampDelay": 213928 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000090000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xa59d317d7f4bab9c72ef04decea93d5f106890883b64be0e4f50aa1ceebd5a435a7fa13a0000000000000000000000001302f0402bb094e65a1c38fc8979628fa7cb7eb80000000000000000000000000000000000000000000000000000000000093a8000000000000000000000000000000000000000000000000000000000000d2f00fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff70000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff", + "dataAbiValues": { + "methodSignature": "handleSetResponseModuleData(uint256,(address,address,uint256,uint256,uint256))", + "inputValues": [ + "57577429716414119383889913852992200380066446236494108346454295294682507223354", + { + "accountingExtension": "0x1302F0402bb094e65a1c38fC8979628FA7cb7eB8", + "bondSize": "864000", + "bondToken": "0x0000000000000000000000000000000000093A80", + "deadline": "115792089237316195423570985008687907853269984665640564039457584007913129050112", + "disputeWindow": "115792089237316195423570985008687907853269984665640564039457584007913129639935" + } + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 30759, + "blockTimestampDelay": 56734 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000060000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x864e2da9ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff30838cd661e07d4920a4bce6f00da019a66f1a0c976d396f8827e2cc52ed8ce1fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff80000", + "dataAbiValues": { + "methodSignature": "handleArbitrateDispute(uint256,uint256,uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913129639935", + "21943445721707534311606538764242968064099548519492097564976924267444655983841", + "115792089237316195423570985008687907853269984665640564039457584007913129115648" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 1, + "blockTimestampDelay": 2 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000090000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x9f6259e5fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd0000ffff800000000000000000000000000000000000000000000000000000000007", + "dataAbiValues": { + "methodSignature": "handleResolve(uint256,uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913129443328", + "115791205813783806231406193359937536394012070923692126229978523204812483330055" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 23928, + "blockTimestampDelay": 603784 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000050000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x91e32c7440906eb1080127929789d55c169cd890ff51930058d460b835803e947a1382a9e3a84eb76ecf8f296e15f27686df9d7107dae93af0929c31ee8d76fd38476ee4", + "dataAbiValues": { + "methodSignature": "handleCreateRequest(uint256,bytes32)", + "inputValues": [ + "29203212251508816547276680880804676973046658682524638891611434720618890887849", + "e3a84eb76ecf8f296e15f27686df9d7107dae93af0929c31ee8d76fd38476ee4" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 8633, + "blockTimestampDelay": 384652 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000070000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xcd10417afffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00000e9d23751886f170e2b576c9a16ce5725aaa7d6b5a51829b582417606f258a52e", + "dataAbiValues": { + "methodSignature": "handleEscalateDispute(uint256,uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913128591360", + "105760313397677454187313767699264694345051805328600745402406216015374137730350" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 0, + "blockTimestampDelay": 0 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000070000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 2, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xdb106ace00000000000000000000000000000000000000000000000000000000000700000000000000000000000000000000000000000000000000000000000000000b8000000000000000000000000000000000000000000000000000000000000000018e16328353e4335d4857f0c0272a56e894016a8e7fd5018abf59e4d63ffccc5d", + "dataAbiValues": { + "methodSignature": "handleSlash(uint256,uint256,uint256,uint256)", + "inputValues": [ + "458752", + "2944", + "1", + "64267643762154101036828179854063870619362775084021579500394794132351915707485" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 164, + "blockTimestampDelay": 328 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000070000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 3, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x64d6e6d34c37e1c6d066da117417045ecbb977d5fedb1a4f579c688036dfc2df96e8752a043feae6e9cd4dd5562baba0f9a2b8b88a6d24a210411d2a9ec010c887b2bbe857bd07a491da874930cf70d2603f546341bf1b41678d94212ad0d7f75f1f8c34", + "dataAbiValues": { + "methodSignature": "handlePledgeAgainstDispute(uint256,uint256,uint256)", + "inputValues": [ + "34474511333835792082501049571137601504043270057660531960180087278390018077994", + "1922183993469207343531967439441002744253338739077547349842513920358809254888", + "39685204671003151059797908428363376637491661590041500229844100997746182294580" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 13776, + "blockTimestampDelay": 196607 + }, + { + "call": { + "from": "0x00000000000000000000000000000000000a0000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xec5bf2150000000000000000000000000000000000000000000000000429d069189e0000", + "dataAbiValues": { + "methodSignature": "handleFinalizeRequestResponseModule(uint256)", + "inputValues": [ + "300000000000000000" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 73, + "blockTimestampDelay": 256 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000040000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x88b05f29ef15b65782cfe591a01276bbd3a4a416a4bc7c3c46d4a2a065776ceef8729dba0000000000000000000000000413cb2b8393acd243f05fe1fc92f0f33645674b0000000000000000000000000000000000000000000000000000000000030000fffffffffffffffffffffffffffffffffffffffffffffffff90fa4a62c4e0000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed8b000000000000000000000000000000000000000000000000000000000000000000fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff70000d2ba62ed8591040e27c905c9f23b93ea29ed2e248c13da4976202a1dc77c2ba8", + "dataAbiValues": { + "methodSignature": "handleSetDisputeModuleData(uint256,(address,address,uint256,uint256,uint256,uint256,uint256))", + "inputValues": [ + "108141133076887610497531349483470932814278164634546444848861358676425430965690", + { + "accountingExtension": "0x0413cb2b8393aCD243f05fe1fC92f0F33645674B", + "bondEscalationDeadline": "0", + "bondSize": "115792089237316195423570985008687907853269984665640564039457084007913129639936", + "bondToken": "0x0000000000000000000000000000000000030000", + "disputeWindow": "95315014531250257482381499157059680862481424202393349630157942686167364021160", + "maxNumberOfEscalations": "115792089237316195423570985008687907853269984665640564039457584007913128430336", + "tyingBuffer": "115792089237316195423570985008687907853269984665640564039457584007913129050112" + } + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 38581, + "blockTimestampDelay": 108799 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000010000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x223b137450d770be3b639c40475b7c2d9b38d9e215fe44b7581f0c70a37d8c0a641edafd0000000000000000000000000000000000000000000000000000000000000040fffffffffffffffffffffffffffffffffffffffffffffffffbd62f96e762000000000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000429d069189e0000faaa954e38a0b2b00899664d61354e2cfff2f66f0626a1fe18153ff26908fb17000000000000000000000000000000000000000000000000000000000000002245524332303a206275726e20616d6f756e7420657863656564732062616c616e6365000000000000000000000000000000000000000000000000000000000000", + "dataAbiValues": { + "methodSignature": "handleSetRequestModuleData(uint256,(uint256,string,address,uint256))", + "inputValues": [ + "36565678129823773534549762252589227787369831080370959419522126439904133962493", + { + "accountingExtension": "0x0000000000000000000000000429d069189E0000", + "chainId": "ERC20: burn amount exceeds balance", + "epoch": "115792089237316195423570985008687907853269984665640564039457284007913129639936", + "paymentAmount": "113379606615874029916799118804079911196343283863948566571202567108031238699799" + } + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 37714, + "blockTimestampDelay": 360627 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000080000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x3c26dcf850998e7a487a0396644961090095b61b3c1b308fa403cec3ee49938481a811c6", + "dataAbiValues": { + "methodSignature": "handleSetEpochManager(uint256)", + "inputValues": [ + "36456338832299820178700876510501821848611772013703942260527737361995594731974" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 55799, + "blockTimestampDelay": 360605 + } +] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/call_sequences/immutable/1731277803616547000-7e10b2dd-f253-4d1d-b859-ec8a710b55b8.json b/test/invariants/fuzz/corpus/call_sequences/immutable/1731277803616547000-7e10b2dd-f253-4d1d-b859-ec8a710b55b8.json new file mode 100755 index 0000000..176f3f0 --- /dev/null +++ b/test/invariants/fuzz/corpus/call_sequences/immutable/1731277803616547000-7e10b2dd-f253-4d1d-b859-ec8a710b55b8.json @@ -0,0 +1,741 @@ +[ + { + "call": { + "from": "0x0000000000000000000000000000000000040000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x52e3cb9c6b0d264b5add160d5053aa476132c22d6540d3605ad8dfb850790b1ba996569b", + "dataAbiValues": { + "methodSignature": "handleSetMaxUsersToCheck(uint256)", + "inputValues": [ + "48420708108177856443123222644862532857390746786695606854692354379525674915483" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 59698, + "blockTimestampDelay": 331757 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000020000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x62e8fd3500000000000000000000000000000000000000000000000000000000000000124ab950c09e2414c3ec444389b5281e1bdfda8ecfec5392240af8d376f3781e4f", + "dataAbiValues": { + "methodSignature": "handleOnDisputeStatusChange(uint256,uint256)", + "inputValues": [ + "18", + "33798574834817402171861624718400176195923458571787846279113220864863863578191" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 41059, + "blockTimestampDelay": 386818 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000040000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x161c7318", + "dataAbiValues": { + "methodSignature": "test_debug()", + "inputValues": [] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 2290, + "blockTimestampDelay": 360593 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000050000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xb05752f700000000000000000000000000000000000000000000000014d1120d7b160000fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa0100ffffe666666666666666666666666666666666666666666666666666666666670000000000000000000000000000000000000000000000000000000000000001", + "dataAbiValues": { + "methodSignature": "handleOnSettleBondEscalation(uint256,uint256,uint256,uint256)", + "inputValues": [ + "1500000000000000000", + "115792089237316195423570985008687907853269984665640564039457584007913129246976", + "115791912552609717585138026678937833561418401917250876477561771847293000377959", + "1" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 35958, + "blockTimestampDelay": 189815 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000080000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xd1a556550000000000000000000000000000000000000000000000000000000000093a80", + "dataAbiValues": { + "methodSignature": "handleRevokeModule(uint256)", + "inputValues": [ + "604800" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 23866, + "blockTimestampDelay": 120766 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000040000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 2, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xf60285cafffffffffffffffffffffffffffffffffffffffffffffffffffffffffffb00001f6163d95156c50021d434e3914437a6419fd074db58aba632a1165e1049633a3bf295102083f98484e4163605f3f088673969b3a53bced8eb97b90d6679470f0000000000000000000000000000000000000000000000000000000000000014", + "dataAbiValues": { + "methodSignature": "handleBondWithSender(uint256,uint256,uint256,uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913129312256", + "14193771603127510897806160380156132720630156725507671248204049821265402880826", + "27115063851078188957254873925429362151386502274781693755807630999965205612303", + "20" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 14998, + "blockTimestampDelay": 528331 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000050000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x51b295e3fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc18", + "dataAbiValues": { + "methodSignature": "handleFinalize(uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913129638936" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 23876, + "blockTimestampDelay": 327680 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000060000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x2047c4493b1bb599e967df2247a0bde0e15c19a16d95520dbb9eb811b647dd1c5a50d970bda0d1adb4d017dcf6513d613392f361bfe0847acfbe5bbfd267240bef7125cd61ebaebab2bac3aa4819e2caf8f85c718565871747241e292cc36db91888e520d873b789d8f47c6606b2d5358f69133b1dd4937cee526c90ac095190af102de2", + "dataAbiValues": { + "methodSignature": "handlePay(uint256,uint256,uint256,uint256)", + "inputValues": [ + "26735416302702836720504774004574936090245153519362370366870156849631651223920", + "85771271060700958624081931951489906403580871476691194667860842730768850560461", + "44290761310036599938494988979380191776366734083697389368196279735913800066336", + "97904029442377240838501909618781928147909909174040210570358457032104622435810" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 54628, + "blockTimestampDelay": 362209 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000020000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x9f6259e57cf479b021a816743ff5b53a6f3e5c2c247b2adb9311a44237c3858abd44df0e0000000000000000000000000000000000000000000000000000000000127118", + "dataAbiValues": { + "methodSignature": "handleResolve(uint256,uint256)", + "inputValues": [ + "56518743767933985910260346386765678340564227438862784222762849925209918856974", + "1208600" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 35385, + "blockTimestampDelay": 50692 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000050000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 2, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x0fb55087fffffffffffffffffffffffffffffffffffffffffffffffffffffff400000000", + "dataAbiValues": { + "methodSignature": "handleApproveModule(uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007861590032384" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 1, + "blockTimestampDelay": 57134 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000050000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 3, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x5356b6811b3175568497fde3c31fe069ccc7985311b0506f3b43e70969ab59ea722d2599", + "dataAbiValues": { + "methodSignature": "handleAddEBORequestCreatorFinalityModule(uint256)", + "inputValues": [ + "12299832254764069471447641000592064088020729744720327828938364394997925356953" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 0, + "blockTimestampDelay": 0 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000050000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 4, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xa44b098ea6e532d597161bf414844541b5281607abc0fedcfbe19700823ca81bfeffd5da", + "dataAbiValues": { + "methodSignature": "handleSetArbitrator(uint256)", + "inputValues": [ + "75488891688353701349182521546099519030572206284453220585196006136091846366682" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 13249, + "blockTimestampDelay": 486500 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000090000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x727899ff000000000000000000000000000000000000000000000000000000000009688043d2cc6bee2c75afbb0a2d8e686ed8d850d35e4220dab9eaaad8c1f2bbd315eb000040ba1702262dc3924484fe5b466a7207d688c9429f8aaeb64c1acd0d86e1fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff70000", + "dataAbiValues": { + "methodSignature": "handlePledge(uint256,uint256,uint256,uint256)", + "inputValues": [ + "616576", + "30677409604733962472433633135176719636373390531562919397962760076773674915307", + "446728739341497667529209047101419397582060126024847855090499938302133985", + "115792089237316195423570985008687907853269984665640564039457584007913129050112" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 28736, + "blockTimestampDelay": 576650 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000040000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 3, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x52e3cb9cfffffffffffffffffffffffffffffffffffffffffffffffff90fa4a62c4e0000", + "dataAbiValues": { + "methodSignature": "handleSetMaxUsersToCheck(uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457084007913129639936" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 14857, + "blockTimestampDelay": 578411 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000070000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x91e32c74fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8000053817ae4082823f7b7ef4f21ea8eaf2d55883b146199ee5cd9707c39a3f025ab", + "dataAbiValues": { + "methodSignature": "handleCreateRequest(uint256,bytes32)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913129115648", + "53817ae4082823f7b7ef4f21ea8eaf2d55883b146199ee5cd9707c39a3f025ab" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 23, + "blockTimestampDelay": 32 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000070000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x48a41c2700db944f945348b4c6cffca09ace97414e862af57bfe67d15e8f4ba3813ede4b3d688e69cd534e15f8ccc3765fd50e2ab30d2b740b3ff6d5865213182fe783c63b4bac2923dad06e124a6e05ae7aa5ae1b3e8edff0154acd1de94e5fe6e26732", + "dataAbiValues": { + "methodSignature": "handlePropose(uint256,uint256,uint256)", + "inputValues": [ + "387963111102058097323071002434237761651493831039740349958407635767455047243", + "27775818758715135462630212585325327395456425224261459780030383525521640620998", + "26820159805776502209708934821205059577225837408551437026198979884765463865138" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 25200, + "blockTimestampDelay": 27983 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000020000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 2, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xc0106a6cfffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7fc1800001fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff", + "dataAbiValues": { + "methodSignature": "handleCreateRequest(uint256,uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913129114648", + "220855883097298041197912187592864814478435487109452369765200775161577471" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 50518, + "blockTimestampDelay": 458752 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000050000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 5, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x9d2e6a6f000000000000000000000000000000000000000000000000000000000005d100", + "dataAbiValues": { + "methodSignature": "handleRemoveEBORequestCreatorRequestModule(uint256)", + "inputValues": [ + "381184" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 23639, + "blockTimestampDelay": 195785 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000040000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 4, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x3edc7cbd1599870fe02ecf9ec87ee76accd2d760e7eba60278962813ea05d348dc178e41", + "dataAbiValues": { + "methodSignature": "handleFinalizeRequestFinalityModule(uint256)", + "inputValues": [ + "9769829584924913960676332702159746411403704490750429962740385280098947272257" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 2685, + "blockTimestampDelay": 487244 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000080000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x0fb55087fffffffffffffffffffffffffedea0275f3411a7ad187b0108aa786a3f16bde9", + "dataAbiValues": { + "methodSignature": "handleApproveModule(uint256)", + "inputValues": [ + "115792089237316195423570985008681454588525719193607429938766044948827876015593" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 15207, + "blockTimestampDelay": 220921 + }, + { + "call": { + "from": "0x00000000000000000000000000000000000a0000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x6b125a57e286bb06cb42cc1cd185bc3f02cfcd592fc3e9b10aa00b2c2b633d09978af7a7", + "dataAbiValues": { + "methodSignature": "handleRemoveEBORequestCreatorFinalityModule(uint256)", + "inputValues": [ + "102460752096230911141037771748726806398872347580671159824723173728064937588647" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 12095, + "blockTimestampDelay": 12289 + }, + { + "call": { + "from": "0x00000000000000000000000000000000000a0000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x161c7318", + "dataAbiValues": { + "methodSignature": "test_debug()", + "inputValues": [] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 15263, + "blockTimestampDelay": 532218 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000040000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 5, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xec5bf215fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe", + "dataAbiValues": { + "methodSignature": "handleFinalizeRequestResponseModule(uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913129639934" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 66, + "blockTimestampDelay": 100 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000080000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 2, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x3edc7cbd0000000000000000000000000000000000000000000000000000000000069780", + "dataAbiValues": { + "methodSignature": "handleFinalizeRequestFinalityModule(uint256)", + "inputValues": [ + "432000" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 25275, + "blockTimestampDelay": 265204 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000070000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 2, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xf60285ca0000000000000000000000000000000000000000000000000000000000090000fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0000fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff951803e9cbc6e25eef9741c5aecc543fdfd3b7843cdd81d009791c912b1ac18ca3bc3", + "dataAbiValues": { + "methodSignature": "handleBondWithSender(uint256,uint256,uint256,uint256)", + "inputValues": [ + "589824", + "115792089237316195423570985008687907853269984665640564039457584007913129508864", + "115792089237316195423570985008687907853269984665640564039457584007913129202048", + "28320325252170137216432823826258230770014552748113962706280014781562200144835" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 32288, + "blockTimestampDelay": 531907 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000040000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 6, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xefe223c59c2553129e7851cb256c99b06c7f8dc81f210c90a2e2611259abc401e81f07540000000000000000000000000000000000000000000000000000000000000001", + "dataAbiValues": { + "methodSignature": "handleDisputeResponseOracle(uint256,uint256)", + "inputValues": [ + "70626751067301019089441572534217019449535130321119175666564383155547736573780", + "1" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 54625, + "blockTimestampDelay": 259200 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000030000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x864e2da9883fe7612b6bb87b26cae4dca32375d45e122ab623e5fabce941d7b88e897fa5fffffffffffffffffffffffffffffffffffffffffffffff90fa4a62c4e00000041076a70cffc1a4eeb895e1e3bd1eea004e1c563d9647015c78c3ec8bdf54455", + "dataAbiValues": { + "methodSignature": "handleArbitrateDispute(uint256,uint256,uint256)", + "inputValues": [ + "61627455695498944603673940108566635137976242750181887122097763359817575530405", + "115792089237316195423570985008687907853269984665640564039329584007913129639936", + "29413437713895903893487278743213882333056396597315056022550118936518019335253" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 51381, + "blockTimestampDelay": 259200 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000050000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 6, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xd51b326a00000000000000000000000000000000000000000000000000000000000003e5fffffffffffffffffffffffffffffffffffffffffffffffff90fa4a62c4e00000000000000000000000000000000000000000000000000000000000000050000", + "dataAbiValues": { + "methodSignature": "handlePledgeForDispute(uint256,uint256,uint256)", + "inputValues": [ + "997", + "115792089237316195423570985008687907853269984665640564039457084007913129639936", + "327680" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 18831, + "blockTimestampDelay": 48188 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000080000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 3, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xc0106a6cf52979d6557e7dffb91b5c3d89fc589d6d825e7304f69a52751c44508ab494c3fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff70000", + "dataAbiValues": { + "methodSignature": "handleCreateRequest(uint256,uint256)", + "inputValues": [ + "110889929522296307995270791263779988265523562999353831634872636959969779160259", + "115792089237316195423570985008687907853269984665640564039457584007913129050112" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 18, + "blockTimestampDelay": 196608 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000060000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x94ae6f8c06d71e3fa7df5670060e7ae6bfb0fef56e250e6caae1d93f62f15d384dd79058", + "dataAbiValues": { + "methodSignature": "handleValidateArbitrator(uint256)", + "inputValues": [ + "3093957978973023196079698570753322494102707684193970199785237023181952749656" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 45163, + "blockTimestampDelay": 193409 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000020000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 3, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x5543846522791a89d6fc1377bd19a2942e57d92b97cc6684453067dfb865a791d2538da6000000000000000000000000e3c48138f476eb09478b5d32fa946e61fe5f12e8", + "dataAbiValues": { + "methodSignature": "handleSetResolutionModuleData(uint256,(address))", + "inputValues": [ + "15592608508227480150485868850753978432760407300713696700708765193096882523558", + { + "arbitrator": "0xe3c48138F476Eb09478b5D32FA946E61fE5F12e8" + } + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 3666, + "blockTimestampDelay": 310056 + } +] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/call_sequences/immutable/1731277803617615000-2901a619-fff5-448f-99fe-6220b810c578.json b/test/invariants/fuzz/corpus/call_sequences/immutable/1731277803617615000-2901a619-fff5-448f-99fe-6220b810c578.json new file mode 100755 index 0000000..bb2601f --- /dev/null +++ b/test/invariants/fuzz/corpus/call_sequences/immutable/1731277803617615000-2901a619-fff5-448f-99fe-6220b810c578.json @@ -0,0 +1,849 @@ +[ + { + "call": { + "from": "0x0000000000000000000000000000000000030000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x13a8b8040000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000034000000000000000000000000000000000000000000000000000000000000000170000000000000000000000000000000000000000000000000000000000d2f000ffffc0000000000000000000000000000000000000000000000000000000000181dc31bc03ad9bc8a966de91dfc8c49b929f6d5fd44a9c22a7f5bb37cebfc106ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed8ee8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6c5805bc2cfc37067e378b4feef3f3411136744d0b2851c161c601669654cf27bfe6100000000000000000000000000000000000000000000000000000000000000006cd40d93882a844c2becf361c7579664aef7a6ef6e8b79d6bf6f6f76426e9b14039e696f94058cfd274de97421f65916ac135f4d55083d357b9c1f34820c9376000000000000000000000000000000000000000000000000000000000003fffe000000000000000000000000000000000000000000000000000000000000000167e6a528e0202cf23a36eacf513eee303475d3e4c983b2ae2d616b11c440f70aaa625827d77aa233df42016988900477ead582090357ec011f404ff1f0aa321bfffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9686c2d73382b1edfa908bcaeb6b9ac0073f469887a9150c80831642e47e35a614c1bffffffffffffffffffffffffffffffffffffffffffffe48e5eb33a3a7f000000104a13a90c13653470268ea78892361e7e91e706d859aabaaf45ddd18c956640809a37cc7335cdf29b7d988dc8c05e2c1899ad1795364e6fa667088b49487472000000000000000000000000000000000000000000000000000000000000fff6fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b80756993dc4be6ecf1e46c48d6f9cae9255a8b46ef956a3d85442a5f41f70ecf93000000000000000000000000000000000000000000000000000000000076a700a77a4c48695a0407441e86efc633aee092d2ebd99c87fdfeebcd904fe33e086d000000000000000000000000000000000000000000000000000000000000001d563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd0633ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed69586530127b846a0115a3e561f49781eea70d4bcc4884906080e6adb068ff5fe13953f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b4498bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef328d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad82082401f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade0554594d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e05648dd821e471bd9a22c1f612735d2d7244c13832c4b0f28993ecafc561bfc52ae4f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cbba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c33f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8fd276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f6617237058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf259a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe2665f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a219fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb", + "dataAbiValues": { + "methodSignature": "handleCreateRequests(uint256[],bytes32[])", + "inputValues": [ + [ + "13824000", + "115791647525550000827488589184312722123641027794666345134718053606362806484993", + "58737407075920930096693749632210245280794127876199190949253348332199714210054", + "115792089237316195423570985008687907853269984665640564039457584007913128431336", + "115792089237316195423570985008687907853269984665640564039457584007913129035136", + "41504671482165347584846103287222174319130579613222615088745194098566077611617", + "0", + "49224452924880417829398231270379785502530069722970149981823851608145893694228", + "1636828073493779560152621491074002847609709387720111137750911676859097584502", + "262142", + "1", + "46995738119123743123282428161140493004285235666026628953647859202250191730442", + "77066943699312596523560233185714836616924754343478096130098486630426813805083", + "115792089237316195423570985008687907853269984665640564039457584007913129207916", + "20557653259021005890251421269967042420225955023564768794272035576696478452763", + "115792089237316195423570985008687907853269984665640563909857584007913129639936", + "7367887950809164700104084563884591449786965425123545364576065505479275931200", + "58168524174645209900719041489934173752247098791866719219864340874379345294450", + "65526", + "115792089237316195423570985008687907853269984665640564039457584007913129380736", + "53107142721938561923251317745913031228477959801596843755970727929974933606291", + "7776000", + "75752327540241786815348607290604056680494387521335977257182003214564422715501" + ], + [ + "563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe", + "27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a", + "9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd06", + "33ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865", + "30127b846a0115a3e561f49781eea70d4bcc4884906080e6adb068ff5fe13953", + "f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1", + "c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b44", + "98bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01", + "108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef32", + "8d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea", + "94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad8208240", + "1f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade05545", + "94d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056", + "48dd821e471bd9a22c1f612735d2d7244c13832c4b0f28993ecafc561bfc52ae", + "4f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa", + "9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874", + "ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cb", + "ba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c3", + "3f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8f", + "d276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99", + "fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce", + "3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb", + "4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f661723", + "7058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78", + "994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25", + "9a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe26", + "65f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a2", + "19fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c", + "51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb" + ] + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 21265, + "blockTimestampDelay": 360627 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000050000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x91e32c74e0613faa5f896b73380078af3c1ee8605eec949aaf9c8f422f264f3de916b58d4b3032484de1fb4c70c2a705584283a0288158e7d201a2526966e049d49acde5", + "dataAbiValues": { + "methodSignature": "handleCreateRequest(uint256,bytes32)", + "inputValues": [ + "101489901651207154401933345705911812335881908306802664469868899807780031346061", + "4b3032484de1fb4c70c2a705584283a0288158e7d201a2526966e049d49acde5" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 23884, + "blockTimestampDelay": 297676 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000080000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x62e8fd350000000000000000000000000000000000000000000000000000000000000000f3e0a4b7d4b9f146c330bf4206493b9644386108e6fb9dbd1ec9e9631656b911", + "dataAbiValues": { + "methodSignature": "handleOnDisputeStatusChange(uint256,uint256)", + "inputValues": [ + "0", + "110308932790717902341334723675742636402013152744066319296234386176011142609169" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 6, + "blockTimestampDelay": 447025 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000060000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xb05752f7000000000000000000000000000000000000000000000000000000000083d600ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff3cb74a490a6b235de22fdba8b11c89c1a75ba52781eaa376b8904d607971473952c39b6854fd2443ddec68f9b401b12b2c3233b939e902ba2cc4b78fc21880c9", + "dataAbiValues": { + "methodSignature": "handleOnSettleBondEscalation(uint256,uint256,uint256,uint256)", + "inputValues": [ + "8640000", + "115792089237316195423570985008687907853269984665640564039457584007913129639935", + "27462616626253393834172180586494418890954476283257859666307992469208736810809", + "37435261344928203651121242557808094327910915308413204917974281668150859169993" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 20576, + "blockTimestampDelay": 441138 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000050000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x88b05f29000000000000000000000000000000000000000000000000000000000009fffe000000000000000000000000c43801cd359a82757df4289878ce85539b0fcade000000000000000000000000000000000000000000000000000000000000006434998e76fdd43c55ad90e4a35d96044a3ebe674f5dfa103757d366102ca9f26c00000000000000000000000000000000000000000000000000000000000001000e694122e842adea5277bbbdab0b14091c2583d39824533976734442dab724e2195f41f8193b8fdb454e4c675da554f0f9409064f42db392c9ab9d5e83fad976fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe", + "dataAbiValues": { + "methodSignature": "handleSetDisputeModuleData(uint256,(address,address,uint256,uint256,uint256,uint256,uint256))", + "inputValues": [ + "655358", + { + "accountingExtension": "0xc43801Cd359A82757Df4289878CE85539B0fcAdE", + "bondEscalationDeadline": "6518348376578069825047353184871606747778953752910129049968505915388248663266", + "bondSize": "23791578983227214469447533216306682837879210004146422934780693486186688803436", + "bondToken": "0x0000000000000000000000000000000000000064", + "disputeWindow": "115792089237316195423570985008687907853269984665640564039457584007913129639934", + "maxNumberOfEscalations": "256", + "tyingBuffer": "11476126987972230713107770724661081842991657660629818104854040000448595417462" + } + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 1, + "blockTimestampDelay": 2 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000020000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xf84d6dfc00000000000000000000000000000000000000000000000006f05b59d3ad0000", + "dataAbiValues": { + "methodSignature": "handleAddEBORequestCreatorRequestModule(uint256)", + "inputValues": [ + "499999999999672320" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 12976, + "blockTimestampDelay": 472659 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000010000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x4741f6dcc0e4d0eee56b7f10aa9aefe04c4f650af62be8b532d57f12aa7ac5b950884c3a", + "dataAbiValues": { + "methodSignature": "handleSetFinalityModuleData(uint256)", + "inputValues": [ + "87248350062624793638699702709121271409886681841563726628967995216176035155002" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 29334, + "blockTimestampDelay": 296740 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000020000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x5356b681bebfb0dc367f431af08687c084e9c844567359d9793a12e0818425b7df16682a", + "dataAbiValues": { + "methodSignature": "handleAddEBORequestCreatorFinalityModule(uint256)", + "inputValues": [ + "86278129664477803463997658766424154744739678303000950581784606393529462581290" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 3566, + "blockTimestampDelay": 274227 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000040000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xaa1a5bd9ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffee0000000000000000000000000000000000000000000000000000000000000001", + "dataAbiValues": { + "methodSignature": "handleResolveDispute(uint256,uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913129639918", + "1" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 38128, + "blockTimestampDelay": 65536 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000080000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x864e2da9000000000000000000000000000000000000000000000000000000000004ff00bfa47f0f3034e3c5b418dac09c339f53fbdf69ff4b147e91a872420a6f7ed6e20000000000000000000000000000000000000000000000000000000000040000", + "dataAbiValues": { + "methodSignature": "handleArbitrateDispute(uint256,uint256,uint256)", + "inputValues": [ + "327424", + "86682393929289525193494153568452559356866521755790133919226203303415723775714", + "262144" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 28049, + "blockTimestampDelay": 147436 + }, + { + "call": { + "from": "0x00000000000000000000000000000000000a0000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x5356b681000000000000000000000000000000000000000000000000000000000000000a", + "dataAbiValues": { + "methodSignature": "handleAddEBORequestCreatorFinalityModule(uint256)", + "inputValues": [ + "10" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 21572, + "blockTimestampDelay": 167216 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000010000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xf84d6dfc87e2e521510210bb9f1efbff2cd79d7cd5675b7d503c446b0017b6bbcd5d492f", + "dataAbiValues": { + "methodSignature": "handleAddEBORequestCreatorRequestModule(uint256)", + "inputValues": [ + "61463123393503677610123184398943346662098674670775488627974437033537892600111" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 1005, + "blockTimestampDelay": 436171 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000090000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xec5bf215564402b8b5f207f4eed188f382ae7d299d56800cfcdbfbdd380f5d111164d7f3", + "dataAbiValues": { + "methodSignature": "handleFinalizeRequestResponseModule(uint256)", + "inputValues": [ + "39019069361849810475124568581956515548187837436962789536769612725416477644787" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 29390, + "blockTimestampDelay": 405151 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000050000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 2, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x2047c44964af5d348042810c6713f567b2ae0a1329f9a41a31dd65689466b80ed86a98102cf683f24338dbd0d0b4e969d552adaa1cb2ba854e7981b39db6aa7a4eb4733a4406bfd9ab92f3b803843d5137445ebcd4035dd79b752232dceb1e4a553a7fc90bc23f646eb8405f9865cad125e2b67c4cb5be6b00c8cbfeb79ac596e5fee34b", + "dataAbiValues": { + "methodSignature": "handlePay(uint256,uint256,uint256,uint256)", + "inputValues": [ + "45541126372497665840906508174782686333425760491760126897278402501345182128144", + "20337320375757040483596893633798835084481932414588544316829844888167896085306", + "30769198887980302917418981166398434808730110615619342329624446156192224018377", + "5318647182657600089902655701709793773207260177110878862668649309798760637259" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 23482, + "blockTimestampDelay": 51930 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000040000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x161c7318", + "dataAbiValues": { + "methodSignature": "test_debug()", + "inputValues": [] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 0, + "blockTimestampDelay": 0 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000070000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xf84d6dfcf6cf88d9f37a86121908cb039be9cc51a5103895c84fc649276df49538afcbad", + "dataAbiValues": { + "methodSignature": "handleAddEBORequestCreatorRequestModule(uint256)", + "inputValues": [ + "111635642607345537592182708073224837457339443516741764226233323948854559624109" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 23896, + "blockTimestampDelay": 360604 + }, + { + "call": { + "from": "0x00000000000000000000000000000000000a0000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xd1a55655000000000000000000000000000000000000000000000000000000000004839c", + "dataAbiValues": { + "methodSignature": "handleRevokeModule(uint256)", + "inputValues": [ + "295836" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 55339, + "blockTimestampDelay": 85204 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000090000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xefe223c58670cef9c731503eed4776ba6fad6b3696fa16be2eb18b465fbafeeaa0fe7be70000000000000000000000000000000000000000000000000000000000000064", + "dataAbiValues": { + "methodSignature": "handleDisputeResponseOracle(uint256,uint256)", + "inputValues": [ + "60809237075164466486500268418905379284411433772615587007980463004965951929319", + "100" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 38872, + "blockTimestampDelay": 360628 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000070000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x3c26dcf8a5a8486b947649db116db64c5c45ca42e6e1d986fed7026bd9ac1d8640310d33", + "dataAbiValues": { + "methodSignature": "handleSetEpochManager(uint256)", + "inputValues": [ + "74928950149207865187656931027679893325164490827615215400216718609192626228531" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 21, + "blockTimestampDelay": 232191 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000020000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 2, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x727899ff0000000000000000000000000000000000000000000000000000000000015180001d4d2f346ae4815c9e9f03f21e3deda069706413924e409fa7504059d19f8a00000000000000000000000000000000000000000000000000000000001061800000000000000000000000000000000000000000000000000000000000000000", + "dataAbiValues": { + "methodSignature": "handlePledge(uint256,uint256,uint256,uint256)", + "inputValues": [ + "86400", + "51771271984981606474845360496175347553777726680427752644378601650631319434", + "1073536", + "0" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 0, + "blockTimestampDelay": 0 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000040000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 2, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x0692ea7e00000000000000000000000000000000000000000000000006f05b59d3b20000", + "dataAbiValues": { + "methodSignature": "handleRemoveChain(uint256)", + "inputValues": [ + "500000000000000000" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 7308, + "blockTimestampDelay": 572210 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000080000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 2, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xf60285ca0000000000000000000000000000000000000000000000000000001c00000000c55ec4bc0d08a528b0c66dda1e983ee7a47fab9c2c7be0189c7f1615408b21090c446e0f4b256cc52cd8a8e7d04a641b919117ba4e8eec18cfc1d6bbef455c1afffffffffffffffffffffffffffffffffffffffffffffffffffffffffff96880", + "dataAbiValues": { + "methodSignature": "handleBondWithSender(uint256,uint256,uint256,uint256)", + "inputValues": [ + "120259084288", + "89273072607119207212350079296024751198400000134903763911230695693815852507401", + "5548659387815291343462229641472196329432108891134398921647704413649710177306", + "115792089237316195423570985008687907853269984665640564039457584007913129207936" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 3666, + "blockTimestampDelay": 328552 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000090000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 2, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xf60285cafffffffffffffffffffffffffffffffffffffffffffffffffffffffffffb000025f25d7faafc93fb72865fa242af64b472ba83cff86d93b0533a903d41979d49a118576f8a1093f26ae33d6729cf5cc25c7581d9765b4403dbe286498c516c51fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffefe", + "dataAbiValues": { + "methodSignature": "handleBondWithSender(uint256,uint256,uint256,uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913129312256", + "17163797691587697797154778947709945459459813549491742892821231886739673947465", + "72865376410486736594847893277442722029628711678849188712496784814318445227089", + "115792089237316195423570985008687907853269984665640564039457584007913129639678" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 16097, + "blockTimestampDelay": 32945 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000060000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x1c6850cf935db8f217ab066b096d3e73a0d7b001fc4ecd8978a23860b95e790ce003170a4eaae94e9868a2f0db87614a7dec2d16319e0ba326a536f6f1691bb8e96bf90f0b832e69b37aa7335b293d4fa58406790362547ef49f09345b753dfa24964850", + "dataAbiValues": { + "methodSignature": "handleUpdateDisputeStatus(uint256,uint256,uint256)", + "inputValues": [ + "66655581966891990089433207462395406981090073962288009560809406913154795116298", + "35582376416332259156222282743710371541531294308094913458341281816449259403535", + "5207218629929607814724254599342746391010434197465047907333283290976655657040" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 60434, + "blockTimestampDelay": 109697 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000040000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 3, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x94ae6f8c0000000000000000000000007109709ecfa91a80626ff3989d68f67f5b1dd12d", + "dataAbiValues": { + "methodSignature": "handleValidateArbitrator(uint256)", + "inputValues": [ + "645326474426547203313410069153905908525362434349" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 0, + "blockTimestampDelay": 604799 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000050000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 3, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x6b125a57fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff60000", + "dataAbiValues": { + "methodSignature": "handleRemoveEBORequestCreatorFinalityModule(uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913128984576" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 45581, + "blockTimestampDelay": 117423 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000070000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 2, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x9d2e6a6fc6539b7a2476ae67ba4b976f82611916e58f7b5d2430c83158095390cd02239e", + "dataAbiValues": { + "methodSignature": "handleRemoveEBORequestCreatorRequestModule(uint256)", + "inputValues": [ + "89705665389500661869876865816500895748106493083156214106851103557324275590046" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 41808, + "blockTimestampDelay": 450845 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000050000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 4, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x0692ea7effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff", + "dataAbiValues": { + "methodSignature": "handleRemoveChain(uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913129639935" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 2372, + "blockTimestampDelay": 234681 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000080000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 3, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xd1a556550000000000000000000000000000000000000000000000000000000000000001", + "dataAbiValues": { + "methodSignature": "handleRevokeModule(uint256)", + "inputValues": [ + "1" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 50550, + "blockTimestampDelay": 229553 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000020000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 3, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xf4fbbf9ba1fc4eba964b9a2c2032d06ec565d5292cf250b147e734e6d992d5d0bda436f600000000000000000000000000000000000000000000000000000000000697806bf391284d4660fc77fbe4592328a2f0997562e4f12cf27795f43d0b0fc3bc7a", + "dataAbiValues": { + "methodSignature": "handleBond(uint256,uint256,uint256)", + "inputValues": [ + "73268157448823115839328750088743753530156494765398712182649313036506897856246", + "432000", + "48827820474906800904865104890106511812906050912626598573180323282500481956986" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 0, + "blockTimestampDelay": 1 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000090000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 3, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xdb106ace6d38c114215bf8f8b3ad2ed58065d5cc3089e62f5be34c18288c135f3f9724a20000000000000000000000000000000000000000000000000000000000069780fffffffffffffffffffffffffffffffffffffffffffffffff90fa4a62c4e00006d9d66ca4ec2ea144207d592952b27c55e72f77602616bdfe3178ceccfefbe99", + "dataAbiValues": { + "methodSignature": "handleSlash(uint256,uint256,uint256,uint256)", + "inputValues": [ + "49402376510960630712476074985720877101324288030739208582895764419073394812066", + "432000", + "115792089237316195423570985008687907853269984665640564039457084007913129639936", + "49580204917077383946213464068067879479747000240903333733565655861027448798873" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 27322, + "blockTimestampDelay": 32945 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000050000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 5, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x94c9ca03", + "dataAbiValues": { + "methodSignature": "handleConfirmCouncil()", + "inputValues": [] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 1, + "blockTimestampDelay": 12 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000090000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 4, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x0692ea7e0000000000000000000000000000000000000000000000000000000000000000", + "dataAbiValues": { + "methodSignature": "handleRemoveChain(uint256)", + "inputValues": [ + "0" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 29896, + "blockTimestampDelay": 295089 + } +] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/call_sequences/immutable/1731277803620612000-8cf92baa-a0a3-4010-9457-96b2f6261d69.json b/test/invariants/fuzz/corpus/call_sequences/immutable/1731277803620612000-8cf92baa-a0a3-4010-9457-96b2f6261d69.json new file mode 100755 index 0000000..279cdbf --- /dev/null +++ b/test/invariants/fuzz/corpus/call_sequences/immutable/1731277803620612000-8cf92baa-a0a3-4010-9457-96b2f6261d69.json @@ -0,0 +1,862 @@ +[ + { + "call": { + "from": "0x0000000000000000000000000000000000040000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x52e3cb9c6b0d264b5add160d5053aa476132c22d6540d3605ad8dfb850790b1ba996569b", + "dataAbiValues": { + "methodSignature": "handleSetMaxUsersToCheck(uint256)", + "inputValues": [ + "48420708108177856443123222644862532857390746786695606854692354379525674915483" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 59698, + "blockTimestampDelay": 331757 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000020000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x62e8fd3500000000000000000000000000000000000000000000000000000000000000124ab950c09e2414c3ec444389b5281e1bdfda8ecfec5392240af8d376f3781e4f", + "dataAbiValues": { + "methodSignature": "handleOnDisputeStatusChange(uint256,uint256)", + "inputValues": [ + "18", + "33798574834817402171861624718400176195923458571787846279113220864863863578191" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 41059, + "blockTimestampDelay": 386818 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000040000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x161c7318", + "dataAbiValues": { + "methodSignature": "test_debug()", + "inputValues": [] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 2290, + "blockTimestampDelay": 360593 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000050000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xb05752f700000000000000000000000000000000000000000000000014d1120d7b160000fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa0100ffffe666666666666666666666666666666666666666666666666666666666670000000000000000000000000000000000000000000000000000000000000001", + "dataAbiValues": { + "methodSignature": "handleOnSettleBondEscalation(uint256,uint256,uint256,uint256)", + "inputValues": [ + "1500000000000000000", + "115792089237316195423570985008687907853269984665640564039457584007913129246976", + "115791912552609717585138026678937833561418401917250876477561771847293000377959", + "1" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 35958, + "blockTimestampDelay": 189815 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000080000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xd1a556550000000000000000000000000000000000000000000000000000000000093a80", + "dataAbiValues": { + "methodSignature": "handleRevokeModule(uint256)", + "inputValues": [ + "604800" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 23866, + "blockTimestampDelay": 120766 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000040000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 2, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xf60285cafffffffffffffffffffffffffffffffffffffffffffffffffffffffffffb00001f6163d95156c50021d434e3914437a6419fd074db58aba632a1165e1049633a3bf295102083f98484e4163605f3f088673969b3a53bced8eb97b90d6679470f0000000000000000000000000000000000000000000000000000000000000014", + "dataAbiValues": { + "methodSignature": "handleBondWithSender(uint256,uint256,uint256,uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913129312256", + "14193771603127510897806160380156132720630156725507671248204049821265402880826", + "27115063851078188957254873925429362151386502274781693755807630999965205612303", + "20" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 14998, + "blockTimestampDelay": 528331 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000050000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x51b295e3fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc18", + "dataAbiValues": { + "methodSignature": "handleFinalize(uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913129638936" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 23876, + "blockTimestampDelay": 327680 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000060000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x2047c4493b1bb599e967df2247a0bde0e15c19a16d95520dbb9eb811b647dd1c5a50d970bda0d1adb4d017dcf6513d613392f361bfe0847acfbe5bbfd267240bef7125cd61ebaebab2bac3aa4819e2caf8f85c718565871747241e292cc36db91888e520d873b789d8f47c6606b2d5358f69133b1dd4937cee526c90ac095190af102de2", + "dataAbiValues": { + "methodSignature": "handlePay(uint256,uint256,uint256,uint256)", + "inputValues": [ + "26735416302702836720504774004574936090245153519362370366870156849631651223920", + "85771271060700958624081931951489906403580871476691194667860842730768850560461", + "44290761310036599938494988979380191776366734083697389368196279735913800066336", + "97904029442377240838501909618781928147909909174040210570358457032104622435810" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 54628, + "blockTimestampDelay": 362209 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000020000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x9f6259e57cf479b021a816743ff5b53a6f3e5c2c247b2adb9311a44237c3858abd44df0e0000000000000000000000000000000000000000000000000000000000127118", + "dataAbiValues": { + "methodSignature": "handleResolve(uint256,uint256)", + "inputValues": [ + "56518743767933985910260346386765678340564227438862784222762849925209918856974", + "1208600" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 35385, + "blockTimestampDelay": 50692 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000050000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 2, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x0fb55087fffffffffffffffffffffffffffffffffffffffffffffffffffffff400000000", + "dataAbiValues": { + "methodSignature": "handleApproveModule(uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007861590032384" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 1, + "blockTimestampDelay": 57134 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000050000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 3, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x5356b6811b3175568497fde3c31fe069ccc7985311b0506f3b43e70969ab59ea722d2599", + "dataAbiValues": { + "methodSignature": "handleAddEBORequestCreatorFinalityModule(uint256)", + "inputValues": [ + "12299832254764069471447641000592064088020729744720327828938364394997925356953" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 0, + "blockTimestampDelay": 0 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000050000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 4, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xa44b098ea6e532d597161bf414844541b5281607abc0fedcfbe19700823ca81bfeffd5da", + "dataAbiValues": { + "methodSignature": "handleSetArbitrator(uint256)", + "inputValues": [ + "75488891688353701349182521546099519030572206284453220585196006136091846366682" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 13249, + "blockTimestampDelay": 486500 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000090000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x727899ff000000000000000000000000000000000000000000000000000000000009688043d2cc6bee2c75afbb0a2d8e686ed8d850d35e4220dab9eaaad8c1f2bbd315eb000040ba1702262dc3924484fe5b466a7207d688c9429f8aaeb64c1acd0d86e1fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff70000", + "dataAbiValues": { + "methodSignature": "handlePledge(uint256,uint256,uint256,uint256)", + "inputValues": [ + "616576", + "30677409604733962472433633135176719636373390531562919397962760076773674915307", + "446728739341497667529209047101419397582060126024847855090499938302133985", + "115792089237316195423570985008687907853269984665640564039457584007913129050112" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 28736, + "blockTimestampDelay": 576650 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000040000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 3, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x52e3cb9cfffffffffffffffffffffffffffffffffffffffffffffffff90fa4a62c4e0000", + "dataAbiValues": { + "methodSignature": "handleSetMaxUsersToCheck(uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457084007913129639936" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 14857, + "blockTimestampDelay": 578411 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000070000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x91e32c74fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8000053817ae4082823f7b7ef4f21ea8eaf2d55883b146199ee5cd9707c39a3f025ab", + "dataAbiValues": { + "methodSignature": "handleCreateRequest(uint256,bytes32)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913129115648", + "53817ae4082823f7b7ef4f21ea8eaf2d55883b146199ee5cd9707c39a3f025ab" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 23, + "blockTimestampDelay": 32 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000070000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x48a41c2700db944f945348b4c6cffca09ace97414e862af57bfe67d15e8f4ba3813ede4b3d688e69cd534e15f8ccc3765fd50e2ab30d2b740b3ff6d5865213182fe783c63b4bac2923dad06e124a6e05ae7aa5ae1b3e8edff0154acd1de94e5fe6e26732", + "dataAbiValues": { + "methodSignature": "handlePropose(uint256,uint256,uint256)", + "inputValues": [ + "387963111102058097323071002434237761651493831039740349958407635767455047243", + "27775818758715135462630212585325327395456425224261459780030383525521640620998", + "26820159805776502209708934821205059577225837408551437026198979884765463865138" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 25200, + "blockTimestampDelay": 27983 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000020000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 2, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xc0106a6cfffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7fc1800001fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff", + "dataAbiValues": { + "methodSignature": "handleCreateRequest(uint256,uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913129114648", + "220855883097298041197912187592864814478435487109452369765200775161577471" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 50518, + "blockTimestampDelay": 458752 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000050000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 5, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x9d2e6a6f000000000000000000000000000000000000000000000000000000000005d100", + "dataAbiValues": { + "methodSignature": "handleRemoveEBORequestCreatorRequestModule(uint256)", + "inputValues": [ + "381184" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 23639, + "blockTimestampDelay": 195785 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000040000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 4, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x3edc7cbd1599870fe02ecf9ec87ee76accd2d760e7eba60278962813ea05d348dc178e41", + "dataAbiValues": { + "methodSignature": "handleFinalizeRequestFinalityModule(uint256)", + "inputValues": [ + "9769829584924913960676332702159746411403704490750429962740385280098947272257" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 2685, + "blockTimestampDelay": 487244 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000080000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x0fb55087fffffffffffffffffffffffffedea0275f3411a7ad187b0108aa786a3f16bde9", + "dataAbiValues": { + "methodSignature": "handleApproveModule(uint256)", + "inputValues": [ + "115792089237316195423570985008681454588525719193607429938766044948827876015593" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 15207, + "blockTimestampDelay": 220921 + }, + { + "call": { + "from": "0x00000000000000000000000000000000000a0000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x6b125a57e286bb06cb42cc1cd185bc3f02cfcd592fc3e9b10aa00b2c2b633d09978af7a7", + "dataAbiValues": { + "methodSignature": "handleRemoveEBORequestCreatorFinalityModule(uint256)", + "inputValues": [ + "102460752096230911141037771748726806398872347580671159824723173728064937588647" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 12095, + "blockTimestampDelay": 12289 + }, + { + "call": { + "from": "0x00000000000000000000000000000000000a0000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x161c7318", + "dataAbiValues": { + "methodSignature": "test_debug()", + "inputValues": [] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 15263, + "blockTimestampDelay": 532218 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000040000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 5, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xec5bf215fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe", + "dataAbiValues": { + "methodSignature": "handleFinalizeRequestResponseModule(uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913129639934" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 66, + "blockTimestampDelay": 100 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000080000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 2, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x3edc7cbd0000000000000000000000000000000000000000000000000000000000069780", + "dataAbiValues": { + "methodSignature": "handleFinalizeRequestFinalityModule(uint256)", + "inputValues": [ + "432000" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 25275, + "blockTimestampDelay": 265204 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000070000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 2, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xf60285ca0000000000000000000000000000000000000000000000000000000000090000fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0000fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff951803e9cbc6e25eef9741c5aecc543fdfd3b7843cdd81d009791c912b1ac18ca3bc3", + "dataAbiValues": { + "methodSignature": "handleBondWithSender(uint256,uint256,uint256,uint256)", + "inputValues": [ + "589824", + "115792089237316195423570985008687907853269984665640564039457584007913129508864", + "115792089237316195423570985008687907853269984665640564039457584007913129202048", + "28320325252170137216432823826258230770014552748113962706280014781562200144835" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 32288, + "blockTimestampDelay": 531907 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000040000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 6, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xefe223c59c2553129e7851cb256c99b06c7f8dc81f210c90a2e2611259abc401e81f07540000000000000000000000000000000000000000000000000000000000000001", + "dataAbiValues": { + "methodSignature": "handleDisputeResponseOracle(uint256,uint256)", + "inputValues": [ + "70626751067301019089441572534217019449535130321119175666564383155547736573780", + "1" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 54625, + "blockTimestampDelay": 259200 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000030000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x864e2da9883fe7612b6bb87b26cae4dca32375d45e122ab623e5fabce941d7b88e897fa5fffffffffffffffffffffffffffffffffffffffffffffff90fa4a62c4e00000041076a70cffc1a4eeb895e1e3bd1eea004e1c563d9647015c78c3ec8bdf54455", + "dataAbiValues": { + "methodSignature": "handleArbitrateDispute(uint256,uint256,uint256)", + "inputValues": [ + "61627455695498944603673940108566635137976242750181887122097763359817575530405", + "115792089237316195423570985008687907853269984665640564039329584007913129639936", + "29413437713895903893487278743213882333056396597315056022550118936518019335253" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 51381, + "blockTimestampDelay": 259200 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000050000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 6, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xd51b326a00000000000000000000000000000000000000000000000000000000000003e5fffffffffffffffffffffffffffffffffffffffffffffffff90fa4a62c4e00000000000000000000000000000000000000000000000000000000000000050000", + "dataAbiValues": { + "methodSignature": "handlePledgeForDispute(uint256,uint256,uint256)", + "inputValues": [ + "997", + "115792089237316195423570985008687907853269984665640564039457084007913129639936", + "327680" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 18831, + "blockTimestampDelay": 48188 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000080000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 3, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xc0106a6cf52979d6557e7dffb91b5c3d89fc589d6d825e7304f69a52751c44508ab494c3fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff70000", + "dataAbiValues": { + "methodSignature": "handleCreateRequest(uint256,uint256)", + "inputValues": [ + "110889929522296307995270791263779988265523562999353831634872636959969779160259", + "115792089237316195423570985008687907853269984665640564039457584007913129050112" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 18, + "blockTimestampDelay": 196608 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000060000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x94ae6f8c06d71e3fa7df5670060e7ae6bfb0fef56e250e6caae1d93f62f15d384dd79058", + "dataAbiValues": { + "methodSignature": "handleValidateArbitrator(uint256)", + "inputValues": [ + "3093957978973023196079698570753322494102707684193970199785237023181952749656" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 45163, + "blockTimestampDelay": 193409 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000020000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 3, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x5543846522791a89d6fc1377bd19a2942e57d92b97cc6684453067dfb865a791d2538da6000000000000000000000000e3c48138f476eb09478b5d32fa946e61fe5f12e8", + "dataAbiValues": { + "methodSignature": "handleSetResolutionModuleData(uint256,(address))", + "inputValues": [ + "15592608508227480150485868850753978432760407300713696700708765193096882523558", + { + "arbitrator": "0xe3c48138F476Eb09478b5D32FA946E61fE5F12e8" + } + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 3666, + "blockTimestampDelay": 310056 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000060000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 2, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xdb106acea2d5173adb93a2cd1033b5f52681bd0614b47ae4535d63b77f6c639133ca2c49000000000000000000000000000000000000000000000000000000000000000accd8e89f1509f48130de39cf5bad897268280e26e0d77bbeb894829a9094d406fef738389e245691128a28af2582e3bf7008a41611638738a61546690c37f95f", + "dataAbiValues": { + "methodSignature": "handleSlash(uint256,uint256,uint256,uint256)", + "inputValues": [ + "73651180222253959435445851094553484306349010260885383557615430474495169277001", + "10", + "92655065570978103145219371427434907985144045715846383103199450179683908637702", + "115324262789356647940193411987118065973685194399929380631474822550484470462815" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 43822, + "blockTimestampDelay": 379194 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000010000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xc82f34f90a1c5127f33f84ac236f164e5943f332c200323385ba846740a1f92876cf5cdc0000000000000000000000000000000000000000000000000000000000000014", + "dataAbiValues": { + "methodSignature": "handleSettleBondEscalation(uint256,uint256)", + "inputValues": [ + "4573160322155485468092691711528209900478228879240914282338054668139686223068", + "20" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 28361, + "blockTimestampDelay": 423157 + }, + { + "call": { + "from": "0x00000000000000000000000000000000000a0000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 2, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xc0106a6cbfc3b0ce22d27a5161f7cb0e93bac74fec1d3119e554fbdc013a6ba1802ab50aeab9325edfd6b15693c964f3737ba9e68630d71953d76525d7cfd0f062d4ab85", + "dataAbiValues": { + "methodSignature": "handleCreateRequest(uint256,uint256)", + "inputValues": [ + "86737509521808917159111158607442063703291470172791970792565090962547296351498", + "106168420920593622728073515457652893967459017093322482730963636595159293275013" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 13, + "blockTimestampDelay": 32 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000010000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x62e8fd35000000000000000000000000000000000000000000000000000000000000001cfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0000", + "dataAbiValues": { + "methodSignature": "handleOnDisputeStatusChange(uint256,uint256)", + "inputValues": [ + "28", + "115792089237316195423570985008687907853269984665640564039457584007913129377792" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 46292, + "blockTimestampDelay": 390579 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000060000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 3, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xc5c17157fe265ad4da14535a720baa0713c6d6be4b3fd0574f9854514a59d3351509881e", + "dataAbiValues": { + "methodSignature": "handleAddChain(uint256)", + "inputValues": [ + "114955230624257586888150299074240011223672725671584890060570375544722550261790" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 44387, + "blockTimestampDelay": 414636 + } +] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/call_sequences/immutable/1731277803621764000-125ef6cd-6d4b-4800-ad62-0f4317b13564.json b/test/invariants/fuzz/corpus/call_sequences/immutable/1731277803621764000-125ef6cd-6d4b-4800-ad62-0f4317b13564.json new file mode 100755 index 0000000..f04a2ea --- /dev/null +++ b/test/invariants/fuzz/corpus/call_sequences/immutable/1731277803621764000-125ef6cd-6d4b-4800-ad62-0f4317b13564.json @@ -0,0 +1,1015 @@ +[ + { + "call": { + "from": "0x0000000000000000000000000000000000030000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x13a8b8040000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000034000000000000000000000000000000000000000000000000000000000000000170000000000000000000000000000000000000000000000000000000000d2f000ffffc0000000000000000000000000000000000000000000000000000000000181dc31bc03ad9bc8a966de91dfc8c49b929f6d5fd44a9c22a7f5bb37cebfc106ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed8ee8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6c5805bc2cfc37067e378b4feef3f3411136744d0b2851c161c601669654cf27bfe6100000000000000000000000000000000000000000000000000000000000000006cd40d93882a844c2becf361c7579664aef7a6ef6e8b79d6bf6f6f76426e9b14039e696f94058cfd274de97421f65916ac135f4d55083d357b9c1f34820c9376000000000000000000000000000000000000000000000000000000000003fffe000000000000000000000000000000000000000000000000000000000000000167e6a528e0202cf23a36eacf513eee303475d3e4c983b2ae2d616b11c440f70aaa625827d77aa233df42016988900477ead582090357ec011f404ff1f0aa321bfffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9686c2d73382b1edfa908bcaeb6b9ac0073f469887a9150c80831642e47e35a614c1bffffffffffffffffffffffffffffffffffffffffffffe48e5eb33a3a7f000000104a13a90c13653470268ea78892361e7e91e706d859aabaaf45ddd18c956640809a37cc7335cdf29b7d988dc8c05e2c1899ad1795364e6fa667088b49487472000000000000000000000000000000000000000000000000000000000000fff6fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b80756993dc4be6ecf1e46c48d6f9cae9255a8b46ef956a3d85442a5f41f70ecf93000000000000000000000000000000000000000000000000000000000076a700a77a4c48695a0407441e86efc633aee092d2ebd99c87fdfeebcd904fe33e086d000000000000000000000000000000000000000000000000000000000000001d563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd0633ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed69586530127b846a0115a3e561f49781eea70d4bcc4884906080e6adb068ff5fe13953f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b4498bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef328d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad82082401f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade0554594d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e05648dd821e471bd9a22c1f612735d2d7244c13832c4b0f28993ecafc561bfc52ae4f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cbba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c33f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8fd276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f6617237058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf259a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe2665f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a219fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb", + "dataAbiValues": { + "methodSignature": "handleCreateRequests(uint256[],bytes32[])", + "inputValues": [ + [ + "13824000", + "115791647525550000827488589184312722123641027794666345134718053606362806484993", + "58737407075920930096693749632210245280794127876199190949253348332199714210054", + "115792089237316195423570985008687907853269984665640564039457584007913128431336", + "115792089237316195423570985008687907853269984665640564039457584007913129035136", + "41504671482165347584846103287222174319130579613222615088745194098566077611617", + "0", + "49224452924880417829398231270379785502530069722970149981823851608145893694228", + "1636828073493779560152621491074002847609709387720111137750911676859097584502", + "262142", + "1", + "46995738119123743123282428161140493004285235666026628953647859202250191730442", + "77066943699312596523560233185714836616924754343478096130098486630426813805083", + "115792089237316195423570985008687907853269984665640564039457584007913129207916", + "20557653259021005890251421269967042420225955023564768794272035576696478452763", + "115792089237316195423570985008687907853269984665640563909857584007913129639936", + "7367887950809164700104084563884591449786965425123545364576065505479275931200", + "58168524174645209900719041489934173752247098791866719219864340874379345294450", + "65526", + "115792089237316195423570985008687907853269984665640564039457584007913129380736", + "53107142721938561923251317745913031228477959801596843755970727929974933606291", + "7776000", + "75752327540241786815348607290604056680494387521335977257182003214564422715501" + ], + [ + "563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe", + "27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a", + "9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd06", + "33ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865", + "30127b846a0115a3e561f49781eea70d4bcc4884906080e6adb068ff5fe13953", + "f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1", + "c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b44", + "98bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01", + "108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef32", + "8d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea", + "94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad8208240", + "1f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade05545", + "94d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056", + "48dd821e471bd9a22c1f612735d2d7244c13832c4b0f28993ecafc561bfc52ae", + "4f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa", + "9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874", + "ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cb", + "ba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c3", + "3f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8f", + "d276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99", + "fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce", + "3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb", + "4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f661723", + "7058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78", + "994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25", + "9a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe26", + "65f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a2", + "19fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c", + "51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb" + ] + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 21265, + "blockTimestampDelay": 360627 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000050000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x91e32c74e0613faa5f896b73380078af3c1ee8605eec949aaf9c8f422f264f3de916b58d4b3032484de1fb4c70c2a705584283a0288158e7d201a2526966e049d49acde5", + "dataAbiValues": { + "methodSignature": "handleCreateRequest(uint256,bytes32)", + "inputValues": [ + "101489901651207154401933345705911812335881908306802664469868899807780031346061", + "4b3032484de1fb4c70c2a705584283a0288158e7d201a2526966e049d49acde5" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 23884, + "blockTimestampDelay": 297676 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000080000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x62e8fd350000000000000000000000000000000000000000000000000000000000000000f3e0a4b7d4b9f146c330bf4206493b9644386108e6fb9dbd1ec9e9631656b911", + "dataAbiValues": { + "methodSignature": "handleOnDisputeStatusChange(uint256,uint256)", + "inputValues": [ + "0", + "110308932790717902341334723675742636402013152744066319296234386176011142609169" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 6, + "blockTimestampDelay": 447025 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000060000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xb05752f7000000000000000000000000000000000000000000000000000000000083d600ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff3cb74a490a6b235de22fdba8b11c89c1a75ba52781eaa376b8904d607971473952c39b6854fd2443ddec68f9b401b12b2c3233b939e902ba2cc4b78fc21880c9", + "dataAbiValues": { + "methodSignature": "handleOnSettleBondEscalation(uint256,uint256,uint256,uint256)", + "inputValues": [ + "8640000", + "115792089237316195423570985008687907853269984665640564039457584007913129639935", + "27462616626253393834172180586494418890954476283257859666307992469208736810809", + "37435261344928203651121242557808094327910915308413204917974281668150859169993" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 20576, + "blockTimestampDelay": 441138 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000050000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x88b05f29000000000000000000000000000000000000000000000000000000000009fffe000000000000000000000000c43801cd359a82757df4289878ce85539b0fcade000000000000000000000000000000000000000000000000000000000000006434998e76fdd43c55ad90e4a35d96044a3ebe674f5dfa103757d366102ca9f26c00000000000000000000000000000000000000000000000000000000000001000e694122e842adea5277bbbdab0b14091c2583d39824533976734442dab724e2195f41f8193b8fdb454e4c675da554f0f9409064f42db392c9ab9d5e83fad976fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe", + "dataAbiValues": { + "methodSignature": "handleSetDisputeModuleData(uint256,(address,address,uint256,uint256,uint256,uint256,uint256))", + "inputValues": [ + "655358", + { + "accountingExtension": "0xc43801Cd359A82757Df4289878CE85539B0fcAdE", + "bondEscalationDeadline": "6518348376578069825047353184871606747778953752910129049968505915388248663266", + "bondSize": "23791578983227214469447533216306682837879210004146422934780693486186688803436", + "bondToken": "0x0000000000000000000000000000000000000064", + "disputeWindow": "115792089237316195423570985008687907853269984665640564039457584007913129639934", + "maxNumberOfEscalations": "256", + "tyingBuffer": "11476126987972230713107770724661081842991657660629818104854040000448595417462" + } + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 1, + "blockTimestampDelay": 2 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000020000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xf84d6dfc00000000000000000000000000000000000000000000000006f05b59d3ad0000", + "dataAbiValues": { + "methodSignature": "handleAddEBORequestCreatorRequestModule(uint256)", + "inputValues": [ + "499999999999672320" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 12976, + "blockTimestampDelay": 472659 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000010000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x4741f6dcc0e4d0eee56b7f10aa9aefe04c4f650af62be8b532d57f12aa7ac5b950884c3a", + "dataAbiValues": { + "methodSignature": "handleSetFinalityModuleData(uint256)", + "inputValues": [ + "87248350062624793638699702709121271409886681841563726628967995216176035155002" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 29334, + "blockTimestampDelay": 296740 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000020000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x5356b681bebfb0dc367f431af08687c084e9c844567359d9793a12e0818425b7df16682a", + "dataAbiValues": { + "methodSignature": "handleAddEBORequestCreatorFinalityModule(uint256)", + "inputValues": [ + "86278129664477803463997658766424154744739678303000950581784606393529462581290" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 3566, + "blockTimestampDelay": 274227 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000040000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xaa1a5bd9ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffee0000000000000000000000000000000000000000000000000000000000000001", + "dataAbiValues": { + "methodSignature": "handleResolveDispute(uint256,uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913129639918", + "1" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 38128, + "blockTimestampDelay": 65536 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000080000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x864e2da9000000000000000000000000000000000000000000000000000000000004ff00bfa47f0f3034e3c5b418dac09c339f53fbdf69ff4b147e91a872420a6f7ed6e20000000000000000000000000000000000000000000000000000000000040000", + "dataAbiValues": { + "methodSignature": "handleArbitrateDispute(uint256,uint256,uint256)", + "inputValues": [ + "327424", + "86682393929289525193494153568452559356866521755790133919226203303415723775714", + "262144" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 28049, + "blockTimestampDelay": 147436 + }, + { + "call": { + "from": "0x00000000000000000000000000000000000a0000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x5356b681000000000000000000000000000000000000000000000000000000000000000a", + "dataAbiValues": { + "methodSignature": "handleAddEBORequestCreatorFinalityModule(uint256)", + "inputValues": [ + "10" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 21572, + "blockTimestampDelay": 167216 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000010000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xf84d6dfc87e2e521510210bb9f1efbff2cd79d7cd5675b7d503c446b0017b6bbcd5d492f", + "dataAbiValues": { + "methodSignature": "handleAddEBORequestCreatorRequestModule(uint256)", + "inputValues": [ + "61463123393503677610123184398943346662098674670775488627974437033537892600111" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 1005, + "blockTimestampDelay": 436171 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000090000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xec5bf215564402b8b5f207f4eed188f382ae7d299d56800cfcdbfbdd380f5d111164d7f3", + "dataAbiValues": { + "methodSignature": "handleFinalizeRequestResponseModule(uint256)", + "inputValues": [ + "39019069361849810475124568581956515548187837436962789536769612725416477644787" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 29390, + "blockTimestampDelay": 405151 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000050000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 2, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x2047c44964af5d348042810c6713f567b2ae0a1329f9a41a31dd65689466b80ed86a98102cf683f24338dbd0d0b4e969d552adaa1cb2ba854e7981b39db6aa7a4eb4733a4406bfd9ab92f3b803843d5137445ebcd4035dd79b752232dceb1e4a553a7fc90bc23f646eb8405f9865cad125e2b67c4cb5be6b00c8cbfeb79ac596e5fee34b", + "dataAbiValues": { + "methodSignature": "handlePay(uint256,uint256,uint256,uint256)", + "inputValues": [ + "45541126372497665840906508174782686333425760491760126897278402501345182128144", + "20337320375757040483596893633798835084481932414588544316829844888167896085306", + "30769198887980302917418981166398434808730110615619342329624446156192224018377", + "5318647182657600089902655701709793773207260177110878862668649309798760637259" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 23482, + "blockTimestampDelay": 51930 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000040000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x161c7318", + "dataAbiValues": { + "methodSignature": "test_debug()", + "inputValues": [] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 0, + "blockTimestampDelay": 0 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000070000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xf84d6dfcf6cf88d9f37a86121908cb039be9cc51a5103895c84fc649276df49538afcbad", + "dataAbiValues": { + "methodSignature": "handleAddEBORequestCreatorRequestModule(uint256)", + "inputValues": [ + "111635642607345537592182708073224837457339443516741764226233323948854559624109" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 23896, + "blockTimestampDelay": 360604 + }, + { + "call": { + "from": "0x00000000000000000000000000000000000a0000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xd1a55655000000000000000000000000000000000000000000000000000000000004839c", + "dataAbiValues": { + "methodSignature": "handleRevokeModule(uint256)", + "inputValues": [ + "295836" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 55339, + "blockTimestampDelay": 85204 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000090000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xefe223c58670cef9c731503eed4776ba6fad6b3696fa16be2eb18b465fbafeeaa0fe7be70000000000000000000000000000000000000000000000000000000000000064", + "dataAbiValues": { + "methodSignature": "handleDisputeResponseOracle(uint256,uint256)", + "inputValues": [ + "60809237075164466486500268418905379284411433772615587007980463004965951929319", + "100" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 38872, + "blockTimestampDelay": 360628 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000070000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x3c26dcf8a5a8486b947649db116db64c5c45ca42e6e1d986fed7026bd9ac1d8640310d33", + "dataAbiValues": { + "methodSignature": "handleSetEpochManager(uint256)", + "inputValues": [ + "74928950149207865187656931027679893325164490827615215400216718609192626228531" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 21, + "blockTimestampDelay": 232191 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000020000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 2, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x727899ff0000000000000000000000000000000000000000000000000000000000015180001d4d2f346ae4815c9e9f03f21e3deda069706413924e409fa7504059d19f8a00000000000000000000000000000000000000000000000000000000001061800000000000000000000000000000000000000000000000000000000000000000", + "dataAbiValues": { + "methodSignature": "handlePledge(uint256,uint256,uint256,uint256)", + "inputValues": [ + "86400", + "51771271984981606474845360496175347553777726680427752644378601650631319434", + "1073536", + "0" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 0, + "blockTimestampDelay": 0 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000040000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 2, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x0692ea7e00000000000000000000000000000000000000000000000006f05b59d3b20000", + "dataAbiValues": { + "methodSignature": "handleRemoveChain(uint256)", + "inputValues": [ + "500000000000000000" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 7308, + "blockTimestampDelay": 572210 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000080000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 2, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xf60285ca0000000000000000000000000000000000000000000000000000001c00000000c55ec4bc0d08a528b0c66dda1e983ee7a47fab9c2c7be0189c7f1615408b21090c446e0f4b256cc52cd8a8e7d04a641b919117ba4e8eec18cfc1d6bbef455c1afffffffffffffffffffffffffffffffffffffffffffffffffffffffffff96880", + "dataAbiValues": { + "methodSignature": "handleBondWithSender(uint256,uint256,uint256,uint256)", + "inputValues": [ + "120259084288", + "89273072607119207212350079296024751198400000134903763911230695693815852507401", + "5548659387815291343462229641472196329432108891134398921647704413649710177306", + "115792089237316195423570985008687907853269984665640564039457584007913129207936" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 3666, + "blockTimestampDelay": 328552 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000090000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 2, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xf60285cafffffffffffffffffffffffffffffffffffffffffffffffffffffffffffb000025f25d7faafc93fb72865fa242af64b472ba83cff86d93b0533a903d41979d49a118576f8a1093f26ae33d6729cf5cc25c7581d9765b4403dbe286498c516c51fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffefe", + "dataAbiValues": { + "methodSignature": "handleBondWithSender(uint256,uint256,uint256,uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913129312256", + "17163797691587697797154778947709945459459813549491742892821231886739673947465", + "72865376410486736594847893277442722029628711678849188712496784814318445227089", + "115792089237316195423570985008687907853269984665640564039457584007913129639678" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 16097, + "blockTimestampDelay": 32945 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000060000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x1c6850cf935db8f217ab066b096d3e73a0d7b001fc4ecd8978a23860b95e790ce003170a4eaae94e9868a2f0db87614a7dec2d16319e0ba326a536f6f1691bb8e96bf90f0b832e69b37aa7335b293d4fa58406790362547ef49f09345b753dfa24964850", + "dataAbiValues": { + "methodSignature": "handleUpdateDisputeStatus(uint256,uint256,uint256)", + "inputValues": [ + "66655581966891990089433207462395406981090073962288009560809406913154795116298", + "35582376416332259156222282743710371541531294308094913458341281816449259403535", + "5207218629929607814724254599342746391010434197465047907333283290976655657040" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 60434, + "blockTimestampDelay": 109697 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000040000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 3, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x94ae6f8c0000000000000000000000007109709ecfa91a80626ff3989d68f67f5b1dd12d", + "dataAbiValues": { + "methodSignature": "handleValidateArbitrator(uint256)", + "inputValues": [ + "645326474426547203313410069153905908525362434349" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 0, + "blockTimestampDelay": 604799 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000050000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 3, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x6b125a57fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff60000", + "dataAbiValues": { + "methodSignature": "handleRemoveEBORequestCreatorFinalityModule(uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913128984576" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 45581, + "blockTimestampDelay": 117423 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000070000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 2, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x9d2e6a6fc6539b7a2476ae67ba4b976f82611916e58f7b5d2430c83158095390cd02239e", + "dataAbiValues": { + "methodSignature": "handleRemoveEBORequestCreatorRequestModule(uint256)", + "inputValues": [ + "89705665389500661869876865816500895748106493083156214106851103557324275590046" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 41808, + "blockTimestampDelay": 450845 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000050000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 4, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x0692ea7effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff", + "dataAbiValues": { + "methodSignature": "handleRemoveChain(uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913129639935" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 2372, + "blockTimestampDelay": 234681 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000080000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 3, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xd1a556550000000000000000000000000000000000000000000000000000000000000001", + "dataAbiValues": { + "methodSignature": "handleRevokeModule(uint256)", + "inputValues": [ + "1" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 50550, + "blockTimestampDelay": 229553 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000020000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 3, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xf4fbbf9ba1fc4eba964b9a2c2032d06ec565d5292cf250b147e734e6d992d5d0bda436f600000000000000000000000000000000000000000000000000000000000697806bf391284d4660fc77fbe4592328a2f0997562e4f12cf27795f43d0b0fc3bc7a", + "dataAbiValues": { + "methodSignature": "handleBond(uint256,uint256,uint256)", + "inputValues": [ + "73268157448823115839328750088743753530156494765398712182649313036506897856246", + "432000", + "48827820474906800904865104890106511812906050912626598573180323282500481956986" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 0, + "blockTimestampDelay": 1 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000090000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 3, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xdb106ace6d38c114215bf8f8b3ad2ed58065d5cc3089e62f5be34c18288c135f3f9724a20000000000000000000000000000000000000000000000000000000000069780fffffffffffffffffffffffffffffffffffffffffffffffff90fa4a62c4e00006d9d66ca4ec2ea144207d592952b27c55e72f77602616bdfe3178ceccfefbe99", + "dataAbiValues": { + "methodSignature": "handleSlash(uint256,uint256,uint256,uint256)", + "inputValues": [ + "49402376510960630712476074985720877101324288030739208582895764419073394812066", + "432000", + "115792089237316195423570985008687907853269984665640564039457084007913129639936", + "49580204917077383946213464068067879479747000240903333733565655861027448798873" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 27322, + "blockTimestampDelay": 32945 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000050000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 5, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x94c9ca03", + "dataAbiValues": { + "methodSignature": "handleConfirmCouncil()", + "inputValues": [] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 1, + "blockTimestampDelay": 12 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000090000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 4, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x0692ea7e0000000000000000000000000000000000000000000000000000000000000000", + "dataAbiValues": { + "methodSignature": "handleRemoveChain(uint256)", + "inputValues": [ + "0" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 29896, + "blockTimestampDelay": 295089 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000080000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 4, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x8f790139efba9b2834c74d709519853c0c661cced3f6e6bb57034f06a1b09ebb79f36d9c", + "dataAbiValues": { + "methodSignature": "handleReleaseUnutilizedResponse(uint256)", + "inputValues": [ + "108432475220089292989352031551556088320023937241642286584901681212614704852380" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 0, + "blockTimestampDelay": 0 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000030000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 2, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xa44b098e23efefd49377cb652b2efe8f6107693a85f268401d3f695de47b13e417a59903", + "dataAbiValues": { + "methodSignature": "handleSetArbitrator(uint256)", + "inputValues": [ + "16254881397312121307844917357848000937401516541955530653246186212852626725123" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 4534, + "blockTimestampDelay": 578608 + }, + { + "call": { + "from": "0x00000000000000000000000000000000000a0000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 2, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x91e32c7461c4f89d311c5622d26ee473805d801e1e4be30bf8050ec8c525ddf1cf37acbe0ead82a3944ed45e30d3e999e0e48601607b422425d39a985ea42d26d3b6e9c4", + "dataAbiValues": { + "methodSignature": "handleCreateRequest(uint256,bytes32)", + "inputValues": [ + "44222364208250993042194123695458820220229905873588662451847890140503268109502", + "0ead82a3944ed45e30d3e999e0e48601607b422425d39a985ea42d26d3b6e9c4" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 0, + "blockTimestampDelay": 0 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000010000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 2, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x1c6850cf87ae5d14ee2351ca102989d785b4b7efe087fc5a1b60c34e0be145f7b943be8ffffffffffffffffffffffffffffffffffffffffffffffffffbd62f96e762000000000000000000000000000000000000000000000000000000000000000d2e9c", + "dataAbiValues": { + "methodSignature": "handleUpdateDisputeStatus(uint256,uint256,uint256)", + "inputValues": [ + "61370308374700441181536886680791943808671525212080209904364978290829998407311", + "115792089237316195423570985008687907853269984665640564039457284007913129639936", + "863900" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 48892, + "blockTimestampDelay": 295089 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000010000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 3, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x3edc7cbdb121a3097a91b0a9dd08824bfabe574af41d35d62d9a5fec850f5c6a64dc8da6", + "dataAbiValues": { + "methodSignature": "handleFinalizeRequestFinalityModule(uint256)", + "inputValues": [ + "80118805392577917302320307777298810080793910322434011470484002932687271398822" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 6262, + "blockTimestampDelay": 355344 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000070000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 3, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xf6424e9b2c6c78cd5e252239ca5f659d6a33fc535923c6c3f5fe9b5ae5c441f67c10c683fffffffffffffffffffffffffffffffffffffffffffffffffffffff422800000fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe", + "dataAbiValues": { + "methodSignature": "handleProposeResponse(uint256,uint256,uint256)", + "inputValues": [ + "20093418566925099562206972483095283711082263828977174359548316414600652310147", + "115792089237316195423570985008687907853269984665640564039457584007862168846336", + "115792089237316195423570985008687907853269984665640564039457584007913129639934" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 54369, + "blockTimestampDelay": 360627 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000090000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 5, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x4741f6dcf2ec8f248161ff659b9a00fc126511299241c5b1d2eab9067b406b43e6e9d2cd", + "dataAbiValues": { + "methodSignature": "handleSetFinalityModuleData(uint256)", + "inputValues": [ + "109877673198349435273933557980761836191817416087000044001744188979781359489741" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 49682, + "blockTimestampDelay": 571210 + } +] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803567787000-ab0f8e03-6145-4021-98bc-bc4414e1edac.json b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803567787000-ab0f8e03-6145-4021-98bc-bc4414e1edac.json new file mode 100755 index 0000000..31cf38f --- /dev/null +++ b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803567787000-ab0f8e03-6145-4021-98bc-bc4414e1edac.json @@ -0,0 +1,80 @@ +[ + { + "call": { + "from": "0x0000000000000000000000000000000000030000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x13a8b8040000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000034000000000000000000000000000000000000000000000000000000000000000170000000000000000000000000000000000000000000000000000000000d2f000ffffc0000000000000000000000000000000000000000000000000000000000181dc31bc03ad9bc8a966de91dfc8c49b929f6d5fd44a9c22a7f5bb37cebfc106ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed8ee8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b825bc2cfc37067e378b4feef3f3411136744d0b2851c161c601669654cf27bfe6100000000000000000000000000000000000000000000000000000000000000006cd40d93882a844c2becf361c7579664aef7a6ef6e8b79d6bf6f6f76426e9b14039e696f94058cfd274de97421f65916ac135f4d55083d357b9c1f34820c9376000000000000000000000000000000000000000000000000000000000003fffe000000000000000000000000000000000000000000000000000000000000000167e6a528e0202cf23a36eacf513eee303475d3e4c983b2ae2d616b11c440f70a4ac07813439b9213b22d4d86340307a2982de60c241368ad288dfea742b6eb5efffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9686c2d73382b1edfa908bcaeb6b9ac0073f469887a9150c80831642e47e35a614c1bffffffffffffffffffffffffffffffffffffffffffffe48e5eb33a3a7f000000104a13a90c13653470268ea78892361e7e91e706d859aabaaf45ddd18c956640809a37cc7335cdf29b7d988dc8c05e2c1899ad1795364e6fa667088b49487472000000000000000000000000000000000000000000000000000000000000fff6fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b80756993dc4be6ecf1e46c48d6f9cae9255a8b46ef956a3d85442a5f41f70ecf93000000000000000000000000000000000000000000000000000000000076a700a77a4c48695a0407441e86efc633aee092d2ebd99c87fdfeebcd904fe33e086d000000000000000000000000000000000000000000000000000000000000001d563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd0633ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed6958658aad3329b56f2f98187bbaed7351982ae06a00b9382adcb723b8b393d1f5e2def8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b4498bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef328d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad82082401f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade0554594d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae962914f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cbba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c33f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8fd276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f6617237058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf259a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe2665f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a219fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb", + "dataAbiValues": { + "methodSignature": "handleCreateRequests(uint256[],bytes32[])", + "inputValues": [ + [ + "13824000", + "115791647525550000827488589184312722123641027794666345134718053606362806484993", + "58737407075920930096693749632210245280794127876199190949253348332199714210054", + "115792089237316195423570985008687907853269984665640564039457584007913128431336", + "115792089237316195423570985008687907853269984665640564039457584007913129380738", + "41504671482165347584846103287222174319130579613222615088745194098566077611617", + "0", + "49224452924880417829398231270379785502530069722970149981823851608145893694228", + "1636828073493779560152621491074002847609709387720111137750911676859097584502", + "262142", + "1", + "46995738119123743123282428161140493004285235666026628953647859202250191730442", + "33811214160519685654400438720767591502827986970858420988841187408488311483230", + "115792089237316195423570985008687907853269984665640564039457584007913129207916", + "20557653259021005890251421269967042420225955023564768794272035576696478452763", + "115792089237316195423570985008687907853269984665640563909857584007913129639936", + "7367887950809164700104084563884591449786965425123545364576065505479275931200", + "58168524174645209900719041489934173752247098791866719219864340874379345294450", + "65526", + "115792089237316195423570985008687907853269984665640564039457584007913129380736", + "53107142721938561923251317745913031228477959801596843755970727929974933606291", + "7776000", + "75752327540241786815348607290604056680494387521335977257182003214564422715501" + ], + [ + "563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe", + "27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a", + "9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd06", + "33ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865", + "8aad3329b56f2f98187bbaed7351982ae06a00b9382adcb723b8b393d1f5e2de", + "f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1", + "c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b44", + "98bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01", + "108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef32", + "8d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea", + "94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad8208240", + "1f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade05545", + "94d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056", + "cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae96291", + "4f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa", + "9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874", + "ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cb", + "ba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c3", + "3f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8f", + "d276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99", + "fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce", + "3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb", + "4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f661723", + "7058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78", + "994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25", + "9a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe26", + "65f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a2", + "19fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c", + "51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb" + ] + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 21265, + "blockTimestampDelay": 360627 + } +] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803569568000-2b517ff1-9d51-4eb3-9295-59aef5edfe82.json b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803569568000-2b517ff1-9d51-4eb3-9295-59aef5edfe82.json new file mode 100755 index 0000000..2b53cfb --- /dev/null +++ b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803569568000-2b517ff1-9d51-4eb3-9295-59aef5edfe82.json @@ -0,0 +1,25 @@ +[ + { + "call": { + "from": "0x0000000000000000000000000000000000040000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x52e3cb9c6b0d264b5add160d5053aa476132c22d6540d3605ad8dfb850790b1ba996569b", + "dataAbiValues": { + "methodSignature": "handleSetMaxUsersToCheck(uint256)", + "inputValues": [ + "48420708108177856443123222644862532857390746786695606854692354379525674915483" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 59698, + "blockTimestampDelay": 331757 + } +] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803569770000-871a08c3-b8b7-48ec-b0f3-8f40a4b63667.json b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803569770000-871a08c3-b8b7-48ec-b0f3-8f40a4b63667.json new file mode 100755 index 0000000..4c27a18 --- /dev/null +++ b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803569770000-871a08c3-b8b7-48ec-b0f3-8f40a4b63667.json @@ -0,0 +1,101 @@ +[ + { + "call": { + "from": "0x0000000000000000000000000000000000030000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x13a8b8040000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000034000000000000000000000000000000000000000000000000000000000000000170000000000000000000000000000000000000000000000000000000000d2f000ffffc0000000000000000000000000000000000000000000000000000000000181dc31bc03ad9bc8a966de91dfc8c49b929f6d5fd44a9c22a7f5bb37cebfc106ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed8ee8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b825bc2cfc37067e378b4feef3f3411136744d0b2851c161c601669654cf27bfe610000000000000000000000000000000000000000000000000000000000000000578750b27e877a957d33dc50d914b1caf972efffa4bb78b85e66dd813a864ca4039e696f94058cfd274de97421f65916ac135f4d55083d357b9c1f34820c9376000000000000000000000000000000000000000000000000000000000003fffe000000000000000000000000000000000000000000000000000000000000000167e6a528e0202cf23a36eacf513eee303475d3e4c983b2ae2d616b11c440f70a4ac07813439b9213b22d4d86340307a2982de60c241368ad288dfea742b6eb5efffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9686c2d73382b1edfa908bcaeb6b9ac0073f469887a9150c80831642e47e35a614c1bffffffffffffffffffffffffffffffffffffffffffffe48e5eb33a3a7f000000104a13a90c13653470268ea78892361e7e91e706d859aabaaf45ddd18c956640809a37cc7335cdf29b7d988dc8c05e2c1899ad1795364e6fa667088b49487472000000000000000000000000000000000000000000000000000000000000fff6fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b800000000000000000000000000000000000000000000000000329c51ac594cf93000000000000000000000000000000000000000000000000000000000076a700a77a4c48695a0407441e86efc633aee092d2ebd99c87fdfeebcd904fe33e086d000000000000000000000000000000000000000000000000000000000000001d563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd0633ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865d5d6866ffb684491364a0853403f689144f5664f5d50de1b1a30d683ff29f21bf8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b4498bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef328d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad82082401f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade0554594d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae96291d8c581a922d52cd477658fcc2e2ca1f954f274ed2cd833a98e6d1d4455581f9d9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cbba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c33f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8fd276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f6617237058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf259a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe2665f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a219fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb", + "dataAbiValues": { + "methodSignature": "handleCreateRequests(uint256[],bytes32[])", + "inputValues": [ + [ + "13824000", + "115791647525550000827488589184312722123641027794666345134718053606362806484993", + "58737407075920930096693749632210245280794127876199190949253348332199714210054", + "115792089237316195423570985008687907853269984665640564039457584007913128431336", + "115792089237316195423570985008687907853269984665640564039457584007913129380738", + "41504671482165347584846103287222174319130579613222615088745194098566077611617", + "0", + "39590299132392589184737138068833640165131826767556478003143025413084726840484", + "1636828073493779560152621491074002847609709387720111137750911676859097584502", + "262142", + "1", + "46995738119123743123282428161140493004285235666026628953647859202250191730442", + "33811214160519685654400438720767591502827986970858420988841187408488311483230", + "115792089237316195423570985008687907853269984665640564039457584007913129207916", + "20557653259021005890251421269967042420225955023564768794272035576696478452763", + "115792089237316195423570985008687907853269984665640563909857584007913129639936", + "7367887950809164700104084563884591449786965425123545364576065505479275931200", + "58168524174645209900719041489934173752247098791866719219864340874379345294450", + "65526", + "115792089237316195423570985008687907853269984665640564039457584007913129380736", + "227929974933606291", + "7776000", + "75752327540241786815348607290604056680494387521335977257182003214564422715501" + ], + [ + "563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe", + "27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a", + "9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd06", + "33ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865", + "d5d6866ffb684491364a0853403f689144f5664f5d50de1b1a30d683ff29f21b", + "f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1", + "c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b44", + "98bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01", + "108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef32", + "8d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea", + "94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad8208240", + "1f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade05545", + "94d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056", + "cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae96291", + "d8c581a922d52cd477658fcc2e2ca1f954f274ed2cd833a98e6d1d4455581f9d", + "9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874", + "ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cb", + "ba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c3", + "3f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8f", + "d276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99", + "fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce", + "3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb", + "4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f661723", + "7058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78", + "994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25", + "9a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe26", + "65f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a2", + "19fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c", + "51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb" + ] + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 21265, + "blockTimestampDelay": 360627 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000020000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x161c7318", + "dataAbiValues": { + "methodSignature": "test_debug()", + "inputValues": [] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 15325, + "blockTimestampDelay": 189245 + } +] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803570237000-58712d84-87f6-4a52-b17f-0a1efd24dc9a.json b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803570237000-58712d84-87f6-4a52-b17f-0a1efd24dc9a.json new file mode 100755 index 0000000..4dbda46 --- /dev/null +++ b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803570237000-58712d84-87f6-4a52-b17f-0a1efd24dc9a.json @@ -0,0 +1,104 @@ +[ + { + "call": { + "from": "0x0000000000000000000000000000000000030000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x13a8b8040000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000034000000000000000000000000000000000000000000000000000000000000000170000000000000000000000000000000000000000000000000000000000d2f000ffffc0000000000000000000000000000000000000000000000000000000000181dc31bc03ad9bc8a966de91dfc8c49b929f6d5fd44a9c22a7f5bb37cebfc106ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed8ee8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b825bc2cfc37067e378b4feef3f3411136744d0b2851c161c601669654cf27bfe6100000000000000000000000000000000000000000000000000000000000000006cd40d93882a844c2becf361c7579664aef7a6ef6e8b79d6bf6f6f76426e9b14039e696f94058cfd274de97421f65916ac135f4d55083d357b9c1f34820c9376000000000000000000000000000000000000000000000000000000000003fffe000000000000000000000000000000000000000000000000000000000000000167e6a528e0202cf23a36eacf513eee303475d3e4c983b2ae2d616b11c440f70a4ac07813439b9213b22d4d86340307a2982de60c241368ad288dfea742b6eb5efffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9686c2d73382b1edfa908bcaeb6b9ac0073f469887a9150c80831642e47e35a614c1bffffffffffffffffffffffffffffffffffffffffffffe48e5eb33a3a7f000000104a13a90c13653470268ea78892361e7e91e706d859aabaaf45ddd18c956640809a37cc7335cdf29b7d988dc8c05e2c1899ad1795364e6fa667088b49487472000000000000000000000000000000000000000000000000000000000000fff6fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b80756993dc4be6ecf1e46c48d6f9cae9255a8b46ef956a3d85442a5f41f70ecf93000000000000000000000000000000000000000000000000000000000076a700a77a4c48695a0407441e86efc633aee092d2ebd99c87fdfeebcd904fe33e086d000000000000000000000000000000000000000000000000000000000000001d563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd0633ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed6958658aad3329b56f2f98187bbaed7351982ae06a00b9382adcb723b8b393d1f5e2def8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b4498bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef328d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad82082401f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade0554594d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae962914f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cbba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c33f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8fd276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f6617237058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf259a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe2665f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a219fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb", + "dataAbiValues": { + "methodSignature": "handleCreateRequests(uint256[],bytes32[])", + "inputValues": [ + [ + "13824000", + "115791647525550000827488589184312722123641027794666345134718053606362806484993", + "58737407075920930096693749632210245280794127876199190949253348332199714210054", + "115792089237316195423570985008687907853269984665640564039457584007913128431336", + "115792089237316195423570985008687907853269984665640564039457584007913129380738", + "41504671482165347584846103287222174319130579613222615088745194098566077611617", + "0", + "49224452924880417829398231270379785502530069722970149981823851608145893694228", + "1636828073493779560152621491074002847609709387720111137750911676859097584502", + "262142", + "1", + "46995738119123743123282428161140493004285235666026628953647859202250191730442", + "33811214160519685654400438720767591502827986970858420988841187408488311483230", + "115792089237316195423570985008687907853269984665640564039457584007913129207916", + "20557653259021005890251421269967042420225955023564768794272035576696478452763", + "115792089237316195423570985008687907853269984665640563909857584007913129639936", + "7367887950809164700104084563884591449786965425123545364576065505479275931200", + "58168524174645209900719041489934173752247098791866719219864340874379345294450", + "65526", + "115792089237316195423570985008687907853269984665640564039457584007913129380736", + "53107142721938561923251317745913031228477959801596843755970727929974933606291", + "7776000", + "75752327540241786815348607290604056680494387521335977257182003214564422715501" + ], + [ + "563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe", + "27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a", + "9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd06", + "33ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865", + "8aad3329b56f2f98187bbaed7351982ae06a00b9382adcb723b8b393d1f5e2de", + "f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1", + "c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b44", + "98bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01", + "108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef32", + "8d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea", + "94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad8208240", + "1f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade05545", + "94d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056", + "cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae96291", + "4f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa", + "9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874", + "ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cb", + "ba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c3", + "3f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8f", + "d276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99", + "fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce", + "3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb", + "4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f661723", + "7058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78", + "994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25", + "9a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe26", + "65f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a2", + "19fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c", + "51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb" + ] + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 21265, + "blockTimestampDelay": 360627 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000050000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x91e32c74e0613faa5f896b73380078af3c1ee8605eec949aaf9c8f422f264f3de916b58dc905ee964be623d23ba97ccc5a2b838249eaa10a8671d6a68f97b09746107abf", + "dataAbiValues": { + "methodSignature": "handleCreateRequest(uint256,bytes32)", + "inputValues": [ + "101489901651207154401933345705911812335881908306802664469868899807780031346061", + "c905ee964be623d23ba97ccc5a2b838249eaa10a8671d6a68f97b09746107abf" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 23884, + "blockTimestampDelay": 297676 + } +] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803570989000-b61b8318-0b73-4814-96b9-ffd4a7bf2c0a.json b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803570989000-b61b8318-0b73-4814-96b9-ffd4a7bf2c0a.json new file mode 100755 index 0000000..27966e6 --- /dev/null +++ b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803570989000-b61b8318-0b73-4814-96b9-ffd4a7bf2c0a.json @@ -0,0 +1,103 @@ +[ + { + "call": { + "from": "0x0000000000000000000000000000000000030000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x13a8b8040000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000034000000000000000000000000000000000000000000000000000000000000000170000000000000000000000000000000000000000000000000000000000d2f000ffffc0000000000000000000000000000000000000000000000000000000000181dc31bc03ad9bc8a966de91dfc8c49b929f6d5fd44a9c22a7f5bb37cebfc106ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed8ee8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b825bc2cfc37067e378b4feef3f3411136744d0b2851c161c601669654cf27bfe6100000000000000000000000000000000000000000000000000000000000000006cd40d93882a844c2becf361c7579664aef7a6ef6e8b79d6bf6f6f76426e9b14039e696f94058cfd274de97421f65916ac135f4d55083d357b9c1f34820c9376000000000000000000000000000000000000000000000000000000000003fffe000000000000000000000000000000000000000000000000000000000000000167e6a528e0202cf23a36eacf513eee303475d3e4c983b2ae2d616b11c440f70a4ac07813439b9213b22d4d86340307a2982de60c241368ad288dfea742b6eb5efffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9686c2d73382b1edfa908bcaeb6b9ac0073f469887a9150c80831642e47e35a614c1bffffffffffffffffffffffffffffffffffffffffffffe48e5eb33a3a7f000000104a13a90c13653470268ea78892361e7e91e706d859aabaaf45ddd18c956640809a37cc7335cdf29b7d988dc8c05e2c1899ad1795364e6fa667088b49487472ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffee00b4fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b80756993dc4be6ecf1e46c48d6f9cae9255a8b46ef956a3d85442a5f41f70ecf93000000000000000000000000000000000000000000000000000000000076a700a77a4c48695a0407441e86efc633aee092d2ebd99c87fdfeebcd904fe33e086d000000000000000000000000000000000000000000000000000000000000001d563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd0633ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865a46715d7736dde0bcf6527392542031b42d0197ab2c1bb4c4d2d7abaed280007f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b4498bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef328d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad82082401f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade0554594d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae962914f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cbba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c33f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8fd276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f6617237058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf259a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe260d35d19771f7c1af646e114de36d19c25e3fc040b27be76073113bb33db17d5d19fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb", + "dataAbiValues": { + "methodSignature": "handleCreateRequests(uint256[],bytes32[])", + "inputValues": [ + [ + "13824000", + "115791647525550000827488589184312722123641027794666345134718053606362806484993", + "58737407075920930096693749632210245280794127876199190949253348332199714210054", + "115792089237316195423570985008687907853269984665640564039457584007913128431336", + "115792089237316195423570985008687907853269984665640564039457584007913129380738", + "41504671482165347584846103287222174319130579613222615088745194098566077611617", + "0", + "49224452924880417829398231270379785502530069722970149981823851608145893694228", + "1636828073493779560152621491074002847609709387720111137750911676859097584502", + "262142", + "1", + "46995738119123743123282428161140493004285235666026628953647859202250191730442", + "33811214160519685654400438720767591502827986970858420988841187408488311483230", + "115792089237316195423570985008687907853269984665640564039457584007913129207916", + "20557653259021005890251421269967042420225955023564768794272035576696478452763", + "115792089237316195423570985008687907853269984665640563909857584007913129639936", + "7367887950809164700104084563884591449786965425123545364576065505479275931200", + "58168524174645209900719041489934173752247098791866719219864340874379345294450", + "115792089237316195423570985008687907853269984665640564039457584007913128460468", + "115792089237316195423570985008687907853269984665640564039457584007913129380736", + "53107142721938561923251317745913031228477959801596843755970727929974933606291", + "7776000", + "75752327540241786815348607290604056680494387521335977257182003214564422715501" + ], + [ + "563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe", + "27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a", + "9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd06", + "33ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865", + "a46715d7736dde0bcf6527392542031b42d0197ab2c1bb4c4d2d7abaed280007", + "f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1", + "c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b44", + "98bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01", + "108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef32", + "8d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea", + "94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad8208240", + "1f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade05545", + "94d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056", + "cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae96291", + "4f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa", + "9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874", + "ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cb", + "ba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c3", + "3f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8f", + "d276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99", + "fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce", + "3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb", + "4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f661723", + "7058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78", + "994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25", + "9a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe26", + "0d35d19771f7c1af646e114de36d19c25e3fc040b27be76073113bb33db17d5d", + "19fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c", + "51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb" + ] + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 21265, + "blockTimestampDelay": 360627 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000080000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x51b295e3caac5b7c00ae43f0a0d2465bc3a827daefa6255afc3feafd105a01b058af4cc3", + "dataAbiValues": { + "methodSignature": "handleFinalize(uint256)", + "inputValues": [ + "91671724510984325847623981850838041499373483072178023597879983910219265559747" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 616, + "blockTimestampDelay": 245182 + } +] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803571997000-b4c04c00-0029-44d8-a7a6-df5aa8196990.json b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803571997000-b4c04c00-0029-44d8-a7a6-df5aa8196990.json new file mode 100755 index 0000000..8986a50 --- /dev/null +++ b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803571997000-b4c04c00-0029-44d8-a7a6-df5aa8196990.json @@ -0,0 +1,133 @@ +[ + { + "call": { + "from": "0x0000000000000000000000000000000000030000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x13a8b8040000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000034000000000000000000000000000000000000000000000000000000000000000170000000000000000000000000000000000000000000000000000000000d2f000ffffc0000000000000000000000000000000000000000000000000000000000181dc31bc03ad9bc8a966de91dfc8c49b929f6d5fd44a9c22a7f5bb37cebfc106ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed8ee8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b825bc2cfc37067e378b4feef3f3411136744d0b2851c161c601669654cf27bfe610000000000000000000000000000000000000000000000000000000000000000578750b27e877a957d33dc50d914b1caf972efffa4bb78b85e66dd813a864ca4039e696f94058cfd274de97421f65916ac135f4d55083d357b9c1f34820c9376000000000000000000000000000000000000000000000000000000000003fffe000000000000000000000000000000000000000000000000000000000000000167e6a528e0202cf23a36eacf513eee303475d3e4c983b2ae2d616b11c440f70a4ac07813439b9213b22d4d86340307a2982de60c241368ad288dfea742b6eb5efffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9686c2d73382b1edfa908bcaeb6b9ac0073f469887a9150c80831642e47e35a614c1bffffffffffffffffffffffffffffffffffffffffffffe48e5eb33a3a7f000000104a13a90c13653470268ea78892361e7e91e706d859aabaaf45ddd18c956640809a37cc7335cdf29b7d988dc8c05e2c1899ad1795364e6fa667088b49487472000000000000000000000000000000000000000000000000000000000000fff6fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b800000000000000000000000000000000000000000000000000329c51ac594cf93000000000000000000000000000000000000000000000000000000000076a700a77a4c48695a0407441e86efc633aee092d2ebd99c87fdfeebcd904fe33e086d000000000000000000000000000000000000000000000000000000000000001d563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd0633ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865d5d6866ffb684491364a0853403f689144f5664f5d50de1b1a30d683ff29f21bf8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b4498bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef328d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad82082401f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade0554594d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae96291d8c581a922d52cd477658fcc2e2ca1f954f274ed2cd833a98e6d1d4455581f9d9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cbba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c33f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8fd276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f6617237058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf259a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe2665f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a219fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb", + "dataAbiValues": { + "methodSignature": "handleCreateRequests(uint256[],bytes32[])", + "inputValues": [ + [ + "13824000", + "115791647525550000827488589184312722123641027794666345134718053606362806484993", + "58737407075920930096693749632210245280794127876199190949253348332199714210054", + "115792089237316195423570985008687907853269984665640564039457584007913128431336", + "115792089237316195423570985008687907853269984665640564039457584007913129380738", + "41504671482165347584846103287222174319130579613222615088745194098566077611617", + "0", + "39590299132392589184737138068833640165131826767556478003143025413084726840484", + "1636828073493779560152621491074002847609709387720111137750911676859097584502", + "262142", + "1", + "46995738119123743123282428161140493004285235666026628953647859202250191730442", + "33811214160519685654400438720767591502827986970858420988841187408488311483230", + "115792089237316195423570985008687907853269984665640564039457584007913129207916", + "20557653259021005890251421269967042420225955023564768794272035576696478452763", + "115792089237316195423570985008687907853269984665640563909857584007913129639936", + "7367887950809164700104084563884591449786965425123545364576065505479275931200", + "58168524174645209900719041489934173752247098791866719219864340874379345294450", + "65526", + "115792089237316195423570985008687907853269984665640564039457584007913129380736", + "227929974933606291", + "7776000", + "75752327540241786815348607290604056680494387521335977257182003214564422715501" + ], + [ + "563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe", + "27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a", + "9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd06", + "33ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865", + "d5d6866ffb684491364a0853403f689144f5664f5d50de1b1a30d683ff29f21b", + "f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1", + "c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b44", + "98bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01", + "108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef32", + "8d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea", + "94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad8208240", + "1f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade05545", + "94d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056", + "cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae96291", + "d8c581a922d52cd477658fcc2e2ca1f954f274ed2cd833a98e6d1d4455581f9d", + "9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874", + "ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cb", + "ba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c3", + "3f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8f", + "d276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99", + "fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce", + "3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb", + "4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f661723", + "7058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78", + "994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25", + "9a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe26", + "65f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a2", + "19fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c", + "51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb" + ] + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 21265, + "blockTimestampDelay": 360627 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000020000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x161c7318", + "dataAbiValues": { + "methodSignature": "test_debug()", + "inputValues": [] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 15325, + "blockTimestampDelay": 189245 + }, + { + "call": { + "from": "0x00000000000000000000000000000000000a0000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x88b05f294e5c5739570432e46e997185cf2683c287e8339e1ce7ab9502db4f4b4f0c1b77000000000000000000000000000000000000000000000000000000000012750000000000000000000000000000000000000000000000000006f05b59d3b200003c3b20fe3c6474ef6112cec6e2e1e2a66147c502767418c32e65c3bfa035d898948fc45007206ff5c0b2215d0b5c97d5551a84ed653f28e284b8567c463ce3650000000000000000000000000000000000000000000000000000000000069780ffffffffffffffffffffffffffffffffffffffffffffffffffffffec398000000000000000000000000000000000000000000000000000000000000000093a80", + "dataAbiValues": { + "methodSignature": "handleSetDisputeModuleData(uint256,(address,address,uint256,uint256,uint256,uint256,uint256))", + "inputValues": [ + "35443554117267417118592017165536035041230544133048285386578266163756344810359", + { + "accountingExtension": "0x0000000000000000000000000000000000127500", + "bondEscalationDeadline": "432000", + "bondSize": "27243242601887521753615714576112380311306725462768124357416761313244220872856", + "bondToken": "0x00000000000000000000000006f05b59d3b20000", + "disputeWindow": "604800", + "maxNumberOfEscalations": "67196315620416968751812103706326677402054656808860235011842083525495944438629", + "tyingBuffer": "115792089237316195423570985008687907853269984665640564039457584007828194983936" + } + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 24101, + "blockTimestampDelay": 185392 + } +] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803572903000-2dfcb57a-f822-4ba8-935c-c6ef623952cf.json b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803572903000-2dfcb57a-f822-4ba8-935c-c6ef623952cf.json new file mode 100755 index 0000000..7e992ae --- /dev/null +++ b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803572903000-2dfcb57a-f822-4ba8-935c-c6ef623952cf.json @@ -0,0 +1,49 @@ +[ + { + "call": { + "from": "0x0000000000000000000000000000000000040000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x52e3cb9c6b0d264b5add160d5053aa476132c22d6540d3605ad8dfb850790b1ba996569b", + "dataAbiValues": { + "methodSignature": "handleSetMaxUsersToCheck(uint256)", + "inputValues": [ + "48420708108177856443123222644862532857390746786695606854692354379525674915483" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 59698, + "blockTimestampDelay": 331757 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000020000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x62e8fd3500000000000000000000000000000000000000000000000000000000000000124ab950c09e2414c3ec444389b5281e1bdfda8ecfec5392240af8d376f3781e4f", + "dataAbiValues": { + "methodSignature": "handleOnDisputeStatusChange(uint256,uint256)", + "inputValues": [ + "18", + "33798574834817402171861624718400176195923458571787846279113220864863863578191" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 41059, + "blockTimestampDelay": 386818 + } +] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803573530000-e8877634-86e5-4563-9155-7f538767b281.json b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803573530000-e8877634-86e5-4563-9155-7f538767b281.json new file mode 100755 index 0000000..cc9be3f --- /dev/null +++ b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803573530000-e8877634-86e5-4563-9155-7f538767b281.json @@ -0,0 +1,103 @@ +[ + { + "call": { + "from": "0x0000000000000000000000000000000000030000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x13a8b80400000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000340000000000000000000000000000000000000000000000000000000000000001700000000000000000000000000000000000000000000000000000000000010e0ffffc0000000000000000000000000000000000000000000000000000000000181dc31bc03ad9bc8a966de91dfc8c49b929f6d5fd44a9c22a7f5bb37cebfc106ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed8ee8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b825bc2cfc37067e378b4feef3f3411136744d0b2851c161c601669654cf27bfe6100000000000000000000000000000000000000000000000000000000000000006cd40d93882a844c2becf361c7579664aef7a6ef6e8b79d6bf6f6f76426e9b14039e696f94058cfd274de97421f65916ac135f4d55083d357b9c1f34820c9376000000000000000000000000000000000000000000000000000000000003fffe000000000000000000000000000000000000000000000000000000000000000167e6a528e0202cf23a36eacf513eee303475d3e4c983b2ae2d616b11c440f70a0000000000000000000000000000000000000000000000000000000000000000fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9686c2d73382b1edfa908bcaeb6b9ac0073f469887a9150c80831642e47e35a614c1bffffffffffffffffffffffffffffffffffffffffffffe48e5eb33a3a7f000000104a13a90c13653470268ea78892361e7e91e706d859aabaaf45ddd18c956640809a37cc7335cdf29b7d988dc8c05e2c1899ad1795364e6fa667088b49487472000000000000000000000000000000000000000000000000000000000000fff6fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b80756993dc4be6ecf1e46c48d6f9cae9255a8b46ef956a3d85442a5f41f70ecf93000000000000000000000000000000000000000000000000000000000076a700a77a4c48695a0407441e86efc633aee092d2ebd99c87fdfeebcd904fe33e086d000000000000000000000000000000000000000000000000000000000000001d563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd0633ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed6958658aad3329b56f2f98187bbaed7351982ae06a00b9382adcb723b8b393d1f5e2def8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b4498bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef328d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad82082401f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade0554594d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e0568fcad889d076bcc6f0b5c84a4f6f334b74f944740b9f88a51f2895e76dd401884f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cbba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c33f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8fd276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f6617237058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25abbc2a768fea28edd1d653edcbaa5cace525564c5330b62b6ed63452f3b221f165f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a219fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb", + "dataAbiValues": { + "methodSignature": "handleCreateRequests(uint256[],bytes32[])", + "inputValues": [ + [ + "4320", + "115791647525550000827488589184312722123641027794666345134718053606362806484993", + "58737407075920930096693749632210245280794127876199190949253348332199714210054", + "115792089237316195423570985008687907853269984665640564039457584007913128431336", + "115792089237316195423570985008687907853269984665640564039457584007913129380738", + "41504671482165347584846103287222174319130579613222615088745194098566077611617", + "0", + "49224452924880417829398231270379785502530069722970149981823851608145893694228", + "1636828073493779560152621491074002847609709387720111137750911676859097584502", + "262142", + "1", + "46995738119123743123282428161140493004285235666026628953647859202250191730442", + "0", + "115792089237316195423570985008687907853269984665640564039457584007913129207916", + "20557653259021005890251421269967042420225955023564768794272035576696478452763", + "115792089237316195423570985008687907853269984665640563909857584007913129639936", + "7367887950809164700104084563884591449786965425123545364576065505479275931200", + "58168524174645209900719041489934173752247098791866719219864340874379345294450", + "65526", + "115792089237316195423570985008687907853269984665640564039457584007913129380736", + "53107142721938561923251317745913031228477959801596843755970727929974933606291", + "7776000", + "75752327540241786815348607290604056680494387521335977257182003214564422715501" + ], + [ + "563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe", + "27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a", + "9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd06", + "33ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865", + "8aad3329b56f2f98187bbaed7351982ae06a00b9382adcb723b8b393d1f5e2de", + "f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1", + "c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b44", + "98bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01", + "108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef32", + "8d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea", + "94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad8208240", + "1f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade05545", + "94d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056", + "8fcad889d076bcc6f0b5c84a4f6f334b74f944740b9f88a51f2895e76dd40188", + "4f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa", + "9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874", + "ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cb", + "ba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c3", + "3f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8f", + "d276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99", + "fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce", + "3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb", + "4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f661723", + "7058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78", + "994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25", + "abbc2a768fea28edd1d653edcbaa5cace525564c5330b62b6ed63452f3b221f1", + "65f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a2", + "19fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c", + "51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb" + ] + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 21265, + "blockTimestampDelay": 360627 + }, + { + "call": { + "from": "0x00000000000000000000000000000000000a0000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x6b125a57f70d7a9f8f7dc147f3c07846c57ff55a159156e04b1aef93f09a50411ed01cac", + "dataAbiValues": { + "methodSignature": "handleRemoveEBORequestCreatorFinalityModule(uint256)", + "inputValues": [ + "111745088926706135766942953021093517459235404528421949148968020375462747315372" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 41182, + "blockTimestampDelay": 251336 + } +] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803573604000-9ce76d8d-3fdf-4be0-a718-67783ed4f0bd.json b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803573604000-9ce76d8d-3fdf-4be0-a718-67783ed4f0bd.json new file mode 100755 index 0000000..785c842 --- /dev/null +++ b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803573604000-9ce76d8d-3fdf-4be0-a718-67783ed4f0bd.json @@ -0,0 +1,150 @@ +[ + { + "call": { + "from": "0x0000000000000000000000000000000000030000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x13a8b8040000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000034000000000000000000000000000000000000000000000000000000000000000170000000000000000000000000000000000000000000000000000000000d2f000ffffc0000000000000000000000000000000000000000000000000000000000181dc31bc03ad9bc8a966de91dfc8c49b929f6d5fd44a9c22a7f5bb37cebfc106ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed8ee8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b825bc2cfc37067e378b4feef3f3411136744d0b2851c161c601669654cf27bfe6100000000000000000000000000000000000000000000000000000000000000006cd40d93882a844c2becf361c7579664aef7a6ef6e8b79d6bf6f6f76426e9b14039e696f94058cfd274de97421f65916ac135f4d55083d357b9c1f34820c9376000000000000000000000000000000000000000000000000000000000003fffe000000000000000000000000000000000000000000000000000000000000000167e6a528e0202cf23a36eacf513eee303475d3e4c983b2ae2d616b11c440f70a4ac07813439b9213b22d4d86340307a2982de60c241368ad288dfea742b6eb5efffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9686c2d73382b1edfa908bcaeb6b9ac0073f469887a9150c80831642e47e35a614c1bffffffffffffffffffffffffffffffffffffffffffffe48e5eb33a3a7f000000104a13a90c13653470268ea78892361e7e91e706d859aabaaf45ddd18c956640809a37cc7335cdf29b7d988dc8c05e2c1899ad1795364e6fa667088b49487472ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffee00b4fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b80756993dc4be6ecf1e46c48d6f9cae9255a8b46ef956a3d85442a5f41f70ecf93000000000000000000000000000000000000000000000000000000000076a700a77a4c48695a0407441e86efc633aee092d2ebd99c87fdfeebcd904fe33e086d000000000000000000000000000000000000000000000000000000000000001d563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd0633ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865a46715d7736dde0bcf6527392542031b42d0197ab2c1bb4c4d2d7abaed280007f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b4498bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef328d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad82082401f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade0554594d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae962914f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cbba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c33f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8fd276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f6617237058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf259a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe260d35d19771f7c1af646e114de36d19c25e3fc040b27be76073113bb33db17d5d19fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb", + "dataAbiValues": { + "methodSignature": "handleCreateRequests(uint256[],bytes32[])", + "inputValues": [ + [ + "13824000", + "115791647525550000827488589184312722123641027794666345134718053606362806484993", + "58737407075920930096693749632210245280794127876199190949253348332199714210054", + "115792089237316195423570985008687907853269984665640564039457584007913128431336", + "115792089237316195423570985008687907853269984665640564039457584007913129380738", + "41504671482165347584846103287222174319130579613222615088745194098566077611617", + "0", + "49224452924880417829398231270379785502530069722970149981823851608145893694228", + "1636828073493779560152621491074002847609709387720111137750911676859097584502", + "262142", + "1", + "46995738119123743123282428161140493004285235666026628953647859202250191730442", + "33811214160519685654400438720767591502827986970858420988841187408488311483230", + "115792089237316195423570985008687907853269984665640564039457584007913129207916", + "20557653259021005890251421269967042420225955023564768794272035576696478452763", + "115792089237316195423570985008687907853269984665640563909857584007913129639936", + "7367887950809164700104084563884591449786965425123545364576065505479275931200", + "58168524174645209900719041489934173752247098791866719219864340874379345294450", + "115792089237316195423570985008687907853269984665640564039457584007913128460468", + "115792089237316195423570985008687907853269984665640564039457584007913129380736", + "53107142721938561923251317745913031228477959801596843755970727929974933606291", + "7776000", + "75752327540241786815348607290604056680494387521335977257182003214564422715501" + ], + [ + "563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe", + "27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a", + "9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd06", + "33ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865", + "a46715d7736dde0bcf6527392542031b42d0197ab2c1bb4c4d2d7abaed280007", + "f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1", + "c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b44", + "98bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01", + "108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef32", + "8d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea", + "94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad8208240", + "1f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade05545", + "94d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056", + "cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae96291", + "4f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa", + "9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874", + "ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cb", + "ba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c3", + "3f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8f", + "d276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99", + "fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce", + "3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb", + "4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f661723", + "7058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78", + "994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25", + "9a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe26", + "0d35d19771f7c1af646e114de36d19c25e3fc040b27be76073113bb33db17d5d", + "19fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c", + "51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb" + ] + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 21265, + "blockTimestampDelay": 360627 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000080000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x51b295e3caac5b7c00ae43f0a0d2465bc3a827daefa6255afc3feafd105a01b058af4cc3", + "dataAbiValues": { + "methodSignature": "handleFinalize(uint256)", + "inputValues": [ + "91671724510984325847623981850838041499373483072178023597879983910219265559747" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 616, + "blockTimestampDelay": 245182 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000070000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x62e8fd357410315e284ca2250b236ba99041acd7e7626e3fc66727657ddcb75ed512355238b8e299444e7771cad3e9cc9efbc8237922a7b18f034d56199ddaad5f62f70c", + "dataAbiValues": { + "methodSignature": "handleOnDisputeStatusChange(uint256,uint256)", + "inputValues": [ + "52496900712745351460185096722717982602139275703227615313943886816707427317074", + "25656183307321870319256066529210878052151786525540532817103830451324188817164" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 0, + "blockTimestampDelay": 0 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000010000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x5cc02fa53b4e8ff8cbb94866d057a07c347e0cb79a079e6c49875d6adb448ca8b36b2f93", + "dataAbiValues": { + "methodSignature": "handleSetPendingCouncil(uint256)", + "inputValues": [ + "26825265794714411535119211388793422995701606456004679527746190657884506501011" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 22951, + "blockTimestampDelay": 222797 + } +] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803573691000-2f49b3b2-64e5-483d-8360-df43563d2ae4.json b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803573691000-2f49b3b2-64e5-483d-8360-df43563d2ae4.json new file mode 100755 index 0000000..d6a1853 --- /dev/null +++ b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803573691000-2f49b3b2-64e5-483d-8360-df43563d2ae4.json @@ -0,0 +1,149 @@ +[ + { + "call": { + "from": "0x0000000000000000000000000000000000030000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x13a8b8040000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000034000000000000000000000000000000000000000000000000000000000000000170000000000000000000000000000000000000000000000000000000000d2f000ffffc0000000000000000000000000000000000000000000000000000000000181dc31bc03ad9bc8a966de91dfc8c49b929f6d5fd44a9c22a7f5bb37cebfc106ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed8ee8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b825bc2cfc37067e378b4feef3f3411136744d0b2851c161c601669654cf27bfe6100000000000000000000000000000000000000000000000000000000000000006cd40d93882a844c2becf361c7579664aef7a6ef6e8b79d6bf6f6f76426e9b14039e696f94058cfd274de97421f65916ac135f4d55083d357b9c1f34820c9376000000000000000000000000000000000000000000000000000000000003fffe000000000000000000000000000000000000000000000000000000000000000167e6a528e0202cf23a36eacf513eee303475d3e4c983b2ae2d616b11c440f70a4ac07813439b9213b22d4d86340307a2982de60c241368ad288dfea742b6eb5efffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9686c2d73382b1edfa908bcaeb6b9ac0073f469887a9150c80831642e47e35a614c1bffffffffffffffffffffffffffffffffffffffffffffe48e5eb33a3a7f000000104a13a90c13653470268ea78892361e7e91e706d859aabaaf45ddd18c956640809a37cc7335cdf29b7d988dc8c05e2c1899ad1795364e6fa667088b49487472000000000000000000000000000000000000000000000000000000000000fff6fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b80756993dc4be6ecf1e46c48d6f9cae9255a8b46ef956a3d85442a5f41f70ecf93000000000000000000000000000000000000000000000000000000000076a700a77a4c48695a0407441e86efc633aee092d2ebd99c87fdfeebcd904fe33e086d000000000000000000000000000000000000000000000000000000000000001d563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd0633ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed6958658aad3329b56f2f98187bbaed7351982ae06a00b9382adcb723b8b393d1f5e2def8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b4498bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef328d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad82082401f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade0554594d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae962914f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cbba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c33f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8fd276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f6617237058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf259a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe2665f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a219fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb", + "dataAbiValues": { + "methodSignature": "handleCreateRequests(uint256[],bytes32[])", + "inputValues": [ + [ + "13824000", + "115791647525550000827488589184312722123641027794666345134718053606362806484993", + "58737407075920930096693749632210245280794127876199190949253348332199714210054", + "115792089237316195423570985008687907853269984665640564039457584007913128431336", + "115792089237316195423570985008687907853269984665640564039457584007913129380738", + "41504671482165347584846103287222174319130579613222615088745194098566077611617", + "0", + "49224452924880417829398231270379785502530069722970149981823851608145893694228", + "1636828073493779560152621491074002847609709387720111137750911676859097584502", + "262142", + "1", + "46995738119123743123282428161140493004285235666026628953647859202250191730442", + "33811214160519685654400438720767591502827986970858420988841187408488311483230", + "115792089237316195423570985008687907853269984665640564039457584007913129207916", + "20557653259021005890251421269967042420225955023564768794272035576696478452763", + "115792089237316195423570985008687907853269984665640563909857584007913129639936", + "7367887950809164700104084563884591449786965425123545364576065505479275931200", + "58168524174645209900719041489934173752247098791866719219864340874379345294450", + "65526", + "115792089237316195423570985008687907853269984665640564039457584007913129380736", + "53107142721938561923251317745913031228477959801596843755970727929974933606291", + "7776000", + "75752327540241786815348607290604056680494387521335977257182003214564422715501" + ], + [ + "563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe", + "27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a", + "9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd06", + "33ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865", + "8aad3329b56f2f98187bbaed7351982ae06a00b9382adcb723b8b393d1f5e2de", + "f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1", + "c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b44", + "98bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01", + "108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef32", + "8d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea", + "94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad8208240", + "1f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade05545", + "94d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056", + "cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae96291", + "4f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa", + "9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874", + "ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cb", + "ba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c3", + "3f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8f", + "d276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99", + "fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce", + "3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb", + "4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f661723", + "7058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78", + "994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25", + "9a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe26", + "65f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a2", + "19fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c", + "51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb" + ] + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 21265, + "blockTimestampDelay": 360627 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000050000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x91e32c74e0613faa5f896b73380078af3c1ee8605eec949aaf9c8f422f264f3de916b58dc905ee964be623d23ba97ccc5a2b838249eaa10a8671d6a68f97b09746107abf", + "dataAbiValues": { + "methodSignature": "handleCreateRequest(uint256,bytes32)", + "inputValues": [ + "101489901651207154401933345705911812335881908306802664469868899807780031346061", + "c905ee964be623d23ba97ccc5a2b838249eaa10a8671d6a68f97b09746107abf" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 23884, + "blockTimestampDelay": 297676 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000020000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x161c7318", + "dataAbiValues": { + "methodSignature": "test_debug()", + "inputValues": [] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 0, + "blockTimestampDelay": 1 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000070000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xaa1a5bd9ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffee2cac1a259bf9695aac61487b4606621f281407f44a6d621116f436e53e00628b", + "dataAbiValues": { + "methodSignature": "handleResolveDispute(uint256,uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913129639918", + "20205843492154653597326893919151713313559584018734749877274787063574636290699" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 23891, + "blockTimestampDelay": 328958 + } +] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803574933000-69edad03-8dfd-4c82-a029-e43ba88f8c78.json b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803574933000-69edad03-8dfd-4c82-a029-e43ba88f8c78.json new file mode 100755 index 0000000..89f698d --- /dev/null +++ b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803574933000-69edad03-8dfd-4c82-a029-e43ba88f8c78.json @@ -0,0 +1,154 @@ +[ + { + "call": { + "from": "0x0000000000000000000000000000000000030000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x13a8b8040000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000034000000000000000000000000000000000000000000000000000000000000000170000000000000000000000000000000000000000000000000000000000d2f000ffffc0000000000000000000000000000000000000000000000000000000000181dc31bc03ad9bc8a966de91dfc8c49b929f6d5fd44a9c22a7f5bb37cebfc106ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed8ee8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6c5805bc2cfc37067e378b4feef3f3411136744d0b2851c161c601669654cf27bfe6100000000000000000000000000000000000000000000000000000000000000006cd40d93882a844c2becf361c7579664aef7a6ef6e8b79d6bf6f6f76426e9b14039e696f94058cfd274de97421f65916ac135f4d55083d357b9c1f34820c9376000000000000000000000000000000000000000000000000000000000003fffe000000000000000000000000000000000000000000000000000000000000000167e6a528e0202cf23a36eacf513eee303475d3e4c983b2ae2d616b11c440f70aaa625827d77aa233df42016988900477ead582090357ec011f404ff1f0aa321bfffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9686c2d73382b1edfa908bcaeb6b9ac0073f469887a9150c80831642e47e35a614c1bffffffffffffffffffffffffffffffffffffffffffffe48e5eb33a3a7f000000104a13a90c13653470268ea78892361e7e91e706d859aabaaf45ddd18c956640809a37cc7335cdf29b7d988dc8c05e2c1899ad1795364e6fa667088b49487472000000000000000000000000000000000000000000000000000000000000fff6fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b80756993dc4be6ecf1e46c48d6f9cae9255a8b46ef956a3d85442a5f41f70ecf93000000000000000000000000000000000000000000000000000000000076a700a77a4c48695a0407441e86efc633aee092d2ebd99c87fdfeebcd904fe33e086d000000000000000000000000000000000000000000000000000000000000001d563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd0633ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed69586530127b846a0115a3e561f49781eea70d4bcc4884906080e6adb068ff5fe13953f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b4498bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef328d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad82082401f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade0554594d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e05648dd821e471bd9a22c1f612735d2d7244c13832c4b0f28993ecafc561bfc52ae4f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cbba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c33f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8fd276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f6617237058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf259a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe2665f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a219fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb", + "dataAbiValues": { + "methodSignature": "handleCreateRequests(uint256[],bytes32[])", + "inputValues": [ + [ + "13824000", + "115791647525550000827488589184312722123641027794666345134718053606362806484993", + "58737407075920930096693749632210245280794127876199190949253348332199714210054", + "115792089237316195423570985008687907853269984665640564039457584007913128431336", + "115792089237316195423570985008687907853269984665640564039457584007913129035136", + "41504671482165347584846103287222174319130579613222615088745194098566077611617", + "0", + "49224452924880417829398231270379785502530069722970149981823851608145893694228", + "1636828073493779560152621491074002847609709387720111137750911676859097584502", + "262142", + "1", + "46995738119123743123282428161140493004285235666026628953647859202250191730442", + "77066943699312596523560233185714836616924754343478096130098486630426813805083", + "115792089237316195423570985008687907853269984665640564039457584007913129207916", + "20557653259021005890251421269967042420225955023564768794272035576696478452763", + "115792089237316195423570985008687907853269984665640563909857584007913129639936", + "7367887950809164700104084563884591449786965425123545364576065505479275931200", + "58168524174645209900719041489934173752247098791866719219864340874379345294450", + "65526", + "115792089237316195423570985008687907853269984665640564039457584007913129380736", + "53107142721938561923251317745913031228477959801596843755970727929974933606291", + "7776000", + "75752327540241786815348607290604056680494387521335977257182003214564422715501" + ], + [ + "563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe", + "27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a", + "9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd06", + "33ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865", + "30127b846a0115a3e561f49781eea70d4bcc4884906080e6adb068ff5fe13953", + "f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1", + "c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b44", + "98bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01", + "108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef32", + "8d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea", + "94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad8208240", + "1f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade05545", + "94d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056", + "48dd821e471bd9a22c1f612735d2d7244c13832c4b0f28993ecafc561bfc52ae", + "4f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa", + "9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874", + "ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cb", + "ba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c3", + "3f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8f", + "d276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99", + "fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce", + "3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb", + "4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f661723", + "7058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78", + "994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25", + "9a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe26", + "65f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a2", + "19fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c", + "51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb" + ] + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 21265, + "blockTimestampDelay": 360627 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000050000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x91e32c74e0613faa5f896b73380078af3c1ee8605eec949aaf9c8f422f264f3de916b58d4b3032484de1fb4c70c2a705584283a0288158e7d201a2526966e049d49acde5", + "dataAbiValues": { + "methodSignature": "handleCreateRequest(uint256,bytes32)", + "inputValues": [ + "101489901651207154401933345705911812335881908306802664469868899807780031346061", + "4b3032484de1fb4c70c2a705584283a0288158e7d201a2526966e049d49acde5" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 23884, + "blockTimestampDelay": 297676 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000080000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x62e8fd350000000000000000000000000000000000000000000000000000000000000000f3e0a4b7d4b9f146c330bf4206493b9644386108e6fb9dbd1ec9e9631656b911", + "dataAbiValues": { + "methodSignature": "handleOnDisputeStatusChange(uint256,uint256)", + "inputValues": [ + "0", + "110308932790717902341334723675742636402013152744066319296234386176011142609169" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 6, + "blockTimestampDelay": 447025 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000060000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xb05752f7000000000000000000000000000000000000000000000000000000000083d600ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff3cb74a490a6b235de22fdba8b11c89c1a75ba52781eaa376b8904d607971473952c39b6854fd2443ddec68f9b401b12b2c3233b939e902ba2cc4b78fc21880c9", + "dataAbiValues": { + "methodSignature": "handleOnSettleBondEscalation(uint256,uint256,uint256,uint256)", + "inputValues": [ + "8640000", + "115792089237316195423570985008687907853269984665640564039457584007913129639935", + "27462616626253393834172180586494418890954476283257859666307992469208736810809", + "37435261344928203651121242557808094327910915308413204917974281668150859169993" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 20576, + "blockTimestampDelay": 441138 + } +] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803575378000-7c923095-534b-4a11-b54e-2d2ef4e1b46b.json b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803575378000-7c923095-534b-4a11-b54e-2d2ef4e1b46b.json new file mode 100755 index 0000000..2224489 --- /dev/null +++ b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803575378000-7c923095-534b-4a11-b54e-2d2ef4e1b46b.json @@ -0,0 +1,156 @@ +[ + { + "call": { + "from": "0x0000000000000000000000000000000000030000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x13a8b8040000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000034000000000000000000000000000000000000000000000000000000000000000170000000000000000000000000000000000000000000000000000000000d2f000ffffc0000000000000000000000000000000000000000000000000000000000181dc31bc03ad9bc8a966de91dfc8c49b929f6d5fd44a9c22a7f5bb37cebfc106ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed8ee8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b825bc2cfc37067e378b4feef3f3411136744d0b2851c161c601669654cf27bfe610000000000000000000000000000000000000000000000000000000000000000578750b27e877a957d33dc50d914b1caf972efffa4bb78b85e66dd813a864ca4039e696f94058cfd274de97421f65916ac135f4d55083d357b9c1f34820c9376000000000000000000000000000000000000000000000000000000000003fffe000000000000000000000000000000000000000000000000000000000000000167e6a528e0202cf23a36eacf513eee303475d3e4c983b2ae2d616b11c440f70a4ac07813439b9213b22d4d86340307a2982de60c241368ad288dfea742b6eb5efffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9686c2d73382b1edfa908bcaeb6b9ac0073f469887a9150c80831642e47e35a614c1bffffffffffffffffffffffffffffffffffffffffffffe48e5eb33a3a7f000000104a13a90c13653470268ea78892361e7e91e706d859aabaaf45ddd18c956640809a37cc7335cdf29b7d988dc8c05e2c1899ad1795364e6fa667088b49487472000000000000000000000000000000000000000000000000000000000000fff6fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b800000000000000000000000000000000000000000000000000329c51ac594cf93000000000000000000000000000000000000000000000000000000000076a700a77a4c48695a0407441e86efc633aee092d2ebd99c87fdfeebcd904fe33e086d000000000000000000000000000000000000000000000000000000000000001d563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd0633ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865d5d6866ffb684491364a0853403f689144f5664f5d50de1b1a30d683ff29f21bf8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b4498bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef328d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad82082401f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade0554594d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae96291d8c581a922d52cd477658fcc2e2ca1f954f274ed2cd833a98e6d1d4455581f9d9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cbba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c33f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8fd276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f6617237058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf259a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe2665f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a219fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb", + "dataAbiValues": { + "methodSignature": "handleCreateRequests(uint256[],bytes32[])", + "inputValues": [ + [ + "13824000", + "115791647525550000827488589184312722123641027794666345134718053606362806484993", + "58737407075920930096693749632210245280794127876199190949253348332199714210054", + "115792089237316195423570985008687907853269984665640564039457584007913128431336", + "115792089237316195423570985008687907853269984665640564039457584007913129380738", + "41504671482165347584846103287222174319130579613222615088745194098566077611617", + "0", + "39590299132392589184737138068833640165131826767556478003143025413084726840484", + "1636828073493779560152621491074002847609709387720111137750911676859097584502", + "262142", + "1", + "46995738119123743123282428161140493004285235666026628953647859202250191730442", + "33811214160519685654400438720767591502827986970858420988841187408488311483230", + "115792089237316195423570985008687907853269984665640564039457584007913129207916", + "20557653259021005890251421269967042420225955023564768794272035576696478452763", + "115792089237316195423570985008687907853269984665640563909857584007913129639936", + "7367887950809164700104084563884591449786965425123545364576065505479275931200", + "58168524174645209900719041489934173752247098791866719219864340874379345294450", + "65526", + "115792089237316195423570985008687907853269984665640564039457584007913129380736", + "227929974933606291", + "7776000", + "75752327540241786815348607290604056680494387521335977257182003214564422715501" + ], + [ + "563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe", + "27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a", + "9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd06", + "33ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865", + "d5d6866ffb684491364a0853403f689144f5664f5d50de1b1a30d683ff29f21b", + "f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1", + "c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b44", + "98bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01", + "108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef32", + "8d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea", + "94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad8208240", + "1f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade05545", + "94d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056", + "cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae96291", + "d8c581a922d52cd477658fcc2e2ca1f954f274ed2cd833a98e6d1d4455581f9d", + "9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874", + "ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cb", + "ba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c3", + "3f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8f", + "d276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99", + "fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce", + "3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb", + "4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f661723", + "7058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78", + "994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25", + "9a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe26", + "65f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a2", + "19fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c", + "51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb" + ] + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 21265, + "blockTimestampDelay": 360627 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000020000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x161c7318", + "dataAbiValues": { + "methodSignature": "test_debug()", + "inputValues": [] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 15325, + "blockTimestampDelay": 189245 + }, + { + "call": { + "from": "0x00000000000000000000000000000000000a0000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x88b05f294e5c5739570432e46e997185cf2683c287e8339e1ce7ab9502db4f4b4f0c1b77000000000000000000000000000000000000000000000000000000000012750000000000000000000000000000000000000000000000000006f05b59d3b200003c3b20fe3c6474ef6112cec6e2e1e2a66147c502767418c32e65c3bfa035d898948fc45007206ff5c0b2215d0b5c97d5551a84ed653f28e284b8567c463ce3650000000000000000000000000000000000000000000000000000000000069780ffffffffffffffffffffffffffffffffffffffffffffffffffffffec398000000000000000000000000000000000000000000000000000000000000000093a80", + "dataAbiValues": { + "methodSignature": "handleSetDisputeModuleData(uint256,(address,address,uint256,uint256,uint256,uint256,uint256))", + "inputValues": [ + "35443554117267417118592017165536035041230544133048285386578266163756344810359", + { + "accountingExtension": "0x0000000000000000000000000000000000127500", + "bondEscalationDeadline": "432000", + "bondSize": "27243242601887521753615714576112380311306725462768124357416761313244220872856", + "bondToken": "0x00000000000000000000000006f05b59d3b20000", + "disputeWindow": "604800", + "maxNumberOfEscalations": "67196315620416968751812103706326677402054656808860235011842083525495944438629", + "tyingBuffer": "115792089237316195423570985008687907853269984665640564039457584007828194983936" + } + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 24101, + "blockTimestampDelay": 185392 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000040000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x3c26dcf8000000000000000000000000000000000000000000000853a0d2313c00000000", + "dataAbiValues": { + "methodSignature": "handleSetEpochManager(uint256)", + "inputValues": [ + "39321600000000000000000" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 23050, + "blockTimestampDelay": 360593 + } +] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803575499000-b159dfaa-e3ec-46e5-98f1-23e5b2c960d2.json b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803575499000-b159dfaa-e3ec-46e5-98f1-23e5b2c960d2.json new file mode 100755 index 0000000..db74108 --- /dev/null +++ b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803575499000-b159dfaa-e3ec-46e5-98f1-23e5b2c960d2.json @@ -0,0 +1,103 @@ +[ + { + "call": { + "from": "0x0000000000000000000000000000000000030000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x13a8b8040000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000034000000000000000000000000000000000000000000000000000000000000000170000000000000000000000000000000000000000000000000000000000d2f000ffffc0000000000000000000000000000000000000000000000000000000000181dc31bc03ad9bc8a966de91dfc8c49b929f6d5fd44a9c22a7f5bb37cebfc106000000000000000000000000000000000000000000007ff72b2c19616ab00000e645df196666f5e4e940c577b9670b086db2c746878e45aae0dbee6c63a0e6a35bc2cfc37067e378b4feef3f3411136744d0b2851c161c601669654cf27bfe6100000000000000000000000000000000000000000000000000000000000000006cd40d93882a844c2becf361c7579664aef7a6ef6e8b79d6bf6f6f76426e9b14039e696f94058cfd274de97421f65916ac135f4d55083d357b9c1f34820c9376000000000000000000000000000000000000000000000000000000000003fffe000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000004ac07813439b9213b22d4d86340307a2982de60c241368ad288dfea742b6eb5efffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9686c2d73382b1edfa908bcaeb6b9ac0073f469887a9150c80831642e47e35a614c1bffffffffffffffffffffffffffffffffffffffffffffe48e5eb33a3a7f000000104a13a90c13653470268ea78892361e7e91e706d859aabaaf45ddd18c956640809a37cc7335cdf29b7d988dc8c05e2c1899ad1795364e6fa667088b49487472000000000000000000000000000000000000000000000000000000000000fff6fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b80756993dc4be6ecf1e46c48d6f9cae9255a8b46ef956a3d85442a5f41f70ecf93000000000000000000000000000000000000000000000000000000000076a700a77a4c48695a0407441e86efc633aee092d2ebd99c87fdfeebcd904fe33e086d000000000000000000000000000000000000000000000000000000000000001d563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd0633ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed6958658aad3329b56f2f98187bbaed7351982ae06a00b9382adcb723b8b393d1f5e2def8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b4498bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a0171bc7dd16f0e277b94f2e46980d7e8e6c3c5187bf68be378e2d72cd0e70293ef8d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad82082401f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade0554594d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae962914f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874465e592f6d3f1d78fbc619b878d95794035829bd9b1285f3eb021d72f8e45638ba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c33f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8fd276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a9925e5ea45a807ae40eb654d82982bacb30bb1da6060d308d0b63004f4e1926b0c3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f6617237058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf259a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe2665f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a219fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb", + "dataAbiValues": { + "methodSignature": "handleCreateRequests(uint256[],bytes32[])", + "inputValues": [ + [ + "13824000", + "115791647525550000827488589184312722123641027794666345134718053606362806484993", + "58737407075920930096693749632210245280794127876199190949253348332199714210054", + "604300000000000000000000", + "104155407395839188072220307346509508179171066778602859964492537460856123877027", + "41504671482165347584846103287222174319130579613222615088745194098566077611617", + "0", + "49224452924880417829398231270379785502530069722970149981823851608145893694228", + "1636828073493779560152621491074002847609709387720111137750911676859097584502", + "262142", + "1", + "0", + "33811214160519685654400438720767591502827986970858420988841187408488311483230", + "115792089237316195423570985008687907853269984665640564039457584007913129207916", + "20557653259021005890251421269967042420225955023564768794272035576696478452763", + "115792089237316195423570985008687907853269984665640563909857584007913129639936", + "7367887950809164700104084563884591449786965425123545364576065505479275931200", + "58168524174645209900719041489934173752247098791866719219864340874379345294450", + "65526", + "115792089237316195423570985008687907853269984665640564039457584007913129380736", + "53107142721938561923251317745913031228477959801596843755970727929974933606291", + "7776000", + "75752327540241786815348607290604056680494387521335977257182003214564422715501" + ], + [ + "563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe", + "27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a", + "9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd06", + "33ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865", + "8aad3329b56f2f98187bbaed7351982ae06a00b9382adcb723b8b393d1f5e2de", + "f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1", + "c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b44", + "98bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01", + "71bc7dd16f0e277b94f2e46980d7e8e6c3c5187bf68be378e2d72cd0e70293ef", + "8d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea", + "94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad8208240", + "1f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade05545", + "94d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056", + "cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae96291", + "4f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa", + "9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874", + "465e592f6d3f1d78fbc619b878d95794035829bd9b1285f3eb021d72f8e45638", + "ba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c3", + "3f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8f", + "d276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99", + "25e5ea45a807ae40eb654d82982bacb30bb1da6060d308d0b63004f4e1926b0c", + "3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb", + "4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f661723", + "7058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78", + "994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25", + "9a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe26", + "65f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a2", + "19fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c", + "51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb" + ] + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 21265, + "blockTimestampDelay": 360627 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000030000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 2, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x0692ea7eeaaa73118d1da2c1db95511517ab896f87445c2331029aecdc7f065f634e6b46", + "dataAbiValues": { + "methodSignature": "handleRemoveChain(uint256)", + "inputValues": [ + "106142364743506859045918558596602602319943607038906547683486076996802461985606" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 2001, + "blockTimestampDelay": 455470 + } +] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803575632000-cdb80630-09f6-4557-a579-1f22c6aad840.json b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803575632000-cdb80630-09f6-4557-a579-1f22c6aad840.json new file mode 100755 index 0000000..93a7895 --- /dev/null +++ b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803575632000-cdb80630-09f6-4557-a579-1f22c6aad840.json @@ -0,0 +1,158 @@ +[ + { + "call": { + "from": "0x0000000000000000000000000000000000030000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x13a8b8040000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000034000000000000000000000000000000000000000000000000000000000000000170000000000000000000000000000000000000000000000000000000000d2f000ffffc0000000000000000000000000000000000000000000000000000000000181dc31bc03ad9bc8a966de91dfc8c49b929f6d5fd44a9c22a7f5bb37cebfc106ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed8ee8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b825bc2cfc37067e378b4feef3f3411136744d0b2851c161c601669654cf27afe610000000000000000000000000000000000000000000000000000000000000000578750b27e877a957d33dc50d914b1caf972efffa4bb78b85e66dd813a864ca4039e696f94058cfd274de97421f65916ac135f4d55083d357b9c1f34820c9376000000000000000000000000000000000000000000000000000000000003fffe000000000000000000000000000000000000000000000000000000000000000167e6a528e0202cf23a36eacf513eee303475d3e4c983b2ae2d616b11c440f70a4ac07813439b9213b22d4d86340307a2982de60c241368ad288dfea742b6eb5efffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9686c2d73382b1edfa908bcaeb6b9ac0073f469887a9150c80831642e47e35a614c1bffffffffffffffffffffffffffffffffffffffffffffe48e5eb33a3a7f000000104a13a90c13653470268ea78892361e7e91e706d859aabaaf45ddd18c956640809a37cc7335cdf29b7d988dc8c05e2c1899ad1795364e6fa667088b49487472000000000000000000000000000000000000000000000000000000000000fff6fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b800000000000000000000000000000000000000000000000000329c51ac594cf93000000000000000000000000000000000000000000000000000000000076a700a77a4c48695a0407441e86efc633aee092d2ebd99c87fdfeebcd904fe33e086d000000000000000000000000000000000000000000000000000000000000001d563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd0633ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865d5d6866ffb684491364a0853403f689144f5664f5d50de1b1a30d683ff29f21bf8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b4498bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef328d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad820824094c2949304cd969b5661cff34ece28aab6ca0f3eb707dc756ae848252d66c44a94d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae96291d8c581a922d52cd477658fcc2e2ca1f954f274ed2cd833a98e6d1d4455581f9d9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cbba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c389436d2b9b4dda11f7c2a5c1ca8fb20cba7512c884b100fa143fc24dc6c160eed276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f6617237058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25bcffd3ebd814d0f5e8e8dc7ef0303a14b98e79acfcabb14c9ad4225afd8f18c265f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a219fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c18aad5c04eb3f39ce81189eee664fb350f14bd8ce4dd62972aa7de342f017c7f", + "dataAbiValues": { + "methodSignature": "handleCreateRequests(uint256[],bytes32[])", + "inputValues": [ + [ + "13824000", + "115791647525550000827488589184312722123641027794666345134718053606362806484993", + "58737407075920930096693749632210245280794127876199190949253348332199714210054", + "115792089237316195423570985008687907853269984665640564039457584007913128431336", + "115792089237316195423570985008687907853269984665640564039457584007913129380738", + "41504671482165347584846103287222174319130579613222615088745194098566077546081", + "0", + "39590299132392589184737138068833640165131826767556478003143025413084726840484", + "1636828073493779560152621491074002847609709387720111137750911676859097584502", + "262142", + "1", + "46995738119123743123282428161140493004285235666026628953647859202250191730442", + "33811214160519685654400438720767591502827986970858420988841187408488311483230", + "115792089237316195423570985008687907853269984665640564039457584007913129207916", + "20557653259021005890251421269967042420225955023564768794272035576696478452763", + "115792089237316195423570985008687907853269984665640563909857584007913129639936", + "7367887950809164700104084563884591449786965425123545364576065505479275931200", + "58168524174645209900719041489934173752247098791866719219864340874379345294450", + "65526", + "115792089237316195423570985008687907853269984665640564039457584007913129380736", + "227929974933606291", + "7776000", + "75752327540241786815348607290604056680494387521335977257182003214564422715501" + ], + [ + "563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe", + "27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a", + "9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd06", + "33ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865", + "d5d6866ffb684491364a0853403f689144f5664f5d50de1b1a30d683ff29f21b", + "f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1", + "c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b44", + "98bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01", + "108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef32", + "8d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea", + "94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad8208240", + "94c2949304cd969b5661cff34ece28aab6ca0f3eb707dc756ae848252d66c44a", + "94d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056", + "cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae96291", + "d8c581a922d52cd477658fcc2e2ca1f954f274ed2cd833a98e6d1d4455581f9d", + "9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874", + "ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cb", + "ba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c3", + "89436d2b9b4dda11f7c2a5c1ca8fb20cba7512c884b100fa143fc24dc6c160ee", + "d276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99", + "fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce", + "3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb", + "4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f661723", + "7058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78", + "994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25", + "bcffd3ebd814d0f5e8e8dc7ef0303a14b98e79acfcabb14c9ad4225afd8f18c2", + "65f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a2", + "19fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c", + "18aad5c04eb3f39ce81189eee664fb350f14bd8ce4dd62972aa7de342f017c7f" + ] + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 21265, + "blockTimestampDelay": 360627 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000020000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x161c7318", + "dataAbiValues": { + "methodSignature": "test_debug()", + "inputValues": [] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 15325, + "blockTimestampDelay": 189245 + }, + { + "call": { + "from": "0x00000000000000000000000000000000000a0000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x88b05f294e5c5739570432e46e997185cf2683c287e8339e1ce7ab9502db4f4b4f0c1b77000000000000000000000000000000000000000000000000000000000012750000000000000000000000000000000000000000000000000006f05b59d3b200003c3b20fe3c6474ef6112cec6e2e1e2a66147c502767418c32e65c3bfa035d898948fc45007206ff5c0b2215d0b5c97d5551a84ed653f28e284b8567c463ce3650000000000000000000000000000000000000000000000000000000000069780ffffffffffffffffffffffffffffffffffffffffffffffffffffffec39800000109b1ce09a2caa796f35db2570026fd5d54f3b6f79d72997e7e30411ab7bab5f", + "dataAbiValues": { + "methodSignature": "handleSetDisputeModuleData(uint256,(address,address,uint256,uint256,uint256,uint256,uint256))", + "inputValues": [ + "35443554117267417118592017165536035041230544133048285386578266163756344810359", + { + "accountingExtension": "0x0000000000000000000000000000000000127500", + "bondEscalationDeadline": "432000", + "bondSize": "27243242601887521753615714576112380311306725462768124357416761313244220872856", + "bondToken": "0x00000000000000000000000006f05b59d3b20000", + "disputeWindow": "7511066176535142771400004346711719422194606327049609712661925953610498943839", + "maxNumberOfEscalations": "67196315620416968751812103706326677402054656808860235011842083525495944438629", + "tyingBuffer": "115792089237316195423570985008687907853269984665640564039457584007828194983936" + } + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 24101, + "blockTimestampDelay": 185392 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000010000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xb6c75efa8ba080b8a5e8e7e02b35ca63d619e3bf03ea7ee17a7395426e8c0ae38903a378ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff51e8737b07890aad8af4228017f323f8ee58c58602fe8a95d9a372445358479b", + "dataAbiValues": { + "methodSignature": "handleClaimEscalationReward(uint256,uint256,uint256)", + "inputValues": [ + "63155069885073485423962987089686113899340909970551762747564159406599093592952", + "115792089237316195423570985008687907853269984665640564039457584007913129639935", + "37048046271970045328561159781521571766041874645079829392453863326819299116955" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 7, + "blockTimestampDelay": 32 + } +] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803576501000-457a1374-bc7f-42db-8cbe-f5b69bd2aa06.json b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803576501000-457a1374-bc7f-42db-8cbe-f5b69bd2aa06.json new file mode 100755 index 0000000..1c2a6ff --- /dev/null +++ b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803576501000-457a1374-bc7f-42db-8cbe-f5b69bd2aa06.json @@ -0,0 +1,127 @@ +[ + { + "call": { + "from": "0x0000000000000000000000000000000000030000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x13a8b80400000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000340000000000000000000000000000000000000000000000000000000000000001700000000000000000000000000000000000000000000000000000000000010e0ffffc0000000000000000000000000000000000000000000000000000000000181dc31bc03ad9bc8a966de91dfc8c49b929f6d5fd44a9c22a7f5bb37cebfc106ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed8ee8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b825bc2cfc37067e378b4feef3f3411136744d0b2851c161c601669654cf27bfe6100000000000000000000000000000000000000000000000000000000000000006cd40d93882a844c2becf361c7579664aef7a6ef6e8b79d6bf6f6f76426e9b14039e696f94058cfd274de97421f65916ac135f4d55083d357b9c1f34820c9376000000000000000000000000000000000000000000000000000000000003fffe000000000000000000000000000000000000000000000000000000000000000167e6a528e0202cf23a36eacf513eee303475d3e4c983b2ae2d616b11c440f70a0000000000000000000000000000000000000000000000000000000000000000fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9686c2d73382b1edfa908bcaeb6b9ac0073f469887a9150c80831642e47e35a614c1bffffffffffffffffffffffffffffffffffffffffffffe48e5eb33a3a7f000000104a13a90c13653470268ea78892361e7e91e706d859aabaaf45ddd18c956640809a37cc7335cdf29b7d988dc8c05e2c1899ad1795364e6fa667088b49487472000000000000000000000000000000000000000000000000000000000000fff6fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b80756993dc4be6ecf1e46c48d6f9cae9255a8b46ef956a3d85442a5f41f70ecf93000000000000000000000000000000000000000000000000000000000076a700a77a4c48695a0407441e86efc633aee092d2ebd99c87fdfeebcd904fe33e086d000000000000000000000000000000000000000000000000000000000000001d563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd0633ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed6958658aad3329b56f2f98187bbaed7351982ae06a00b9382adcb723b8b393d1f5e2def8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b4498bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef328d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad82082401f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade0554594d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e0568fcad889d076bcc6f0b5c84a4f6f334b74f944740b9f88a51f2895e76dd401884f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cbba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c33f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8fd276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f6617237058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25abbc2a768fea28edd1d653edcbaa5cace525564c5330b62b6ed63452f3b221f165f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a219fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb", + "dataAbiValues": { + "methodSignature": "handleCreateRequests(uint256[],bytes32[])", + "inputValues": [ + [ + "4320", + "115791647525550000827488589184312722123641027794666345134718053606362806484993", + "58737407075920930096693749632210245280794127876199190949253348332199714210054", + "115792089237316195423570985008687907853269984665640564039457584007913128431336", + "115792089237316195423570985008687907853269984665640564039457584007913129380738", + "41504671482165347584846103287222174319130579613222615088745194098566077611617", + "0", + "49224452924880417829398231270379785502530069722970149981823851608145893694228", + "1636828073493779560152621491074002847609709387720111137750911676859097584502", + "262142", + "1", + "46995738119123743123282428161140493004285235666026628953647859202250191730442", + "0", + "115792089237316195423570985008687907853269984665640564039457584007913129207916", + "20557653259021005890251421269967042420225955023564768794272035576696478452763", + "115792089237316195423570985008687907853269984665640563909857584007913129639936", + "7367887950809164700104084563884591449786965425123545364576065505479275931200", + "58168524174645209900719041489934173752247098791866719219864340874379345294450", + "65526", + "115792089237316195423570985008687907853269984665640564039457584007913129380736", + "53107142721938561923251317745913031228477959801596843755970727929974933606291", + "7776000", + "75752327540241786815348607290604056680494387521335977257182003214564422715501" + ], + [ + "563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe", + "27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a", + "9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd06", + "33ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865", + "8aad3329b56f2f98187bbaed7351982ae06a00b9382adcb723b8b393d1f5e2de", + "f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1", + "c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b44", + "98bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01", + "108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef32", + "8d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea", + "94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad8208240", + "1f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade05545", + "94d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056", + "8fcad889d076bcc6f0b5c84a4f6f334b74f944740b9f88a51f2895e76dd40188", + "4f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa", + "9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874", + "ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cb", + "ba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c3", + "3f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8f", + "d276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99", + "fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce", + "3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb", + "4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f661723", + "7058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78", + "994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25", + "abbc2a768fea28edd1d653edcbaa5cace525564c5330b62b6ed63452f3b221f1", + "65f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a2", + "19fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c", + "51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb" + ] + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 21265, + "blockTimestampDelay": 360627 + }, + { + "call": { + "from": "0x00000000000000000000000000000000000a0000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x6b125a57f70d7a9f8f7dc147f3c07846c57ff55a159156e04b1aef93f09a50411ed01cac", + "dataAbiValues": { + "methodSignature": "handleRemoveEBORequestCreatorFinalityModule(uint256)", + "inputValues": [ + "111745088926706135766942953021093517459235404528421949148968020375462747315372" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 41182, + "blockTimestampDelay": 251336 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000090000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x9f6259e5f758e7d4f100dcc2db3c85b9df5a8759d5abbd1697a1a04ec3af1471f220359a0000000000000000000000007109709ecfa91a80626ff3989d68f67f5b1dd12d", + "dataAbiValues": { + "methodSignature": "handleResolve(uint256,uint256)", + "inputValues": [ + "111878356186062714847010348548460913142200960060168223055923222451354708489626", + "645326474426547203313410069153905908525362434349" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 36881, + "blockTimestampDelay": 523741 + } +] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803576958000-f157d325-29b7-4f9f-bdb5-7e0eba3fcb5c.json b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803576958000-f157d325-29b7-4f9f-bdb5-7e0eba3fcb5c.json new file mode 100755 index 0000000..d28e8d2 --- /dev/null +++ b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803576958000-f157d325-29b7-4f9f-bdb5-7e0eba3fcb5c.json @@ -0,0 +1,172 @@ +[ + { + "call": { + "from": "0x0000000000000000000000000000000000030000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x13a8b8040000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000034000000000000000000000000000000000000000000000000000000000000000170000000000000000000000000000000000000000000000000000000000d2f000ffffc0000000000000000000000000000000000000000000000000000000000181dc31bc03ad9bc8a966de91dfc8c49b929f6d5fd44a9c22a7f5bb37cebfc106ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed8ee8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b825bc2cfc37067e378b4feef3f3411136744d0b2851c161c601669654cf27bfe6100000000000000000000000000000000000000000000000000000000000000006cd40d93882a844c2becf361c7579664aef7a6ef6e8b79d6bf6f6f76426e9b14039e696f94058cfd274de97421f65916ac135f4d55083d357b9c1f34820c9376000000000000000000000000000000000000000000000000000000000003fffe000000000000000000000000000000000000000000000000000000000000000167e6a528e0202cf23a36eacf513eee303475d3e4c983b2ae2d616b11c440f70a4ac07813439b9213b22d4d86340307a2982de60c241368ad288dfea742b6eb5efffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9686c2d73382b1edfa908bcaeb6b9ac0073f469887a9150c80831642e47e35a614c1bffffffffffffffffffffffffffffffffffffffffffffe48e5eb33a3a7f000000104a13a90c13653470268ea78892361e7e91e706d859aabaaf45ddd18c956640809a37cc7335cdf29b7d988dc8c05e2c1899ad1795364e6fa667088b49487472000000000000000000000000000000000000000000000000000000000000fff6fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b80756993dc4be6ecf1e46c48d6f9cae9255a8b46ef956a3d85442a5f41f70ecf93000000000000000000000000000000000000000000000000000000000076a700a77a4c48695a0407441e86efc633aee092d2ebd99c87fdfeebcd904fe33e086d000000000000000000000000000000000000000000000000000000000000001d563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd0633ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed6958658aad3329b56f2f98187bbaed7351982ae06a00b9382adcb723b8b393d1f5e2def8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b4498bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef328d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad82082401f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade0554594d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae962914f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cbba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c33f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8fd276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f6617237058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf259a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe2665f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a219fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb", + "dataAbiValues": { + "methodSignature": "handleCreateRequests(uint256[],bytes32[])", + "inputValues": [ + [ + "13824000", + "115791647525550000827488589184312722123641027794666345134718053606362806484993", + "58737407075920930096693749632210245280794127876199190949253348332199714210054", + "115792089237316195423570985008687907853269984665640564039457584007913128431336", + "115792089237316195423570985008687907853269984665640564039457584007913129380738", + "41504671482165347584846103287222174319130579613222615088745194098566077611617", + "0", + "49224452924880417829398231270379785502530069722970149981823851608145893694228", + "1636828073493779560152621491074002847609709387720111137750911676859097584502", + "262142", + "1", + "46995738119123743123282428161140493004285235666026628953647859202250191730442", + "33811214160519685654400438720767591502827986970858420988841187408488311483230", + "115792089237316195423570985008687907853269984665640564039457584007913129207916", + "20557653259021005890251421269967042420225955023564768794272035576696478452763", + "115792089237316195423570985008687907853269984665640563909857584007913129639936", + "7367887950809164700104084563884591449786965425123545364576065505479275931200", + "58168524174645209900719041489934173752247098791866719219864340874379345294450", + "65526", + "115792089237316195423570985008687907853269984665640564039457584007913129380736", + "53107142721938561923251317745913031228477959801596843755970727929974933606291", + "7776000", + "75752327540241786815348607290604056680494387521335977257182003214564422715501" + ], + [ + "563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe", + "27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a", + "9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd06", + "33ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865", + "8aad3329b56f2f98187bbaed7351982ae06a00b9382adcb723b8b393d1f5e2de", + "f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1", + "c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b44", + "98bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01", + "108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef32", + "8d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea", + "94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad8208240", + "1f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade05545", + "94d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056", + "cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae96291", + "4f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa", + "9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874", + "ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cb", + "ba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c3", + "3f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8f", + "d276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99", + "fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce", + "3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb", + "4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f661723", + "7058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78", + "994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25", + "9a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe26", + "65f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a2", + "19fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c", + "51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb" + ] + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 21265, + "blockTimestampDelay": 360627 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000050000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x91e32c74e0613faa5f896b73380078af3c1ee8605eec949aaf9c8f422f264f3de916b58dc905ee964be623d23ba97ccc5a2b838249eaa10a8671d6a68f97b09746107abf", + "dataAbiValues": { + "methodSignature": "handleCreateRequest(uint256,bytes32)", + "inputValues": [ + "101489901651207154401933345705911812335881908306802664469868899807780031346061", + "c905ee964be623d23ba97ccc5a2b838249eaa10a8671d6a68f97b09746107abf" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 23884, + "blockTimestampDelay": 297676 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000020000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x161c7318", + "dataAbiValues": { + "methodSignature": "test_debug()", + "inputValues": [] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 0, + "blockTimestampDelay": 1 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000070000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xaa1a5bd9ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffee2cac1a259bf9695aac61487b4606621f281407f44a6d621116f436e53e00628b", + "dataAbiValues": { + "methodSignature": "handleResolveDispute(uint256,uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913129639918", + "20205843492154653597326893919151713313559584018734749877274787063574636290699" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 23891, + "blockTimestampDelay": 328958 + }, + { + "call": { + "from": "0x00000000000000000000000000000000000a0000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xec5bf215fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff60000", + "dataAbiValues": { + "methodSignature": "handleFinalizeRequestResponseModule(uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913128984576" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 23883, + "blockTimestampDelay": 276784 + } +] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803577371000-f0c7f0bf-41b6-4568-9911-e2d805265711.json b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803577371000-f0c7f0bf-41b6-4568-9911-e2d805265711.json new file mode 100755 index 0000000..1df958b --- /dev/null +++ b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803577371000-f0c7f0bf-41b6-4568-9911-e2d805265711.json @@ -0,0 +1,174 @@ +[ + { + "call": { + "from": "0x0000000000000000000000000000000000030000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x13a8b8040000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000034000000000000000000000000000000000000000000000000000000000000000170000000000000000000000000000000000000000000000000000000000d2f000ffffc0000000000000000000000000000000000000000000000000000000000181dc31bc03ad9bc8a966de91dfc8c49b929f6d5fd44a9c22a7f5bb37cebfc106ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed8ee8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b825bc2cfc37067e378b4feef3f3411136744d0b2851c161c601669654cf27bfe6100000000000000000000000000000000000000000000000000000000000000006cd40d93882a844c2becf361c7579664aef7a6ef6e8b79d6bf6f6f76426e9b14039e696f94058cfd274de97421f65916ac135f4d55083d357b9c1f34820c9376000000000000000000000000000000000000000000000000000000000003fffe000000000000000000000000000000000000000000000000000000000000000167e6a528e0202cf23a36eacf513eee303475d3e4c983b2ae2d616b11c440f70a4ac07813439b9213b22d4d86340307a2982de60c241368ad288dfea742b6eb5efffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9686c2d73382b1edfa908bcaeb6b9ac0073f469887a9150c80831642e47e35a614c1bffffffffffffffffffffffffffffffffffffffffffffe48e5eb33a3a7f000000104a13a90c13653470268ea78892361e7e91e706d859aabaaf45ddd18c956640809a37cc7335cdf29b7d988dc8c05e2c1899ad1795364e6fa667088b49487472ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffee00b4fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b80756993dc4be6ecf1e46c48d6f9cae9255a8b46ef956a3d85442a5f41f70ecf93000000000000000000000000000000000000000000000000000000000076a700a77a4c48695a0407441e86efc633aee092d2ebd99c87fdfeebcd904fe33e086d000000000000000000000000000000000000000000000000000000000000001d563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd0633ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865a46715d7736dde0bcf6527392542031b42d0197ab2c1bb4c4d2d7abaed280007f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b4498bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef328d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad82082401f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade0554594d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae962914f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cbba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c33f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8fd276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f6617237058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf259a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe260d35d19771f7c1af646e114de36d19c25e3fc040b27be76073113bb33db17d5d19fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb", + "dataAbiValues": { + "methodSignature": "handleCreateRequests(uint256[],bytes32[])", + "inputValues": [ + [ + "13824000", + "115791647525550000827488589184312722123641027794666345134718053606362806484993", + "58737407075920930096693749632210245280794127876199190949253348332199714210054", + "115792089237316195423570985008687907853269984665640564039457584007913128431336", + "115792089237316195423570985008687907853269984665640564039457584007913129380738", + "41504671482165347584846103287222174319130579613222615088745194098566077611617", + "0", + "49224452924880417829398231270379785502530069722970149981823851608145893694228", + "1636828073493779560152621491074002847609709387720111137750911676859097584502", + "262142", + "1", + "46995738119123743123282428161140493004285235666026628953647859202250191730442", + "33811214160519685654400438720767591502827986970858420988841187408488311483230", + "115792089237316195423570985008687907853269984665640564039457584007913129207916", + "20557653259021005890251421269967042420225955023564768794272035576696478452763", + "115792089237316195423570985008687907853269984665640563909857584007913129639936", + "7367887950809164700104084563884591449786965425123545364576065505479275931200", + "58168524174645209900719041489934173752247098791866719219864340874379345294450", + "115792089237316195423570985008687907853269984665640564039457584007913128460468", + "115792089237316195423570985008687907853269984665640564039457584007913129380736", + "53107142721938561923251317745913031228477959801596843755970727929974933606291", + "7776000", + "75752327540241786815348607290604056680494387521335977257182003214564422715501" + ], + [ + "563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe", + "27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a", + "9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd06", + "33ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865", + "a46715d7736dde0bcf6527392542031b42d0197ab2c1bb4c4d2d7abaed280007", + "f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1", + "c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b44", + "98bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01", + "108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef32", + "8d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea", + "94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad8208240", + "1f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade05545", + "94d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056", + "cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae96291", + "4f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa", + "9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874", + "ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cb", + "ba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c3", + "3f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8f", + "d276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99", + "fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce", + "3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb", + "4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f661723", + "7058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78", + "994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25", + "9a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe26", + "0d35d19771f7c1af646e114de36d19c25e3fc040b27be76073113bb33db17d5d", + "19fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c", + "51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb" + ] + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 21265, + "blockTimestampDelay": 360627 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000080000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x51b295e3caac5b7c00ae43f0a0d2465bc3a827daefa6255afc3feafd105a01b058af4cc3", + "dataAbiValues": { + "methodSignature": "handleFinalize(uint256)", + "inputValues": [ + "91671724510984325847623981850838041499373483072178023597879983910219265559747" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 616, + "blockTimestampDelay": 245182 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000070000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x62e8fd357410315e284ca2250b236ba99041acd7e7626e3fc66727657ddcb75ed512355238b8e299444e7771cad3e9cc9efbc8237922a7b18f034d56199ddaad5f62f70c", + "dataAbiValues": { + "methodSignature": "handleOnDisputeStatusChange(uint256,uint256)", + "inputValues": [ + "52496900712745351460185096722717982602139275703227615313943886816707427317074", + "25656183307321870319256066529210878052151786525540532817103830451324188817164" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 0, + "blockTimestampDelay": 0 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000010000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x5cc02fa53b4e8ff8cbb94866d057a07c347e0cb79a079e6c49875d6adb448ca8b36b2f93", + "dataAbiValues": { + "methodSignature": "handleSetPendingCouncil(uint256)", + "inputValues": [ + "26825265794714411535119211388793422995701606456004679527746190657884506501011" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 22951, + "blockTimestampDelay": 222797 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000090000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x7aeb6faba969b1150e65eb039223322d37083c0f930e9f96e767cfaf888c1440b89042a7ffffffffffffffffffffffffffffffffffffffffffffffffffffffbe15000000", + "dataAbiValues": { + "methodSignature": "handleDisputeResponseBondEscalationModule(uint256,uint256)", + "inputValues": [ + "76627612529152310655938988775485703136714009850335653768166292952282670580391", + "115792089237316195423570985008687907853269984665640564039457584007630014119936" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 23866, + "blockTimestampDelay": 274647 + } +] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803577541000-25d5bdb7-8d18-498d-a97d-d95a6fb8c9a8.json b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803577541000-25d5bdb7-8d18-498d-a97d-d95a6fb8c9a8.json new file mode 100755 index 0000000..e528c6b --- /dev/null +++ b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803577541000-25d5bdb7-8d18-498d-a97d-d95a6fb8c9a8.json @@ -0,0 +1,119 @@ +[ + { + "call": { + "from": "0x0000000000000000000000000000000000040000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x52e3cb9c6b0d264b5add160d5053aa476132c22d6540d3605ad8dfb850790b1ba996569b", + "dataAbiValues": { + "methodSignature": "handleSetMaxUsersToCheck(uint256)", + "inputValues": [ + "48420708108177856443123222644862532857390746786695606854692354379525674915483" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 59698, + "blockTimestampDelay": 331757 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000020000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x62e8fd3500000000000000000000000000000000000000000000000000000000000000124ab950c09e2414c3ec444389b5281e1bdfda8ecfec5392240af8d376f3781e4f", + "dataAbiValues": { + "methodSignature": "handleOnDisputeStatusChange(uint256,uint256)", + "inputValues": [ + "18", + "33798574834817402171861624718400176195923458571787846279113220864863863578191" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 41059, + "blockTimestampDelay": 386818 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000040000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x161c7318", + "dataAbiValues": { + "methodSignature": "test_debug()", + "inputValues": [] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 2290, + "blockTimestampDelay": 360593 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000050000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xb05752f700000000000000000000000000000000000000000000000014d1120d7b160000fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa0100ffffe666666666666666666666666666666666666666666666666666666666670000000000000000000000000000000000000000000000000000000000000001", + "dataAbiValues": { + "methodSignature": "handleOnSettleBondEscalation(uint256,uint256,uint256,uint256)", + "inputValues": [ + "1500000000000000000", + "115792089237316195423570985008687907853269984665640564039457584007913129246976", + "115791912552609717585138026678937833561418401917250876477561771847293000377959", + "1" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 35958, + "blockTimestampDelay": 189815 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000080000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xd1a556550000000000000000000000000000000000000000000000000000000000093a80", + "dataAbiValues": { + "methodSignature": "handleRevokeModule(uint256)", + "inputValues": [ + "604800" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 23866, + "blockTimestampDelay": 120766 + } +] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803577723000-1f6f9435-92ad-4363-9f0c-1e54059c5dc4.json b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803577723000-1f6f9435-92ad-4363-9f0c-1e54059c5dc4.json new file mode 100755 index 0000000..09b99dc --- /dev/null +++ b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803577723000-1f6f9435-92ad-4363-9f0c-1e54059c5dc4.json @@ -0,0 +1,209 @@ +[ + { + "call": { + "from": "0x0000000000000000000000000000000000030000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x13a8b8040000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000034000000000000000000000000000000000000000000000000000000000000000170000000000000000000000000000000000000000000000000000000000d2f000ffffc0000000000000000000000000000000000000000000000000000000000181dc31bc03ad9bc8a966de91dfc8c49b929f6d5fd44a9c22a7f5bb37cebfc106ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed8ee8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6c5805bc2cfc37067e378b4feef3f3411136744d0b2851c161c601669654cf27bfe6100000000000000000000000000000000000000000000000000000000000000006cd40d93882a844c2becf361c7579664aef7a6ef6e8b79d6bf6f6f76426e9b14039e696f94058cfd274de97421f65916ac135f4d55083d357b9c1f34820c9376000000000000000000000000000000000000000000000000000000000003fffe000000000000000000000000000000000000000000000000000000000000000167e6a528e0202cf23a36eacf513eee303475d3e4c983b2ae2d616b11c440f70aaa625827d77aa233df42016988900477ead582090357ec011f404ff1f0aa321bfffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9686c2d73382b1edfa908bcaeb6b9ac0073f469887a9150c80831642e47e35a614c1bffffffffffffffffffffffffffffffffffffffffffffe48e5eb33a3a7f000000104a13a90c13653470268ea78892361e7e91e706d859aabaaf45ddd18c956640809a37cc7335cdf29b7d988dc8c05e2c1899ad1795364e6fa667088b49487472000000000000000000000000000000000000000000000000000000000000fff6fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b80756993dc4be6ecf1e46c48d6f9cae9255a8b46ef956a3d85442a5f41f70ecf93000000000000000000000000000000000000000000000000000000000076a700a77a4c48695a0407441e86efc633aee092d2ebd99c87fdfeebcd904fe33e086d000000000000000000000000000000000000000000000000000000000000001d563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd0633ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed69586530127b846a0115a3e561f49781eea70d4bcc4884906080e6adb068ff5fe13953f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b4498bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef328d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad82082401f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade0554594d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e05648dd821e471bd9a22c1f612735d2d7244c13832c4b0f28993ecafc561bfc52ae4f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cbba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c33f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8fd276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f6617237058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf259a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe2665f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a219fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb", + "dataAbiValues": { + "methodSignature": "handleCreateRequests(uint256[],bytes32[])", + "inputValues": [ + [ + "13824000", + "115791647525550000827488589184312722123641027794666345134718053606362806484993", + "58737407075920930096693749632210245280794127876199190949253348332199714210054", + "115792089237316195423570985008687907853269984665640564039457584007913128431336", + "115792089237316195423570985008687907853269984665640564039457584007913129035136", + "41504671482165347584846103287222174319130579613222615088745194098566077611617", + "0", + "49224452924880417829398231270379785502530069722970149981823851608145893694228", + "1636828073493779560152621491074002847609709387720111137750911676859097584502", + "262142", + "1", + "46995738119123743123282428161140493004285235666026628953647859202250191730442", + "77066943699312596523560233185714836616924754343478096130098486630426813805083", + "115792089237316195423570985008687907853269984665640564039457584007913129207916", + "20557653259021005890251421269967042420225955023564768794272035576696478452763", + "115792089237316195423570985008687907853269984665640563909857584007913129639936", + "7367887950809164700104084563884591449786965425123545364576065505479275931200", + "58168524174645209900719041489934173752247098791866719219864340874379345294450", + "65526", + "115792089237316195423570985008687907853269984665640564039457584007913129380736", + "53107142721938561923251317745913031228477959801596843755970727929974933606291", + "7776000", + "75752327540241786815348607290604056680494387521335977257182003214564422715501" + ], + [ + "563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe", + "27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a", + "9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd06", + "33ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865", + "30127b846a0115a3e561f49781eea70d4bcc4884906080e6adb068ff5fe13953", + "f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1", + "c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b44", + "98bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01", + "108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef32", + "8d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea", + "94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad8208240", + "1f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade05545", + "94d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056", + "48dd821e471bd9a22c1f612735d2d7244c13832c4b0f28993ecafc561bfc52ae", + "4f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa", + "9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874", + "ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cb", + "ba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c3", + "3f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8f", + "d276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99", + "fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce", + "3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb", + "4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f661723", + "7058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78", + "994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25", + "9a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe26", + "65f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a2", + "19fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c", + "51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb" + ] + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 21265, + "blockTimestampDelay": 360627 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000050000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x91e32c74e0613faa5f896b73380078af3c1ee8605eec949aaf9c8f422f264f3de916b58d4b3032484de1fb4c70c2a705584283a0288158e7d201a2526966e049d49acde5", + "dataAbiValues": { + "methodSignature": "handleCreateRequest(uint256,bytes32)", + "inputValues": [ + "101489901651207154401933345705911812335881908306802664469868899807780031346061", + "4b3032484de1fb4c70c2a705584283a0288158e7d201a2526966e049d49acde5" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 23884, + "blockTimestampDelay": 297676 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000080000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x62e8fd350000000000000000000000000000000000000000000000000000000000000000f3e0a4b7d4b9f146c330bf4206493b9644386108e6fb9dbd1ec9e9631656b911", + "dataAbiValues": { + "methodSignature": "handleOnDisputeStatusChange(uint256,uint256)", + "inputValues": [ + "0", + "110308932790717902341334723675742636402013152744066319296234386176011142609169" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 6, + "blockTimestampDelay": 447025 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000060000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xb05752f7000000000000000000000000000000000000000000000000000000000083d600ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff3cb74a490a6b235de22fdba8b11c89c1a75ba52781eaa376b8904d607971473952c39b6854fd2443ddec68f9b401b12b2c3233b939e902ba2cc4b78fc21880c9", + "dataAbiValues": { + "methodSignature": "handleOnSettleBondEscalation(uint256,uint256,uint256,uint256)", + "inputValues": [ + "8640000", + "115792089237316195423570985008687907853269984665640564039457584007913129639935", + "27462616626253393834172180586494418890954476283257859666307992469208736810809", + "37435261344928203651121242557808094327910915308413204917974281668150859169993" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 20576, + "blockTimestampDelay": 441138 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000050000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x88b05f29000000000000000000000000000000000000000000000000000000000009fffe000000000000000000000000c43801cd359a82757df4289878ce85539b0fcade000000000000000000000000000000000000000000000000000000000000006434998e76fdd43c55ad90e4a35d96044a3ebe674f5dfa103757d366102ca9f26c00000000000000000000000000000000000000000000000000000000000001000e694122e842adea5277bbbdab0b14091c2583d39824533976734442dab724e2195f41f8193b8fdb454e4c675da554f0f9409064f42db392c9ab9d5e83fad976fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe", + "dataAbiValues": { + "methodSignature": "handleSetDisputeModuleData(uint256,(address,address,uint256,uint256,uint256,uint256,uint256))", + "inputValues": [ + "655358", + { + "accountingExtension": "0xc43801Cd359A82757Df4289878CE85539B0fcAdE", + "bondEscalationDeadline": "6518348376578069825047353184871606747778953752910129049968505915388248663266", + "bondSize": "23791578983227214469447533216306682837879210004146422934780693486186688803436", + "bondToken": "0x0000000000000000000000000000000000000064", + "disputeWindow": "115792089237316195423570985008687907853269984665640564039457584007913129639934", + "maxNumberOfEscalations": "256", + "tyingBuffer": "11476126987972230713107770724661081842991657660629818104854040000448595417462" + } + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 1, + "blockTimestampDelay": 2 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000020000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xf84d6dfc00000000000000000000000000000000000000000000000006f05b59d3ad0000", + "dataAbiValues": { + "methodSignature": "handleAddEBORequestCreatorRequestModule(uint256)", + "inputValues": [ + "499999999999672320" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 12976, + "blockTimestampDelay": 472659 + } +] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803577914000-83d29a38-d185-4da1-bf7c-796c32549172.json b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803577914000-83d29a38-d185-4da1-bf7c-796c32549172.json new file mode 100755 index 0000000..2366f1d --- /dev/null +++ b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803577914000-83d29a38-d185-4da1-bf7c-796c32549172.json @@ -0,0 +1,187 @@ +[ + { + "call": { + "from": "0x0000000000000000000000000000000000030000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x13a8b8040000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000034000000000000000000000000000000000000000000000000000000000000000170000000000000000000000000000000000000000000000000000000000d2f000ffffc0000000000000000000000000000000000000000000000000000000000181dc31bc03ad9bc8a966de91dfc8c49b929f6d5fd44a9c22a7f5bb37cebfc106ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed8ee8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b825bc2cfc37067e378b4feef3f3411136744d0b2851c161c601669654cf27afe610000000000000000000000000000000000000000000000000000000000000000578750b27e877a957d33dc50d914b1caf972efffa4bb78b85e66dd813a864ca4039e696f94058cfd274de97421f65916ac135f4d55083d357b9c1f34820c9376000000000000000000000000000000000000000000000000000000000003fffe000000000000000000000000000000000000000000000000000000000000000167e6a528e0202cf23a36eacf513eee303475d3e4c983b2ae2d616b11c440f70a4ac07813439b9213b22d4d86340307a2982de60c241368ad288dfea742b6eb5efffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9686c2d73382b1edfa908bcaeb6b9ac0073f469887a9150c80831642e47e35a614c1bffffffffffffffffffffffffffffffffffffffffffffe48e5eb33a3a7f000000104a13a90c13653470268ea78892361e7e91e706d859aabaaf45ddd18c956640809a37cc7335cdf29b7d988dc8c05e2c1899ad1795364e6fa667088b49487472000000000000000000000000000000000000000000000000000000000000fff6fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b800000000000000000000000000000000000000000000000000329c51ac594cf93000000000000000000000000000000000000000000000000000000000076a700a77a4c48695a0407441e86efc633aee092d2ebd99c87fdfeebcd904fe33e086d000000000000000000000000000000000000000000000000000000000000001d563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd0633ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865d5d6866ffb684491364a0853403f689144f5664f5d50de1b1a30d683ff29f21bf8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b4498bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef328d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad820824094c2949304cd969b5661cff34ece28aab6ca0f3eb707dc756ae848252d66c44a94d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae96291d8c581a922d52cd477658fcc2e2ca1f954f274ed2cd833a98e6d1d4455581f9d9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cbba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c389436d2b9b4dda11f7c2a5c1ca8fb20cba7512c884b100fa143fc24dc6c160eed276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f6617237058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25bcffd3ebd814d0f5e8e8dc7ef0303a14b98e79acfcabb14c9ad4225afd8f18c265f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a219fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c18aad5c04eb3f39ce81189eee664fb350f14bd8ce4dd62972aa7de342f017c7f", + "dataAbiValues": { + "methodSignature": "handleCreateRequests(uint256[],bytes32[])", + "inputValues": [ + [ + "13824000", + "115791647525550000827488589184312722123641027794666345134718053606362806484993", + "58737407075920930096693749632210245280794127876199190949253348332199714210054", + "115792089237316195423570985008687907853269984665640564039457584007913128431336", + "115792089237316195423570985008687907853269984665640564039457584007913129380738", + "41504671482165347584846103287222174319130579613222615088745194098566077546081", + "0", + "39590299132392589184737138068833640165131826767556478003143025413084726840484", + "1636828073493779560152621491074002847609709387720111137750911676859097584502", + "262142", + "1", + "46995738119123743123282428161140493004285235666026628953647859202250191730442", + "33811214160519685654400438720767591502827986970858420988841187408488311483230", + "115792089237316195423570985008687907853269984665640564039457584007913129207916", + "20557653259021005890251421269967042420225955023564768794272035576696478452763", + "115792089237316195423570985008687907853269984665640563909857584007913129639936", + "7367887950809164700104084563884591449786965425123545364576065505479275931200", + "58168524174645209900719041489934173752247098791866719219864340874379345294450", + "65526", + "115792089237316195423570985008687907853269984665640564039457584007913129380736", + "227929974933606291", + "7776000", + "75752327540241786815348607290604056680494387521335977257182003214564422715501" + ], + [ + "563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe", + "27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a", + "9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd06", + "33ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865", + "d5d6866ffb684491364a0853403f689144f5664f5d50de1b1a30d683ff29f21b", + "f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1", + "c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b44", + "98bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01", + "108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef32", + "8d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea", + "94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad8208240", + "94c2949304cd969b5661cff34ece28aab6ca0f3eb707dc756ae848252d66c44a", + "94d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056", + "cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae96291", + "d8c581a922d52cd477658fcc2e2ca1f954f274ed2cd833a98e6d1d4455581f9d", + "9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874", + "ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cb", + "ba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c3", + "89436d2b9b4dda11f7c2a5c1ca8fb20cba7512c884b100fa143fc24dc6c160ee", + "d276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99", + "fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce", + "3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb", + "4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f661723", + "7058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78", + "994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25", + "bcffd3ebd814d0f5e8e8dc7ef0303a14b98e79acfcabb14c9ad4225afd8f18c2", + "65f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a2", + "19fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c", + "18aad5c04eb3f39ce81189eee664fb350f14bd8ce4dd62972aa7de342f017c7f" + ] + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 21265, + "blockTimestampDelay": 360627 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000020000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x161c7318", + "dataAbiValues": { + "methodSignature": "test_debug()", + "inputValues": [] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 15325, + "blockTimestampDelay": 189245 + }, + { + "call": { + "from": "0x00000000000000000000000000000000000a0000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x88b05f294e5c5739570432e46e997185cf2683c287e8339e1ce7ab9502db4f4b4f0c1b77000000000000000000000000000000000000000000000000000000000012750000000000000000000000000000000000000000000000000006f05b59d3b200003c3b20fe3c6474ef6112cec6e2e1e2a66147c502767418c32e65c3bfa035d898948fc45007206ff5c0b2215d0b5c97d5551a84ed653f28e284b8567c463ce3650000000000000000000000000000000000000000000000000000000000069780ffffffffffffffffffffffffffffffffffffffffffffffffffffffec39800000109b1ce09a2caa796f35db2570026fd5d54f3b6f79d72997e7e30411ab7bab5f", + "dataAbiValues": { + "methodSignature": "handleSetDisputeModuleData(uint256,(address,address,uint256,uint256,uint256,uint256,uint256))", + "inputValues": [ + "35443554117267417118592017165536035041230544133048285386578266163756344810359", + { + "accountingExtension": "0x0000000000000000000000000000000000127500", + "bondEscalationDeadline": "432000", + "bondSize": "27243242601887521753615714576112380311306725462768124357416761313244220872856", + "bondToken": "0x00000000000000000000000006f05b59d3b20000", + "disputeWindow": "7511066176535142771400004346711719422194606327049609712661925953610498943839", + "maxNumberOfEscalations": "67196315620416968751812103706326677402054656808860235011842083525495944438629", + "tyingBuffer": "115792089237316195423570985008687907853269984665640564039457584007828194983936" + } + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 24101, + "blockTimestampDelay": 185392 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000010000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xb6c75efa8ba080b8a5e8e7e02b35ca63d619e3bf03ea7ee17a7395426e8c0ae38903a378ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff51e8737b07890aad8af4228017f323f8ee58c58602fe8a95d9a372445358479b", + "dataAbiValues": { + "methodSignature": "handleClaimEscalationReward(uint256,uint256,uint256)", + "inputValues": [ + "63155069885073485423962987089686113899340909970551762747564159406599093592952", + "115792089237316195423570985008687907853269984665640564039457584007913129639935", + "37048046271970045328561159781521571766041874645079829392453863326819299116955" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 7, + "blockTimestampDelay": 32 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000090000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x223b137400003ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe000000000000000000000000000000000000000000000000000000000000004006807205175b22b301c32b6c5e6ee194bd596681cba8c8638952ec1250f3d6450000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000000000000000000000000000000001518000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000027874838a0b68a875ec0ee81d4c8ef1980254e8ae6eaec10d74722bac9ebd5a49a6c310208a5de1500000000000000000000000000000000000000000000000000", + "dataAbiValues": { + "methodSignature": "handleSetRequestModuleData(uint256,(uint256,string,address,uint256))", + "inputValues": [ + "441711766194596082395824375185729628956870974218904739530401550323154942", + { + "accountingExtension": "0x0000000000000000000000000000000000015180", + "chainId": "\ufffdH8\ufffd\ufffd\ufffd\ufffd^\ufffd\ufffd\ufffd\ufffd\ufffd\ufffd\u0019\ufffd%N\ufffd\ufffd\ufffd\ufffd\u0010\ufffdG\"\ufffd\ufffd\ufffdդ\ufffdl1\u0002\b\ufffd\ufffd\u0015", + "epoch": "2940820452134172681045375212785432443100619197912571245547930807664892958277", + "paymentAmount": "0" + } + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 15253, + "blockTimestampDelay": 492034 + } +] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803579664000-a886f310-136b-4d5e-b32b-512a0240982f.json b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803579664000-a886f310-136b-4d5e-b32b-512a0240982f.json new file mode 100755 index 0000000..c798781 --- /dev/null +++ b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803579664000-a886f310-136b-4d5e-b32b-512a0240982f.json @@ -0,0 +1,181 @@ +[ + { + "call": { + "from": "0x0000000000000000000000000000000000030000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x13a8b8040000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000034000000000000000000000000000000000000000000000000000000000000000170000000000000000000000000000000000000000000000000000000000d2f000ffffc0000000000000000000000000000000000000000000000000000000000181dc31bc03ad9bc8a966de91dfc8c49b929f6d5fd44a9c22a7f5bb37cebfc106ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed8ee8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b825bc2cfc37067e378b4feef3f3411136744d0b2851c161c601669654cf27bfe610000000000000000000000000000000000000000000000000000000000000000578750b27e877a957d33dc50d914b1caf972efffa4bb78b85e66dd813a864ca4039e696f94058cfd274de97421f65916ac135f4d55083d357b9c1f34820c9376000000000000000000000000000000000000000000000000000000000003fffe000000000000000000000000000000000000000000000000000000000000000167e6a528e0202cf23a36eacf513eee303475d3e4c983b2ae2d616b11c440f70a4ac07813439b9213b22d4d86340307a2982de60c241368ad288dfea742b6eb5efffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9686c2d73382b1edfa908bcaeb6b9ac0073f469887a9150c80831642e47e35a614c1bffffffffffffffffffffffffffffffffffffffffffffe48e5eb33a3a7f000000104a13a90c13653470268ea78892361e7e91e706d859aabaaf45ddd18c956640809a37cc7335cdf29b7d988dc8c05e2c1899ad1795364e6fa667088b49487472000000000000000000000000000000000000000000000000000000000000fff6fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b800000000000000000000000000000000000000000000000000329c51ac594cf93000000000000000000000000000000000000000000000000000000000076a700a77a4c48695a0407441e86efc633aee092d2ebd99c87fdfeebcd904fe33e086d000000000000000000000000000000000000000000000000000000000000001d563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd0633ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865d5d6866ffb684491364a0853403f689144f5664f5d50de1b1a30d683ff29f21bf8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b4498bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef328d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad82082401f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade0554594d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae96291d8c581a922d52cd477658fcc2e2ca1f954f274ed2cd833a98e6d1d4455581f9d9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cbba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c33f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8fd276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f6617237058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf259a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe2665f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a219fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb", + "dataAbiValues": { + "methodSignature": "handleCreateRequests(uint256[],bytes32[])", + "inputValues": [ + [ + "13824000", + "115791647525550000827488589184312722123641027794666345134718053606362806484993", + "58737407075920930096693749632210245280794127876199190949253348332199714210054", + "115792089237316195423570985008687907853269984665640564039457584007913128431336", + "115792089237316195423570985008687907853269984665640564039457584007913129380738", + "41504671482165347584846103287222174319130579613222615088745194098566077611617", + "0", + "39590299132392589184737138068833640165131826767556478003143025413084726840484", + "1636828073493779560152621491074002847609709387720111137750911676859097584502", + "262142", + "1", + "46995738119123743123282428161140493004285235666026628953647859202250191730442", + "33811214160519685654400438720767591502827986970858420988841187408488311483230", + "115792089237316195423570985008687907853269984665640564039457584007913129207916", + "20557653259021005890251421269967042420225955023564768794272035576696478452763", + "115792089237316195423570985008687907853269984665640563909857584007913129639936", + "7367887950809164700104084563884591449786965425123545364576065505479275931200", + "58168524174645209900719041489934173752247098791866719219864340874379345294450", + "65526", + "115792089237316195423570985008687907853269984665640564039457584007913129380736", + "227929974933606291", + "7776000", + "75752327540241786815348607290604056680494387521335977257182003214564422715501" + ], + [ + "563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe", + "27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a", + "9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd06", + "33ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865", + "d5d6866ffb684491364a0853403f689144f5664f5d50de1b1a30d683ff29f21b", + "f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1", + "c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b44", + "98bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01", + "108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef32", + "8d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea", + "94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad8208240", + "1f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade05545", + "94d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056", + "cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae96291", + "d8c581a922d52cd477658fcc2e2ca1f954f274ed2cd833a98e6d1d4455581f9d", + "9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874", + "ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cb", + "ba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c3", + "3f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8f", + "d276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99", + "fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce", + "3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb", + "4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f661723", + "7058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78", + "994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25", + "9a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe26", + "65f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a2", + "19fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c", + "51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb" + ] + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 21265, + "blockTimestampDelay": 360627 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000020000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x161c7318", + "dataAbiValues": { + "methodSignature": "test_debug()", + "inputValues": [] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 15325, + "blockTimestampDelay": 189245 + }, + { + "call": { + "from": "0x00000000000000000000000000000000000a0000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x88b05f294e5c5739570432e46e997185cf2683c287e8339e1ce7ab9502db4f4b4f0c1b77000000000000000000000000000000000000000000000000000000000012750000000000000000000000000000000000000000000000000006f05b59d3b200003c3b20fe3c6474ef6112cec6e2e1e2a66147c502767418c32e65c3bfa035d898948fc45007206ff5c0b2215d0b5c97d5551a84ed653f28e284b8567c463ce3650000000000000000000000000000000000000000000000000000000000069780ffffffffffffffffffffffffffffffffffffffffffffffffffffffec398000000000000000000000000000000000000000000000000000000000000000093a80", + "dataAbiValues": { + "methodSignature": "handleSetDisputeModuleData(uint256,(address,address,uint256,uint256,uint256,uint256,uint256))", + "inputValues": [ + "35443554117267417118592017165536035041230544133048285386578266163756344810359", + { + "accountingExtension": "0x0000000000000000000000000000000000127500", + "bondEscalationDeadline": "432000", + "bondSize": "27243242601887521753615714576112380311306725462768124357416761313244220872856", + "bondToken": "0x00000000000000000000000006f05b59d3b20000", + "disputeWindow": "604800", + "maxNumberOfEscalations": "67196315620416968751812103706326677402054656808860235011842083525495944438629", + "tyingBuffer": "115792089237316195423570985008687907853269984665640564039457584007828194983936" + } + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 24101, + "blockTimestampDelay": 185392 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000040000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x3c26dcf8000000000000000000000000000000000000000000000853a0d2313c00000000", + "dataAbiValues": { + "methodSignature": "handleSetEpochManager(uint256)", + "inputValues": [ + "39321600000000000000000" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 23050, + "blockTimestampDelay": 360593 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000070000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x1c6850cfb0e3106162bbf50b7b4f4127a44fc6dee30686640d85ab8a97c7a387e688d09200000000000000000000000000000000000000000000000000000000000151800000000000000000000000000000000000000000000000000de0b6b3a7640000", + "dataAbiValues": { + "methodSignature": "handleUpdateDisputeStatus(uint256,uint256,uint256)", + "inputValues": [ + "80008248687813878652618995284154503941697939794158322754224777983398987223186", + "86400", + "1000000000000000000" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 17066, + "blockTimestampDelay": 86400 + } +] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803580224000-4d28fe91-5746-4c39-a8f0-ed56ca160a14.json b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803580224000-4d28fe91-5746-4c39-a8f0-ed56ca160a14.json new file mode 100755 index 0000000..e65dea9 --- /dev/null +++ b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803580224000-4d28fe91-5746-4c39-a8f0-ed56ca160a14.json @@ -0,0 +1,128 @@ +[ + { + "call": { + "from": "0x0000000000000000000000000000000000030000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x13a8b8040000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000034000000000000000000000000000000000000000000000000000000000000000170000000000000000000000000000000000000000000000000000000000d2f000ffffc0000000000000000000000000000000000000000000000000000000000181dc31bc03ad9bc8a966de91dfc8c49b929f6d5fd44a9c22a7f5bb37cebfc106000000000000000000000000000000000000000000007ff72b2c19616ab00000e645df196666f5e4e940c577b9670b086db2c746878e45aae0dbee6c63a0e6a35bc2cfc37067e378b4feef3f3411136744d0b2851c161c601669654cf27bfe6100000000000000000000000000000000000000000000000000000000000000006cd40d93882a844c2becf361c7579664aef7a6ef6e8b79d6bf6f6f76426e9b14039e696f94058cfd274de97421f65916ac135f4d55083d357b9c1f34820c9376000000000000000000000000000000000000000000000000000000000003fffe000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000004ac07813439b9213b22d4d86340307a2982de60c241368ad288dfea742b6eb5efffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9686c2d73382b1edfa908bcaeb6b9ac0073f469887a9150c80831642e47e35a614c1bffffffffffffffffffffffffffffffffffffffffffffe48e5eb33a3a7f000000104a13a90c13653470268ea78892361e7e91e706d859aabaaf45ddd18c956640809a37cc7335cdf29b7d988dc8c05e2c1899ad1795364e6fa667088b49487472000000000000000000000000000000000000000000000000000000000000fff6fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b80756993dc4be6ecf1e46c48d6f9cae9255a8b46ef956a3d85442a5f41f70ecf93000000000000000000000000000000000000000000000000000000000076a700a77a4c48695a0407441e86efc633aee092d2ebd99c87fdfeebcd904fe33e086d000000000000000000000000000000000000000000000000000000000000001d563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd0633ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed6958658aad3329b56f2f98187bbaed7351982ae06a00b9382adcb723b8b393d1f5e2def8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b4498bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a0171bc7dd16f0e277b94f2e46980d7e8e6c3c5187bf68be378e2d72cd0e70293ef8d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad82082401f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade0554594d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae962914f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874465e592f6d3f1d78fbc619b878d95794035829bd9b1285f3eb021d72f8e45638ba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c33f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8fd276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a9925e5ea45a807ae40eb654d82982bacb30bb1da6060d308d0b63004f4e1926b0c3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f6617237058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf259a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe2665f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a219fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb", + "dataAbiValues": { + "methodSignature": "handleCreateRequests(uint256[],bytes32[])", + "inputValues": [ + [ + "13824000", + "115791647525550000827488589184312722123641027794666345134718053606362806484993", + "58737407075920930096693749632210245280794127876199190949253348332199714210054", + "604300000000000000000000", + "104155407395839188072220307346509508179171066778602859964492537460856123877027", + "41504671482165347584846103287222174319130579613222615088745194098566077611617", + "0", + "49224452924880417829398231270379785502530069722970149981823851608145893694228", + "1636828073493779560152621491074002847609709387720111137750911676859097584502", + "262142", + "1", + "0", + "33811214160519685654400438720767591502827986970858420988841187408488311483230", + "115792089237316195423570985008687907853269984665640564039457584007913129207916", + "20557653259021005890251421269967042420225955023564768794272035576696478452763", + "115792089237316195423570985008687907853269984665640563909857584007913129639936", + "7367887950809164700104084563884591449786965425123545364576065505479275931200", + "58168524174645209900719041489934173752247098791866719219864340874379345294450", + "65526", + "115792089237316195423570985008687907853269984665640564039457584007913129380736", + "53107142721938561923251317745913031228477959801596843755970727929974933606291", + "7776000", + "75752327540241786815348607290604056680494387521335977257182003214564422715501" + ], + [ + "563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe", + "27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a", + "9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd06", + "33ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865", + "8aad3329b56f2f98187bbaed7351982ae06a00b9382adcb723b8b393d1f5e2de", + "f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1", + "c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b44", + "98bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01", + "71bc7dd16f0e277b94f2e46980d7e8e6c3c5187bf68be378e2d72cd0e70293ef", + "8d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea", + "94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad8208240", + "1f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade05545", + "94d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056", + "cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae96291", + "4f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa", + "9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874", + "465e592f6d3f1d78fbc619b878d95794035829bd9b1285f3eb021d72f8e45638", + "ba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c3", + "3f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8f", + "d276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99", + "25e5ea45a807ae40eb654d82982bacb30bb1da6060d308d0b63004f4e1926b0c", + "3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb", + "4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f661723", + "7058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78", + "994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25", + "9a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe26", + "65f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a2", + "19fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c", + "51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb" + ] + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 21265, + "blockTimestampDelay": 360627 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000030000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 2, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x0692ea7eeaaa73118d1da2c1db95511517ab896f87445c2331029aecdc7f065f634e6b46", + "dataAbiValues": { + "methodSignature": "handleRemoveChain(uint256)", + "inputValues": [ + "106142364743506859045918558596602602319943607038906547683486076996802461985606" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 2001, + "blockTimestampDelay": 455470 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000090000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x864e2da9fffffffffffffffffffffffffffffffffffffffffffffffff90fa4a62c573a80b81e8d97661fbf779db19fd00793e39f3b40bca612ee408ab75ff1c6439cf047509736e50626b1084ee93f4294000f73db102927cdc7fc34de68c384da900e6c", + "dataAbiValues": { + "methodSignature": "handleArbitrateDispute(uint256,uint256,uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457084007913130244736", + "83279546779206125286340055887058748934887896216240549764862301155730028032071", + "36452200662221151095065482565067302916782446267779931962683895890335455252076" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 41956, + "blockTimestampDelay": 475112 + } +] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803580455000-b20b34f9-5e1b-4d0f-8572-f21362b0e345.json b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803580455000-b20b34f9-5e1b-4d0f-8572-f21362b0e345.json new file mode 100755 index 0000000..aaa0b08 --- /dev/null +++ b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803580455000-b20b34f9-5e1b-4d0f-8572-f21362b0e345.json @@ -0,0 +1,173 @@ +[ + { + "call": { + "from": "0x0000000000000000000000000000000000030000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x13a8b80400000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000340000000000000000000000000000000000000000000000000000000000000001700000000000000000000000000000000000000000000000000000000000010e0ffffc0000000000000000000000000000000000000000000000000000000000181dc31bc03ad9bc8a966de91dfc8c49b929f6d5fd44a9c22a7f5bb37cebfc106ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed8ee8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b825bc2cfc37067e378b4feef3f3411136744d0b2851c161c601669654cf27bfe6100000000000000000000000000000000000000000000000000000000000000006cd40d93882a844c2becf361c7579664aef7a6ef6e8b79d6bf6f6f76426e9b14039e696f94058cfd274de97421f65916ac135f4d55083d357b9c1f34820c9376000000000000000000000000000000000000000000000000000000000003fffe000000000000000000000000000000000000000000000000000000000000000167e6a528e0202cf23a36eacf513eee303475d3e4c983b2ae2d616b11c440f70a0000000000000000000000000000000000000000000000000000000000000000fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9686c2d73382b1edfa908bcaeb6b9ac0073f469887a9150c80831642e47e35a614c1bffffffffffffffffffffffffffffffffffffffffffffe48e5eb33a3a7f000000104a13a90c13653470268ea78892361e7e91e706d859aabaaf45ddd18c956640809a37cc7335cdf29b7d988dc8c05e2c1899ad1795364e6fa667088b49487472000000000000000000000000000000000000000000000000000000000000fff6fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b80756993dc4be6ecf1e46c48d6f9cae9255a8b46ef956a3d85442a5f41f70ecf93000000000000000000000000000000000000000000000000000000000076a700a77a4c48695a0407441e86efc633aee092d2ebd99c87fdfeebcd904fe33e086d000000000000000000000000000000000000000000000000000000000000001d563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd0633ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed6958658aad3329b56f2f98187bbaed7351982ae06a00b9382adcb723b8b393d1f5e2def8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b4498bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef328d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad82082401f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade0554594d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e0568fcad889d076bcc6f0b5c84a4f6f334b74f944740b9f88a51f2895e76dd401884f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cbba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c33f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8fd276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f6617237058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25abbc2a768fea28edd1d653edcbaa5cace525564c5330b62b6ed63452f3b221f165f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a219fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb", + "dataAbiValues": { + "methodSignature": "handleCreateRequests(uint256[],bytes32[])", + "inputValues": [ + [ + "4320", + "115791647525550000827488589184312722123641027794666345134718053606362806484993", + "58737407075920930096693749632210245280794127876199190949253348332199714210054", + "115792089237316195423570985008687907853269984665640564039457584007913128431336", + "115792089237316195423570985008687907853269984665640564039457584007913129380738", + "41504671482165347584846103287222174319130579613222615088745194098566077611617", + "0", + "49224452924880417829398231270379785502530069722970149981823851608145893694228", + "1636828073493779560152621491074002847609709387720111137750911676859097584502", + "262142", + "1", + "46995738119123743123282428161140493004285235666026628953647859202250191730442", + "0", + "115792089237316195423570985008687907853269984665640564039457584007913129207916", + "20557653259021005890251421269967042420225955023564768794272035576696478452763", + "115792089237316195423570985008687907853269984665640563909857584007913129639936", + "7367887950809164700104084563884591449786965425123545364576065505479275931200", + "58168524174645209900719041489934173752247098791866719219864340874379345294450", + "65526", + "115792089237316195423570985008687907853269984665640564039457584007913129380736", + "53107142721938561923251317745913031228477959801596843755970727929974933606291", + "7776000", + "75752327540241786815348607290604056680494387521335977257182003214564422715501" + ], + [ + "563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe", + "27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a", + "9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd06", + "33ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865", + "8aad3329b56f2f98187bbaed7351982ae06a00b9382adcb723b8b393d1f5e2de", + "f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1", + "c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b44", + "98bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01", + "108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef32", + "8d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea", + "94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad8208240", + "1f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade05545", + "94d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056", + "8fcad889d076bcc6f0b5c84a4f6f334b74f944740b9f88a51f2895e76dd40188", + "4f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa", + "9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874", + "ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cb", + "ba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c3", + "3f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8f", + "d276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99", + "fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce", + "3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb", + "4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f661723", + "7058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78", + "994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25", + "abbc2a768fea28edd1d653edcbaa5cace525564c5330b62b6ed63452f3b221f1", + "65f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a2", + "19fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c", + "51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb" + ] + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 21265, + "blockTimestampDelay": 360627 + }, + { + "call": { + "from": "0x00000000000000000000000000000000000a0000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x6b125a57f70d7a9f8f7dc147f3c07846c57ff55a159156e04b1aef93f09a50411ed01cac", + "dataAbiValues": { + "methodSignature": "handleRemoveEBORequestCreatorFinalityModule(uint256)", + "inputValues": [ + "111745088926706135766942953021093517459235404528421949148968020375462747315372" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 41182, + "blockTimestampDelay": 251336 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000090000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x9f6259e5f758e7d4f100dcc2db3c85b9df5a8759d5abbd1697a1a04ec3af1471f220359a0000000000000000000000007109709ecfa91a80626ff3989d68f67f5b1dd12d", + "dataAbiValues": { + "methodSignature": "handleResolve(uint256,uint256)", + "inputValues": [ + "111878356186062714847010348548460913142200960060168223055923222451354708489626", + "645326474426547203313410069153905908525362434349" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 36881, + "blockTimestampDelay": 523741 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000050000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x0692ea7efffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7fc18", + "dataAbiValues": { + "methodSignature": "handleRemoveChain(uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913129114648" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 6610, + "blockTimestampDelay": 345959 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000060000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x9d2e6a6ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd0000", + "dataAbiValues": { + "methodSignature": "handleRemoveEBORequestCreatorRequestModule(uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913129443328" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 43871, + "blockTimestampDelay": 505590 + } +] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803581400000-be76a133-7392-4cf1-904a-fb9e7463d9ff.json b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803581400000-be76a133-7392-4cf1-904a-fb9e7463d9ff.json new file mode 100755 index 0000000..a106ee1 --- /dev/null +++ b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803581400000-be76a133-7392-4cf1-904a-fb9e7463d9ff.json @@ -0,0 +1,221 @@ +[ + { + "call": { + "from": "0x0000000000000000000000000000000000030000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x13a8b8040000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000034000000000000000000000000000000000000000000000000000000000000000170000000000000000000000000000000000000000000000000000000000d2f000ffffc0000000000000000000000000000000000000000000000000000000000181dc31bc03ad9bc8a966de91dfc8c49b929f6d5fd44a9c22a7f5bb37cebfc106ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed8ee8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b825bc2cfc37067e378b4feef3f3411136744d0b2851c161c601669654cf27bfe6100000000000000000000000000000000000000000000000000000000000000006cd40d93882a844c2becf361c7579664aef7a6ef6e8b79d6bf6f6f76426e9b14039e696f94058cfd274de97421f65916ac135f4d55083d357b9c1f34820c9376000000000000000000000000000000000000000000000000000000000003fffe000000000000000000000000000000000000000000000000000000000000000167e6a528e0202cf23a36eacf513eee303475d3e4c983b2ae2d616b11c440f70a4ac07813439b9213b22d4d86340307a2982de60c241368ad288dfea742b6eb5efffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9686c2d73382b1edfa908bcaeb6b9ac0073f469887a9150c80831642e47e35a614c1bffffffffffffffffffffffffffffffffffffffffffffe48e5eb33a3a7f000000104a13a90c13653470268ea78892361e7e91e706d859aabaaf45ddd18c956640809a37cc7335cdf29b7d988dc8c05e2c1899ad1795364e6fa667088b49487472000000000000000000000000000000000000000000000000000000000000fff6fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b80756993dc4be6ecf1e46c48d6f9cae9255a8b46ef956a3d85442a5f41f70ecf93000000000000000000000000000000000000000000000000000000000076a700a77a4c48695a0407441e86efc633aee092d2ebd99c87fdfeebcd904fe33e086d000000000000000000000000000000000000000000000000000000000000001d563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd0633ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed6958658aad3329b56f2f98187bbaed7351982ae06a00b9382adcb723b8b393d1f5e2def8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b4498bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef328d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad82082401f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade0554594d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae962914f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cbba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c33f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8fd276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f6617237058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf259a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe2665f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a219fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb", + "dataAbiValues": { + "methodSignature": "handleCreateRequests(uint256[],bytes32[])", + "inputValues": [ + [ + "13824000", + "115791647525550000827488589184312722123641027794666345134718053606362806484993", + "58737407075920930096693749632210245280794127876199190949253348332199714210054", + "115792089237316195423570985008687907853269984665640564039457584007913128431336", + "115792089237316195423570985008687907853269984665640564039457584007913129380738", + "41504671482165347584846103287222174319130579613222615088745194098566077611617", + "0", + "49224452924880417829398231270379785502530069722970149981823851608145893694228", + "1636828073493779560152621491074002847609709387720111137750911676859097584502", + "262142", + "1", + "46995738119123743123282428161140493004285235666026628953647859202250191730442", + "33811214160519685654400438720767591502827986970858420988841187408488311483230", + "115792089237316195423570985008687907853269984665640564039457584007913129207916", + "20557653259021005890251421269967042420225955023564768794272035576696478452763", + "115792089237316195423570985008687907853269984665640563909857584007913129639936", + "7367887950809164700104084563884591449786965425123545364576065505479275931200", + "58168524174645209900719041489934173752247098791866719219864340874379345294450", + "65526", + "115792089237316195423570985008687907853269984665640564039457584007913129380736", + "53107142721938561923251317745913031228477959801596843755970727929974933606291", + "7776000", + "75752327540241786815348607290604056680494387521335977257182003214564422715501" + ], + [ + "563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe", + "27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a", + "9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd06", + "33ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865", + "8aad3329b56f2f98187bbaed7351982ae06a00b9382adcb723b8b393d1f5e2de", + "f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1", + "c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b44", + "98bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01", + "108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef32", + "8d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea", + "94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad8208240", + "1f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade05545", + "94d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056", + "cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae96291", + "4f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa", + "9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874", + "ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cb", + "ba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c3", + "3f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8f", + "d276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99", + "fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce", + "3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb", + "4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f661723", + "7058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78", + "994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25", + "9a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe26", + "65f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a2", + "19fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c", + "51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb" + ] + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 21265, + "blockTimestampDelay": 360627 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000050000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x91e32c74e0613faa5f896b73380078af3c1ee8605eec949aaf9c8f422f264f3de916b58dc905ee964be623d23ba97ccc5a2b838249eaa10a8671d6a68f97b09746107abf", + "dataAbiValues": { + "methodSignature": "handleCreateRequest(uint256,bytes32)", + "inputValues": [ + "101489901651207154401933345705911812335881908306802664469868899807780031346061", + "c905ee964be623d23ba97ccc5a2b838249eaa10a8671d6a68f97b09746107abf" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 23884, + "blockTimestampDelay": 297676 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000020000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x161c7318", + "dataAbiValues": { + "methodSignature": "test_debug()", + "inputValues": [] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 0, + "blockTimestampDelay": 1 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000070000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xaa1a5bd9ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffee2cac1a259bf9695aac61487b4606621f281407f44a6d621116f436e53e00628b", + "dataAbiValues": { + "methodSignature": "handleResolveDispute(uint256,uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913129639918", + "20205843492154653597326893919151713313559584018734749877274787063574636290699" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 23891, + "blockTimestampDelay": 328958 + }, + { + "call": { + "from": "0x00000000000000000000000000000000000a0000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xec5bf215fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff60000", + "dataAbiValues": { + "methodSignature": "handleFinalizeRequestResponseModule(uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913128984576" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 23883, + "blockTimestampDelay": 276784 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000020000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xd1a55655fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe9c", + "dataAbiValues": { + "methodSignature": "handleRevokeModule(uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913129639580" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 14210, + "blockTimestampDelay": 524288 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000060000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x727899fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffb001400000000000000000000000000000000000000000000000000000000001275000000000000000000000000000000000000000000000000000000000000000000a46e28ce399e11c208b07a84e457189f5b64e15f51e128b7baf507642bfef8c6", + "dataAbiValues": { + "methodSignature": "handlePledge(uint256,uint256,uint256,uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913129312276", + "1209600", + "0", + "74373941974452021616102119156230516273735358461823357873191033522071497799878" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 1, + "blockTimestampDelay": 256 + } +] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803581661000-78189ca7-7948-4439-966b-4447023b9d74.json b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803581661000-78189ca7-7948-4439-966b-4447023b9d74.json new file mode 100755 index 0000000..605ac2d --- /dev/null +++ b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803581661000-78189ca7-7948-4439-966b-4447023b9d74.json @@ -0,0 +1,199 @@ +[ + { + "call": { + "from": "0x0000000000000000000000000000000000030000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x13a8b8040000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000034000000000000000000000000000000000000000000000000000000000000000170000000000000000000000000000000000000000000000000000000000d2f000ffffc0000000000000000000000000000000000000000000000000000000000181dc31bc03ad9bc8a966de91dfc8c49b929f6d5fd44a9c22a7f5bb37cebfc106ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed8ee8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b825bc2cfc37067e378b4feef3f3411136744d0b2851c161c601669654cf27bfe6100000000000000000000000000000000000000000000000000000000000000006cd40d93882a844c2becf361c7579664aef7a6ef6e8b79d6bf6f6f76426e9b14039e696f94058cfd274de97421f65916ac135f4d55083d357b9c1f34820c9376000000000000000000000000000000000000000000000000000000000003fffe000000000000000000000000000000000000000000000000000000000000000167e6a528e0202cf23a36eacf513eee303475d3e4c983b2ae2d616b11c440f70a4ac07813439b9213b22d4d86340307a2982de60c241368ad288dfea742b6eb5efffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9686c2d73382b1edfa908bcaeb6b9ac0073f469887a9150c80831642e47e35a614c1bffffffffffffffffffffffffffffffffffffffffffffe48e5eb33a3a7f000000104a13a90c13653470268ea78892361e7e91e706d859aabaaf45ddd18c956640809a37cc7335cdf29b7d988dc8c05e2c1899ad1795364e6fa667088b49487472ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffee00b4fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b80756993dc4be6ecf1e46c48d6f9cae9255a8b46ef956a3d85442a5f41f70ecf93000000000000000000000000000000000000000000000000000000000076a700a77a4c48695a0407441e86efc633aee092d2ebd99c87fdfeebcd904fe33e086d000000000000000000000000000000000000000000000000000000000000001d563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd0633ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865a46715d7736dde0bcf6527392542031b42d0197ab2c1bb4c4d2d7abaed280007f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b4498bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef328d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad82082401f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade0554594d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae962914f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cbba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c33f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8fd276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f6617237058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf259a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe260d35d19771f7c1af646e114de36d19c25e3fc040b27be76073113bb33db17d5d19fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb", + "dataAbiValues": { + "methodSignature": "handleCreateRequests(uint256[],bytes32[])", + "inputValues": [ + [ + "13824000", + "115791647525550000827488589184312722123641027794666345134718053606362806484993", + "58737407075920930096693749632210245280794127876199190949253348332199714210054", + "115792089237316195423570985008687907853269984665640564039457584007913128431336", + "115792089237316195423570985008687907853269984665640564039457584007913129380738", + "41504671482165347584846103287222174319130579613222615088745194098566077611617", + "0", + "49224452924880417829398231270379785502530069722970149981823851608145893694228", + "1636828073493779560152621491074002847609709387720111137750911676859097584502", + "262142", + "1", + "46995738119123743123282428161140493004285235666026628953647859202250191730442", + "33811214160519685654400438720767591502827986970858420988841187408488311483230", + "115792089237316195423570985008687907853269984665640564039457584007913129207916", + "20557653259021005890251421269967042420225955023564768794272035576696478452763", + "115792089237316195423570985008687907853269984665640563909857584007913129639936", + "7367887950809164700104084563884591449786965425123545364576065505479275931200", + "58168524174645209900719041489934173752247098791866719219864340874379345294450", + "115792089237316195423570985008687907853269984665640564039457584007913128460468", + "115792089237316195423570985008687907853269984665640564039457584007913129380736", + "53107142721938561923251317745913031228477959801596843755970727929974933606291", + "7776000", + "75752327540241786815348607290604056680494387521335977257182003214564422715501" + ], + [ + "563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe", + "27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a", + "9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd06", + "33ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865", + "a46715d7736dde0bcf6527392542031b42d0197ab2c1bb4c4d2d7abaed280007", + "f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1", + "c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b44", + "98bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01", + "108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef32", + "8d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea", + "94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad8208240", + "1f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade05545", + "94d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056", + "cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae96291", + "4f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa", + "9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874", + "ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cb", + "ba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c3", + "3f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8f", + "d276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99", + "fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce", + "3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb", + "4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f661723", + "7058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78", + "994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25", + "9a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe26", + "0d35d19771f7c1af646e114de36d19c25e3fc040b27be76073113bb33db17d5d", + "19fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c", + "51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb" + ] + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 21265, + "blockTimestampDelay": 360627 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000080000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x51b295e3caac5b7c00ae43f0a0d2465bc3a827daefa6255afc3feafd105a01b058af4cc3", + "dataAbiValues": { + "methodSignature": "handleFinalize(uint256)", + "inputValues": [ + "91671724510984325847623981850838041499373483072178023597879983910219265559747" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 616, + "blockTimestampDelay": 245182 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000070000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x62e8fd357410315e284ca2250b236ba99041acd7e7626e3fc66727657ddcb75ed512355238b8e299444e7771cad3e9cc9efbc8237922a7b18f034d56199ddaad5f62f70c", + "dataAbiValues": { + "methodSignature": "handleOnDisputeStatusChange(uint256,uint256)", + "inputValues": [ + "52496900712745351460185096722717982602139275703227615313943886816707427317074", + "25656183307321870319256066529210878052151786525540532817103830451324188817164" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 0, + "blockTimestampDelay": 0 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000010000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x5cc02fa53b4e8ff8cbb94866d057a07c347e0cb79a079e6c49875d6adb448ca8b36b2f93", + "dataAbiValues": { + "methodSignature": "handleSetPendingCouncil(uint256)", + "inputValues": [ + "26825265794714411535119211388793422995701606456004679527746190657884506501011" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 22951, + "blockTimestampDelay": 222797 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000090000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x7aeb6faba969b1150e65eb039223322d37083c0f930e9f96e767cfaf888c1440b89042a7ffffffffffffffffffffffffffffffffffffffffffffffffffffffbe15000000", + "dataAbiValues": { + "methodSignature": "handleDisputeResponseBondEscalationModule(uint256,uint256)", + "inputValues": [ + "76627612529152310655938988775485703136714009850335653768166292952282670580391", + "115792089237316195423570985008687907853269984665640564039457584007630014119936" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 23866, + "blockTimestampDelay": 274647 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000030000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 2, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xf4fbbf9b0000000000000000000000000000000000000000000000000000000000000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed8b007c3160c01450d95568fbc7e3fe876965aa411c1bf13d7be2baabf28cedd3012f", + "dataAbiValues": { + "methodSignature": "handleBond(uint256,uint256,uint256)", + "inputValues": [ + "0", + "115792089237316195423570985008687907853269984665640564039457584007913128430336", + "56174036476597730143689219709059961134239333858317208755745576773703517274415" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 0, + "blockTimestampDelay": 404026 + } +] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803582447000-6e98b3d8-7a3c-44ab-886c-20808a9bbc0a.json b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803582447000-6e98b3d8-7a3c-44ab-886c-20808a9bbc0a.json new file mode 100755 index 0000000..432be13 --- /dev/null +++ b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803582447000-6e98b3d8-7a3c-44ab-886c-20808a9bbc0a.json @@ -0,0 +1,145 @@ +[ + { + "call": { + "from": "0x0000000000000000000000000000000000040000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x52e3cb9c6b0d264b5add160d5053aa476132c22d6540d3605ad8dfb850790b1ba996569b", + "dataAbiValues": { + "methodSignature": "handleSetMaxUsersToCheck(uint256)", + "inputValues": [ + "48420708108177856443123222644862532857390746786695606854692354379525674915483" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 59698, + "blockTimestampDelay": 331757 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000020000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x62e8fd3500000000000000000000000000000000000000000000000000000000000000124ab950c09e2414c3ec444389b5281e1bdfda8ecfec5392240af8d376f3781e4f", + "dataAbiValues": { + "methodSignature": "handleOnDisputeStatusChange(uint256,uint256)", + "inputValues": [ + "18", + "33798574834817402171861624718400176195923458571787846279113220864863863578191" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 41059, + "blockTimestampDelay": 386818 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000040000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x161c7318", + "dataAbiValues": { + "methodSignature": "test_debug()", + "inputValues": [] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 2290, + "blockTimestampDelay": 360593 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000050000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xb05752f700000000000000000000000000000000000000000000000014d1120d7b160000fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa0100ffffe666666666666666666666666666666666666666666666666666666666670000000000000000000000000000000000000000000000000000000000000001", + "dataAbiValues": { + "methodSignature": "handleOnSettleBondEscalation(uint256,uint256,uint256,uint256)", + "inputValues": [ + "1500000000000000000", + "115792089237316195423570985008687907853269984665640564039457584007913129246976", + "115791912552609717585138026678937833561418401917250876477561771847293000377959", + "1" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 35958, + "blockTimestampDelay": 189815 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000080000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xd1a556550000000000000000000000000000000000000000000000000000000000093a80", + "dataAbiValues": { + "methodSignature": "handleRevokeModule(uint256)", + "inputValues": [ + "604800" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 23866, + "blockTimestampDelay": 120766 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000040000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 2, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xf60285cafffffffffffffffffffffffffffffffffffffffffffffffffffffffffffb00001f6163d95156c50021d434e3914437a6419fd074db58aba632a1165e1049633a3bf295102083f98484e4163605f3f088673969b3a53bced8eb97b90d6679470f0000000000000000000000000000000000000000000000000000000000000014", + "dataAbiValues": { + "methodSignature": "handleBondWithSender(uint256,uint256,uint256,uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913129312256", + "14193771603127510897806160380156132720630156725507671248204049821265402880826", + "27115063851078188957254873925429362151386502274781693755807630999965205612303", + "20" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 14998, + "blockTimestampDelay": 528331 + } +] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803582764000-cfe80931-2a26-43cf-ac19-9333113edb1b.json b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803582764000-cfe80931-2a26-43cf-ac19-9333113edb1b.json new file mode 100755 index 0000000..90932a8 --- /dev/null +++ b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803582764000-cfe80931-2a26-43cf-ac19-9333113edb1b.json @@ -0,0 +1,260 @@ +[ + { + "call": { + "from": "0x0000000000000000000000000000000000030000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x13a8b8040000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000034000000000000000000000000000000000000000000000000000000000000000170000000000000000000000000000000000000000000000000000000000d2f000ffffc0000000000000000000000000000000000000000000000000000000000181dc31bc03ad9bc8a966de91dfc8c49b929f6d5fd44a9c22a7f5bb37cebfc106ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed8ee8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b825bc2cfc37067e378b4feef3f3411136744d0b2851c161c601669654cf27afe610000000000000000000000000000000000000000000000000000000000000000578750b27e877a957d33dc50d914b1caf972efffa4bb78b85e66dd813a864ca4039e696f94058cfd274de97421f65916ac135f4d55083d357b9c1f34820c9376000000000000000000000000000000000000000000000000000000000003fffe000000000000000000000000000000000000000000000000000000000000000167e6a528e0202cf23a36eacf513eee303475d3e4c983b2ae2d616b11c440f70a4ac07813439b9213b22d4d86340307a2982de60c241368ad288dfea742b6eb5efffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9686c2d73382b1edfa908bcaeb6b9ac0073f469887a9150c80831642e47e35a614c1bffffffffffffffffffffffffffffffffffffffffffffe48e5eb33a3a7f000000104a13a90c13653470268ea78892361e7e91e706d859aabaaf45ddd18c956640809a37cc7335cdf29b7d988dc8c05e2c1899ad1795364e6fa667088b49487472000000000000000000000000000000000000000000000000000000000000fff6fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b800000000000000000000000000000000000000000000000000329c51ac594cf93000000000000000000000000000000000000000000000000000000000076a700a77a4c48695a0407441e86efc633aee092d2ebd99c87fdfeebcd904fe33e086d000000000000000000000000000000000000000000000000000000000000001d563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd0633ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865d5d6866ffb684491364a0853403f689144f5664f5d50de1b1a30d683ff29f21bf8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b4498bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef328d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad820824094c2949304cd969b5661cff34ece28aab6ca0f3eb707dc756ae848252d66c44a94d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae96291d8c581a922d52cd477658fcc2e2ca1f954f274ed2cd833a98e6d1d4455581f9d9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cbba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c389436d2b9b4dda11f7c2a5c1ca8fb20cba7512c884b100fa143fc24dc6c160eed276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f6617237058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25bcffd3ebd814d0f5e8e8dc7ef0303a14b98e79acfcabb14c9ad4225afd8f18c265f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a219fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c18aad5c04eb3f39ce81189eee664fb350f14bd8ce4dd62972aa7de342f017c7f", + "dataAbiValues": { + "methodSignature": "handleCreateRequests(uint256[],bytes32[])", + "inputValues": [ + [ + "13824000", + "115791647525550000827488589184312722123641027794666345134718053606362806484993", + "58737407075920930096693749632210245280794127876199190949253348332199714210054", + "115792089237316195423570985008687907853269984665640564039457584007913128431336", + "115792089237316195423570985008687907853269984665640564039457584007913129380738", + "41504671482165347584846103287222174319130579613222615088745194098566077546081", + "0", + "39590299132392589184737138068833640165131826767556478003143025413084726840484", + "1636828073493779560152621491074002847609709387720111137750911676859097584502", + "262142", + "1", + "46995738119123743123282428161140493004285235666026628953647859202250191730442", + "33811214160519685654400438720767591502827986970858420988841187408488311483230", + "115792089237316195423570985008687907853269984665640564039457584007913129207916", + "20557653259021005890251421269967042420225955023564768794272035576696478452763", + "115792089237316195423570985008687907853269984665640563909857584007913129639936", + "7367887950809164700104084563884591449786965425123545364576065505479275931200", + "58168524174645209900719041489934173752247098791866719219864340874379345294450", + "65526", + "115792089237316195423570985008687907853269984665640564039457584007913129380736", + "227929974933606291", + "7776000", + "75752327540241786815348607290604056680494387521335977257182003214564422715501" + ], + [ + "563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe", + "27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a", + "9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd06", + "33ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865", + "d5d6866ffb684491364a0853403f689144f5664f5d50de1b1a30d683ff29f21b", + "f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1", + "c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b44", + "98bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01", + "108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef32", + "8d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea", + "94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad8208240", + "94c2949304cd969b5661cff34ece28aab6ca0f3eb707dc756ae848252d66c44a", + "94d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056", + "cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae96291", + "d8c581a922d52cd477658fcc2e2ca1f954f274ed2cd833a98e6d1d4455581f9d", + "9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874", + "ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cb", + "ba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c3", + "89436d2b9b4dda11f7c2a5c1ca8fb20cba7512c884b100fa143fc24dc6c160ee", + "d276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99", + "fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce", + "3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb", + "4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f661723", + "7058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78", + "994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25", + "bcffd3ebd814d0f5e8e8dc7ef0303a14b98e79acfcabb14c9ad4225afd8f18c2", + "65f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a2", + "19fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c", + "18aad5c04eb3f39ce81189eee664fb350f14bd8ce4dd62972aa7de342f017c7f" + ] + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 21265, + "blockTimestampDelay": 360627 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000020000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x161c7318", + "dataAbiValues": { + "methodSignature": "test_debug()", + "inputValues": [] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 15325, + "blockTimestampDelay": 189245 + }, + { + "call": { + "from": "0x00000000000000000000000000000000000a0000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x88b05f294e5c5739570432e46e997185cf2683c287e8339e1ce7ab9502db4f4b4f0c1b77000000000000000000000000000000000000000000000000000000000012750000000000000000000000000000000000000000000000000006f05b59d3b200003c3b20fe3c6474ef6112cec6e2e1e2a66147c502767418c32e65c3bfa035d898948fc45007206ff5c0b2215d0b5c97d5551a84ed653f28e284b8567c463ce3650000000000000000000000000000000000000000000000000000000000069780ffffffffffffffffffffffffffffffffffffffffffffffffffffffec39800000109b1ce09a2caa796f35db2570026fd5d54f3b6f79d72997e7e30411ab7bab5f", + "dataAbiValues": { + "methodSignature": "handleSetDisputeModuleData(uint256,(address,address,uint256,uint256,uint256,uint256,uint256))", + "inputValues": [ + "35443554117267417118592017165536035041230544133048285386578266163756344810359", + { + "accountingExtension": "0x0000000000000000000000000000000000127500", + "bondEscalationDeadline": "432000", + "bondSize": "27243242601887521753615714576112380311306725462768124357416761313244220872856", + "bondToken": "0x00000000000000000000000006f05b59d3b20000", + "disputeWindow": "7511066176535142771400004346711719422194606327049609712661925953610498943839", + "maxNumberOfEscalations": "67196315620416968751812103706326677402054656808860235011842083525495944438629", + "tyingBuffer": "115792089237316195423570985008687907853269984665640564039457584007828194983936" + } + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 24101, + "blockTimestampDelay": 185392 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000010000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xb6c75efa8ba080b8a5e8e7e02b35ca63d619e3bf03ea7ee17a7395426e8c0ae38903a378ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff51e8737b07890aad8af4228017f323f8ee58c58602fe8a95d9a372445358479b", + "dataAbiValues": { + "methodSignature": "handleClaimEscalationReward(uint256,uint256,uint256)", + "inputValues": [ + "63155069885073485423962987089686113899340909970551762747564159406599093592952", + "115792089237316195423570985008687907853269984665640564039457584007913129639935", + "37048046271970045328561159781521571766041874645079829392453863326819299116955" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 7, + "blockTimestampDelay": 32 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000090000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x223b137400003ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe000000000000000000000000000000000000000000000000000000000000004006807205175b22b301c32b6c5e6ee194bd596681cba8c8638952ec1250f3d6450000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000000000000000000000000000000001518000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000027874838a0b68a875ec0ee81d4c8ef1980254e8ae6eaec10d74722bac9ebd5a49a6c310208a5de1500000000000000000000000000000000000000000000000000", + "dataAbiValues": { + "methodSignature": "handleSetRequestModuleData(uint256,(uint256,string,address,uint256))", + "inputValues": [ + "441711766194596082395824375185729628956870974218904739530401550323154942", + { + "accountingExtension": "0x0000000000000000000000000000000000015180", + "chainId": "\ufffdH8\ufffd\ufffd\ufffd\ufffd^\ufffd\ufffd\ufffd\ufffd\ufffd\ufffd\u0019\ufffd%N\ufffd\ufffd\ufffd\ufffd\u0010\ufffdG\"\ufffd\ufffd\ufffdդ\ufffdl1\u0002\b\ufffd\ufffd\u0015", + "epoch": "2940820452134172681045375212785432443100619197912571245547930807664892958277", + "paymentAmount": "0" + } + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 15253, + "blockTimestampDelay": 492034 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000080000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xaa1a5bd900000000000000000000000000000000000000000000000006f05b59d3b2000071f7cd086897aaf2110bd910f953453e7bcc20e82af33eec4c00647f9fb5da5e", + "dataAbiValues": { + "methodSignature": "handleResolveDispute(uint256,uint256)", + "inputValues": [ + "500000000000000000", + "51549178199604899047887187595007193100674999475015380254417935657395983604318" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 53242, + "blockTimestampDelay": 71336 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000070000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x52e3cb9cffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffec", + "dataAbiValues": { + "methodSignature": "handleSetMaxUsersToCheck(uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913129639916" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 45495, + "blockTimestampDelay": 225944 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000090000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xdb106aceffffffffffffffffffffffffffffffffffffffffffffffffffffffec398000001371ca94900c31d8e9be66d7c23f65b05f5d33ff2b30949acfed984f87f269e080baf5544430fe321ebd2409617ef6786f5b994597bc40798f800826b310e4524793f157456609da494af2a02075c03fcf9249185214862d5dd9f0eddb7447ce", + "dataAbiValues": { + "methodSignature": "handleSlash(uint256,uint256,uint256,uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007828194983936", + "8794995999406163856009545368231505849668095829549449500668097316828300339680", + "58226371372378751290891435773627286125304890291737788253576280229276508283986", + "32375604441627796962923040660328673776239995228426910584919203216277625915342" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 49592, + "blockTimestampDelay": 581992 + } +] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803583775000-dca8d182-bcd4-4450-b3b8-ab15f9ec2b20.json b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803583775000-dca8d182-bcd4-4450-b3b8-ab15f9ec2b20.json new file mode 100755 index 0000000..7b1b84f --- /dev/null +++ b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803583775000-dca8d182-bcd4-4450-b3b8-ab15f9ec2b20.json @@ -0,0 +1,232 @@ +[ + { + "call": { + "from": "0x0000000000000000000000000000000000030000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x13a8b8040000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000034000000000000000000000000000000000000000000000000000000000000000170000000000000000000000000000000000000000000000000000000000d2f000ffffc0000000000000000000000000000000000000000000000000000000000181dc31bc03ad9bc8a966de91dfc8c49b929f6d5fd44a9c22a7f5bb37cebfc106ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed8ee8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6c5805bc2cfc37067e378b4feef3f3411136744d0b2851c161c601669654cf27bfe6100000000000000000000000000000000000000000000000000000000000000006cd40d93882a844c2becf361c7579664aef7a6ef6e8b79d6bf6f6f76426e9b14039e696f94058cfd274de97421f65916ac135f4d55083d357b9c1f34820c9376000000000000000000000000000000000000000000000000000000000003fffe000000000000000000000000000000000000000000000000000000000000000167e6a528e0202cf23a36eacf513eee303475d3e4c983b2ae2d616b11c440f70aaa625827d77aa233df42016988900477ead582090357ec011f404ff1f0aa321bfffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9686c2d73382b1edfa908bcaeb6b9ac0073f469887a9150c80831642e47e35a614c1bffffffffffffffffffffffffffffffffffffffffffffe48e5eb33a3a7f000000104a13a90c13653470268ea78892361e7e91e706d859aabaaf45ddd18c956640809a37cc7335cdf29b7d988dc8c05e2c1899ad1795364e6fa667088b49487472000000000000000000000000000000000000000000000000000000000000fff6fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b80756993dc4be6ecf1e46c48d6f9cae9255a8b46ef956a3d85442a5f41f70ecf93000000000000000000000000000000000000000000000000000000000076a700a77a4c48695a0407441e86efc633aee092d2ebd99c87fdfeebcd904fe33e086d000000000000000000000000000000000000000000000000000000000000001d563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd0633ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed69586530127b846a0115a3e561f49781eea70d4bcc4884906080e6adb068ff5fe13953f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b4498bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef328d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad82082401f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade0554594d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e05648dd821e471bd9a22c1f612735d2d7244c13832c4b0f28993ecafc561bfc52ae4f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cbba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c33f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8fd276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f6617237058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf259a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe2665f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a219fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb", + "dataAbiValues": { + "methodSignature": "handleCreateRequests(uint256[],bytes32[])", + "inputValues": [ + [ + "13824000", + "115791647525550000827488589184312722123641027794666345134718053606362806484993", + "58737407075920930096693749632210245280794127876199190949253348332199714210054", + "115792089237316195423570985008687907853269984665640564039457584007913128431336", + "115792089237316195423570985008687907853269984665640564039457584007913129035136", + "41504671482165347584846103287222174319130579613222615088745194098566077611617", + "0", + "49224452924880417829398231270379785502530069722970149981823851608145893694228", + "1636828073493779560152621491074002847609709387720111137750911676859097584502", + "262142", + "1", + "46995738119123743123282428161140493004285235666026628953647859202250191730442", + "77066943699312596523560233185714836616924754343478096130098486630426813805083", + "115792089237316195423570985008687907853269984665640564039457584007913129207916", + "20557653259021005890251421269967042420225955023564768794272035576696478452763", + "115792089237316195423570985008687907853269984665640563909857584007913129639936", + "7367887950809164700104084563884591449786965425123545364576065505479275931200", + "58168524174645209900719041489934173752247098791866719219864340874379345294450", + "65526", + "115792089237316195423570985008687907853269984665640564039457584007913129380736", + "53107142721938561923251317745913031228477959801596843755970727929974933606291", + "7776000", + "75752327540241786815348607290604056680494387521335977257182003214564422715501" + ], + [ + "563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe", + "27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a", + "9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd06", + "33ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865", + "30127b846a0115a3e561f49781eea70d4bcc4884906080e6adb068ff5fe13953", + "f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1", + "c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b44", + "98bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01", + "108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef32", + "8d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea", + "94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad8208240", + "1f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade05545", + "94d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056", + "48dd821e471bd9a22c1f612735d2d7244c13832c4b0f28993ecafc561bfc52ae", + "4f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa", + "9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874", + "ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cb", + "ba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c3", + "3f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8f", + "d276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99", + "fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce", + "3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb", + "4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f661723", + "7058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78", + "994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25", + "9a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe26", + "65f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a2", + "19fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c", + "51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb" + ] + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 21265, + "blockTimestampDelay": 360627 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000050000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x91e32c74e0613faa5f896b73380078af3c1ee8605eec949aaf9c8f422f264f3de916b58d4b3032484de1fb4c70c2a705584283a0288158e7d201a2526966e049d49acde5", + "dataAbiValues": { + "methodSignature": "handleCreateRequest(uint256,bytes32)", + "inputValues": [ + "101489901651207154401933345705911812335881908306802664469868899807780031346061", + "4b3032484de1fb4c70c2a705584283a0288158e7d201a2526966e049d49acde5" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 23884, + "blockTimestampDelay": 297676 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000080000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x62e8fd350000000000000000000000000000000000000000000000000000000000000000f3e0a4b7d4b9f146c330bf4206493b9644386108e6fb9dbd1ec9e9631656b911", + "dataAbiValues": { + "methodSignature": "handleOnDisputeStatusChange(uint256,uint256)", + "inputValues": [ + "0", + "110308932790717902341334723675742636402013152744066319296234386176011142609169" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 6, + "blockTimestampDelay": 447025 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000060000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xb05752f7000000000000000000000000000000000000000000000000000000000083d600ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff3cb74a490a6b235de22fdba8b11c89c1a75ba52781eaa376b8904d607971473952c39b6854fd2443ddec68f9b401b12b2c3233b939e902ba2cc4b78fc21880c9", + "dataAbiValues": { + "methodSignature": "handleOnSettleBondEscalation(uint256,uint256,uint256,uint256)", + "inputValues": [ + "8640000", + "115792089237316195423570985008687907853269984665640564039457584007913129639935", + "27462616626253393834172180586494418890954476283257859666307992469208736810809", + "37435261344928203651121242557808094327910915308413204917974281668150859169993" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 20576, + "blockTimestampDelay": 441138 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000050000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x88b05f29000000000000000000000000000000000000000000000000000000000009fffe000000000000000000000000c43801cd359a82757df4289878ce85539b0fcade000000000000000000000000000000000000000000000000000000000000006434998e76fdd43c55ad90e4a35d96044a3ebe674f5dfa103757d366102ca9f26c00000000000000000000000000000000000000000000000000000000000001000e694122e842adea5277bbbdab0b14091c2583d39824533976734442dab724e2195f41f8193b8fdb454e4c675da554f0f9409064f42db392c9ab9d5e83fad976fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe", + "dataAbiValues": { + "methodSignature": "handleSetDisputeModuleData(uint256,(address,address,uint256,uint256,uint256,uint256,uint256))", + "inputValues": [ + "655358", + { + "accountingExtension": "0xc43801Cd359A82757Df4289878CE85539B0fcAdE", + "bondEscalationDeadline": "6518348376578069825047353184871606747778953752910129049968505915388248663266", + "bondSize": "23791578983227214469447533216306682837879210004146422934780693486186688803436", + "bondToken": "0x0000000000000000000000000000000000000064", + "disputeWindow": "115792089237316195423570985008687907853269984665640564039457584007913129639934", + "maxNumberOfEscalations": "256", + "tyingBuffer": "11476126987972230713107770724661081842991657660629818104854040000448595417462" + } + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 1, + "blockTimestampDelay": 2 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000020000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xf84d6dfc00000000000000000000000000000000000000000000000006f05b59d3ad0000", + "dataAbiValues": { + "methodSignature": "handleAddEBORequestCreatorRequestModule(uint256)", + "inputValues": [ + "499999999999672320" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 12976, + "blockTimestampDelay": 472659 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000010000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x4741f6dcc0e4d0eee56b7f10aa9aefe04c4f650af62be8b532d57f12aa7ac5b950884c3a", + "dataAbiValues": { + "methodSignature": "handleSetFinalityModuleData(uint256)", + "inputValues": [ + "87248350062624793638699702709121271409886681841563726628967995216176035155002" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 29334, + "blockTimestampDelay": 296740 + } +] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803584460000-0934697b-6b99-4564-bc59-fcfff205e7a8.json b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803584460000-0934697b-6b99-4564-bc59-fcfff205e7a8.json new file mode 100755 index 0000000..3f0e44d --- /dev/null +++ b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803584460000-0934697b-6b99-4564-bc59-fcfff205e7a8.json @@ -0,0 +1,199 @@ +[ + { + "call": { + "from": "0x0000000000000000000000000000000000030000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x13a8b8040000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000034000000000000000000000000000000000000000000000000000000000000000170000000000000000000000000000000000000000000000000000000000d2f000ffffc0000000000000000000000000000000000000000000000000000000000181dc31bc03ad9bc8a966de91dfc8c49b929f6d5fd44a9c22a7f5bb37cebfc106000000000000000000000000000000000000000000007ff72b2c19616ab00000e645df196666f5e4e940c577b9670b086db2c746878e45aae0dbee6c63a0e6a35bc2cfc37067e378b4feef3f3411136744d0b2851c161c601669654cf27bfe6100000000000000000000000000000000000000000000000000000000000000006cd40d93882a844c2becf361c7579664aef7a6ef6e8b79d6bf6f6f76426e9b14039e696f94058cfd274de97421f65916ac135f4d55083d357b9c1f34820c9376000000000000000000000000000000000000000000000000000000000003fffe000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000004ac07813439b9213b22d4d86340307a2982de60c241368ad288dfea742b6eb5efffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9686c2d73382b1edfa908bcaeb6b9ac0073f469887a9150c80831642e47e35a614c1bffffffffffffffffffffffffffffffffffffffffffffe48e5eb33a3a7f000000104a13a90c13653470268ea78892361e7e91e706d859aabaaf45ddd18c956640809a37cc7335cdf29b7d988dc8c05e2c1899ad1795364e6fa667088b49487472000000000000000000000000000000000000000000000000000000000000fff6fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b80756993dc4be6ecf1e46c48d6f9cae9255a8b46ef956a3d85442a5f41f70ecf93000000000000000000000000000000000000000000000000000000000076a700a77a4c48695a0407441e86efc633aee092d2ebd99c87fdfeebcd904fe33e086d000000000000000000000000000000000000000000000000000000000000001d563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd0633ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed6958658aad3329b56f2f98187bbaed7351982ae06a00b9382adcb723b8b393d1f5e2def8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b4498bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a0171bc7dd16f0e277b94f2e46980d7e8e6c3c5187bf68be378e2d72cd0e70293ef8d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad82082401f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade0554594d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae962914f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874465e592f6d3f1d78fbc619b878d95794035829bd9b1285f3eb021d72f8e45638ba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c33f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8fd276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a9925e5ea45a807ae40eb654d82982bacb30bb1da6060d308d0b63004f4e1926b0c3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f6617237058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf259a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe2665f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a219fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb", + "dataAbiValues": { + "methodSignature": "handleCreateRequests(uint256[],bytes32[])", + "inputValues": [ + [ + "13824000", + "115791647525550000827488589184312722123641027794666345134718053606362806484993", + "58737407075920930096693749632210245280794127876199190949253348332199714210054", + "604300000000000000000000", + "104155407395839188072220307346509508179171066778602859964492537460856123877027", + "41504671482165347584846103287222174319130579613222615088745194098566077611617", + "0", + "49224452924880417829398231270379785502530069722970149981823851608145893694228", + "1636828073493779560152621491074002847609709387720111137750911676859097584502", + "262142", + "1", + "0", + "33811214160519685654400438720767591502827986970858420988841187408488311483230", + "115792089237316195423570985008687907853269984665640564039457584007913129207916", + "20557653259021005890251421269967042420225955023564768794272035576696478452763", + "115792089237316195423570985008687907853269984665640563909857584007913129639936", + "7367887950809164700104084563884591449786965425123545364576065505479275931200", + "58168524174645209900719041489934173752247098791866719219864340874379345294450", + "65526", + "115792089237316195423570985008687907853269984665640564039457584007913129380736", + "53107142721938561923251317745913031228477959801596843755970727929974933606291", + "7776000", + "75752327540241786815348607290604056680494387521335977257182003214564422715501" + ], + [ + "563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe", + "27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a", + "9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd06", + "33ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865", + "8aad3329b56f2f98187bbaed7351982ae06a00b9382adcb723b8b393d1f5e2de", + "f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1", + "c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b44", + "98bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01", + "71bc7dd16f0e277b94f2e46980d7e8e6c3c5187bf68be378e2d72cd0e70293ef", + "8d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea", + "94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad8208240", + "1f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade05545", + "94d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056", + "cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae96291", + "4f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa", + "9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874", + "465e592f6d3f1d78fbc619b878d95794035829bd9b1285f3eb021d72f8e45638", + "ba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c3", + "3f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8f", + "d276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99", + "25e5ea45a807ae40eb654d82982bacb30bb1da6060d308d0b63004f4e1926b0c", + "3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb", + "4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f661723", + "7058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78", + "994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25", + "9a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe26", + "65f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a2", + "19fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c", + "51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb" + ] + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 21265, + "blockTimestampDelay": 360627 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000030000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 2, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x0692ea7eeaaa73118d1da2c1db95511517ab896f87445c2331029aecdc7f065f634e6b46", + "dataAbiValues": { + "methodSignature": "handleRemoveChain(uint256)", + "inputValues": [ + "106142364743506859045918558596602602319943607038906547683486076996802461985606" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 2001, + "blockTimestampDelay": 455470 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000090000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x864e2da9fffffffffffffffffffffffffffffffffffffffffffffffff90fa4a62c573a80b81e8d97661fbf779db19fd00793e39f3b40bca612ee408ab75ff1c6439cf047509736e50626b1084ee93f4294000f73db102927cdc7fc34de68c384da900e6c", + "dataAbiValues": { + "methodSignature": "handleArbitrateDispute(uint256,uint256,uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457084007913130244736", + "83279546779206125286340055887058748934887896216240549764862301155730028032071", + "36452200662221151095065482565067302916782446267779931962683895890335455252076" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 41956, + "blockTimestampDelay": 475112 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000090000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xb6c75efaab191ad64d8fba3d052ab8ef37a088ba9faf5a1be696a47310de3441525ef897fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe3aaae444ec5312714f03b0566d2b40e5d34f58f068cabf3625fc0d7cfe3db912", + "dataAbiValues": { + "methodSignature": "handleClaimEscalationReward(uint256,uint256,uint256)", + "inputValues": [ + "77389853507359787864882669351213362161735184606551274462865365263877886900375", + "115792089237316195423570985008687907853269984665640564039457584007913129639934", + "26536084675173092165947634556752584404681954305155475174391110206140234709266" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 18699, + "blockTimestampDelay": 240561 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000030000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 3, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xf84d6dfcd2d78e343e1607b919341e2fe248544a49a0028fbd677a717f6a437862ddbc00", + "dataAbiValues": { + "methodSignature": "handleAddEBORequestCreatorRequestModule(uint256)", + "inputValues": [ + "95366551777850189910113500849756061153261920552639335948298155642211775921152" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 16776, + "blockTimestampDelay": 165634 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000060000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x0fb55087cd27e66c1a6365fdd2d452e5a6a582655000c0811d209ba0499f4483caf4b2da", + "dataAbiValues": { + "methodSignature": "handleApproveModule(uint256)", + "inputValues": [ + "92794631311208978202520326772644046682922248037671286389514014341863059010266" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 6256, + "blockTimestampDelay": 488143 + } +] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803584811000-6fd137e0-c5b3-46bf-b7cc-1b9ada70f8cb.json b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803584811000-6fd137e0-c5b3-46bf-b7cc-1b9ada70f8cb.json new file mode 100755 index 0000000..ed0e482 --- /dev/null +++ b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803584811000-6fd137e0-c5b3-46bf-b7cc-1b9ada70f8cb.json @@ -0,0 +1,244 @@ +[ + { + "call": { + "from": "0x0000000000000000000000000000000000030000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x13a8b8040000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000034000000000000000000000000000000000000000000000000000000000000000170000000000000000000000000000000000000000000000000000000000d2f000ffffc0000000000000000000000000000000000000000000000000000000000181dc31bc03ad9bc8a966de91dfc8c49b929f6d5fd44a9c22a7f5bb37cebfc106ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed8ee8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b825bc2cfc37067e378b4feef3f3411136744d0b2851c161c601669654cf27bfe6100000000000000000000000000000000000000000000000000000000000000006cd40d93882a844c2becf361c7579664aef7a6ef6e8b79d6bf6f6f76426e9b14039e696f94058cfd274de97421f65916ac135f4d55083d357b9c1f34820c9376000000000000000000000000000000000000000000000000000000000003fffe000000000000000000000000000000000000000000000000000000000000000167e6a528e0202cf23a36eacf513eee303475d3e4c983b2ae2d616b11c440f70a4ac07813439b9213b22d4d86340307a2982de60c241368ad288dfea742b6eb5efffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9686c2d73382b1edfa908bcaeb6b9ac0073f469887a9150c80831642e47e35a614c1bffffffffffffffffffffffffffffffffffffffffffffe48e5eb33a3a7f000000104a13a90c13653470268ea78892361e7e91e706d859aabaaf45ddd18c956640809a37cc7335cdf29b7d988dc8c05e2c1899ad1795364e6fa667088b49487472000000000000000000000000000000000000000000000000000000000000fff6fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b80756993dc4be6ecf1e46c48d6f9cae9255a8b46ef956a3d85442a5f41f70ecf93000000000000000000000000000000000000000000000000000000000076a700a77a4c48695a0407441e86efc633aee092d2ebd99c87fdfeebcd904fe33e086d000000000000000000000000000000000000000000000000000000000000001d563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd0633ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed6958658aad3329b56f2f98187bbaed7351982ae06a00b9382adcb723b8b393d1f5e2def8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b4498bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef328d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad82082401f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade0554594d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae962914f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cbba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c33f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8fd276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f6617237058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf259a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe2665f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a219fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb", + "dataAbiValues": { + "methodSignature": "handleCreateRequests(uint256[],bytes32[])", + "inputValues": [ + [ + "13824000", + "115791647525550000827488589184312722123641027794666345134718053606362806484993", + "58737407075920930096693749632210245280794127876199190949253348332199714210054", + "115792089237316195423570985008687907853269984665640564039457584007913128431336", + "115792089237316195423570985008687907853269984665640564039457584007913129380738", + "41504671482165347584846103287222174319130579613222615088745194098566077611617", + "0", + "49224452924880417829398231270379785502530069722970149981823851608145893694228", + "1636828073493779560152621491074002847609709387720111137750911676859097584502", + "262142", + "1", + "46995738119123743123282428161140493004285235666026628953647859202250191730442", + "33811214160519685654400438720767591502827986970858420988841187408488311483230", + "115792089237316195423570985008687907853269984665640564039457584007913129207916", + "20557653259021005890251421269967042420225955023564768794272035576696478452763", + "115792089237316195423570985008687907853269984665640563909857584007913129639936", + "7367887950809164700104084563884591449786965425123545364576065505479275931200", + "58168524174645209900719041489934173752247098791866719219864340874379345294450", + "65526", + "115792089237316195423570985008687907853269984665640564039457584007913129380736", + "53107142721938561923251317745913031228477959801596843755970727929974933606291", + "7776000", + "75752327540241786815348607290604056680494387521335977257182003214564422715501" + ], + [ + "563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe", + "27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a", + "9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd06", + "33ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865", + "8aad3329b56f2f98187bbaed7351982ae06a00b9382adcb723b8b393d1f5e2de", + "f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1", + "c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b44", + "98bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01", + "108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef32", + "8d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea", + "94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad8208240", + "1f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade05545", + "94d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056", + "cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae96291", + "4f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa", + "9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874", + "ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cb", + "ba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c3", + "3f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8f", + "d276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99", + "fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce", + "3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb", + "4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f661723", + "7058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78", + "994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25", + "9a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe26", + "65f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a2", + "19fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c", + "51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb" + ] + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 21265, + "blockTimestampDelay": 360627 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000050000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x91e32c74e0613faa5f896b73380078af3c1ee8605eec949aaf9c8f422f264f3de916b58dc905ee964be623d23ba97ccc5a2b838249eaa10a8671d6a68f97b09746107abf", + "dataAbiValues": { + "methodSignature": "handleCreateRequest(uint256,bytes32)", + "inputValues": [ + "101489901651207154401933345705911812335881908306802664469868899807780031346061", + "c905ee964be623d23ba97ccc5a2b838249eaa10a8671d6a68f97b09746107abf" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 23884, + "blockTimestampDelay": 297676 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000020000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x161c7318", + "dataAbiValues": { + "methodSignature": "test_debug()", + "inputValues": [] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 0, + "blockTimestampDelay": 1 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000070000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xaa1a5bd9ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffee2cac1a259bf9695aac61487b4606621f281407f44a6d621116f436e53e00628b", + "dataAbiValues": { + "methodSignature": "handleResolveDispute(uint256,uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913129639918", + "20205843492154653597326893919151713313559584018734749877274787063574636290699" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 23891, + "blockTimestampDelay": 328958 + }, + { + "call": { + "from": "0x00000000000000000000000000000000000a0000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xec5bf215fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff60000", + "dataAbiValues": { + "methodSignature": "handleFinalizeRequestResponseModule(uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913128984576" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 23883, + "blockTimestampDelay": 276784 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000020000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xd1a55655fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe9c", + "dataAbiValues": { + "methodSignature": "handleRevokeModule(uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913129639580" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 14210, + "blockTimestampDelay": 524288 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000060000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x727899fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffb001400000000000000000000000000000000000000000000000000000000001275000000000000000000000000000000000000000000000000000000000000000000a46e28ce399e11c208b07a84e457189f5b64e15f51e128b7baf507642bfef8c6", + "dataAbiValues": { + "methodSignature": "handlePledge(uint256,uint256,uint256,uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913129312276", + "1209600", + "0", + "74373941974452021616102119156230516273735358461823357873191033522071497799878" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 1, + "blockTimestampDelay": 256 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000040000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xa44b098effffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0003", + "dataAbiValues": { + "methodSignature": "handleSetArbitrator(uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913129574403" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 43748, + "blockTimestampDelay": 541010 + } +] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803585754000-86cd1183-238f-46f1-89fb-e31c381aa9cd.json b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803585754000-86cd1183-238f-46f1-89fb-e31c381aa9cd.json new file mode 100755 index 0000000..d68e201 --- /dev/null +++ b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803585754000-86cd1183-238f-46f1-89fb-e31c381aa9cd.json @@ -0,0 +1,224 @@ +[ + { + "call": { + "from": "0x0000000000000000000000000000000000030000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x13a8b80400000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000340000000000000000000000000000000000000000000000000000000000000001700000000000000000000000000000000000000000000000000000000000010e0ffffc0000000000000000000000000000000000000000000000000000000000181dc31bc03ad9bc8a966de91dfc8c49b929f6d5fd44a9c22a7f5bb37cebfc106ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed8ee8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b825bc2cfc37067e378b4feef3f3411136744d0b2851c161c601669654cf27bfe6100000000000000000000000000000000000000000000000000000000000000006cd40d93882a844c2becf361c7579664aef7a6ef6e8b79d6bf6f6f76426e9b14039e696f94058cfd274de97421f65916ac135f4d55083d357b9c1f34820c9376000000000000000000000000000000000000000000000000000000000003fffe000000000000000000000000000000000000000000000000000000000000000167e6a528e0202cf23a36eacf513eee303475d3e4c983b2ae2d616b11c440f70a0000000000000000000000000000000000000000000000000000000000000000fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9686c2d73382b1edfa908bcaeb6b9ac0073f469887a9150c80831642e47e35a614c1bffffffffffffffffffffffffffffffffffffffffffffe48e5eb33a3a7f000000104a13a90c13653470268ea78892361e7e91e706d859aabaaf45ddd18c956640809a37cc7335cdf29b7d988dc8c05e2c1899ad1795364e6fa667088b49487472000000000000000000000000000000000000000000000000000000000000fff6fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b80756993dc4be6ecf1e46c48d6f9cae9255a8b46ef956a3d85442a5f41f70ecf93000000000000000000000000000000000000000000000000000000000076a700a77a4c48695a0407441e86efc633aee092d2ebd99c87fdfeebcd904fe33e086d000000000000000000000000000000000000000000000000000000000000001d563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd0633ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed6958658aad3329b56f2f98187bbaed7351982ae06a00b9382adcb723b8b393d1f5e2def8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b4498bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef328d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad82082401f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade0554594d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e0568fcad889d076bcc6f0b5c84a4f6f334b74f944740b9f88a51f2895e76dd401884f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cbba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c33f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8fd276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f6617237058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25abbc2a768fea28edd1d653edcbaa5cace525564c5330b62b6ed63452f3b221f165f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a219fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb", + "dataAbiValues": { + "methodSignature": "handleCreateRequests(uint256[],bytes32[])", + "inputValues": [ + [ + "4320", + "115791647525550000827488589184312722123641027794666345134718053606362806484993", + "58737407075920930096693749632210245280794127876199190949253348332199714210054", + "115792089237316195423570985008687907853269984665640564039457584007913128431336", + "115792089237316195423570985008687907853269984665640564039457584007913129380738", + "41504671482165347584846103287222174319130579613222615088745194098566077611617", + "0", + "49224452924880417829398231270379785502530069722970149981823851608145893694228", + "1636828073493779560152621491074002847609709387720111137750911676859097584502", + "262142", + "1", + "46995738119123743123282428161140493004285235666026628953647859202250191730442", + "0", + "115792089237316195423570985008687907853269984665640564039457584007913129207916", + "20557653259021005890251421269967042420225955023564768794272035576696478452763", + "115792089237316195423570985008687907853269984665640563909857584007913129639936", + "7367887950809164700104084563884591449786965425123545364576065505479275931200", + "58168524174645209900719041489934173752247098791866719219864340874379345294450", + "65526", + "115792089237316195423570985008687907853269984665640564039457584007913129380736", + "53107142721938561923251317745913031228477959801596843755970727929974933606291", + "7776000", + "75752327540241786815348607290604056680494387521335977257182003214564422715501" + ], + [ + "563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe", + "27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a", + "9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd06", + "33ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865", + "8aad3329b56f2f98187bbaed7351982ae06a00b9382adcb723b8b393d1f5e2de", + "f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1", + "c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b44", + "98bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01", + "108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef32", + "8d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea", + "94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad8208240", + "1f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade05545", + "94d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056", + "8fcad889d076bcc6f0b5c84a4f6f334b74f944740b9f88a51f2895e76dd40188", + "4f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa", + "9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874", + "ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cb", + "ba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c3", + "3f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8f", + "d276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99", + "fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce", + "3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb", + "4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f661723", + "7058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78", + "994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25", + "abbc2a768fea28edd1d653edcbaa5cace525564c5330b62b6ed63452f3b221f1", + "65f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a2", + "19fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c", + "51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb" + ] + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 21265, + "blockTimestampDelay": 360627 + }, + { + "call": { + "from": "0x00000000000000000000000000000000000a0000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x6b125a57f70d7a9f8f7dc147f3c07846c57ff55a159156e04b1aef93f09a50411ed01cac", + "dataAbiValues": { + "methodSignature": "handleRemoveEBORequestCreatorFinalityModule(uint256)", + "inputValues": [ + "111745088926706135766942953021093517459235404528421949148968020375462747315372" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 41182, + "blockTimestampDelay": 251336 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000090000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x9f6259e5f758e7d4f100dcc2db3c85b9df5a8759d5abbd1697a1a04ec3af1471f220359a0000000000000000000000007109709ecfa91a80626ff3989d68f67f5b1dd12d", + "dataAbiValues": { + "methodSignature": "handleResolve(uint256,uint256)", + "inputValues": [ + "111878356186062714847010348548460913142200960060168223055923222451354708489626", + "645326474426547203313410069153905908525362434349" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 36881, + "blockTimestampDelay": 523741 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000050000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x0692ea7efffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7fc18", + "dataAbiValues": { + "methodSignature": "handleRemoveChain(uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913129114648" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 6610, + "blockTimestampDelay": 345959 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000060000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x9d2e6a6ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd0000", + "dataAbiValues": { + "methodSignature": "handleRemoveEBORequestCreatorRequestModule(uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913129443328" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 43871, + "blockTimestampDelay": 505590 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000080000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xdb106aceffffffffffffffffffffffffffffffffffffffffffffffffffffffdb16000000fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffafffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6a23f9b5b11f6aa4692c684f075c04d172abcb68f78eb66c92efe082b6a5d503c", + "dataAbiValues": { + "methodSignature": "handleSlash(uint256,uint256,uint256,uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007754584948736", + "115792089237316195423570985008687907853269984665640564039457584007913129639930", + "115792089237316195423570985008687907853269984665640564039457584007913129639926", + "73387065061500873488441831200362672861865918134039727439380329949185011699772" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 3063, + "blockTimestampDelay": 142231 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000090000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xd51b326a000000000000000000000000000000000000000000000000000000000000000afffffffffffffffffffffffffffffffffffffffffffffffff90fa4a62c4e00000000000000000000000000000000000000000000000000000000000000050000", + "dataAbiValues": { + "methodSignature": "handlePledgeForDispute(uint256,uint256,uint256)", + "inputValues": [ + "10", + "115792089237316195423570985008687907853269984665640564039457084007913129639936", + "327680" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 30742, + "blockTimestampDelay": 327371 + } +] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803586882000-dac7fc11-4da0-43b6-a704-b5d5e0f01355.json b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803586882000-dac7fc11-4da0-43b6-a704-b5d5e0f01355.json new file mode 100755 index 0000000..5d44fc3 --- /dev/null +++ b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803586882000-dac7fc11-4da0-43b6-a704-b5d5e0f01355.json @@ -0,0 +1,289 @@ +[ + { + "call": { + "from": "0x0000000000000000000000000000000000030000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x13a8b8040000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000034000000000000000000000000000000000000000000000000000000000000000170000000000000000000000000000000000000000000000000000000000d2f000ffffc0000000000000000000000000000000000000000000000000000000000181dc31bc03ad9bc8a966de91dfc8c49b929f6d5fd44a9c22a7f5bb37cebfc106ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed8ee8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b825bc2cfc37067e378b4feef3f3411136744d0b2851c161c601669654cf27afe610000000000000000000000000000000000000000000000000000000000000000578750b27e877a957d33dc50d914b1caf972efffa4bb78b85e66dd813a864ca4039e696f94058cfd274de97421f65916ac135f4d55083d357b9c1f34820c9376000000000000000000000000000000000000000000000000000000000003fffe000000000000000000000000000000000000000000000000000000000000000167e6a528e0202cf23a36eacf513eee303475d3e4c983b2ae2d616b11c440f70a4ac07813439b9213b22d4d86340307a2982de60c241368ad288dfea742b6eb5efffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9686c2d73382b1edfa908bcaeb6b9ac0073f469887a9150c80831642e47e35a614c1bffffffffffffffffffffffffffffffffffffffffffffe48e5eb33a3a7f000000104a13a90c13653470268ea78892361e7e91e706d859aabaaf45ddd18c956640809a37cc7335cdf29b7d988dc8c05e2c1899ad1795364e6fa667088b49487472000000000000000000000000000000000000000000000000000000000000fff6fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b800000000000000000000000000000000000000000000000000329c51ac594cf93000000000000000000000000000000000000000000000000000000000076a700a77a4c48695a0407441e86efc633aee092d2ebd99c87fdfeebcd904fe33e086d000000000000000000000000000000000000000000000000000000000000001d563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd0633ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865d5d6866ffb684491364a0853403f689144f5664f5d50de1b1a30d683ff29f21bf8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b4498bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef328d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad820824094c2949304cd969b5661cff34ece28aab6ca0f3eb707dc756ae848252d66c44a94d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae96291d8c581a922d52cd477658fcc2e2ca1f954f274ed2cd833a98e6d1d4455581f9d9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cbba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c389436d2b9b4dda11f7c2a5c1ca8fb20cba7512c884b100fa143fc24dc6c160eed276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f6617237058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25bcffd3ebd814d0f5e8e8dc7ef0303a14b98e79acfcabb14c9ad4225afd8f18c265f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a219fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c18aad5c04eb3f39ce81189eee664fb350f14bd8ce4dd62972aa7de342f017c7f", + "dataAbiValues": { + "methodSignature": "handleCreateRequests(uint256[],bytes32[])", + "inputValues": [ + [ + "13824000", + "115791647525550000827488589184312722123641027794666345134718053606362806484993", + "58737407075920930096693749632210245280794127876199190949253348332199714210054", + "115792089237316195423570985008687907853269984665640564039457584007913128431336", + "115792089237316195423570985008687907853269984665640564039457584007913129380738", + "41504671482165347584846103287222174319130579613222615088745194098566077546081", + "0", + "39590299132392589184737138068833640165131826767556478003143025413084726840484", + "1636828073493779560152621491074002847609709387720111137750911676859097584502", + "262142", + "1", + "46995738119123743123282428161140493004285235666026628953647859202250191730442", + "33811214160519685654400438720767591502827986970858420988841187408488311483230", + "115792089237316195423570985008687907853269984665640564039457584007913129207916", + "20557653259021005890251421269967042420225955023564768794272035576696478452763", + "115792089237316195423570985008687907853269984665640563909857584007913129639936", + "7367887950809164700104084563884591449786965425123545364576065505479275931200", + "58168524174645209900719041489934173752247098791866719219864340874379345294450", + "65526", + "115792089237316195423570985008687907853269984665640564039457584007913129380736", + "227929974933606291", + "7776000", + "75752327540241786815348607290604056680494387521335977257182003214564422715501" + ], + [ + "563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe", + "27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a", + "9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd06", + "33ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865", + "d5d6866ffb684491364a0853403f689144f5664f5d50de1b1a30d683ff29f21b", + "f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1", + "c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b44", + "98bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01", + "108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef32", + "8d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea", + "94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad8208240", + "94c2949304cd969b5661cff34ece28aab6ca0f3eb707dc756ae848252d66c44a", + "94d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056", + "cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae96291", + "d8c581a922d52cd477658fcc2e2ca1f954f274ed2cd833a98e6d1d4455581f9d", + "9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874", + "ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cb", + "ba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c3", + "89436d2b9b4dda11f7c2a5c1ca8fb20cba7512c884b100fa143fc24dc6c160ee", + "d276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99", + "fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce", + "3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb", + "4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f661723", + "7058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78", + "994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25", + "bcffd3ebd814d0f5e8e8dc7ef0303a14b98e79acfcabb14c9ad4225afd8f18c2", + "65f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a2", + "19fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c", + "18aad5c04eb3f39ce81189eee664fb350f14bd8ce4dd62972aa7de342f017c7f" + ] + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 21265, + "blockTimestampDelay": 360627 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000020000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x161c7318", + "dataAbiValues": { + "methodSignature": "test_debug()", + "inputValues": [] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 15325, + "blockTimestampDelay": 189245 + }, + { + "call": { + "from": "0x00000000000000000000000000000000000a0000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x88b05f294e5c5739570432e46e997185cf2683c287e8339e1ce7ab9502db4f4b4f0c1b77000000000000000000000000000000000000000000000000000000000012750000000000000000000000000000000000000000000000000006f05b59d3b200003c3b20fe3c6474ef6112cec6e2e1e2a66147c502767418c32e65c3bfa035d898948fc45007206ff5c0b2215d0b5c97d5551a84ed653f28e284b8567c463ce3650000000000000000000000000000000000000000000000000000000000069780ffffffffffffffffffffffffffffffffffffffffffffffffffffffec39800000109b1ce09a2caa796f35db2570026fd5d54f3b6f79d72997e7e30411ab7bab5f", + "dataAbiValues": { + "methodSignature": "handleSetDisputeModuleData(uint256,(address,address,uint256,uint256,uint256,uint256,uint256))", + "inputValues": [ + "35443554117267417118592017165536035041230544133048285386578266163756344810359", + { + "accountingExtension": "0x0000000000000000000000000000000000127500", + "bondEscalationDeadline": "432000", + "bondSize": "27243242601887521753615714576112380311306725462768124357416761313244220872856", + "bondToken": "0x00000000000000000000000006f05b59d3b20000", + "disputeWindow": "7511066176535142771400004346711719422194606327049609712661925953610498943839", + "maxNumberOfEscalations": "67196315620416968751812103706326677402054656808860235011842083525495944438629", + "tyingBuffer": "115792089237316195423570985008687907853269984665640564039457584007828194983936" + } + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 24101, + "blockTimestampDelay": 185392 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000010000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xb6c75efa8ba080b8a5e8e7e02b35ca63d619e3bf03ea7ee17a7395426e8c0ae38903a378ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff51e8737b07890aad8af4228017f323f8ee58c58602fe8a95d9a372445358479b", + "dataAbiValues": { + "methodSignature": "handleClaimEscalationReward(uint256,uint256,uint256)", + "inputValues": [ + "63155069885073485423962987089686113899340909970551762747564159406599093592952", + "115792089237316195423570985008687907853269984665640564039457584007913129639935", + "37048046271970045328561159781521571766041874645079829392453863326819299116955" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 7, + "blockTimestampDelay": 32 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000090000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x223b137400003ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe000000000000000000000000000000000000000000000000000000000000004006807205175b22b301c32b6c5e6ee194bd596681cba8c8638952ec1250f3d6450000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000000000000000000000000000000001518000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000027874838a0b68a875ec0ee81d4c8ef1980254e8ae6eaec10d74722bac9ebd5a49a6c310208a5de1500000000000000000000000000000000000000000000000000", + "dataAbiValues": { + "methodSignature": "handleSetRequestModuleData(uint256,(uint256,string,address,uint256))", + "inputValues": [ + "441711766194596082395824375185729628956870974218904739530401550323154942", + { + "accountingExtension": "0x0000000000000000000000000000000000015180", + "chainId": "\ufffdH8\ufffd\ufffd\ufffd\ufffd^\ufffd\ufffd\ufffd\ufffd\ufffd\ufffd\u0019\ufffd%N\ufffd\ufffd\ufffd\ufffd\u0010\ufffdG\"\ufffd\ufffd\ufffdդ\ufffdl1\u0002\b\ufffd\ufffd\u0015", + "epoch": "2940820452134172681045375212785432443100619197912571245547930807664892958277", + "paymentAmount": "0" + } + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 15253, + "blockTimestampDelay": 492034 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000080000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xaa1a5bd900000000000000000000000000000000000000000000000006f05b59d3b2000071f7cd086897aaf2110bd910f953453e7bcc20e82af33eec4c00647f9fb5da5e", + "dataAbiValues": { + "methodSignature": "handleResolveDispute(uint256,uint256)", + "inputValues": [ + "500000000000000000", + "51549178199604899047887187595007193100674999475015380254417935657395983604318" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 53242, + "blockTimestampDelay": 71336 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000070000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x52e3cb9cffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffec", + "dataAbiValues": { + "methodSignature": "handleSetMaxUsersToCheck(uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913129639916" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 45495, + "blockTimestampDelay": 225944 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000090000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xdb106aceffffffffffffffffffffffffffffffffffffffffffffffffffffffec398000001371ca94900c31d8e9be66d7c23f65b05f5d33ff2b30949acfed984f87f269e080baf5544430fe321ebd2409617ef6786f5b994597bc40798f800826b310e4524793f157456609da494af2a02075c03fcf9249185214862d5dd9f0eddb7447ce", + "dataAbiValues": { + "methodSignature": "handleSlash(uint256,uint256,uint256,uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007828194983936", + "8794995999406163856009545368231505849668095829549449500668097316828300339680", + "58226371372378751290891435773627286125304890291737788253576280229276508283986", + "32375604441627796962923040660328673776239995228426910584919203216277625915342" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 49592, + "blockTimestampDelay": 581992 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000080000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x223b1374000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000408986d1481eea494dad550c07436bc6bf24fda1699ae18ac8e867c2bc2cbb811f0000000000000000000000000000000000000000000000000000000000000080000000000000000000000000148bd2b35a0e0ff5f58651fe93524e321532b27500000000000000000000000000000000000000000000000000000000001274fe000000000000000000000000000000000000000000000000000000000000001419d972fb93584a547a564eb672065531206d2c71000000000000000000000000", + "dataAbiValues": { + "methodSignature": "handleSetRequestModuleData(uint256,(uint256,string,address,uint256))", + "inputValues": [ + "0", + { + "accountingExtension": "0x148bd2b35a0e0ff5f58651fe93524E321532b275", + "chainId": "\u0019\ufffdr\ufffd\ufffdXJTzVN\ufffdr\u0006U1 m,q", + "epoch": "62205062171946186530711375116649708949236787489916806320076639634871891493151", + "paymentAmount": "1209598" + } + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 57406, + "blockTimestampDelay": 508192 + } +] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803587294000-bdb9aaa4-0806-4b34-a670-488774d109df.json b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803587294000-bdb9aaa4-0806-4b34-a670-488774d109df.json new file mode 100755 index 0000000..816b319 --- /dev/null +++ b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803587294000-bdb9aaa4-0806-4b34-a670-488774d109df.json @@ -0,0 +1,194 @@ +[ + { + "call": { + "from": "0x0000000000000000000000000000000000040000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x52e3cb9c6b0d264b5add160d5053aa476132c22d6540d3605ad8dfb850790b1ba996569b", + "dataAbiValues": { + "methodSignature": "handleSetMaxUsersToCheck(uint256)", + "inputValues": [ + "48420708108177856443123222644862532857390746786695606854692354379525674915483" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 59698, + "blockTimestampDelay": 331757 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000020000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x62e8fd3500000000000000000000000000000000000000000000000000000000000000124ab950c09e2414c3ec444389b5281e1bdfda8ecfec5392240af8d376f3781e4f", + "dataAbiValues": { + "methodSignature": "handleOnDisputeStatusChange(uint256,uint256)", + "inputValues": [ + "18", + "33798574834817402171861624718400176195923458571787846279113220864863863578191" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 41059, + "blockTimestampDelay": 386818 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000040000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x161c7318", + "dataAbiValues": { + "methodSignature": "test_debug()", + "inputValues": [] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 2290, + "blockTimestampDelay": 360593 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000050000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xb05752f700000000000000000000000000000000000000000000000014d1120d7b160000fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa0100ffffe666666666666666666666666666666666666666666666666666666666670000000000000000000000000000000000000000000000000000000000000001", + "dataAbiValues": { + "methodSignature": "handleOnSettleBondEscalation(uint256,uint256,uint256,uint256)", + "inputValues": [ + "1500000000000000000", + "115792089237316195423570985008687907853269984665640564039457584007913129246976", + "115791912552609717585138026678937833561418401917250876477561771847293000377959", + "1" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 35958, + "blockTimestampDelay": 189815 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000080000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xd1a556550000000000000000000000000000000000000000000000000000000000093a80", + "dataAbiValues": { + "methodSignature": "handleRevokeModule(uint256)", + "inputValues": [ + "604800" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 23866, + "blockTimestampDelay": 120766 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000040000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 2, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xf60285cafffffffffffffffffffffffffffffffffffffffffffffffffffffffffffb00001f6163d95156c50021d434e3914437a6419fd074db58aba632a1165e1049633a3bf295102083f98484e4163605f3f088673969b3a53bced8eb97b90d6679470f0000000000000000000000000000000000000000000000000000000000000014", + "dataAbiValues": { + "methodSignature": "handleBondWithSender(uint256,uint256,uint256,uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913129312256", + "14193771603127510897806160380156132720630156725507671248204049821265402880826", + "27115063851078188957254873925429362151386502274781693755807630999965205612303", + "20" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 14998, + "blockTimestampDelay": 528331 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000050000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x51b295e3fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc18", + "dataAbiValues": { + "methodSignature": "handleFinalize(uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913129638936" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 23876, + "blockTimestampDelay": 327680 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000060000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x2047c4493b1bb599e967df2247a0bde0e15c19a16d95520dbb9eb811b647dd1c5a50d970bda0d1adb4d017dcf6513d613392f361bfe0847acfbe5bbfd267240bef7125cd61ebaebab2bac3aa4819e2caf8f85c718565871747241e292cc36db91888e520d873b789d8f47c6606b2d5358f69133b1dd4937cee526c90ac095190af102de2", + "dataAbiValues": { + "methodSignature": "handlePay(uint256,uint256,uint256,uint256)", + "inputValues": [ + "26735416302702836720504774004574936090245153519362370366870156849631651223920", + "85771271060700958624081931951489906403580871476691194667860842730768850560461", + "44290761310036599938494988979380191776366734083697389368196279735913800066336", + "97904029442377240838501909618781928147909909174040210570358457032104622435810" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 54628, + "blockTimestampDelay": 362209 + } +] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803587717000-df75f9a7-1493-4f85-933b-41e16a40a9aa.json b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803587717000-df75f9a7-1493-4f85-933b-41e16a40a9aa.json new file mode 100755 index 0000000..7c595c7 --- /dev/null +++ b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803587717000-df75f9a7-1493-4f85-933b-41e16a40a9aa.json @@ -0,0 +1,277 @@ +[ + { + "call": { + "from": "0x0000000000000000000000000000000000030000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x13a8b8040000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000034000000000000000000000000000000000000000000000000000000000000000170000000000000000000000000000000000000000000000000000000000d2f000ffffc0000000000000000000000000000000000000000000000000000000000181dc31bc03ad9bc8a966de91dfc8c49b929f6d5fd44a9c22a7f5bb37cebfc106ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed8ee8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b825bc2cfc37067e378b4feef3f3411136744d0b2851c161c601669654cf27bfe610000000000000000000000000000000000000000000000000000000000000000578750b27e877a957d33dc50d914b1caf972efffa4bb78b85e66dd813a864ca4039e696f94058cfd274de97421f65916ac135f4d55083d357b9c1f34820c9376000000000000000000000000000000000000000000000000000000000003fffe000000000000000000000000000000000000000000000000000000000000000167e6a528e0202cf23a36eacf513eee303475d3e4c983b2ae2d616b11c440f70a4ac07813439b9213b22d4d86340307a2982de60c241368ad288dfea742b6eb5efffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9686c2d73382b1edfa908bcaeb6b9ac0073f469887a9150c80831642e47e35a614c1bffffffffffffffffffffffffffffffffffffffffffffe48e5eb33a3a7f000000104a13a90c13653470268ea78892361e7e91e706d859aabaaf45ddd18c956640809a37cc7335cdf29b7d988dc8c05e2c1899ad1795364e6fa667088b49487472000000000000000000000000000000000000000000000000000000000000fff6fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b800000000000000000000000000000000000000000000000000329c51ac594cf93000000000000000000000000000000000000000000000000000000000076a700a77a4c48695a0407441e86efc633aee092d2ebd99c87fdfeebcd904fe33e086d000000000000000000000000000000000000000000000000000000000000001d563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd0633ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865d5d6866ffb684491364a0853403f689144f5664f5d50de1b1a30d683ff29f21bf8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b4498bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef328d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad82082401f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade0554594d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae96291d8c581a922d52cd477658fcc2e2ca1f954f274ed2cd833a98e6d1d4455581f9d9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cbba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c33f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8fd276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f6617237058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf259a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe2665f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a219fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb", + "dataAbiValues": { + "methodSignature": "handleCreateRequests(uint256[],bytes32[])", + "inputValues": [ + [ + "13824000", + "115791647525550000827488589184312722123641027794666345134718053606362806484993", + "58737407075920930096693749632210245280794127876199190949253348332199714210054", + "115792089237316195423570985008687907853269984665640564039457584007913128431336", + "115792089237316195423570985008687907853269984665640564039457584007913129380738", + "41504671482165347584846103287222174319130579613222615088745194098566077611617", + "0", + "39590299132392589184737138068833640165131826767556478003143025413084726840484", + "1636828073493779560152621491074002847609709387720111137750911676859097584502", + "262142", + "1", + "46995738119123743123282428161140493004285235666026628953647859202250191730442", + "33811214160519685654400438720767591502827986970858420988841187408488311483230", + "115792089237316195423570985008687907853269984665640564039457584007913129207916", + "20557653259021005890251421269967042420225955023564768794272035576696478452763", + "115792089237316195423570985008687907853269984665640563909857584007913129639936", + "7367887950809164700104084563884591449786965425123545364576065505479275931200", + "58168524174645209900719041489934173752247098791866719219864340874379345294450", + "65526", + "115792089237316195423570985008687907853269984665640564039457584007913129380736", + "227929974933606291", + "7776000", + "75752327540241786815348607290604056680494387521335977257182003214564422715501" + ], + [ + "563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe", + "27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a", + "9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd06", + "33ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865", + "d5d6866ffb684491364a0853403f689144f5664f5d50de1b1a30d683ff29f21b", + "f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1", + "c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b44", + "98bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01", + "108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef32", + "8d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea", + "94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad8208240", + "1f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade05545", + "94d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056", + "cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae96291", + "d8c581a922d52cd477658fcc2e2ca1f954f274ed2cd833a98e6d1d4455581f9d", + "9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874", + "ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cb", + "ba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c3", + "3f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8f", + "d276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99", + "fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce", + "3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb", + "4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f661723", + "7058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78", + "994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25", + "9a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe26", + "65f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a2", + "19fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c", + "51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb" + ] + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 21265, + "blockTimestampDelay": 360627 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000020000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x161c7318", + "dataAbiValues": { + "methodSignature": "test_debug()", + "inputValues": [] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 15325, + "blockTimestampDelay": 189245 + }, + { + "call": { + "from": "0x00000000000000000000000000000000000a0000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x88b05f294e5c5739570432e46e997185cf2683c287e8339e1ce7ab9502db4f4b4f0c1b77000000000000000000000000000000000000000000000000000000000012750000000000000000000000000000000000000000000000000006f05b59d3b200003c3b20fe3c6474ef6112cec6e2e1e2a66147c502767418c32e65c3bfa035d898948fc45007206ff5c0b2215d0b5c97d5551a84ed653f28e284b8567c463ce3650000000000000000000000000000000000000000000000000000000000069780ffffffffffffffffffffffffffffffffffffffffffffffffffffffec398000000000000000000000000000000000000000000000000000000000000000093a80", + "dataAbiValues": { + "methodSignature": "handleSetDisputeModuleData(uint256,(address,address,uint256,uint256,uint256,uint256,uint256))", + "inputValues": [ + "35443554117267417118592017165536035041230544133048285386578266163756344810359", + { + "accountingExtension": "0x0000000000000000000000000000000000127500", + "bondEscalationDeadline": "432000", + "bondSize": "27243242601887521753615714576112380311306725462768124357416761313244220872856", + "bondToken": "0x00000000000000000000000006f05b59d3b20000", + "disputeWindow": "604800", + "maxNumberOfEscalations": "67196315620416968751812103706326677402054656808860235011842083525495944438629", + "tyingBuffer": "115792089237316195423570985008687907853269984665640564039457584007828194983936" + } + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 24101, + "blockTimestampDelay": 185392 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000040000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x3c26dcf8000000000000000000000000000000000000000000000853a0d2313c00000000", + "dataAbiValues": { + "methodSignature": "handleSetEpochManager(uint256)", + "inputValues": [ + "39321600000000000000000" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 23050, + "blockTimestampDelay": 360593 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000070000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x1c6850cfb0e3106162bbf50b7b4f4127a44fc6dee30686640d85ab8a97c7a387e688d09200000000000000000000000000000000000000000000000000000000000151800000000000000000000000000000000000000000000000000de0b6b3a7640000", + "dataAbiValues": { + "methodSignature": "handleUpdateDisputeStatus(uint256,uint256,uint256)", + "inputValues": [ + "80008248687813878652618995284154503941697939794158322754224777983398987223186", + "86400", + "1000000000000000000" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 17066, + "blockTimestampDelay": 86400 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000020000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xc0106a6cce21db24dd246f08ad02e64e7a8e8742fa9607e8fdf81425d16e85c70f3de5d85907be10f550a4ab3f84480cf0ea723b2a74da20322f8a7c02918a70cdb15ac9", + "dataAbiValues": { + "methodSignature": "handleCreateRequest(uint256,uint256)", + "inputValues": [ + "93236265237587594263022487768855356786420509345912517467786824227481808922072", + "40269523242363880299786798295795090179015741572111778996238876869560403843785" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 0, + "blockTimestampDelay": 101426 + }, + { + "call": { + "from": "0x00000000000000000000000000000000000a0000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x9d2e6a6f998e4550a0de435d19cec4771f09fda88c2b7664624260171a192d839c6e2a65", + "dataAbiValues": { + "methodSignature": "handleRemoveEBORequestCreatorRequestModule(uint256)", + "inputValues": [ + "69455236510673350336024647478873143438234265695463592178397393693034284984933" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 35869, + "blockTimestampDelay": 315170 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000020000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 2, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xd1a55655fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6c580", + "dataAbiValues": { + "methodSignature": "handleRevokeModule(uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913129035136" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 55790, + "blockTimestampDelay": 111616 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000010000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x55438465815bedc734908418031caab89516e183218d7f0edf8e3c493ab40a8fcacc98210000000000000000000000001260c0c92cc0a0b1b5b54cb0501ed367353befeb", + "dataAbiValues": { + "methodSignature": "handleSetResolutionModuleData(uint256,(address))", + "inputValues": [ + "58510781634585462798122964402259920591361435129587016659431711127985600632865", + { + "arbitrator": "0x1260c0c92cc0A0b1B5b54cb0501eD367353befeB" + } + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 25042, + "blockTimestampDelay": 70452 + } +] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803588141000-9a69c5d6-6e9c-4112-b48d-c967ce827264.json b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803588141000-9a69c5d6-6e9c-4112-b48d-c967ce827264.json new file mode 100755 index 0000000..eeb8fad --- /dev/null +++ b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803588141000-9a69c5d6-6e9c-4112-b48d-c967ce827264.json @@ -0,0 +1,267 @@ +[ + { + "call": { + "from": "0x0000000000000000000000000000000000030000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x13a8b8040000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000034000000000000000000000000000000000000000000000000000000000000000170000000000000000000000000000000000000000000000000000000000d2f000ffffc0000000000000000000000000000000000000000000000000000000000181dc31bc03ad9bc8a966de91dfc8c49b929f6d5fd44a9c22a7f5bb37cebfc106ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed8ee8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b825bc2cfc37067e378b4feef3f3411136744d0b2851c161c601669654cf27bfe6100000000000000000000000000000000000000000000000000000000000000006cd40d93882a844c2becf361c7579664aef7a6ef6e8b79d6bf6f6f76426e9b14039e696f94058cfd274de97421f65916ac135f4d55083d357b9c1f34820c9376000000000000000000000000000000000000000000000000000000000003fffe000000000000000000000000000000000000000000000000000000000000000167e6a528e0202cf23a36eacf513eee303475d3e4c983b2ae2d616b11c440f70a4ac07813439b9213b22d4d86340307a2982de60c241368ad288dfea742b6eb5efffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9686c2d73382b1edfa908bcaeb6b9ac0073f469887a9150c80831642e47e35a614c1bffffffffffffffffffffffffffffffffffffffffffffe48e5eb33a3a7f000000104a13a90c13653470268ea78892361e7e91e706d859aabaaf45ddd18c956640809a37cc7335cdf29b7d988dc8c05e2c1899ad1795364e6fa667088b49487472000000000000000000000000000000000000000000000000000000000000fff6fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b80756993dc4be6ecf1e46c48d6f9cae9255a8b46ef956a3d85442a5f41f70ecf93000000000000000000000000000000000000000000000000000000000076a700a77a4c48695a0407441e86efc633aee092d2ebd99c87fdfeebcd904fe33e086d000000000000000000000000000000000000000000000000000000000000001d563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd0633ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed6958658aad3329b56f2f98187bbaed7351982ae06a00b9382adcb723b8b393d1f5e2def8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b4498bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef328d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad82082401f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade0554594d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae962914f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cbba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c33f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8fd276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f6617237058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf259a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe2665f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a219fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb", + "dataAbiValues": { + "methodSignature": "handleCreateRequests(uint256[],bytes32[])", + "inputValues": [ + [ + "13824000", + "115791647525550000827488589184312722123641027794666345134718053606362806484993", + "58737407075920930096693749632210245280794127876199190949253348332199714210054", + "115792089237316195423570985008687907853269984665640564039457584007913128431336", + "115792089237316195423570985008687907853269984665640564039457584007913129380738", + "41504671482165347584846103287222174319130579613222615088745194098566077611617", + "0", + "49224452924880417829398231270379785502530069722970149981823851608145893694228", + "1636828073493779560152621491074002847609709387720111137750911676859097584502", + "262142", + "1", + "46995738119123743123282428161140493004285235666026628953647859202250191730442", + "33811214160519685654400438720767591502827986970858420988841187408488311483230", + "115792089237316195423570985008687907853269984665640564039457584007913129207916", + "20557653259021005890251421269967042420225955023564768794272035576696478452763", + "115792089237316195423570985008687907853269984665640563909857584007913129639936", + "7367887950809164700104084563884591449786965425123545364576065505479275931200", + "58168524174645209900719041489934173752247098791866719219864340874379345294450", + "65526", + "115792089237316195423570985008687907853269984665640564039457584007913129380736", + "53107142721938561923251317745913031228477959801596843755970727929974933606291", + "7776000", + "75752327540241786815348607290604056680494387521335977257182003214564422715501" + ], + [ + "563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe", + "27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a", + "9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd06", + "33ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865", + "8aad3329b56f2f98187bbaed7351982ae06a00b9382adcb723b8b393d1f5e2de", + "f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1", + "c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b44", + "98bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01", + "108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef32", + "8d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea", + "94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad8208240", + "1f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade05545", + "94d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056", + "cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae96291", + "4f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa", + "9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874", + "ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cb", + "ba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c3", + "3f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8f", + "d276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99", + "fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce", + "3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb", + "4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f661723", + "7058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78", + "994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25", + "9a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe26", + "65f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a2", + "19fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c", + "51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb" + ] + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 21265, + "blockTimestampDelay": 360627 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000050000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x91e32c74e0613faa5f896b73380078af3c1ee8605eec949aaf9c8f422f264f3de916b58dc905ee964be623d23ba97ccc5a2b838249eaa10a8671d6a68f97b09746107abf", + "dataAbiValues": { + "methodSignature": "handleCreateRequest(uint256,bytes32)", + "inputValues": [ + "101489901651207154401933345705911812335881908306802664469868899807780031346061", + "c905ee964be623d23ba97ccc5a2b838249eaa10a8671d6a68f97b09746107abf" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 23884, + "blockTimestampDelay": 297676 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000020000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x161c7318", + "dataAbiValues": { + "methodSignature": "test_debug()", + "inputValues": [] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 0, + "blockTimestampDelay": 1 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000070000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xaa1a5bd9ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffee2cac1a259bf9695aac61487b4606621f281407f44a6d621116f436e53e00628b", + "dataAbiValues": { + "methodSignature": "handleResolveDispute(uint256,uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913129639918", + "20205843492154653597326893919151713313559584018734749877274787063574636290699" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 23891, + "blockTimestampDelay": 328958 + }, + { + "call": { + "from": "0x00000000000000000000000000000000000a0000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xec5bf215fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff60000", + "dataAbiValues": { + "methodSignature": "handleFinalizeRequestResponseModule(uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913128984576" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 23883, + "blockTimestampDelay": 276784 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000020000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xd1a55655fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe9c", + "dataAbiValues": { + "methodSignature": "handleRevokeModule(uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913129639580" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 14210, + "blockTimestampDelay": 524288 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000060000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x727899fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffb001400000000000000000000000000000000000000000000000000000000001275000000000000000000000000000000000000000000000000000000000000000000a46e28ce399e11c208b07a84e457189f5b64e15f51e128b7baf507642bfef8c6", + "dataAbiValues": { + "methodSignature": "handlePledge(uint256,uint256,uint256,uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913129312276", + "1209600", + "0", + "74373941974452021616102119156230516273735358461823357873191033522071497799878" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 1, + "blockTimestampDelay": 256 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000040000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xa44b098effffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0003", + "dataAbiValues": { + "methodSignature": "handleSetArbitrator(uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913129574403" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 43748, + "blockTimestampDelay": 541010 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000010000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x8f790139ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0", + "dataAbiValues": { + "methodSignature": "handleReleaseUnutilizedResponse(uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913129639904" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 11833, + "blockTimestampDelay": 213928 + } +] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803590022000-aa14cc9b-89e7-4ad3-bd27-cebd20d762fd.json b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803590022000-aa14cc9b-89e7-4ad3-bd27-cebd20d762fd.json new file mode 100755 index 0000000..e6bf6c5 --- /dev/null +++ b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803590022000-aa14cc9b-89e7-4ad3-bd27-cebd20d762fd.json @@ -0,0 +1,255 @@ +[ + { + "call": { + "from": "0x0000000000000000000000000000000000030000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x13a8b8040000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000034000000000000000000000000000000000000000000000000000000000000000170000000000000000000000000000000000000000000000000000000000d2f000ffffc0000000000000000000000000000000000000000000000000000000000181dc31bc03ad9bc8a966de91dfc8c49b929f6d5fd44a9c22a7f5bb37cebfc106ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed8ee8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6c5805bc2cfc37067e378b4feef3f3411136744d0b2851c161c601669654cf27bfe6100000000000000000000000000000000000000000000000000000000000000006cd40d93882a844c2becf361c7579664aef7a6ef6e8b79d6bf6f6f76426e9b14039e696f94058cfd274de97421f65916ac135f4d55083d357b9c1f34820c9376000000000000000000000000000000000000000000000000000000000003fffe000000000000000000000000000000000000000000000000000000000000000167e6a528e0202cf23a36eacf513eee303475d3e4c983b2ae2d616b11c440f70aaa625827d77aa233df42016988900477ead582090357ec011f404ff1f0aa321bfffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9686c2d73382b1edfa908bcaeb6b9ac0073f469887a9150c80831642e47e35a614c1bffffffffffffffffffffffffffffffffffffffffffffe48e5eb33a3a7f000000104a13a90c13653470268ea78892361e7e91e706d859aabaaf45ddd18c956640809a37cc7335cdf29b7d988dc8c05e2c1899ad1795364e6fa667088b49487472000000000000000000000000000000000000000000000000000000000000fff6fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b80756993dc4be6ecf1e46c48d6f9cae9255a8b46ef956a3d85442a5f41f70ecf93000000000000000000000000000000000000000000000000000000000076a700a77a4c48695a0407441e86efc633aee092d2ebd99c87fdfeebcd904fe33e086d000000000000000000000000000000000000000000000000000000000000001d563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd0633ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed69586530127b846a0115a3e561f49781eea70d4bcc4884906080e6adb068ff5fe13953f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b4498bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef328d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad82082401f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade0554594d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e05648dd821e471bd9a22c1f612735d2d7244c13832c4b0f28993ecafc561bfc52ae4f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cbba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c33f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8fd276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f6617237058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf259a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe2665f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a219fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb", + "dataAbiValues": { + "methodSignature": "handleCreateRequests(uint256[],bytes32[])", + "inputValues": [ + [ + "13824000", + "115791647525550000827488589184312722123641027794666345134718053606362806484993", + "58737407075920930096693749632210245280794127876199190949253348332199714210054", + "115792089237316195423570985008687907853269984665640564039457584007913128431336", + "115792089237316195423570985008687907853269984665640564039457584007913129035136", + "41504671482165347584846103287222174319130579613222615088745194098566077611617", + "0", + "49224452924880417829398231270379785502530069722970149981823851608145893694228", + "1636828073493779560152621491074002847609709387720111137750911676859097584502", + "262142", + "1", + "46995738119123743123282428161140493004285235666026628953647859202250191730442", + "77066943699312596523560233185714836616924754343478096130098486630426813805083", + "115792089237316195423570985008687907853269984665640564039457584007913129207916", + "20557653259021005890251421269967042420225955023564768794272035576696478452763", + "115792089237316195423570985008687907853269984665640563909857584007913129639936", + "7367887950809164700104084563884591449786965425123545364576065505479275931200", + "58168524174645209900719041489934173752247098791866719219864340874379345294450", + "65526", + "115792089237316195423570985008687907853269984665640564039457584007913129380736", + "53107142721938561923251317745913031228477959801596843755970727929974933606291", + "7776000", + "75752327540241786815348607290604056680494387521335977257182003214564422715501" + ], + [ + "563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe", + "27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a", + "9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd06", + "33ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865", + "30127b846a0115a3e561f49781eea70d4bcc4884906080e6adb068ff5fe13953", + "f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1", + "c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b44", + "98bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01", + "108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef32", + "8d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea", + "94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad8208240", + "1f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade05545", + "94d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056", + "48dd821e471bd9a22c1f612735d2d7244c13832c4b0f28993ecafc561bfc52ae", + "4f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa", + "9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874", + "ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cb", + "ba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c3", + "3f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8f", + "d276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99", + "fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce", + "3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb", + "4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f661723", + "7058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78", + "994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25", + "9a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe26", + "65f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a2", + "19fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c", + "51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb" + ] + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 21265, + "blockTimestampDelay": 360627 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000050000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x91e32c74e0613faa5f896b73380078af3c1ee8605eec949aaf9c8f422f264f3de916b58d4b3032484de1fb4c70c2a705584283a0288158e7d201a2526966e049d49acde5", + "dataAbiValues": { + "methodSignature": "handleCreateRequest(uint256,bytes32)", + "inputValues": [ + "101489901651207154401933345705911812335881908306802664469868899807780031346061", + "4b3032484de1fb4c70c2a705584283a0288158e7d201a2526966e049d49acde5" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 23884, + "blockTimestampDelay": 297676 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000080000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x62e8fd350000000000000000000000000000000000000000000000000000000000000000f3e0a4b7d4b9f146c330bf4206493b9644386108e6fb9dbd1ec9e9631656b911", + "dataAbiValues": { + "methodSignature": "handleOnDisputeStatusChange(uint256,uint256)", + "inputValues": [ + "0", + "110308932790717902341334723675742636402013152744066319296234386176011142609169" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 6, + "blockTimestampDelay": 447025 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000060000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xb05752f7000000000000000000000000000000000000000000000000000000000083d600ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff3cb74a490a6b235de22fdba8b11c89c1a75ba52781eaa376b8904d607971473952c39b6854fd2443ddec68f9b401b12b2c3233b939e902ba2cc4b78fc21880c9", + "dataAbiValues": { + "methodSignature": "handleOnSettleBondEscalation(uint256,uint256,uint256,uint256)", + "inputValues": [ + "8640000", + "115792089237316195423570985008687907853269984665640564039457584007913129639935", + "27462616626253393834172180586494418890954476283257859666307992469208736810809", + "37435261344928203651121242557808094327910915308413204917974281668150859169993" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 20576, + "blockTimestampDelay": 441138 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000050000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x88b05f29000000000000000000000000000000000000000000000000000000000009fffe000000000000000000000000c43801cd359a82757df4289878ce85539b0fcade000000000000000000000000000000000000000000000000000000000000006434998e76fdd43c55ad90e4a35d96044a3ebe674f5dfa103757d366102ca9f26c00000000000000000000000000000000000000000000000000000000000001000e694122e842adea5277bbbdab0b14091c2583d39824533976734442dab724e2195f41f8193b8fdb454e4c675da554f0f9409064f42db392c9ab9d5e83fad976fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe", + "dataAbiValues": { + "methodSignature": "handleSetDisputeModuleData(uint256,(address,address,uint256,uint256,uint256,uint256,uint256))", + "inputValues": [ + "655358", + { + "accountingExtension": "0xc43801Cd359A82757Df4289878CE85539B0fcAdE", + "bondEscalationDeadline": "6518348376578069825047353184871606747778953752910129049968505915388248663266", + "bondSize": "23791578983227214469447533216306682837879210004146422934780693486186688803436", + "bondToken": "0x0000000000000000000000000000000000000064", + "disputeWindow": "115792089237316195423570985008687907853269984665640564039457584007913129639934", + "maxNumberOfEscalations": "256", + "tyingBuffer": "11476126987972230713107770724661081842991657660629818104854040000448595417462" + } + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 1, + "blockTimestampDelay": 2 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000020000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xf84d6dfc00000000000000000000000000000000000000000000000006f05b59d3ad0000", + "dataAbiValues": { + "methodSignature": "handleAddEBORequestCreatorRequestModule(uint256)", + "inputValues": [ + "499999999999672320" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 12976, + "blockTimestampDelay": 472659 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000010000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x4741f6dcc0e4d0eee56b7f10aa9aefe04c4f650af62be8b532d57f12aa7ac5b950884c3a", + "dataAbiValues": { + "methodSignature": "handleSetFinalityModuleData(uint256)", + "inputValues": [ + "87248350062624793638699702709121271409886681841563726628967995216176035155002" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 29334, + "blockTimestampDelay": 296740 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000020000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x5356b681bebfb0dc367f431af08687c084e9c844567359d9793a12e0818425b7df16682a", + "dataAbiValues": { + "methodSignature": "handleAddEBORequestCreatorFinalityModule(uint256)", + "inputValues": [ + "86278129664477803463997658766424154744739678303000950581784606393529462581290" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 3566, + "blockTimestampDelay": 274227 + } +] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803590829000-913a5283-6ee7-4539-b536-25e88067c71c.json b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803590829000-913a5283-6ee7-4539-b536-25e88067c71c.json new file mode 100755 index 0000000..2084ce2 --- /dev/null +++ b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803590829000-913a5283-6ee7-4539-b536-25e88067c71c.json @@ -0,0 +1,302 @@ +[ + { + "call": { + "from": "0x0000000000000000000000000000000000030000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x13a8b8040000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000034000000000000000000000000000000000000000000000000000000000000000170000000000000000000000000000000000000000000000000000000000d2f000ffffc0000000000000000000000000000000000000000000000000000000000181dc31bc03ad9bc8a966de91dfc8c49b929f6d5fd44a9c22a7f5bb37cebfc106000000000000000000000000000000000000000000007ff72b2c19616ab00000e645df196666f5e4e940c577b9670b086db2c746878e45aae0dbee6c63a0e6a35bc2cfc37067e378b4feef3f3411136744d0b2851c161c601669654cf27bfe6100000000000000000000000000000000000000000000000000000000000000006cd40d93882a844c2becf361c7579664aef7a6ef6e8b79d6bf6f6f76426e9b14039e696f94058cfd274de97421f65916ac135f4d55083d357b9c1f34820c9376000000000000000000000000000000000000000000000000000000000003fffe000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000004ac07813439b9213b22d4d86340307a2982de60c241368ad288dfea742b6eb5efffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9686c2d73382b1edfa908bcaeb6b9ac0073f469887a9150c80831642e47e35a614c1bffffffffffffffffffffffffffffffffffffffffffffe48e5eb33a3a7f000000104a13a90c13653470268ea78892361e7e91e706d859aabaaf45ddd18c956640809a37cc7335cdf29b7d988dc8c05e2c1899ad1795364e6fa667088b49487472000000000000000000000000000000000000000000000000000000000000fff6fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b80756993dc4be6ecf1e46c48d6f9cae9255a8b46ef956a3d85442a5f41f70ecf93000000000000000000000000000000000000000000000000000000000076a700a77a4c48695a0407441e86efc633aee092d2ebd99c87fdfeebcd904fe33e086d000000000000000000000000000000000000000000000000000000000000001d563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd0633ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed6958658aad3329b56f2f98187bbaed7351982ae06a00b9382adcb723b8b393d1f5e2def8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b4498bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a0171bc7dd16f0e277b94f2e46980d7e8e6c3c5187bf68be378e2d72cd0e70293ef8d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad82082401f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade0554594d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae962914f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874465e592f6d3f1d78fbc619b878d95794035829bd9b1285f3eb021d72f8e45638ba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c33f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8fd276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a9925e5ea45a807ae40eb654d82982bacb30bb1da6060d308d0b63004f4e1926b0c3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f6617237058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf259a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe2665f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a219fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb", + "dataAbiValues": { + "methodSignature": "handleCreateRequests(uint256[],bytes32[])", + "inputValues": [ + [ + "13824000", + "115791647525550000827488589184312722123641027794666345134718053606362806484993", + "58737407075920930096693749632210245280794127876199190949253348332199714210054", + "604300000000000000000000", + "104155407395839188072220307346509508179171066778602859964492537460856123877027", + "41504671482165347584846103287222174319130579613222615088745194098566077611617", + "0", + "49224452924880417829398231270379785502530069722970149981823851608145893694228", + "1636828073493779560152621491074002847609709387720111137750911676859097584502", + "262142", + "1", + "0", + "33811214160519685654400438720767591502827986970858420988841187408488311483230", + "115792089237316195423570985008687907853269984665640564039457584007913129207916", + "20557653259021005890251421269967042420225955023564768794272035576696478452763", + "115792089237316195423570985008687907853269984665640563909857584007913129639936", + "7367887950809164700104084563884591449786965425123545364576065505479275931200", + "58168524174645209900719041489934173752247098791866719219864340874379345294450", + "65526", + "115792089237316195423570985008687907853269984665640564039457584007913129380736", + "53107142721938561923251317745913031228477959801596843755970727929974933606291", + "7776000", + "75752327540241786815348607290604056680494387521335977257182003214564422715501" + ], + [ + "563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe", + "27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a", + "9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd06", + "33ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865", + "8aad3329b56f2f98187bbaed7351982ae06a00b9382adcb723b8b393d1f5e2de", + "f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1", + "c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b44", + "98bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01", + "71bc7dd16f0e277b94f2e46980d7e8e6c3c5187bf68be378e2d72cd0e70293ef", + "8d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea", + "94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad8208240", + "1f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade05545", + "94d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056", + "cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae96291", + "4f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa", + "9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874", + "465e592f6d3f1d78fbc619b878d95794035829bd9b1285f3eb021d72f8e45638", + "ba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c3", + "3f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8f", + "d276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99", + "25e5ea45a807ae40eb654d82982bacb30bb1da6060d308d0b63004f4e1926b0c", + "3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb", + "4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f661723", + "7058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78", + "994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25", + "9a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe26", + "65f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a2", + "19fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c", + "51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb" + ] + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 21265, + "blockTimestampDelay": 360627 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000030000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 2, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x0692ea7eeaaa73118d1da2c1db95511517ab896f87445c2331029aecdc7f065f634e6b46", + "dataAbiValues": { + "methodSignature": "handleRemoveChain(uint256)", + "inputValues": [ + "106142364743506859045918558596602602319943607038906547683486076996802461985606" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 2001, + "blockTimestampDelay": 455470 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000090000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x864e2da9fffffffffffffffffffffffffffffffffffffffffffffffff90fa4a62c573a80b81e8d97661fbf779db19fd00793e39f3b40bca612ee408ab75ff1c6439cf047509736e50626b1084ee93f4294000f73db102927cdc7fc34de68c384da900e6c", + "dataAbiValues": { + "methodSignature": "handleArbitrateDispute(uint256,uint256,uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457084007913130244736", + "83279546779206125286340055887058748934887896216240549764862301155730028032071", + "36452200662221151095065482565067302916782446267779931962683895890335455252076" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 41956, + "blockTimestampDelay": 475112 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000090000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xb6c75efaab191ad64d8fba3d052ab8ef37a088ba9faf5a1be696a47310de3441525ef897fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe3aaae444ec5312714f03b0566d2b40e5d34f58f068cabf3625fc0d7cfe3db912", + "dataAbiValues": { + "methodSignature": "handleClaimEscalationReward(uint256,uint256,uint256)", + "inputValues": [ + "77389853507359787864882669351213362161735184606551274462865365263877886900375", + "115792089237316195423570985008687907853269984665640564039457584007913129639934", + "26536084675173092165947634556752584404681954305155475174391110206140234709266" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 18699, + "blockTimestampDelay": 240561 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000030000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 3, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xf84d6dfcd2d78e343e1607b919341e2fe248544a49a0028fbd677a717f6a437862ddbc00", + "dataAbiValues": { + "methodSignature": "handleAddEBORequestCreatorRequestModule(uint256)", + "inputValues": [ + "95366551777850189910113500849756061153261920552639335948298155642211775921152" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 16776, + "blockTimestampDelay": 165634 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000060000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x0fb55087cd27e66c1a6365fdd2d452e5a6a582655000c0811d209ba0499f4483caf4b2da", + "dataAbiValues": { + "methodSignature": "handleApproveModule(uint256)", + "inputValues": [ + "92794631311208978202520326772644046682922248037671286389514014341863059010266" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 6256, + "blockTimestampDelay": 488143 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000060000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xaa1a5bd9128a1b5b9d7d3061f14bea63c8830170dadc5f154b01425336f91cc6d8611588ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00", + "dataAbiValues": { + "methodSignature": "handleResolveDispute(uint256,uint256)", + "inputValues": [ + "8385644986530251641334144830118419649455771804161689778824132977763480049032", + "115792089237316195423570985008687907853269984665640564039457584007913129639680" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 35699, + "blockTimestampDelay": 65536 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000020000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x51b295e30000000000000000000000000000000000000000000000000de0b6b3a7640000", + "dataAbiValues": { + "methodSignature": "handleFinalize(uint256)", + "inputValues": [ + "1000000000000000000" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 41252, + "blockTimestampDelay": 375602 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000020000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xf60285caff44fb6a2363fac767b088aff222c3143f1ed041c9b3e47d6474ee4922e1979fec9d178675775c3aa5161a5a209a68597466d991483528cc71c8d6ac533d0955a137b7e6f635f28c37dc46d14755f62f1ce7b659dc1873b04e1744e54dc225b665dad307139d75a132cdb60e373e4b35bba44673f5ee3d0bfbf1ac491c3d0e75", + "dataAbiValues": { + "methodSignature": "handleBondWithSender(uint256,uint256,uint256,uint256)", + "inputValues": [ + "115461657188952309751477762153544746327107707569543270374831352475679717431199", + "107023389619990543669223297468939824753654796115418022982959364890624175966549", + "72920814456766912229072746410044959713398794893085675262607692768311068730806", + "46070226826296101107756227560930518318774961046515756120293728876851585945205" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 39447, + "blockTimestampDelay": 175903 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000040000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xa59d317d37645351a8f36eba3b366024eafac86b09ad5a52e0d3cf42eb52112344ab3206000000000000000000000000d12fb9f7a711eb0caf6aac68aeaf04277804b39e000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000000000000000000000000000000000000003200000fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffb00000b2104824bc90dc4bcf1e407a769278e1c443fdba6cf324b44962e4fea636424", + "dataAbiValues": { + "methodSignature": "handleSetResponseModuleData(uint256,(address,address,uint256,uint256,uint256))", + "inputValues": [ + "25054466425052560783839884851311066245042877293899029878022208182382616064518", + { + "accountingExtension": "0xd12fb9f7A711Eb0caF6aaC68AEaF04277804B39e", + "bondSize": "52428800", + "bondToken": "0x000000000000000000000000000000000000000A", + "deadline": "115792089237316195423570985008687907853269984665640564039457584007913129312256", + "disputeWindow": "5033778407313201451107747851099848118306043382601391308246767880599192691748" + } + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 26656, + "blockTimestampDelay": 604799 + } +] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803591721000-aa3d9573-1529-4050-b0e3-d3a2c82060ad.json b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803591721000-aa3d9573-1529-4050-b0e3-d3a2c82060ad.json new file mode 100755 index 0000000..edb4731 --- /dev/null +++ b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803591721000-aa3d9573-1529-4050-b0e3-d3a2c82060ad.json @@ -0,0 +1,275 @@ +[ + { + "call": { + "from": "0x0000000000000000000000000000000000030000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x13a8b80400000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000340000000000000000000000000000000000000000000000000000000000000001700000000000000000000000000000000000000000000000000000000000010e0ffffc0000000000000000000000000000000000000000000000000000000000181dc31bc03ad9bc8a966de91dfc8c49b929f6d5fd44a9c22a7f5bb37cebfc106ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed8ee8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b825bc2cfc37067e378b4feef3f3411136744d0b2851c161c601669654cf27bfe6100000000000000000000000000000000000000000000000000000000000000006cd40d93882a844c2becf361c7579664aef7a6ef6e8b79d6bf6f6f76426e9b14039e696f94058cfd274de97421f65916ac135f4d55083d357b9c1f34820c9376000000000000000000000000000000000000000000000000000000000003fffe000000000000000000000000000000000000000000000000000000000000000167e6a528e0202cf23a36eacf513eee303475d3e4c983b2ae2d616b11c440f70a0000000000000000000000000000000000000000000000000000000000000000fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9686c2d73382b1edfa908bcaeb6b9ac0073f469887a9150c80831642e47e35a614c1bffffffffffffffffffffffffffffffffffffffffffffe48e5eb33a3a7f000000104a13a90c13653470268ea78892361e7e91e706d859aabaaf45ddd18c956640809a37cc7335cdf29b7d988dc8c05e2c1899ad1795364e6fa667088b49487472000000000000000000000000000000000000000000000000000000000000fff6fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b80756993dc4be6ecf1e46c48d6f9cae9255a8b46ef956a3d85442a5f41f70ecf93000000000000000000000000000000000000000000000000000000000076a700a77a4c48695a0407441e86efc633aee092d2ebd99c87fdfeebcd904fe33e086d000000000000000000000000000000000000000000000000000000000000001d563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd0633ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed6958658aad3329b56f2f98187bbaed7351982ae06a00b9382adcb723b8b393d1f5e2def8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b4498bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef328d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad82082401f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade0554594d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e0568fcad889d076bcc6f0b5c84a4f6f334b74f944740b9f88a51f2895e76dd401884f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cbba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c33f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8fd276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f6617237058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25abbc2a768fea28edd1d653edcbaa5cace525564c5330b62b6ed63452f3b221f165f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a219fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb", + "dataAbiValues": { + "methodSignature": "handleCreateRequests(uint256[],bytes32[])", + "inputValues": [ + [ + "4320", + "115791647525550000827488589184312722123641027794666345134718053606362806484993", + "58737407075920930096693749632210245280794127876199190949253348332199714210054", + "115792089237316195423570985008687907853269984665640564039457584007913128431336", + "115792089237316195423570985008687907853269984665640564039457584007913129380738", + "41504671482165347584846103287222174319130579613222615088745194098566077611617", + "0", + "49224452924880417829398231270379785502530069722970149981823851608145893694228", + "1636828073493779560152621491074002847609709387720111137750911676859097584502", + "262142", + "1", + "46995738119123743123282428161140493004285235666026628953647859202250191730442", + "0", + "115792089237316195423570985008687907853269984665640564039457584007913129207916", + "20557653259021005890251421269967042420225955023564768794272035576696478452763", + "115792089237316195423570985008687907853269984665640563909857584007913129639936", + "7367887950809164700104084563884591449786965425123545364576065505479275931200", + "58168524174645209900719041489934173752247098791866719219864340874379345294450", + "65526", + "115792089237316195423570985008687907853269984665640564039457584007913129380736", + "53107142721938561923251317745913031228477959801596843755970727929974933606291", + "7776000", + "75752327540241786815348607290604056680494387521335977257182003214564422715501" + ], + [ + "563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe", + "27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a", + "9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd06", + "33ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865", + "8aad3329b56f2f98187bbaed7351982ae06a00b9382adcb723b8b393d1f5e2de", + "f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1", + "c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b44", + "98bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01", + "108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef32", + "8d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea", + "94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad8208240", + "1f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade05545", + "94d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056", + "8fcad889d076bcc6f0b5c84a4f6f334b74f944740b9f88a51f2895e76dd40188", + "4f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa", + "9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874", + "ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cb", + "ba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c3", + "3f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8f", + "d276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99", + "fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce", + "3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb", + "4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f661723", + "7058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78", + "994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25", + "abbc2a768fea28edd1d653edcbaa5cace525564c5330b62b6ed63452f3b221f1", + "65f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a2", + "19fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c", + "51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb" + ] + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 21265, + "blockTimestampDelay": 360627 + }, + { + "call": { + "from": "0x00000000000000000000000000000000000a0000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x6b125a57f70d7a9f8f7dc147f3c07846c57ff55a159156e04b1aef93f09a50411ed01cac", + "dataAbiValues": { + "methodSignature": "handleRemoveEBORequestCreatorFinalityModule(uint256)", + "inputValues": [ + "111745088926706135766942953021093517459235404528421949148968020375462747315372" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 41182, + "blockTimestampDelay": 251336 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000090000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x9f6259e5f758e7d4f100dcc2db3c85b9df5a8759d5abbd1697a1a04ec3af1471f220359a0000000000000000000000007109709ecfa91a80626ff3989d68f67f5b1dd12d", + "dataAbiValues": { + "methodSignature": "handleResolve(uint256,uint256)", + "inputValues": [ + "111878356186062714847010348548460913142200960060168223055923222451354708489626", + "645326474426547203313410069153905908525362434349" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 36881, + "blockTimestampDelay": 523741 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000050000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x0692ea7efffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7fc18", + "dataAbiValues": { + "methodSignature": "handleRemoveChain(uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913129114648" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 6610, + "blockTimestampDelay": 345959 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000060000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x9d2e6a6ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd0000", + "dataAbiValues": { + "methodSignature": "handleRemoveEBORequestCreatorRequestModule(uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913129443328" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 43871, + "blockTimestampDelay": 505590 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000080000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xdb106aceffffffffffffffffffffffffffffffffffffffffffffffffffffffdb16000000fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffafffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6a23f9b5b11f6aa4692c684f075c04d172abcb68f78eb66c92efe082b6a5d503c", + "dataAbiValues": { + "methodSignature": "handleSlash(uint256,uint256,uint256,uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007754584948736", + "115792089237316195423570985008687907853269984665640564039457584007913129639930", + "115792089237316195423570985008687907853269984665640564039457584007913129639926", + "73387065061500873488441831200362672861865918134039727439380329949185011699772" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 3063, + "blockTimestampDelay": 142231 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000090000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xd51b326a000000000000000000000000000000000000000000000000000000000000000afffffffffffffffffffffffffffffffffffffffffffffffff90fa4a62c4e00000000000000000000000000000000000000000000000000000000000000050000", + "dataAbiValues": { + "methodSignature": "handlePledgeForDispute(uint256,uint256,uint256)", + "inputValues": [ + "10", + "115792089237316195423570985008687907853269984665640564039457084007913129639936", + "327680" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 30742, + "blockTimestampDelay": 327371 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000050000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xdb106acedde5aa2b18247560fc1884f651a16aa87d39e393fba6b34aabbf8a91cb385dfcfffffffffffffffffffffffffffffffffffffffffffffffffffffffffff60000843cd2add879d57e8f0aed34ab13caad0caf471b1135b4b168d69edad56713fd3584b63683c5725b9668691d6e5ef4449bd9293600a6bb52896061ae72902454", + "dataAbiValues": { + "methodSignature": "handleSlash(uint256,uint256,uint256,uint256)", + "inputValues": [ + "100366921973435276086896168354134063395714770959453851558374627032108927311356", + "115792089237316195423570985008687907853269984665640564039457584007913128984576", + "59812760890479040346002793760866213267959709503641590677485959242158816302077", + "24207062375013236297905391945117914944555470909794312387449976114680249197652" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 23786, + "blockTimestampDelay": 256720 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000090000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 2, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x64d6e6d3e1ce6a1ddae133deb1d439cee384b8f5f1fc4f3fd0c36441f5efed119f24e24900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000069780", + "dataAbiValues": { + "methodSignature": "handlePledgeAgainstDispute(uint256,uint256,uint256)", + "inputValues": [ + "102135093816581220269834099028023316090001883482696692672153861645213823722057", + "0", + "432000" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 54088, + "blockTimestampDelay": 60993 + } +] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803592555000-4f7eeec0-56e3-48d7-b30c-79fd53ad3971.json b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803592555000-4f7eeec0-56e3-48d7-b30c-79fd53ad3971.json new file mode 100755 index 0000000..f55a668 --- /dev/null +++ b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803592555000-4f7eeec0-56e3-48d7-b30c-79fd53ad3971.json @@ -0,0 +1,314 @@ +[ + { + "call": { + "from": "0x0000000000000000000000000000000000030000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x13a8b8040000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000034000000000000000000000000000000000000000000000000000000000000000170000000000000000000000000000000000000000000000000000000000d2f000ffffc0000000000000000000000000000000000000000000000000000000000181dc31bc03ad9bc8a966de91dfc8c49b929f6d5fd44a9c22a7f5bb37cebfc106ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed8ee8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b825bc2cfc37067e378b4feef3f3411136744d0b2851c161c601669654cf27afe610000000000000000000000000000000000000000000000000000000000000000578750b27e877a957d33dc50d914b1caf972efffa4bb78b85e66dd813a864ca4039e696f94058cfd274de97421f65916ac135f4d55083d357b9c1f34820c9376000000000000000000000000000000000000000000000000000000000003fffe000000000000000000000000000000000000000000000000000000000000000167e6a528e0202cf23a36eacf513eee303475d3e4c983b2ae2d616b11c440f70a4ac07813439b9213b22d4d86340307a2982de60c241368ad288dfea742b6eb5efffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9686c2d73382b1edfa908bcaeb6b9ac0073f469887a9150c80831642e47e35a614c1bffffffffffffffffffffffffffffffffffffffffffffe48e5eb33a3a7f000000104a13a90c13653470268ea78892361e7e91e706d859aabaaf45ddd18c956640809a37cc7335cdf29b7d988dc8c05e2c1899ad1795364e6fa667088b49487472000000000000000000000000000000000000000000000000000000000000fff6fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b800000000000000000000000000000000000000000000000000329c51ac594cf93000000000000000000000000000000000000000000000000000000000076a700a77a4c48695a0407441e86efc633aee092d2ebd99c87fdfeebcd904fe33e086d000000000000000000000000000000000000000000000000000000000000001d563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd0633ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865d5d6866ffb684491364a0853403f689144f5664f5d50de1b1a30d683ff29f21bf8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b4498bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef328d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad820824094c2949304cd969b5661cff34ece28aab6ca0f3eb707dc756ae848252d66c44a94d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae96291d8c581a922d52cd477658fcc2e2ca1f954f274ed2cd833a98e6d1d4455581f9d9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cbba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c389436d2b9b4dda11f7c2a5c1ca8fb20cba7512c884b100fa143fc24dc6c160eed276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f6617237058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25bcffd3ebd814d0f5e8e8dc7ef0303a14b98e79acfcabb14c9ad4225afd8f18c265f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a219fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c18aad5c04eb3f39ce81189eee664fb350f14bd8ce4dd62972aa7de342f017c7f", + "dataAbiValues": { + "methodSignature": "handleCreateRequests(uint256[],bytes32[])", + "inputValues": [ + [ + "13824000", + "115791647525550000827488589184312722123641027794666345134718053606362806484993", + "58737407075920930096693749632210245280794127876199190949253348332199714210054", + "115792089237316195423570985008687907853269984665640564039457584007913128431336", + "115792089237316195423570985008687907853269984665640564039457584007913129380738", + "41504671482165347584846103287222174319130579613222615088745194098566077546081", + "0", + "39590299132392589184737138068833640165131826767556478003143025413084726840484", + "1636828073493779560152621491074002847609709387720111137750911676859097584502", + "262142", + "1", + "46995738119123743123282428161140493004285235666026628953647859202250191730442", + "33811214160519685654400438720767591502827986970858420988841187408488311483230", + "115792089237316195423570985008687907853269984665640564039457584007913129207916", + "20557653259021005890251421269967042420225955023564768794272035576696478452763", + "115792089237316195423570985008687907853269984665640563909857584007913129639936", + "7367887950809164700104084563884591449786965425123545364576065505479275931200", + "58168524174645209900719041489934173752247098791866719219864340874379345294450", + "65526", + "115792089237316195423570985008687907853269984665640564039457584007913129380736", + "227929974933606291", + "7776000", + "75752327540241786815348607290604056680494387521335977257182003214564422715501" + ], + [ + "563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe", + "27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a", + "9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd06", + "33ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865", + "d5d6866ffb684491364a0853403f689144f5664f5d50de1b1a30d683ff29f21b", + "f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1", + "c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b44", + "98bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01", + "108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef32", + "8d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea", + "94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad8208240", + "94c2949304cd969b5661cff34ece28aab6ca0f3eb707dc756ae848252d66c44a", + "94d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056", + "cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae96291", + "d8c581a922d52cd477658fcc2e2ca1f954f274ed2cd833a98e6d1d4455581f9d", + "9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874", + "ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cb", + "ba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c3", + "89436d2b9b4dda11f7c2a5c1ca8fb20cba7512c884b100fa143fc24dc6c160ee", + "d276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99", + "fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce", + "3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb", + "4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f661723", + "7058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78", + "994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25", + "bcffd3ebd814d0f5e8e8dc7ef0303a14b98e79acfcabb14c9ad4225afd8f18c2", + "65f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a2", + "19fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c", + "18aad5c04eb3f39ce81189eee664fb350f14bd8ce4dd62972aa7de342f017c7f" + ] + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 21265, + "blockTimestampDelay": 360627 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000020000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x161c7318", + "dataAbiValues": { + "methodSignature": "test_debug()", + "inputValues": [] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 15325, + "blockTimestampDelay": 189245 + }, + { + "call": { + "from": "0x00000000000000000000000000000000000a0000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x88b05f294e5c5739570432e46e997185cf2683c287e8339e1ce7ab9502db4f4b4f0c1b77000000000000000000000000000000000000000000000000000000000012750000000000000000000000000000000000000000000000000006f05b59d3b200003c3b20fe3c6474ef6112cec6e2e1e2a66147c502767418c32e65c3bfa035d898948fc45007206ff5c0b2215d0b5c97d5551a84ed653f28e284b8567c463ce3650000000000000000000000000000000000000000000000000000000000069780ffffffffffffffffffffffffffffffffffffffffffffffffffffffec39800000109b1ce09a2caa796f35db2570026fd5d54f3b6f79d72997e7e30411ab7bab5f", + "dataAbiValues": { + "methodSignature": "handleSetDisputeModuleData(uint256,(address,address,uint256,uint256,uint256,uint256,uint256))", + "inputValues": [ + "35443554117267417118592017165536035041230544133048285386578266163756344810359", + { + "accountingExtension": "0x0000000000000000000000000000000000127500", + "bondEscalationDeadline": "432000", + "bondSize": "27243242601887521753615714576112380311306725462768124357416761313244220872856", + "bondToken": "0x00000000000000000000000006f05b59d3b20000", + "disputeWindow": "7511066176535142771400004346711719422194606327049609712661925953610498943839", + "maxNumberOfEscalations": "67196315620416968751812103706326677402054656808860235011842083525495944438629", + "tyingBuffer": "115792089237316195423570985008687907853269984665640564039457584007828194983936" + } + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 24101, + "blockTimestampDelay": 185392 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000010000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xb6c75efa8ba080b8a5e8e7e02b35ca63d619e3bf03ea7ee17a7395426e8c0ae38903a378ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff51e8737b07890aad8af4228017f323f8ee58c58602fe8a95d9a372445358479b", + "dataAbiValues": { + "methodSignature": "handleClaimEscalationReward(uint256,uint256,uint256)", + "inputValues": [ + "63155069885073485423962987089686113899340909970551762747564159406599093592952", + "115792089237316195423570985008687907853269984665640564039457584007913129639935", + "37048046271970045328561159781521571766041874645079829392453863326819299116955" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 7, + "blockTimestampDelay": 32 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000090000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x223b137400003ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe000000000000000000000000000000000000000000000000000000000000004006807205175b22b301c32b6c5e6ee194bd596681cba8c8638952ec1250f3d6450000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000000000000000000000000000000001518000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000027874838a0b68a875ec0ee81d4c8ef1980254e8ae6eaec10d74722bac9ebd5a49a6c310208a5de1500000000000000000000000000000000000000000000000000", + "dataAbiValues": { + "methodSignature": "handleSetRequestModuleData(uint256,(uint256,string,address,uint256))", + "inputValues": [ + "441711766194596082395824375185729628956870974218904739530401550323154942", + { + "accountingExtension": "0x0000000000000000000000000000000000015180", + "chainId": "\ufffdH8\ufffd\ufffd\ufffd\ufffd^\ufffd\ufffd\ufffd\ufffd\ufffd\ufffd\u0019\ufffd%N\ufffd\ufffd\ufffd\ufffd\u0010\ufffdG\"\ufffd\ufffd\ufffdդ\ufffdl1\u0002\b\ufffd\ufffd\u0015", + "epoch": "2940820452134172681045375212785432443100619197912571245547930807664892958277", + "paymentAmount": "0" + } + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 15253, + "blockTimestampDelay": 492034 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000080000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xaa1a5bd900000000000000000000000000000000000000000000000006f05b59d3b2000071f7cd086897aaf2110bd910f953453e7bcc20e82af33eec4c00647f9fb5da5e", + "dataAbiValues": { + "methodSignature": "handleResolveDispute(uint256,uint256)", + "inputValues": [ + "500000000000000000", + "51549178199604899047887187595007193100674999475015380254417935657395983604318" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 53242, + "blockTimestampDelay": 71336 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000070000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x52e3cb9cffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffec", + "dataAbiValues": { + "methodSignature": "handleSetMaxUsersToCheck(uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913129639916" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 45495, + "blockTimestampDelay": 225944 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000090000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xdb106aceffffffffffffffffffffffffffffffffffffffffffffffffffffffec398000001371ca94900c31d8e9be66d7c23f65b05f5d33ff2b30949acfed984f87f269e080baf5544430fe321ebd2409617ef6786f5b994597bc40798f800826b310e4524793f157456609da494af2a02075c03fcf9249185214862d5dd9f0eddb7447ce", + "dataAbiValues": { + "methodSignature": "handleSlash(uint256,uint256,uint256,uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007828194983936", + "8794995999406163856009545368231505849668095829549449500668097316828300339680", + "58226371372378751290891435773627286125304890291737788253576280229276508283986", + "32375604441627796962923040660328673776239995228426910584919203216277625915342" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 49592, + "blockTimestampDelay": 581992 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000080000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x223b1374000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000408986d1481eea494dad550c07436bc6bf24fda1699ae18ac8e867c2bc2cbb811f0000000000000000000000000000000000000000000000000000000000000080000000000000000000000000148bd2b35a0e0ff5f58651fe93524e321532b27500000000000000000000000000000000000000000000000000000000001274fe000000000000000000000000000000000000000000000000000000000000001419d972fb93584a547a564eb672065531206d2c71000000000000000000000000", + "dataAbiValues": { + "methodSignature": "handleSetRequestModuleData(uint256,(uint256,string,address,uint256))", + "inputValues": [ + "0", + { + "accountingExtension": "0x148bd2b35a0e0ff5f58651fe93524E321532b275", + "chainId": "\u0019\ufffdr\ufffd\ufffdXJTzVN\ufffdr\u0006U1 m,q", + "epoch": "62205062171946186530711375116649708949236787489916806320076639634871891493151", + "paymentAmount": "1209598" + } + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 57406, + "blockTimestampDelay": 508192 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000090000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 2, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x3f60f9cc0000000000000000000000000000000000000000000000000000000000000000235c58e45e6b448123df4ec75c527147b56e207c4815f37193cfafc12fe9143343aa8e00e44758769fcba79ddc533615c240383088eacc520788ca11f978270a", + "dataAbiValues": { + "methodSignature": "handleRelease(uint256,uint256,uint256)", + "inputValues": [ + "0", + "15994113140863775377512613840889015859198326455210825118094249343807524508723", + "30606304928112969978587259490316563804100123622315096384733063005977978611466" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 14222, + "blockTimestampDelay": 506677 + } +] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803595622000-8d816111-c114-4b60-9a27-9562e7740699.json b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803595622000-8d816111-c114-4b60-9a27-9562e7740699.json new file mode 100755 index 0000000..e503da6 --- /dev/null +++ b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803595622000-8d816111-c114-4b60-9a27-9562e7740699.json @@ -0,0 +1,327 @@ +[ + { + "call": { + "from": "0x0000000000000000000000000000000000030000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x13a8b8040000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000034000000000000000000000000000000000000000000000000000000000000000170000000000000000000000000000000000000000000000000000000000d2f000ffffc0000000000000000000000000000000000000000000000000000000000181dc31bc03ad9bc8a966de91dfc8c49b929f6d5fd44a9c22a7f5bb37cebfc106ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed8ee8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6c5805bc2cfc37067e378b4feef3f3411136744d0b2851c161c601669654cf27bfe6100000000000000000000000000000000000000000000000000000000000000006cd40d93882a844c2becf361c7579664aef7a6ef6e8b79d6bf6f6f76426e9b14039e696f94058cfd274de97421f65916ac135f4d55083d357b9c1f34820c9376000000000000000000000000000000000000000000000000000000000003fffe000000000000000000000000000000000000000000000000000000000000000167e6a528e0202cf23a36eacf513eee303475d3e4c983b2ae2d616b11c440f70aaa625827d77aa233df42016988900477ead582090357ec011f404ff1f0aa321bfffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9686c2d73382b1edfa908bcaeb6b9ac0073f469887a9150c80831642e47e35a614c1bffffffffffffffffffffffffffffffffffffffffffffe48e5eb33a3a7f000000104a13a90c13653470268ea78892361e7e91e706d859aabaaf45ddd18c956640809a37cc7335cdf29b7d988dc8c05e2c1899ad1795364e6fa667088b49487472000000000000000000000000000000000000000000000000000000000000fff6fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b80756993dc4be6ecf1e46c48d6f9cae9255a8b46ef956a3d85442a5f41f70ecf93000000000000000000000000000000000000000000000000000000000076a700a77a4c48695a0407441e86efc633aee092d2ebd99c87fdfeebcd904fe33e086d000000000000000000000000000000000000000000000000000000000000001d563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd0633ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed69586530127b846a0115a3e561f49781eea70d4bcc4884906080e6adb068ff5fe13953f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b4498bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef328d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad82082401f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade0554594d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e05648dd821e471bd9a22c1f612735d2d7244c13832c4b0f28993ecafc561bfc52ae4f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cbba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c33f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8fd276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f6617237058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf259a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe2665f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a219fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb", + "dataAbiValues": { + "methodSignature": "handleCreateRequests(uint256[],bytes32[])", + "inputValues": [ + [ + "13824000", + "115791647525550000827488589184312722123641027794666345134718053606362806484993", + "58737407075920930096693749632210245280794127876199190949253348332199714210054", + "115792089237316195423570985008687907853269984665640564039457584007913128431336", + "115792089237316195423570985008687907853269984665640564039457584007913129035136", + "41504671482165347584846103287222174319130579613222615088745194098566077611617", + "0", + "49224452924880417829398231270379785502530069722970149981823851608145893694228", + "1636828073493779560152621491074002847609709387720111137750911676859097584502", + "262142", + "1", + "46995738119123743123282428161140493004285235666026628953647859202250191730442", + "77066943699312596523560233185714836616924754343478096130098486630426813805083", + "115792089237316195423570985008687907853269984665640564039457584007913129207916", + "20557653259021005890251421269967042420225955023564768794272035576696478452763", + "115792089237316195423570985008687907853269984665640563909857584007913129639936", + "7367887950809164700104084563884591449786965425123545364576065505479275931200", + "58168524174645209900719041489934173752247098791866719219864340874379345294450", + "65526", + "115792089237316195423570985008687907853269984665640564039457584007913129380736", + "53107142721938561923251317745913031228477959801596843755970727929974933606291", + "7776000", + "75752327540241786815348607290604056680494387521335977257182003214564422715501" + ], + [ + "563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe", + "27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a", + "9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd06", + "33ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865", + "30127b846a0115a3e561f49781eea70d4bcc4884906080e6adb068ff5fe13953", + "f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1", + "c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b44", + "98bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01", + "108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef32", + "8d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea", + "94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad8208240", + "1f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade05545", + "94d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056", + "48dd821e471bd9a22c1f612735d2d7244c13832c4b0f28993ecafc561bfc52ae", + "4f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa", + "9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874", + "ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cb", + "ba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c3", + "3f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8f", + "d276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99", + "fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce", + "3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb", + "4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f661723", + "7058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78", + "994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25", + "9a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe26", + "65f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a2", + "19fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c", + "51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb" + ] + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 21265, + "blockTimestampDelay": 360627 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000050000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x91e32c74e0613faa5f896b73380078af3c1ee8605eec949aaf9c8f422f264f3de916b58d4b3032484de1fb4c70c2a705584283a0288158e7d201a2526966e049d49acde5", + "dataAbiValues": { + "methodSignature": "handleCreateRequest(uint256,bytes32)", + "inputValues": [ + "101489901651207154401933345705911812335881908306802664469868899807780031346061", + "4b3032484de1fb4c70c2a705584283a0288158e7d201a2526966e049d49acde5" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 23884, + "blockTimestampDelay": 297676 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000080000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x62e8fd350000000000000000000000000000000000000000000000000000000000000000f3e0a4b7d4b9f146c330bf4206493b9644386108e6fb9dbd1ec9e9631656b911", + "dataAbiValues": { + "methodSignature": "handleOnDisputeStatusChange(uint256,uint256)", + "inputValues": [ + "0", + "110308932790717902341334723675742636402013152744066319296234386176011142609169" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 6, + "blockTimestampDelay": 447025 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000060000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xb05752f7000000000000000000000000000000000000000000000000000000000083d600ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff3cb74a490a6b235de22fdba8b11c89c1a75ba52781eaa376b8904d607971473952c39b6854fd2443ddec68f9b401b12b2c3233b939e902ba2cc4b78fc21880c9", + "dataAbiValues": { + "methodSignature": "handleOnSettleBondEscalation(uint256,uint256,uint256,uint256)", + "inputValues": [ + "8640000", + "115792089237316195423570985008687907853269984665640564039457584007913129639935", + "27462616626253393834172180586494418890954476283257859666307992469208736810809", + "37435261344928203651121242557808094327910915308413204917974281668150859169993" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 20576, + "blockTimestampDelay": 441138 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000050000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x88b05f29000000000000000000000000000000000000000000000000000000000009fffe000000000000000000000000c43801cd359a82757df4289878ce85539b0fcade000000000000000000000000000000000000000000000000000000000000006434998e76fdd43c55ad90e4a35d96044a3ebe674f5dfa103757d366102ca9f26c00000000000000000000000000000000000000000000000000000000000001000e694122e842adea5277bbbdab0b14091c2583d39824533976734442dab724e2195f41f8193b8fdb454e4c675da554f0f9409064f42db392c9ab9d5e83fad976fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe", + "dataAbiValues": { + "methodSignature": "handleSetDisputeModuleData(uint256,(address,address,uint256,uint256,uint256,uint256,uint256))", + "inputValues": [ + "655358", + { + "accountingExtension": "0xc43801Cd359A82757Df4289878CE85539B0fcAdE", + "bondEscalationDeadline": "6518348376578069825047353184871606747778953752910129049968505915388248663266", + "bondSize": "23791578983227214469447533216306682837879210004146422934780693486186688803436", + "bondToken": "0x0000000000000000000000000000000000000064", + "disputeWindow": "115792089237316195423570985008687907853269984665640564039457584007913129639934", + "maxNumberOfEscalations": "256", + "tyingBuffer": "11476126987972230713107770724661081842991657660629818104854040000448595417462" + } + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 1, + "blockTimestampDelay": 2 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000020000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xf84d6dfc00000000000000000000000000000000000000000000000006f05b59d3ad0000", + "dataAbiValues": { + "methodSignature": "handleAddEBORequestCreatorRequestModule(uint256)", + "inputValues": [ + "499999999999672320" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 12976, + "blockTimestampDelay": 472659 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000010000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x4741f6dcc0e4d0eee56b7f10aa9aefe04c4f650af62be8b532d57f12aa7ac5b950884c3a", + "dataAbiValues": { + "methodSignature": "handleSetFinalityModuleData(uint256)", + "inputValues": [ + "87248350062624793638699702709121271409886681841563726628967995216176035155002" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 29334, + "blockTimestampDelay": 296740 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000020000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x5356b681bebfb0dc367f431af08687c084e9c844567359d9793a12e0818425b7df16682a", + "dataAbiValues": { + "methodSignature": "handleAddEBORequestCreatorFinalityModule(uint256)", + "inputValues": [ + "86278129664477803463997658766424154744739678303000950581784606393529462581290" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 3566, + "blockTimestampDelay": 274227 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000040000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xaa1a5bd9ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffee0000000000000000000000000000000000000000000000000000000000000001", + "dataAbiValues": { + "methodSignature": "handleResolveDispute(uint256,uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913129639918", + "1" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 38128, + "blockTimestampDelay": 65536 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000080000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x864e2da9000000000000000000000000000000000000000000000000000000000004ff00bfa47f0f3034e3c5b418dac09c339f53fbdf69ff4b147e91a872420a6f7ed6e20000000000000000000000000000000000000000000000000000000000040000", + "dataAbiValues": { + "methodSignature": "handleArbitrateDispute(uint256,uint256,uint256)", + "inputValues": [ + "327424", + "86682393929289525193494153568452559356866521755790133919226203303415723775714", + "262144" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 28049, + "blockTimestampDelay": 147436 + }, + { + "call": { + "from": "0x00000000000000000000000000000000000a0000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x5356b681000000000000000000000000000000000000000000000000000000000000000a", + "dataAbiValues": { + "methodSignature": "handleAddEBORequestCreatorFinalityModule(uint256)", + "inputValues": [ + "10" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 21572, + "blockTimestampDelay": 167216 + } +] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803597300000-642c65dc-71fa-4e6a-a148-f2dc8dbd48fd.json b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803597300000-642c65dc-71fa-4e6a-a148-f2dc8dbd48fd.json new file mode 100755 index 0000000..851e27d --- /dev/null +++ b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803597300000-642c65dc-71fa-4e6a-a148-f2dc8dbd48fd.json @@ -0,0 +1,449 @@ +[ + { + "call": { + "from": "0x0000000000000000000000000000000000030000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x13a8b80400000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000340000000000000000000000000000000000000000000000000000000000000001700000000000000000000000000000000000000000000000000000000000010e0ffffc0000000000000000000000000000000000000000000000000000000000181dc31bc03ad9bc8a966de91dfc8c49b929f6d5fd44a9c22a7f5bb37cebfc106ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed8ee8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b825bc2cfc37067e378b4feef3f3411136744d0b2851c161c601669654cf27bfe6100000000000000000000000000000000000000000000000000000000000000006cd40d93882a844c2becf361c7579664aef7a6ef6e8b79d6bf6f6f76426e9b14039e696f94058cfd274de97421f65916ac135f4d55083d357b9c1f34820c9376000000000000000000000000000000000000000000000000000000000003fffe000000000000000000000000000000000000000000000000000000000000000167e6a528e0202cf23a36eacf513eee303475d3e4c983b2ae2d616b11c440f70a0000000000000000000000000000000000000000000000000000000000000000fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9686c2d73382b1edfa908bcaeb6b9ac0073f469887a9150c80831642e47e35a614c1bffffffffffffffffffffffffffffffffffffffffffffe48e5eb33a3a7f000000104a13a90c13653470268ea78892361e7e91e706d859aabaaf45ddd18c956640809a37cc7335cdf29b7d988dc8c05e2c1899ad1795364e6fa667088b49487472000000000000000000000000000000000000000000000000000000000000fff6fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b80756993dc4be6ecf1e46c48d6f9cae9255a8b46ef956a3d85442a5f41f70ecf93000000000000000000000000000000000000000000000000000000000076a700a77a4c48695a0407441e86efc633aee092d2ebd99c87fdfeebcd904fe33e086d000000000000000000000000000000000000000000000000000000000000001d563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd0633ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed6958658aad3329b56f2f98187bbaed7351982ae06a00b9382adcb723b8b393d1f5e2def8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b4498bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef328d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad82082401f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade0554594d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e0568fcad889d076bcc6f0b5c84a4f6f334b74f944740b9f88a51f2895e76dd401884f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cbba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c33f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8fd276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f6617237058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25abbc2a768fea28edd1d653edcbaa5cace525564c5330b62b6ed63452f3b221f165f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a219fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb", + "dataAbiValues": { + "methodSignature": "handleCreateRequests(uint256[],bytes32[])", + "inputValues": [ + [ + "4320", + "115791647525550000827488589184312722123641027794666345134718053606362806484993", + "58737407075920930096693749632210245280794127876199190949253348332199714210054", + "115792089237316195423570985008687907853269984665640564039457584007913128431336", + "115792089237316195423570985008687907853269984665640564039457584007913129380738", + "41504671482165347584846103287222174319130579613222615088745194098566077611617", + "0", + "49224452924880417829398231270379785502530069722970149981823851608145893694228", + "1636828073493779560152621491074002847609709387720111137750911676859097584502", + "262142", + "1", + "46995738119123743123282428161140493004285235666026628953647859202250191730442", + "0", + "115792089237316195423570985008687907853269984665640564039457584007913129207916", + "20557653259021005890251421269967042420225955023564768794272035576696478452763", + "115792089237316195423570985008687907853269984665640563909857584007913129639936", + "7367887950809164700104084563884591449786965425123545364576065505479275931200", + "58168524174645209900719041489934173752247098791866719219864340874379345294450", + "65526", + "115792089237316195423570985008687907853269984665640564039457584007913129380736", + "53107142721938561923251317745913031228477959801596843755970727929974933606291", + "7776000", + "75752327540241786815348607290604056680494387521335977257182003214564422715501" + ], + [ + "563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe", + "27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a", + "9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd06", + "33ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865", + "8aad3329b56f2f98187bbaed7351982ae06a00b9382adcb723b8b393d1f5e2de", + "f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1", + "c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b44", + "98bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01", + "108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef32", + "8d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea", + "94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad8208240", + "1f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade05545", + "94d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056", + "8fcad889d076bcc6f0b5c84a4f6f334b74f944740b9f88a51f2895e76dd40188", + "4f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa", + "9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874", + "ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cb", + "ba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c3", + "3f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8f", + "d276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99", + "fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce", + "3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb", + "4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f661723", + "7058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78", + "994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25", + "abbc2a768fea28edd1d653edcbaa5cace525564c5330b62b6ed63452f3b221f1", + "65f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a2", + "19fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c", + "51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb" + ] + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 21265, + "blockTimestampDelay": 360627 + }, + { + "call": { + "from": "0x00000000000000000000000000000000000a0000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x6b125a57f70d7a9f8f7dc147f3c07846c57ff55a159156e04b1aef93f09a50411ed01cac", + "dataAbiValues": { + "methodSignature": "handleRemoveEBORequestCreatorFinalityModule(uint256)", + "inputValues": [ + "111745088926706135766942953021093517459235404528421949148968020375462747315372" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 41182, + "blockTimestampDelay": 251336 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000090000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x9f6259e5f758e7d4f100dcc2db3c85b9df5a8759d5abbd1697a1a04ec3af1471f220359a0000000000000000000000007109709ecfa91a80626ff3989d68f67f5b1dd12d", + "dataAbiValues": { + "methodSignature": "handleResolve(uint256,uint256)", + "inputValues": [ + "111878356186062714847010348548460913142200960060168223055923222451354708489626", + "645326474426547203313410069153905908525362434349" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 36881, + "blockTimestampDelay": 523741 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000050000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x0692ea7efffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7fc18", + "dataAbiValues": { + "methodSignature": "handleRemoveChain(uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913129114648" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 6610, + "blockTimestampDelay": 345959 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000060000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x9d2e6a6ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd0000", + "dataAbiValues": { + "methodSignature": "handleRemoveEBORequestCreatorRequestModule(uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913129443328" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 43871, + "blockTimestampDelay": 505590 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000080000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xdb106aceffffffffffffffffffffffffffffffffffffffffffffffffffffffdb16000000fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffafffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6a23f9b5b11f6aa4692c684f075c04d172abcb68f78eb66c92efe082b6a5d503c", + "dataAbiValues": { + "methodSignature": "handleSlash(uint256,uint256,uint256,uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007754584948736", + "115792089237316195423570985008687907853269984665640564039457584007913129639930", + "115792089237316195423570985008687907853269984665640564039457584007913129639926", + "73387065061500873488441831200362672861865918134039727439380329949185011699772" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 3063, + "blockTimestampDelay": 142231 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000090000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xd51b326a000000000000000000000000000000000000000000000000000000000000000afffffffffffffffffffffffffffffffffffffffffffffffff90fa4a62c4e00000000000000000000000000000000000000000000000000000000000000050000", + "dataAbiValues": { + "methodSignature": "handlePledgeForDispute(uint256,uint256,uint256)", + "inputValues": [ + "10", + "115792089237316195423570985008687907853269984665640564039457084007913129639936", + "327680" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 30742, + "blockTimestampDelay": 327371 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000050000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xdb106acedde5aa2b18247560fc1884f651a16aa87d39e393fba6b34aabbf8a91cb385dfcfffffffffffffffffffffffffffffffffffffffffffffffffffffffffff60000843cd2add879d57e8f0aed34ab13caad0caf471b1135b4b168d69edad56713fd3584b63683c5725b9668691d6e5ef4449bd9293600a6bb52896061ae72902454", + "dataAbiValues": { + "methodSignature": "handleSlash(uint256,uint256,uint256,uint256)", + "inputValues": [ + "100366921973435276086896168354134063395714770959453851558374627032108927311356", + "115792089237316195423570985008687907853269984665640564039457584007913128984576", + "59812760890479040346002793760866213267959709503641590677485959242158816302077", + "24207062375013236297905391945117914944555470909794312387449976114680249197652" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 23786, + "blockTimestampDelay": 256720 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000090000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 2, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x64d6e6d3e1ce6a1ddae133deb1d439cee384b8f5f1fc4f3fd0c36441f5efed119f24e24900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000069780", + "dataAbiValues": { + "methodSignature": "handlePledgeAgainstDispute(uint256,uint256,uint256)", + "inputValues": [ + "102135093816581220269834099028023316090001883482696692672153861645213823722057", + "0", + "432000" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 54088, + "blockTimestampDelay": 60993 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000080000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x88b05f291ec0602b5c739f9738efe0bde4ca76ba494249d121556e799bbad7dc9a0214ac00000000000000000000000077ce8638a76f158cfa43742a7f21929ac8169c3c000000000000000000000000a08534f616b19b6082e9ce685e382798a347252e000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000300000000000000000000000000007109709ecfa91a80626ff3989d68f67f5b1dd515ffffffffffffffffffffffff8ef68f613056e57f9d900c6762970980a4e22ed0bb42504ab1d2fcf8e234d7d9a79b5766efe1d758290dae5e11c063dbbb14a531", + "dataAbiValues": { + "methodSignature": "handleSetDisputeModuleData(uint256,(address,address,uint256,uint256,uint256,uint256,uint256))", + "inputValues": [ + "13909283830598735565998559648493088494620572641148929697427872120853391086764", + { + "accountingExtension": "0x77CE8638a76f158cFA43742A7f21929ac8169C3C", + "bondEscalationDeadline": "645326474426547203313410069153905908525362435349", + "bondSize": "2", + "bondToken": "0xA08534f616b19b6082E9ce685E382798a347252e", + "disputeWindow": "84699668744817055731063389426064727133389651057449241071743005766536647714097", + "maxNumberOfEscalations": "196608", + "tyingBuffer": "115792089237316195423570985008042581378843437462327153970303678099387767205584" + } + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 49450, + "blockTimestampDelay": 499595 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000030000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 2, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x6b125a57ffffcccccccccccccccccccccccccccccccccccccccccccccccccda1f67b6b53", + "dataAbiValues": { + "methodSignature": "handleRemoveEBORequestCreatorFinalityModule(uint256)", + "inputValues": [ + "115791735867903239746705068349187759269566819168861188915665959687588398459731" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 186, + "blockTimestampDelay": 50159 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000030000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 3, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x91e32c74fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc000051361b53804bb017fc35228eb622ebb20c303d99c341631bb01645b525e7b621", + "dataAbiValues": { + "methodSignature": "handleCreateRequest(uint256,bytes32)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913129377792", + "51361b53804bb017fc35228eb622ebb20c303d99c341631bb01645b525e7b621" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 256, + "blockTimestampDelay": 448826 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000070000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xd1a5565579828f0ddc4a050d8f5f122a91d6b8c9d500a874223d262c5d48d32c4b3ecae9", + "dataAbiValues": { + "methodSignature": "handleRevokeModule(uint256)", + "inputValues": [ + "54960532120402474800798995585759036389486552453926935697297472107042154924777" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 25939, + "blockTimestampDelay": 360525 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000050000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 2, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x6b125a570000000000000000000000000000000000000000000000000000000000000000", + "dataAbiValues": { + "methodSignature": "handleRemoveEBORequestCreatorFinalityModule(uint256)", + "inputValues": [ + "0" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 19488, + "blockTimestampDelay": 147049 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000050000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 3, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x9f6259e586d14dd089c6fe1d2572155eee2a525feeae1f4c0ecb91e1a612f162ec3583b4f1156467ea6a8c0338667ffedaddcf4137cf467747b19e5311216f7091a749ee", + "dataAbiValues": { + "methodSignature": "handleResolve(uint256,uint256)", + "inputValues": [ + "60979729803343632787050147183220966217514607539790862047603897794404042507188", + "109045193273123638554538842844369038784499304185614563586658579653420359567854" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 13776, + "blockTimestampDelay": 51933 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000030000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 4, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xf6424e9b246da0c4ed7c52c6ed248463cdf2d45ab01cd349e3a5ca837e1caa750a7df073fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6000054166ccfd9b1ba2138f6992ca376d6d98294647dfd371a4e977342beaabbff3b", + "dataAbiValues": { + "methodSignature": "handleProposeResponse(uint256,uint256,uint256)", + "inputValues": [ + "16476958467633623909421142727437546795556354559550203566377601934832405704819", + "115792089237316195423570985008687907853269984665640564039457584007913128984576", + "38033900908659794527437240204354666486003018258831101524347263218449313955643" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 44438, + "blockTimestampDelay": 97125 + } +] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803598316000-078046e8-41b1-4d52-9ec7-cba3101036d7.json b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803598316000-078046e8-41b1-4d52-9ec7-cba3101036d7.json new file mode 100755 index 0000000..0db540f --- /dev/null +++ b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803598316000-078046e8-41b1-4d52-9ec7-cba3101036d7.json @@ -0,0 +1,401 @@ +[ + { + "call": { + "from": "0x0000000000000000000000000000000000030000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x13a8b8040000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000034000000000000000000000000000000000000000000000000000000000000000170000000000000000000000000000000000000000000000000000000000d2f000ffffc0000000000000000000000000000000000000000000000000000000000181dc31bc03ad9bc8a966de91dfc8c49b929f6d5fd44a9c22a7f5bb37cebfc106ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed8ee8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b825bc2cfc37067e378b4feef3f3411136744d0b2851c161c601669654cf27bfe610000000000000000000000000000000000000000000000000000000000000000578750b27e877a957d33dc50d914b1caf972efffa4bb78b85e66dd813a864ca4039e696f94058cfd274de97421f65916ac135f4d55083d357b9c1f34820c9376000000000000000000000000000000000000000000000000000000000003fffe000000000000000000000000000000000000000000000000000000000000000167e6a528e0202cf23a36eacf513eee303475d3e4c983b2ae2d616b11c440f70a4ac07813439b9213b22d4d86340307a2982de60c241368ad288dfea742b6eb5efffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9686c2d73382b1edfa908bcaeb6b9ac0073f469887a9150c80831642e47e35a614c1bffffffffffffffffffffffffffffffffffffffffffffe48e5eb33a3a7f000000104a13a90c13653470268ea78892361e7e91e706d859aabaaf45ddd18c956640809a37cc7335cdf29b7d988dc8c05e2c1899ad1795364e6fa667088b49487472000000000000000000000000000000000000000000000000000000000000fff6fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b800000000000000000000000000000000000000000000000000329c51ac594cf93000000000000000000000000000000000000000000000000000000000076a700a77a4c48695a0407441e86efc633aee092d2ebd99c87fdfeebcd904fe33e086d000000000000000000000000000000000000000000000000000000000000001d563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd0633ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865d5d6866ffb684491364a0853403f689144f5664f5d50de1b1a30d683ff29f21bf8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b4498bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef328d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad82082401f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade0554594d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae96291d8c581a922d52cd477658fcc2e2ca1f954f274ed2cd833a98e6d1d4455581f9d9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cbba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c33f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8fd276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f6617237058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf259a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe2665f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a219fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb", + "dataAbiValues": { + "methodSignature": "handleCreateRequests(uint256[],bytes32[])", + "inputValues": [ + [ + "13824000", + "115791647525550000827488589184312722123641027794666345134718053606362806484993", + "58737407075920930096693749632210245280794127876199190949253348332199714210054", + "115792089237316195423570985008687907853269984665640564039457584007913128431336", + "115792089237316195423570985008687907853269984665640564039457584007913129380738", + "41504671482165347584846103287222174319130579613222615088745194098566077611617", + "0", + "39590299132392589184737138068833640165131826767556478003143025413084726840484", + "1636828073493779560152621491074002847609709387720111137750911676859097584502", + "262142", + "1", + "46995738119123743123282428161140493004285235666026628953647859202250191730442", + "33811214160519685654400438720767591502827986970858420988841187408488311483230", + "115792089237316195423570985008687907853269984665640564039457584007913129207916", + "20557653259021005890251421269967042420225955023564768794272035576696478452763", + "115792089237316195423570985008687907853269984665640563909857584007913129639936", + "7367887950809164700104084563884591449786965425123545364576065505479275931200", + "58168524174645209900719041489934173752247098791866719219864340874379345294450", + "65526", + "115792089237316195423570985008687907853269984665640564039457584007913129380736", + "227929974933606291", + "7776000", + "75752327540241786815348607290604056680494387521335977257182003214564422715501" + ], + [ + "563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe", + "27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a", + "9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd06", + "33ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865", + "d5d6866ffb684491364a0853403f689144f5664f5d50de1b1a30d683ff29f21b", + "f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1", + "c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b44", + "98bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01", + "108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef32", + "8d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea", + "94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad8208240", + "1f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade05545", + "94d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056", + "cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae96291", + "d8c581a922d52cd477658fcc2e2ca1f954f274ed2cd833a98e6d1d4455581f9d", + "9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874", + "ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cb", + "ba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c3", + "3f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8f", + "d276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99", + "fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce", + "3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb", + "4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f661723", + "7058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78", + "994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25", + "9a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe26", + "65f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a2", + "19fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c", + "51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb" + ] + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 21265, + "blockTimestampDelay": 360627 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000020000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x161c7318", + "dataAbiValues": { + "methodSignature": "test_debug()", + "inputValues": [] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 15325, + "blockTimestampDelay": 189245 + }, + { + "call": { + "from": "0x00000000000000000000000000000000000a0000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x88b05f294e5c5739570432e46e997185cf2683c287e8339e1ce7ab9502db4f4b4f0c1b77000000000000000000000000000000000000000000000000000000000012750000000000000000000000000000000000000000000000000006f05b59d3b200003c3b20fe3c6474ef6112cec6e2e1e2a66147c502767418c32e65c3bfa035d898948fc45007206ff5c0b2215d0b5c97d5551a84ed653f28e284b8567c463ce3650000000000000000000000000000000000000000000000000000000000069780ffffffffffffffffffffffffffffffffffffffffffffffffffffffec398000000000000000000000000000000000000000000000000000000000000000093a80", + "dataAbiValues": { + "methodSignature": "handleSetDisputeModuleData(uint256,(address,address,uint256,uint256,uint256,uint256,uint256))", + "inputValues": [ + "35443554117267417118592017165536035041230544133048285386578266163756344810359", + { + "accountingExtension": "0x0000000000000000000000000000000000127500", + "bondEscalationDeadline": "432000", + "bondSize": "27243242601887521753615714576112380311306725462768124357416761313244220872856", + "bondToken": "0x00000000000000000000000006f05b59d3b20000", + "disputeWindow": "604800", + "maxNumberOfEscalations": "67196315620416968751812103706326677402054656808860235011842083525495944438629", + "tyingBuffer": "115792089237316195423570985008687907853269984665640564039457584007828194983936" + } + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 24101, + "blockTimestampDelay": 185392 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000040000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x3c26dcf8000000000000000000000000000000000000000000000853a0d2313c00000000", + "dataAbiValues": { + "methodSignature": "handleSetEpochManager(uint256)", + "inputValues": [ + "39321600000000000000000" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 23050, + "blockTimestampDelay": 360593 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000070000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x1c6850cfb0e3106162bbf50b7b4f4127a44fc6dee30686640d85ab8a97c7a387e688d09200000000000000000000000000000000000000000000000000000000000151800000000000000000000000000000000000000000000000000de0b6b3a7640000", + "dataAbiValues": { + "methodSignature": "handleUpdateDisputeStatus(uint256,uint256,uint256)", + "inputValues": [ + "80008248687813878652618995284154503941697939794158322754224777983398987223186", + "86400", + "1000000000000000000" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 17066, + "blockTimestampDelay": 86400 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000020000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xc0106a6cce21db24dd246f08ad02e64e7a8e8742fa9607e8fdf81425d16e85c70f3de5d85907be10f550a4ab3f84480cf0ea723b2a74da20322f8a7c02918a70cdb15ac9", + "dataAbiValues": { + "methodSignature": "handleCreateRequest(uint256,uint256)", + "inputValues": [ + "93236265237587594263022487768855356786420509345912517467786824227481808922072", + "40269523242363880299786798295795090179015741572111778996238876869560403843785" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 0, + "blockTimestampDelay": 101426 + }, + { + "call": { + "from": "0x00000000000000000000000000000000000a0000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x9d2e6a6f998e4550a0de435d19cec4771f09fda88c2b7664624260171a192d839c6e2a65", + "dataAbiValues": { + "methodSignature": "handleRemoveEBORequestCreatorRequestModule(uint256)", + "inputValues": [ + "69455236510673350336024647478873143438234265695463592178397393693034284984933" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 35869, + "blockTimestampDelay": 315170 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000020000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 2, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xd1a55655fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6c580", + "dataAbiValues": { + "methodSignature": "handleRevokeModule(uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913129035136" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 55790, + "blockTimestampDelay": 111616 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000010000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x55438465815bedc734908418031caab89516e183218d7f0edf8e3c493ab40a8fcacc98210000000000000000000000001260c0c92cc0a0b1b5b54cb0501ed367353befeb", + "dataAbiValues": { + "methodSignature": "handleSetResolutionModuleData(uint256,(address))", + "inputValues": [ + "58510781634585462798122964402259920591361435129587016659431711127985600632865", + { + "arbitrator": "0x1260c0c92cc0A0b1B5b54cb0501eD367353befeB" + } + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 25042, + "blockTimestampDelay": 70452 + }, + { + "call": { + "from": "0x00000000000000000000000000000000000a0000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 2, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x9d2e6a6ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6c580", + "dataAbiValues": { + "methodSignature": "handleRemoveEBORequestCreatorRequestModule(uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913129035136" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 25184, + "blockTimestampDelay": 168977 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000050000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x7aeb6fabc80cc1410f822f39c5490f53cdc96dd08eb43974e7995e4657ae6b6bf548e7f2871b07795e307166d3b23beb0529cf4a4051c8b01210b5127b57c6be3cac11f1", + "dataAbiValues": { + "methodSignature": "handleDisputeResponseBondEscalationModule(uint256,uint256)", + "inputValues": [ + "90485105672505321392083992946066544751897224405196443707030040081777413384178", + "61109991013787236767457822530506378720905044490242359531817392410759292260849" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 41797, + "blockTimestampDelay": 101425 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000090000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xa59d317dfffffffffffffffffffffffffffffffffffffffffffffffffffffffffff90000000000000000000000000000ca826f8feadcf20b2c0d50019199cea2b62c4cc700000000000000000000000075f502741def771b94c656bf8b5b7b7f148a930e00000000000000000000000000000000000000000000000006f05b59d3b20003f8dd5e39a09165ac6f78d6e4e38c07ee1b85cd9c0c109e3875dd38c411542ff4f3b3ccb415be6bb6735532f53ea67d407e49e0d5d7b99fe0de0f5c49f9da3fad", + "dataAbiValues": { + "methodSignature": "handleSetResponseModuleData(uint256,(address,address,uint256,uint256,uint256))", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913129181184", + { + "accountingExtension": "0xCA826F8feAdcF20b2c0d50019199ceA2B62C4cC7", + "bondSize": "500000000000000003", + "bondToken": "0x75f502741def771B94c656BF8b5b7b7F148a930e", + "deadline": "112564709967749425184314086071684882232174773517983829235624129600201071800308", + "disputeWindow": "110229700641664101210984642912501714027284836539036269317787492668732763422637" + } + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 38892, + "blockTimestampDelay": 395331 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000030000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 2, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x5356b681ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed8b00", + "dataAbiValues": { + "methodSignature": "handleAddEBORequestCreatorFinalityModule(uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913128430336" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 1, + "blockTimestampDelay": 4 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000020000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 3, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xc82f34f9fffffffffffffffffffffffffffffffffffffffffffffffff90fa4a62c4e0000fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffb0000", + "dataAbiValues": { + "methodSignature": "handleSettleBondEscalation(uint256,uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457084007913129639936", + "115792089237316195423570985008687907853269984665640564039457584007913129312256" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 23866, + "blockTimestampDelay": 113161 + } +] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803599309000-e006588c-7192-4449-bd09-0abc99a17369.json b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803599309000-e006588c-7192-4449-bd09-0abc99a17369.json new file mode 100755 index 0000000..cff5b46 --- /dev/null +++ b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803599309000-e006588c-7192-4449-bd09-0abc99a17369.json @@ -0,0 +1,385 @@ +[ + { + "call": { + "from": "0x0000000000000000000000000000000000040000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x52e3cb9c6b0d264b5add160d5053aa476132c22d6540d3605ad8dfb850790b1ba996569b", + "dataAbiValues": { + "methodSignature": "handleSetMaxUsersToCheck(uint256)", + "inputValues": [ + "48420708108177856443123222644862532857390746786695606854692354379525674915483" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 59698, + "blockTimestampDelay": 331757 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000020000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x62e8fd3500000000000000000000000000000000000000000000000000000000000000124ab950c09e2414c3ec444389b5281e1bdfda8ecfec5392240af8d376f3781e4f", + "dataAbiValues": { + "methodSignature": "handleOnDisputeStatusChange(uint256,uint256)", + "inputValues": [ + "18", + "33798574834817402171861624718400176195923458571787846279113220864863863578191" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 41059, + "blockTimestampDelay": 386818 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000040000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x161c7318", + "dataAbiValues": { + "methodSignature": "test_debug()", + "inputValues": [] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 2290, + "blockTimestampDelay": 360593 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000050000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xb05752f700000000000000000000000000000000000000000000000014d1120d7b160000fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa0100ffffe666666666666666666666666666666666666666666666666666666666670000000000000000000000000000000000000000000000000000000000000001", + "dataAbiValues": { + "methodSignature": "handleOnSettleBondEscalation(uint256,uint256,uint256,uint256)", + "inputValues": [ + "1500000000000000000", + "115792089237316195423570985008687907853269984665640564039457584007913129246976", + "115791912552609717585138026678937833561418401917250876477561771847293000377959", + "1" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 35958, + "blockTimestampDelay": 189815 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000080000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xd1a556550000000000000000000000000000000000000000000000000000000000093a80", + "dataAbiValues": { + "methodSignature": "handleRevokeModule(uint256)", + "inputValues": [ + "604800" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 23866, + "blockTimestampDelay": 120766 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000040000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 2, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xf60285cafffffffffffffffffffffffffffffffffffffffffffffffffffffffffffb00001f6163d95156c50021d434e3914437a6419fd074db58aba632a1165e1049633a3bf295102083f98484e4163605f3f088673969b3a53bced8eb97b90d6679470f0000000000000000000000000000000000000000000000000000000000000014", + "dataAbiValues": { + "methodSignature": "handleBondWithSender(uint256,uint256,uint256,uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913129312256", + "14193771603127510897806160380156132720630156725507671248204049821265402880826", + "27115063851078188957254873925429362151386502274781693755807630999965205612303", + "20" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 14998, + "blockTimestampDelay": 528331 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000050000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x51b295e3fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc18", + "dataAbiValues": { + "methodSignature": "handleFinalize(uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913129638936" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 23876, + "blockTimestampDelay": 327680 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000060000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x2047c4493b1bb599e967df2247a0bde0e15c19a16d95520dbb9eb811b647dd1c5a50d970bda0d1adb4d017dcf6513d613392f361bfe0847acfbe5bbfd267240bef7125cd61ebaebab2bac3aa4819e2caf8f85c718565871747241e292cc36db91888e520d873b789d8f47c6606b2d5358f69133b1dd4937cee526c90ac095190af102de2", + "dataAbiValues": { + "methodSignature": "handlePay(uint256,uint256,uint256,uint256)", + "inputValues": [ + "26735416302702836720504774004574936090245153519362370366870156849631651223920", + "85771271060700958624081931951489906403580871476691194667860842730768850560461", + "44290761310036599938494988979380191776366734083697389368196279735913800066336", + "97904029442377240838501909618781928147909909174040210570358457032104622435810" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 54628, + "blockTimestampDelay": 362209 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000020000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x9f6259e57cf479b021a816743ff5b53a6f3e5c2c247b2adb9311a44237c3858abd44df0e0000000000000000000000000000000000000000000000000000000000127118", + "dataAbiValues": { + "methodSignature": "handleResolve(uint256,uint256)", + "inputValues": [ + "56518743767933985910260346386765678340564227438862784222762849925209918856974", + "1208600" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 35385, + "blockTimestampDelay": 50692 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000050000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 2, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x0fb55087fffffffffffffffffffffffffffffffffffffffffffffffffffffff400000000", + "dataAbiValues": { + "methodSignature": "handleApproveModule(uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007861590032384" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 1, + "blockTimestampDelay": 57134 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000050000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 3, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x5356b6811b3175568497fde3c31fe069ccc7985311b0506f3b43e70969ab59ea722d2599", + "dataAbiValues": { + "methodSignature": "handleAddEBORequestCreatorFinalityModule(uint256)", + "inputValues": [ + "12299832254764069471447641000592064088020729744720327828938364394997925356953" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 0, + "blockTimestampDelay": 0 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000050000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 4, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xa44b098ea6e532d597161bf414844541b5281607abc0fedcfbe19700823ca81bfeffd5da", + "dataAbiValues": { + "methodSignature": "handleSetArbitrator(uint256)", + "inputValues": [ + "75488891688353701349182521546099519030572206284453220585196006136091846366682" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 13249, + "blockTimestampDelay": 486500 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000090000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x727899ff000000000000000000000000000000000000000000000000000000000009688043d2cc6bee2c75afbb0a2d8e686ed8d850d35e4220dab9eaaad8c1f2bbd315eb000040ba1702262dc3924484fe5b466a7207d688c9429f8aaeb64c1acd0d86e1fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff70000", + "dataAbiValues": { + "methodSignature": "handlePledge(uint256,uint256,uint256,uint256)", + "inputValues": [ + "616576", + "30677409604733962472433633135176719636373390531562919397962760076773674915307", + "446728739341497667529209047101419397582060126024847855090499938302133985", + "115792089237316195423570985008687907853269984665640564039457584007913129050112" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 28736, + "blockTimestampDelay": 576650 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000040000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 3, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x52e3cb9cfffffffffffffffffffffffffffffffffffffffffffffffff90fa4a62c4e0000", + "dataAbiValues": { + "methodSignature": "handleSetMaxUsersToCheck(uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457084007913129639936" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 14857, + "blockTimestampDelay": 578411 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000070000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x91e32c74fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8000053817ae4082823f7b7ef4f21ea8eaf2d55883b146199ee5cd9707c39a3f025ab", + "dataAbiValues": { + "methodSignature": "handleCreateRequest(uint256,bytes32)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913129115648", + "53817ae4082823f7b7ef4f21ea8eaf2d55883b146199ee5cd9707c39a3f025ab" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 23, + "blockTimestampDelay": 32 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000070000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x48a41c2700db944f945348b4c6cffca09ace97414e862af57bfe67d15e8f4ba3813ede4b3d688e69cd534e15f8ccc3765fd50e2ab30d2b740b3ff6d5865213182fe783c63b4bac2923dad06e124a6e05ae7aa5ae1b3e8edff0154acd1de94e5fe6e26732", + "dataAbiValues": { + "methodSignature": "handlePropose(uint256,uint256,uint256)", + "inputValues": [ + "387963111102058097323071002434237761651493831039740349958407635767455047243", + "27775818758715135462630212585325327395456425224261459780030383525521640620998", + "26820159805776502209708934821205059577225837408551437026198979884765463865138" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 25200, + "blockTimestampDelay": 27983 + } +] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803600377000-22ecd0b6-4fd9-4521-9067-46171675f011.json b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803600377000-22ecd0b6-4fd9-4521-9067-46171675f011.json new file mode 100755 index 0000000..a0ee61d --- /dev/null +++ b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803600377000-22ecd0b6-4fd9-4521-9067-46171675f011.json @@ -0,0 +1,718 @@ +[ + { + "call": { + "from": "0x0000000000000000000000000000000000030000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x13a8b8040000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000034000000000000000000000000000000000000000000000000000000000000000170000000000000000000000000000000000000000000000000000000000d2f000ffffc0000000000000000000000000000000000000000000000000000000000181dc31bc03ad9bc8a966de91dfc8c49b929f6d5fd44a9c22a7f5bb37cebfc106ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed8ee8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b825bc2cfc37067e378b4feef3f3411136744d0b2851c161c601669654cf27bfe6100000000000000000000000000000000000000000000000000000000000000006cd40d93882a844c2becf361c7579664aef7a6ef6e8b79d6bf6f6f76426e9b14039e696f94058cfd274de97421f65916ac135f4d55083d357b9c1f34820c9376000000000000000000000000000000000000000000000000000000000003fffe000000000000000000000000000000000000000000000000000000000000000167e6a528e0202cf23a36eacf513eee303475d3e4c983b2ae2d616b11c440f70a4ac07813439b9213b22d4d86340307a2982de60c241368ad288dfea742b6eb5efffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9686c2d73382b1edfa908bcaeb6b9ac0073f469887a9150c80831642e47e35a614c1bffffffffffffffffffffffffffffffffffffffffffffe48e5eb33a3a7f000000104a13a90c13653470268ea78892361e7e91e706d859aabaaf45ddd18c956640809a37cc7335cdf29b7d988dc8c05e2c1899ad1795364e6fa667088b49487472ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffee00b4fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b80756993dc4be6ecf1e46c48d6f9cae9255a8b46ef956a3d85442a5f41f70ecf93000000000000000000000000000000000000000000000000000000000076a700a77a4c48695a0407441e86efc633aee092d2ebd99c87fdfeebcd904fe33e086d000000000000000000000000000000000000000000000000000000000000001d563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd0633ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865a46715d7736dde0bcf6527392542031b42d0197ab2c1bb4c4d2d7abaed280007f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b4498bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef328d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad82082401f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade0554594d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae962914f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cbba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c33f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8fd276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f6617237058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf259a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe260d35d19771f7c1af646e114de36d19c25e3fc040b27be76073113bb33db17d5d19fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb", + "dataAbiValues": { + "methodSignature": "handleCreateRequests(uint256[],bytes32[])", + "inputValues": [ + [ + "13824000", + "115791647525550000827488589184312722123641027794666345134718053606362806484993", + "58737407075920930096693749632210245280794127876199190949253348332199714210054", + "115792089237316195423570985008687907853269984665640564039457584007913128431336", + "115792089237316195423570985008687907853269984665640564039457584007913129380738", + "41504671482165347584846103287222174319130579613222615088745194098566077611617", + "0", + "49224452924880417829398231270379785502530069722970149981823851608145893694228", + "1636828073493779560152621491074002847609709387720111137750911676859097584502", + "262142", + "1", + "46995738119123743123282428161140493004285235666026628953647859202250191730442", + "33811214160519685654400438720767591502827986970858420988841187408488311483230", + "115792089237316195423570985008687907853269984665640564039457584007913129207916", + "20557653259021005890251421269967042420225955023564768794272035576696478452763", + "115792089237316195423570985008687907853269984665640563909857584007913129639936", + "7367887950809164700104084563884591449786965425123545364576065505479275931200", + "58168524174645209900719041489934173752247098791866719219864340874379345294450", + "115792089237316195423570985008687907853269984665640564039457584007913128460468", + "115792089237316195423570985008687907853269984665640564039457584007913129380736", + "53107142721938561923251317745913031228477959801596843755970727929974933606291", + "7776000", + "75752327540241786815348607290604056680494387521335977257182003214564422715501" + ], + [ + "563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe", + "27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a", + "9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd06", + "33ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865", + "a46715d7736dde0bcf6527392542031b42d0197ab2c1bb4c4d2d7abaed280007", + "f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1", + "c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b44", + "98bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01", + "108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef32", + "8d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea", + "94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad8208240", + "1f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade05545", + "94d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056", + "cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae96291", + "4f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa", + "9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874", + "ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cb", + "ba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c3", + "3f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8f", + "d276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99", + "fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce", + "3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb", + "4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f661723", + "7058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78", + "994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25", + "9a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe26", + "0d35d19771f7c1af646e114de36d19c25e3fc040b27be76073113bb33db17d5d", + "19fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c", + "51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb" + ] + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 21265, + "blockTimestampDelay": 360627 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000080000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x51b295e3caac5b7c00ae43f0a0d2465bc3a827daefa6255afc3feafd105a01b058af4cc3", + "dataAbiValues": { + "methodSignature": "handleFinalize(uint256)", + "inputValues": [ + "91671724510984325847623981850838041499373483072178023597879983910219265559747" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 616, + "blockTimestampDelay": 245182 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000070000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x62e8fd357410315e284ca2250b236ba99041acd7e7626e3fc66727657ddcb75ed512355238b8e299444e7771cad3e9cc9efbc8237922a7b18f034d56199ddaad5f62f70c", + "dataAbiValues": { + "methodSignature": "handleOnDisputeStatusChange(uint256,uint256)", + "inputValues": [ + "52496900712745351460185096722717982602139275703227615313943886816707427317074", + "25656183307321870319256066529210878052151786525540532817103830451324188817164" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 0, + "blockTimestampDelay": 0 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000010000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x5cc02fa53b4e8ff8cbb94866d057a07c347e0cb79a079e6c49875d6adb448ca8b36b2f93", + "dataAbiValues": { + "methodSignature": "handleSetPendingCouncil(uint256)", + "inputValues": [ + "26825265794714411535119211388793422995701606456004679527746190657884506501011" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 22951, + "blockTimestampDelay": 222797 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000090000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x7aeb6faba969b1150e65eb039223322d37083c0f930e9f96e767cfaf888c1440b89042a7ffffffffffffffffffffffffffffffffffffffffffffffffffffffbe15000000", + "dataAbiValues": { + "methodSignature": "handleDisputeResponseBondEscalationModule(uint256,uint256)", + "inputValues": [ + "76627612529152310655938988775485703136714009850335653768166292952282670580391", + "115792089237316195423570985008687907853269984665640564039457584007630014119936" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 23866, + "blockTimestampDelay": 274647 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000030000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 2, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xf4fbbf9b0000000000000000000000000000000000000000000000000000000000000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed8b007c3160c01450d95568fbc7e3fe876965aa411c1bf13d7be2baabf28cedd3012f", + "dataAbiValues": { + "methodSignature": "handleBond(uint256,uint256,uint256)", + "inputValues": [ + "0", + "115792089237316195423570985008687907853269984665640564039457584007913128430336", + "56174036476597730143689219709059961134239333858317208755745576773703517274415" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 0, + "blockTimestampDelay": 404026 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000060000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x94ae6f8c0000000000000000000000000000000000000000000000000000000000000120", + "dataAbiValues": { + "methodSignature": "handleValidateArbitrator(uint256)", + "inputValues": [ + "288" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 28898, + "blockTimestampDelay": 360593 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000020000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x0692ea7e0000000000000000000000000000000000000000000000000000000000000100", + "dataAbiValues": { + "methodSignature": "handleRemoveChain(uint256)", + "inputValues": [ + "256" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 10120, + "blockTimestampDelay": 442746 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000030000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 3, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xb05752f77477db96404997c322ba9a11ba66d9f58fa471415b5c82afcf1965a16b52aa310000000000000000000000000000000000000000000000000000000000060000a3d04e821fd24d173d46c5c6591bac6f9d3ee4250e38f6752d158a2114dae86a7312ea15e2dc75c19cc06e815ad4c43b0e39987ce5ac5a5bac39cbb127f734e6", + "dataAbiValues": { + "methodSignature": "handleOnSettleBondEscalation(uint256,uint256,uint256,uint256)", + "inputValues": [ + "52680060769579736990081276342150508425883578818293859365287572298297987213873", + "393216", + "74095040352905635550053635482030730013005988265241047193937642446333545212010", + "52049396432936944477776417116733628414171704893437425841548460736384299644134" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 23866, + "blockTimestampDelay": 360369 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000020000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x9d2e6a6fb7ab9b804f5e3b07b64589457afe860d64ca8a1102a99dc3b01e9042b84b54c8", + "dataAbiValues": { + "methodSignature": "handleRemoveEBORequestCreatorRequestModule(uint256)", + "inputValues": [ + "83076455368730213982012688072579720945989878255995701383969604691644153287880" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 3912, + "blockTimestampDelay": 284189 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000050000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x13a8b80400000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000001dfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b820000000000000000000000000000000000000000000000000000000000000000ce675a74f87f83662332b39024ab66f66d3ad8159fb92d1081e73d8747ac44a2fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa0000f99ab80a56afb5cf2d406681086184fa568b2c59b23b9eed0fb97babbdd70dcb987572aba5f9d1eb2bdfd7db4a60daa53ab31e663abe9ea14abc72f369d5dae3d49d00025d7681398c1ac8e5b18d32589a9d3aee941f68217de08b573fb0ef22270657897cfb0e6dff27bde358d9cd33988862a59eafeb150f97e1fb0bd5db1eb09668549dc88efb456b69b806d30443b7484266af42ae24fadce2ada2bf2e00ffffffffffffffffffffffff8ef68f613056e57f9d900c6762970980a4e22ed300000000000000000000000000000000000000000000000000000000000100006558973ea0cf6ef065af511cdd91dcf8ebf51e410d0e710b8482f875357b01e5a82a9a69bb78fc7065db036b90eebef2590e8a9797d50a66dfb4ab86433720e10000000000000000000000000000000000000000000000000000000000002700fffffffffffffffffffffffffffffffffffffffffffffffff90fa4a62c4e00000000000000000000000000000000000000000000000000000000000000010000688ad2bfdd1982f027350b11d5a66e4eb674020afc643610b6411864c705684cbaab39a71efe2422fd2229cf398d057b9b06ccfbe74bc3a4994ba9deed6f93052af9415df05e3b4e4bb3efd2328b1fac61e86adbbb1f32d9fe4d9fa96ef608ab9d48454c637331b80fc8bdfe0b16c68d224ae00eca2bc8b6b5b82eeb5dbb05bdffffffffffffffffffffffff8ef68f613056e57f9d900c6762970980a4e22ed3aaa89e9ec9968c5d9717eac26037a4e7abb9cc9d43af24edb06275ca7126a4c8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff2d0f6000000000000000000000000000000000000000000000000000000000009000056db5811b60eafc5a06420c40941879ca1aae8ba576dbb8f9dd9cbe1e4e187fb14c4c80ff0fa9624d2a9e63be6e238aa088864d7cd2780d36bc6dee000c42d1b000000000000000000000000000000000000000000000000000000000003f48058825231460c027d950a84d667bec6ad5f4731e0cfaef9f9b65d7008ad39ff50fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa0000000000000000000000000000000000000000000000000000000000000029f87ffe759d510e1c1d646f2c46946d2e09cce6ece48d285eecbab28b6da0aaafbe4233335f0868c51a18ff4b577aba2300ff0e1110fe6ebcf65aab5b22a0cd7af45a3243de6773b2ac820589df08ee53500a017476ffbb1bc4ceb09189a3a8688430464e8052902c1bf8131a3b65b1b8579578c0674f6b54e6508ebe3e773f92f62a3923b7d048bd00e06c64c9764f411dd42925c5a3bc087d2acf2dd45670afee5922c58e2ab2a48008017cf695319fc8f68540c785800cac4fb40071265bc6c57dd1da3996638b1d193cb3f0de7290b528e8c2553b44fdb00bd2f7afeb507f780ecfa7e55b67e34060e5a3ab3fc7c2fd6270fb027a69d0e3430e553adf6819c8dbcc8fe9ee062b2c79b12ff5516725f8025598c75085e7022536add4c3462e067f6eb57330f4a2635836735eb4e0053c2a02ad8f30b1ebb63d99a2cd2153db645c350fe8e5c04c29094fa388abef6a8faa96395cb0ff0901d9a9031f7631b22558fb38048fa6c225997c825a3070205c6bcc28d8335499c58531230e56b3a4aec270fc970dd1c77c0c5296114545b189f9c61f42ccea793f3b2f3b6c3b46fd6fb449fc87916235c006bf56db0c5c21f31410623781ece548911499cc23d8ac091676bc100d89c7174c55fa0bd83529b7e4cd0d2fb4476413f61972f0f860f6c403befbb5f69d0e304161de4e70ca3042a1d04835a72006a53c3175c5109baf4182d0da9a3e83b98e43af1ad858e630be26febe27f2c8a4f67eec52f53b0d005a92a11a1dd559351c3b253a1d1a70c23193b67441c058e70e67ac3f8ac4aee50ed009392925b73b400df2177c6a10fe1f591984b99794e9156c3bd0b4a2ed7517c12532c97966b24ef7deb1cf9e6cf37ab8f578cfd25cc9f82f16474fe7e1bde4298cc60088e914f35d7d5a66ef30363aca7be4e251f53e2f64b81e00b44a4f3ed31e5f1f4a517d25b06946975a9d79df88cf56c616ae4c81922660d533aa9317d842f948b3d2a5cab98f377cd1b719e1be52bfb774c70bd5ed589e3a4bff539f55e90e58abc8536ecc396cd34b566e938f0f4864fe1d6ff24fb8e3e3ab1b4c42b42c06700cd46a831b567bbdea115be603b7703579c8280ed0e5d4f20a9e510271e5bb61a194d5b0b205124c05d8991782e8e73158b0fd60717823b82eb7b4dd90cf778f8607913cad2914c4dfe829100903d1830199c1fbf569d6e37e2adb5d073c66fd3991eb8187063de6745dcedadabd41f6a70c7b2bc8e61d100de94b032f6d262a2e7a314c8a07740f33d9c56d018c1e78418ac315f32e91eed3eacbcded8e609c83aef09642cbfb3b717abe19c73fd5e49e008e320b3ee4ccaed6c353284dc811b9981746d05d363d35325d6f5e61340a544bf9b32b7b6cec1644b91e0b92085ff64c8d92b30f5ad1033570b6077b8bc2bb7a44a70045644d7bccb31cd1d59dc43541430d346d2a743381036d2f2e2a7a59e07c0c65de024350786615d3e7aa2c597a5d7e035e9d109e65d7d4badc94bc4bd2e55e3bc724b748e74a0fcacb73a2a9ee52f36347a5ae6072f300d6fd2f62bf08605016a6931767f353ac73babce9625b51569ab81df833bee00d3ff2bbb3badef2878a170d7d7109f33ab0f46bc96f4fc89ca727c7d8bc4282604b5bf3bbf0eea2bab4f7798601d86277e09f88645c1d56a4cae35b59d720e8b57f7e4abc5ea43a53526265c5cc4dedc5b72f127134d3d97a31a652f905f82ee74953598bf2a05f52dd89152ca9400523884d909d0469c6a966a2d841f4f01b74e98660ea5a28534174638ba83bf16343fcc653aaed6743963ad798004516fca1ba790701142e7b44788e2b9a4c6744", + "dataAbiValues": { + "methodSignature": "handleCreateRequests(uint256[],bytes32[])", + "inputValues": [ + [ + "115792089237316195423570985008687907853269984665640564039457584007913129380738", + "0", + "93359056366519978384575301215212766084552195127475241400321367131381031519394", + "115792089237316195423570985008687907853269984665640564039457584007913129246720", + "112899263945265618091091185689767054075036928377626216345331905228274830609867", + "68959065517949274316588826283101587750558165013430347817640346533866916666083", + "96167718952585367175045237006581483249627268288674080939511722496406722768674", + "17651406335742926396690394648438989354403684618877496125906122976087978138398", + "79872808473243763044716704952744950461935635665535412421360192734135943376384", + "115792089237316195423570985008042581378843437462327153970303678099387767205587", + "65536", + "45840124100760761585173752354748948632868900822901326367871013022630665716197", + "76063831858184420518861268628451249077285698597102935859033978034718219116769", + "9984", + "115792089237316195423570985008687907853269984665640564039457084007913129639936", + "65536", + "47285815686966272144121693505188799597744533049049783177959832040536684193868", + "84432718589681428792934245815119003114976466487051385221334973405702499832581", + "19437535705728302099767088929537200823274258212636994203273729259332963797163", + "71140808496164046925239908329887697304458696034799907436633500076327881606589", + "115792089237316195423570985008042581378843437462327153970303678099387767205587", + "77191109322862123514795600886680155988643876662484090273820952307332291142856", + "115792089237316195423570985008687907853269984665640564039457584007913128775926", + "589824", + "39286452316517865283766389032392547299789935223147165990478078739011264940027", + "9393939775408484523215953034946785494006122941999182174070733730995117501723", + "259200", + "40033788065363256588949523368348146912228695325379481069044606228254426791760", + "115792089237316195423570985008687907853269984665640564039457584007913129639930" + ], + [ + "f87ffe759d510e1c1d646f2c46946d2e09cce6ece48d285eecbab28b6da0aaaf", + "be4233335f0868c51a18ff4b577aba2300ff0e1110fe6ebcf65aab5b22a0cd7a", + "f45a3243de6773b2ac820589df08ee53500a017476ffbb1bc4ceb09189a3a868", + "8430464e8052902c1bf8131a3b65b1b8579578c0674f6b54e6508ebe3e773f92", + "f62a3923b7d048bd00e06c64c9764f411dd42925c5a3bc087d2acf2dd45670af", + "ee5922c58e2ab2a48008017cf695319fc8f68540c785800cac4fb40071265bc6", + "c57dd1da3996638b1d193cb3f0de7290b528e8c2553b44fdb00bd2f7afeb507f", + "780ecfa7e55b67e34060e5a3ab3fc7c2fd6270fb027a69d0e3430e553adf6819", + "c8dbcc8fe9ee062b2c79b12ff5516725f8025598c75085e7022536add4c3462e", + "067f6eb57330f4a2635836735eb4e0053c2a02ad8f30b1ebb63d99a2cd2153db", + "645c350fe8e5c04c29094fa388abef6a8faa96395cb0ff0901d9a9031f7631b2", + "2558fb38048fa6c225997c825a3070205c6bcc28d8335499c58531230e56b3a4", + "aec270fc970dd1c77c0c5296114545b189f9c61f42ccea793f3b2f3b6c3b46fd", + "6fb449fc87916235c006bf56db0c5c21f31410623781ece548911499cc23d8ac", + "091676bc100d89c7174c55fa0bd83529b7e4cd0d2fb4476413f61972f0f860f6", + "c403befbb5f69d0e304161de4e70ca3042a1d04835a72006a53c3175c5109baf", + "4182d0da9a3e83b98e43af1ad858e630be26febe27f2c8a4f67eec52f53b0d00", + "5a92a11a1dd559351c3b253a1d1a70c23193b67441c058e70e67ac3f8ac4aee5", + "0ed009392925b73b400df2177c6a10fe1f591984b99794e9156c3bd0b4a2ed75", + "17c12532c97966b24ef7deb1cf9e6cf37ab8f578cfd25cc9f82f16474fe7e1bd", + "e4298cc60088e914f35d7d5a66ef30363aca7be4e251f53e2f64b81e00b44a4f", + "3ed31e5f1f4a517d25b06946975a9d79df88cf56c616ae4c81922660d533aa93", + "17d842f948b3d2a5cab98f377cd1b719e1be52bfb774c70bd5ed589e3a4bff53", + "9f55e90e58abc8536ecc396cd34b566e938f0f4864fe1d6ff24fb8e3e3ab1b4c", + "42b42c06700cd46a831b567bbdea115be603b7703579c8280ed0e5d4f20a9e51", + "0271e5bb61a194d5b0b205124c05d8991782e8e73158b0fd60717823b82eb7b4", + "dd90cf778f8607913cad2914c4dfe829100903d1830199c1fbf569d6e37e2adb", + "5d073c66fd3991eb8187063de6745dcedadabd41f6a70c7b2bc8e61d100de94b", + "032f6d262a2e7a314c8a07740f33d9c56d018c1e78418ac315f32e91eed3eacb", + "cded8e609c83aef09642cbfb3b717abe19c73fd5e49e008e320b3ee4ccaed6c3", + "53284dc811b9981746d05d363d35325d6f5e61340a544bf9b32b7b6cec1644b9", + "1e0b92085ff64c8d92b30f5ad1033570b6077b8bc2bb7a44a70045644d7bccb3", + "1cd1d59dc43541430d346d2a743381036d2f2e2a7a59e07c0c65de0243507866", + "15d3e7aa2c597a5d7e035e9d109e65d7d4badc94bc4bd2e55e3bc724b748e74a", + "0fcacb73a2a9ee52f36347a5ae6072f300d6fd2f62bf08605016a6931767f353", + "ac73babce9625b51569ab81df833bee00d3ff2bbb3badef2878a170d7d7109f3", + "3ab0f46bc96f4fc89ca727c7d8bc4282604b5bf3bbf0eea2bab4f7798601d862", + "77e09f88645c1d56a4cae35b59d720e8b57f7e4abc5ea43a53526265c5cc4ded", + "c5b72f127134d3d97a31a652f905f82ee74953598bf2a05f52dd89152ca94005", + "23884d909d0469c6a966a2d841f4f01b74e98660ea5a28534174638ba83bf163", + "43fcc653aaed6743963ad798004516fca1ba790701142e7b44788e2b9a4c6744" + ] + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 18813, + "blockTimestampDelay": 166386 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000050000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xb6c75efa21e47192f11d3f380576fd394ec9e1b4eb90a89bceb9b651bba78bf6ab564d9dfffffffffffffffffffffffffffffffffffffffffffffffff90fa4a62c4d00002c95da414ee489142bbc6e001fef7a12692a3b9d1210170c80e8d07cec96b7c5", + "dataAbiValues": { + "methodSignature": "handleClaimEscalationReward(uint256,uint256,uint256)", + "inputValues": [ + "15329948992898956970077422041464151575333773433396765238718102692294303305117", + "115792089237316195423570985008687907853269984665640564039457084007913129574400", + "20166531891724206848272694213144022190042376042953875838430089970096862050245" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 7764, + "blockTimestampDelay": 145528 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000090000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x161c7318", + "dataAbiValues": { + "methodSignature": "test_debug()", + "inputValues": [] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 15165, + "blockTimestampDelay": 79666 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000050000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 2, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x94c9ca03", + "dataAbiValues": { + "methodSignature": "handleConfirmCouncil()", + "inputValues": [] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 18, + "blockTimestampDelay": 12967 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000080000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x9d2e6a6fb9725d6fa85600a910792fa1036f0fc5f7aeee3d8a3c5f020c4eee7ab3acd4d2", + "dataAbiValues": { + "methodSignature": "handleRemoveEBORequestCreatorRequestModule(uint256)", + "inputValues": [ + "83879942425981193648324846942207323156479086214801606686020480705403632276690" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 34946, + "blockTimestampDelay": 577539 + }, + { + "call": { + "from": "0x00000000000000000000000000000000000a0000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x3f60f9ccfffffffffffffffffffffffffffffffffffffffffffffffff90fa4a62c4dff000000000000000000000000000000000000000000000000000000000000015180106377bcc6e3833de20fde0dec86034d72977efc56ce65d621eec9aef2e6254e", + "dataAbiValues": { + "methodSignature": "handleRelease(uint256,uint256,uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457084007913129639680", + "86400", + "7412749833975990795345248015108177440376656993723510144021351295583332476238" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 16720, + "blockTimestampDelay": 129266 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000020000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 2, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xdb106ace485fa72019613288a4d464af2e38b993bd6f4e91917334b0d1a52c61978ac8a8d2d39b6fe2ce149b4c141eb36a6107fd82a5e7526b6b0b9060ad19f590c521250000000000000000000000000000000000000000000000000000000000069780341dd0fd9f3ef23b5f0565845080e00f95f62e8508ba20febb8b8b6308593a55", + "dataAbiValues": { + "methodSignature": "handleSlash(uint256,uint256,uint256,uint256)", + "inputValues": [ + "32735529026180125829021357241527250244118779294171178089592553115267256469672", + "95359575720277367758421281161102555105495114724495679053042926100061433962789", + "432000", + "23572949092085613514975120988405477088071192393031085611716095677121225636437" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 40389, + "blockTimestampDelay": 599734 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000040000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x52e3cb9c5d04a79d586d6e202ac0bf3b7e68f4375a1303a65babaf4944016b6481419266", + "dataAbiValues": { + "methodSignature": "handleSetMaxUsersToCheck(uint256)", + "inputValues": [ + "42073319140166927053960887268496944931506674334749535415241953198096253031014" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 53112, + "blockTimestampDelay": 602139 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000080000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 2, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x40605c3faf2cf332d4be6aa3f13f683b2f3927dcfd17bd3f54a714dce4631f08661b5a3e00000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000000000003c000000000000000000000000000000000000000000001b71a14cc5c581000000fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8000008f83e5e1824c2e7448d4275eb1478eab6171c49a682fbaca44925028ba6b634ac3e77046f1673cfe53d1613ee88d823fd8aad7fdbe164cb637dfd93231185710000000000000000000000000000000000000000000000000000000000090000fffffffffffffffffffffffffffffffffffffffffffffffff21f494c589c00009f6eee7e10961fd4bdef3767d64c40c41041a44c6addeb15c424f8d94e48bc0f0000000000000000000000000000000000000000000000000de0b6b3a7640000ca36abf2deffed0c5066b5dff652794584689a6c7e705862ae7f597d1feb13e000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000000000012700f8cec1bca23ec15d783db7ef8f8cd2b323c5e0d231dab89cdd395bab8f65bac2c3edd48e36942610f12c56fdc9357fb10b3a3e19be3a4066f231966c6406cf5effffffffffffffffffffffffffffffffffffffffffffc87d253162700000000093df552fbae09922d5e1344f074adbf47a846017eb175b4402261497333a2055a4d33262e07685ce10e34f6961b25194b96689b2a080e5978b2503a001cff5246a2026be7cf65c6125395dd3bc1eb0c4f1cb378693a5f9b0d7b6653b198dafb7dfd2097d05560b48c451fde495c0ce47901168cca4573e1d273864cea467a8554643a7c00f45a9c007353f2f8ca155cafb190aa7ee8bc474573d7373c863ab3700000000000000000000000000000000000000000000000000000000000000230000000000000000000000000000000000000000000000000000000000000000fffffffffffffffffffffffffffffffffffffffffffffffff90fa4a62c4e0000fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc00007c26e68c22654056c9c7702aad1aa4eb1e874e2c5a7a20dcd3ccc3235bfaca46000000000000000000000000000000000000000000000000000000460000000071ecfe0fc25f5a80cc385509ba80f4ffb79779b42f787513c5d5695172cacf5bd11c1220171fc7f914eff9884727a5769f2b8e2d87e0c22f70fc2eedec98f47971cfcf2f40fd975cf40b591f12bcad2627a1d305e669ab648a6d1d6e9e8ba228db79eb5fdad89f08678f0421eebe41120e329edf9435dd8993b8f86fa6a5e606b92565b5ec953a8bdc7dcfadf6dc773c57ec40957931aff64bf580bd469d73f5fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff900000b23ad6af11c884d96e499df75402570d05d525bf13bffdd005aba9c2f4d4d1e0000000000000012725dd1d243aba0e75fe645cc4873f9e65afe688c928e1f2100000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000030000088ea18fb122584b1efa4d9e532c2d7376b9f0c47ff2eadf136d21989711216eb9716cdd484bb8bbe02ab9174b86bd7b509bd2eeb30877a23d529a1a43c1292a0000000000000000000000000000000000000000000000000000000000000020256038ae865306af96b60f1ff7f5f081cf29f9d852b575755ccb4accb34c440effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00f1e89b7d2ae0d60246f6b9863d6666883f2d35880bb617df8c197ea6a6f3bac319717d397a1e43d1ec8630e471a8adeb41f8ffa88fe8815a4248d755c19e6c2b00000000000000000000000000000000000000000000000000000000000000c47e910dd1a6977f98a111add8eb5444304438c90e3a7966b0e784c222e1e04f360000000000000000000000000000000000000000000000000000000000070000f3657bb93d92c779a7b3185266b8f8f8dab51c3837de27303ce3ed22b7c8232a6a906f04eb8e4039b614701bfea32b7ba4a2f3552a2c30f4c306ab2f2ed00e61fffffffffffffffffffffffffffffffffffffffffffffffff21f494c589c0000f2aeddbdc99b983797d26060078418723a7fc368f920516f8db6a0f8da37726c31373ee7f75e203fd4190399cec9ec1168f34323e93b89896930b25dd042c4ca5227a0cf23b80943a5950a8a918993cbb07a34c40b95fba67d521e49532ec56e00000000000000000000000000000000000000000000000000000000000d2f00fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9649800000000000000000000000000000000000000000000000000000000001fa400ea8aafc25424af88048ec96fd9ff8565e5e76a86744505329081bc2f1c426e797f666785d36b7006166b3640a4320dffa47ca2708b45eeef576d547c61209b9fffffffffffffffffffffffff8ef68f613056e57f9d900c6762970980a4e22ed3000000000000000000000000000000000000000000000000000003824430f69e028f5c28f5c28f5c28f5c28f5c28f5c28f5c28f5c28f5c28f5c28f5c28f5c28f0000000000000000000000000000000000000000000000000429d069189e0000000000000000000000000000000000000000000000000000000000000000004dffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffee000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000800004ba0f6427e3508d8bd04b36abd26f824e48305823859cb7b5564c67168d0017b4085526fc18f9177aff8ce39103da1f9971495b564928a93c75f38b11297ab7bfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc000000000000000000000000000000000000000000000000000000000000000697802f6423a89ba203deca11a1e637c14b3cd81945e8ddefaf89925c08901762555895622042fb9be61a1c172f8bc46ed4e946fc0edec8916bd330f619d53d9159ccffffffffffffffc282c7449873c3e7a76b006cac63d2bf0026054e2b6cd0ed9191f4242dbc893426f41de7e20a15eaa229434100aa190cbfdfa26c71bebabe061b711e33c5a2626a21641421aae78ad10302c3e4b68e0084326ce1a976ecd9d2fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc18fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa0000ffffffffffffffffffffffffffffffffffffffffffffffffffffff7942924169a2701b17adb49021260199c82feb263dae20dfb1f06f6d7b0e281b9bdd61fd2775ce3ef9f0b5c0c01dc8a2a4816283877ed45116d47568bec7b63dd5138de5014c131120b22f2a6188fc709abab26e2493c64a0a47d68524e454a808e9d68a4d0000000000000000000000000000000000000000000000000000000000000012eb70cfbcdc4cd24d362862bb16dd8354de5c369027336f4ddbea81c90fc5ff5e0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008fffe0000000000000000000000000000000000000000000000000000000000000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed8b007d78952ef91d5b6abe516ac64db444e3979fd26dca0df8c7995a2c199d038c3e3551972009bb26ba918f6da4305f8f74758d7998388287d7bc569f242db37bed53737eadc62c4e9c12e0eaeb0d3f291ca3d6a6736abe2fff500d5995b84a6dd600763808282f4724a7f5980b0fde1691a8ec464e20d6161bf3806d15f485866c000000000000000000000000000000000000000000000000000000000001000200000000000000000000000000000000000000000000000000000000000000033fcea3b0db78d1875e79b1354a2407d71f81529bd4b8d9e53648947656a923690000000000000000000000000000000000000000000000000000000000007500ffffffffffffffffffffffffffffffffffffffffffffffffffffffee0000000000000000000000000000000000000000000000000000000000000000000500000000000000000000000000000000000000000000000000000000000000032700502bd6e947dd8d5f04af7e204d2f8fda4599e101b7d8f26a70b66100ed50c83cef29af6267e45562d930be4d012c9990e9f3ec312fd1fb1250d2f24941337e02fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6c58070c1359629497822e1f9451d29df743ae330181bc9e2b10c549974773e8036dca08ff75ee457748096c6c1f4780e2f123afe03bd9044610c1f6bf171c8ea1918a9933ec858ef5823627e1952d0f024adf07d4fb760118799b53f281c64e36fca909fc08433a01c2f761ec47689e0e4afcf53553aa23a009cdf034acc2cc28ce800000000000000000000000000000000000000000000000006f05b59d3a90000000000000000000000000000000000000000000000000000000000000000000024888890ead6a3fa688eea15c1fb851c542c73063e36b474f733e77cc1e3dffe3770af29006695416eb06d59ee21b71f351d172b306175ce5098c4dafc5ceacdffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed8b000000000000000000000000000000000000000000000000000000000000000064332aa14fde53e1900e8b9e18e67ebbe584887125c7c87df20e55e7d2ccc596958ccb77c59cf7412d78e3502ca4ed593c96d7889d3aa7e2f35af20e45fb3f30b0447a0bce98c36c3f1464d030d94e1faa4cf1282192d66dc267208a05c20417fdeb27ec9d62517b40aa048bad057b792ea4b5570140d61938df4e248e9f41d224d826ba696696ef5c2f84a5bfa22440b058ead7b89ee23930cf5834e89ffae31d40baaf432a54fdc1149e61a4c275de983dc6e109fdee048e1db1fceec55312c62876f266ef80348000d46774154ffe91a79395f18511d8e4dbf5524576e1ecef96da03c301964363dd537b3d196514d16428949f3e7677accc3a4cb7b53eabffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffecd3262809b86aae0f6733691180bc3d4d28aa37b824be525776cf70cf5dfa1249fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffffffffffffffffffffffffffffffffffffffffffffffffffffffffb0000fa64731c4bac6932747b966f080ff4b69feea1ff4b5a34c11a499e46984b98adb45ac57345fa90da513dba9ee818309393b78a691fea587e6709af7e00c33ee2c8eaac2a564ea749c4f885df3f46c1b11bde75aa4c71483d327a89c0a107aea5ffffffffffffffffffffffffffffffffffffffffffffffffffffffe450800000a93976c1ea3eab6d00cc0755bddd65e8d9fdc33a21c2244a148af731cccb4ab7fffffffffffffffffffffffffffffffffffffffffffffffff90fa4a62c51f4809b16aa6fd5ddc427ff517fc492793a03d0d1053e9c7d646d348b1f6c819ec8bcffffffffffffffffffffffff8ef68f613056e57f9d900c6762970980a4e22f37f35b3bc1a21297e47c7ffb746b9f0392c95c41bffc375673d43fbb56fb3db54fce3d5d19c16c9ebb75ad9e08868f532e1c3cef92c2c9815209447828bae8fb8dfffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600008000000000000000000000000000000000000000000000000000000000008000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffec0000000000000000000000000000000000000000000000000000000000000003000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000001005069ce6545751092cbc2eff7f8a196368084a8d6575e723789a0a8550ab98fff", + "dataAbiValues": { + "methodSignature": "handleAmendEpoch(uint256,uint256[],uint256[])", + "inputValues": [ + "79234168267686009005088260694588693407234102385107460922602254484253129267774", + [ + "129600000000000000000000", + "115792089237316195423570985008687907853269984665640564039457584007913129115648", + "4057111305782275886571448300120152255027125755784863430760218107684929844788", + "77908175901692034127470361839288991262578550865601348498225359157260673189233", + "589824", + "115792089237316195423570985008687907853269984665640564039456584007913129639936", + "72113742116195548480853306837104241632999023982387119790698814234496216906767", + "1000000000000000000", + "91463791901734848429633524612431015587287462192412548639048745950508510548960", + "524288", + "75520", + "112538894066595722788315856528659501863855106263622911153991922780102220692162", + "88621215232375177742539071784431089817151237292122275030738334703048582418270", + "115792089237316195423570985008687907853269984665640563777313584007913129639936", + "66884583572423189936125899179878352008538100011771012405602043541671303061589", + "74552459651354750430174029843320369767657394133388412894085302753361367397668", + "48001968457810261411432527469825735958997723895879576113893948479301808402359", + "101236868603944277764776604371323779743105874173437918010876456299226217293909", + "31781435923726815159842015427101927434769505588009900572451953949977556003639", + "35", + "0", + "115792089237316195423570985008687907853269984665640564039457084007913129639936", + "115792089237316195423570985008687907853269984665640564039457584007913129377792", + "56155524592461176289193537074028160427039803039682165510113327887820869257798", + "300647710720", + "51530081265637896148265832957451117723923258375630496683253581940896230461275", + "94582982168304262223100306942296660289078495773942778513563741163193733018745", + "51478519167773814506353660548389024638097489026918201160503420063837816857128", + "99271926829207145105184311505618387825667524547266582325691221310367712273926", + "83743952310347544629337739241152284883214803800419070987633781806314039374837", + "115792089237316195423570985008687907853269984665640564039457584007913129181184", + "5038477866947515063779293836246906523661855668185302495208724210093145279774", + "115792089237316195423570985008687907853269984665640564039457", + "393216", + "196608", + "3870510126953272661260638544693110069552065422800236658373254995620968604014", + "83878282060591541165988934124893916466315011269761026377742732144499153250602", + "32", + "16905583918771723668203985488747601465300647358530698843745608175382153675790", + "115792089237316195423570985008687907853269984665640564039457584007913129639680", + "109418378172788479097976565158528463610367949333061091923009466030448721509059", + "11508339200772475836942584238735894096008812481055785241282078323770931440683", + "196", + "57247707120759955627861231083084937748463087404077160699542249942796596170550", + "458752", + "110091327668151569106656212371076950581517323424359657707275495659861304681258", + "48200354153645512092405378017278029286888535380384921634095420105910299659873", + "115792089237316195423570985008687907853269984665640564039456584007913129639936", + "109768671149026244196282058166387480657505063313740248501133168879717647348332", + "22260940331214902517078698554353337789774274525293014376850280696039113671882", + "37159670483240285730959311945893306683001739244975476702270549393749637514606", + "864000", + "115792089237316195423570985008687907853269984665640564039457584007913129206936", + "2073600", + "106086244508125417801857301639214534862807360304915830734311681226400224931449", + "57624664658493943488382046526502123636674525999134370480877318121633255299999", + "115792089237316195423570985008042581378843437462327153970303678099387767205587", + "3858024691358", + "1157920892373161954235709850086879078532699846656405640394575840079131296399", + "300000000000000000" + ], + [ + "115792089237316195423570985008687907853269984665640564039457584007913129639918", + "0", + "524288", + "34207858796358477032982332199103227800680963682113900705888576394651738571131", + "29183581925083423688941024243556918472240950106681870258114121065667818400635", + "115792089237316195423570985008687907853269984665640564039457584007913129377792", + "432000", + "21435634696674590800027916253531217193574632436428147040687748880920643523928", + "67567988112992069131955541420455057704257803104991654918452448815861751437772", + "115792089237316195037597354217633923108033367970014204528557635122444582841745", + "66016723424300789742696363044751745847457905496214292633421867648266750574086", + "12412309078229156196316056744446162391428261427606540221918756082497195137490", + "115792089237316195423570985008687907853269984665640564039457584007913129638936", + "115792089237316195423570985008687907853269984665640564039457584007913129246720", + "115792089237316195423570985008687907853269984665640564039457584007334425936233", + "73472755327267776421973308026127877254448753235279241337722751419352711560487", + "53285008426236454566748051132682028847339819413115705816936981301928320165121", + "34409464797730214306226898492491677276600003951317999613796828717384507755085", + "18", + "106492840041486846078994543683459419558759103786120915856380467923469092650846", + "0", + "589822", + "0", + "115792089237316195423570985008687907853269984665640564039457584007913128430336", + "56752157347279760584061988459896466632251204665298637164382967127040309038142", + "24116738614601626636262316706834351425780113827152737585691601622391363697645", + "37746028149841154082348966465882482073739327117181144174744035728330047778262", + "208874671350783627654011619176166943532470262436182909541616019327963989612", + "65538", + "3", + "28860809708808363631733710670448367504969159117079683355777824792248834401129", + "29952", + "115792089237316195423570985008687907853269984665640564039457584007835820228608", + "327680", + "206592", + "36262485573400882232750948645659881895505511249913352717491315900047208532028", + "108176421999683139320006814703476022389868388800359599546504170566370496577026", + "115792089237316195423570985008687907853269984665640564039457584007913129035136", + "51000410365724471114008171615480931417094146778501429531564914421877702670044", + "72624422193215754516809871724903902483456835817665995577449383577115760924952", + "76701031238723218773417768598239405779816635996681302996616590477272306380746", + "65415307578738459235868647833202766791924105994209683509064890500902214077672", + "499999999999410176", + "0", + "16524496294274308083629695117967514973992333081230357627998700327075389366270", + "25076302454345532317991179453975588392049298002395798453167346953400308525773", + "115792089237316195423570985008687907853269984665640564039457584007913128430336", + "100", + "23143276188878733369855721787300701595409365797703421949038175060940957259413", + "63683295391262500040053660345123134963003649787555382418829139948715282215088", + "30972910534611766052885009708331548806574709113778432448704108758892053534717", + "106364059507797551682376345505614661870178866851126703545554566351126735737380", + "97768002048865966396787282783599486347509804181797120543182022396104440210205", + "29277865479763023002045455033991214767156294025312250057192566611586697073350", + "18302674894727366470512727863237702326500252143132806070327522819073946807535", + "68232125910207413510190944879114302259660552503671705522015289130982393687039", + "115792089237316195423570985008687907853269984665640564039457584007913129639916", + "95505427571445525419893056846665506702282003017637153120937485582407915147849", + "115792089237316195423570985008687907853269984665640564039457584007913129639934", + "115792089237316195423570985008687907853269984665640564039457584007913129312256", + "113255691315972170737655322937944226254953141932784329941672505990365420689581", + "81576691732611813889692146194915255816437478366258821000512042635575890755298", + "90877200171590040849160843100203605841964938473240840015812931459296799469221", + "115792089237316195423570985008687907853269984665640564039457584007794221121536", + "76542401327271872630188488589529724892881472353281299693975843146660569631415", + "115792089237316195423570985008687907853269984665640564039457084007913129899136", + "70148538477787196565799666202731000647153111455354485542162922151222404106428", + "115792089237316195423570985008042581378843437462327153970303678099387767205687", + "110073217712000972854737607884891458488668168943622259050931618568476051748175", + "93284867035883231638201272367118637038182490523078318328091268509490756516749", + "115792089237316195423570985008687907853269984665640564039457584007913128984576", + "57896044618658097711785492504343953926634992332820282019728792003956564852736", + "115792089237316195423570985008687907853269984665640564039457584007913129639916", + "3", + "1", + "256", + "36371971318479799428720879351150229460299372035807030410998706812223634378751" + ] + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 14210, + "blockTimestampDelay": 400573 + } +] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803601066000-a3361f1b-c64e-4877-b104-9e005664b987.json b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803601066000-a3361f1b-c64e-4877-b104-9e005664b987.json new file mode 100755 index 0000000..befe1ae --- /dev/null +++ b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803601066000-a3361f1b-c64e-4877-b104-9e005664b987.json @@ -0,0 +1,490 @@ +[ + { + "call": { + "from": "0x0000000000000000000000000000000000030000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x13a8b8040000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000034000000000000000000000000000000000000000000000000000000000000000170000000000000000000000000000000000000000000000000000000000d2f000ffffc0000000000000000000000000000000000000000000000000000000000181dc31bc03ad9bc8a966de91dfc8c49b929f6d5fd44a9c22a7f5bb37cebfc106ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed8ee8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6c5805bc2cfc37067e378b4feef3f3411136744d0b2851c161c601669654cf27bfe6100000000000000000000000000000000000000000000000000000000000000006cd40d93882a844c2becf361c7579664aef7a6ef6e8b79d6bf6f6f76426e9b14039e696f94058cfd274de97421f65916ac135f4d55083d357b9c1f34820c9376000000000000000000000000000000000000000000000000000000000003fffe000000000000000000000000000000000000000000000000000000000000000167e6a528e0202cf23a36eacf513eee303475d3e4c983b2ae2d616b11c440f70aaa625827d77aa233df42016988900477ead582090357ec011f404ff1f0aa321bfffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9686c2d73382b1edfa908bcaeb6b9ac0073f469887a9150c80831642e47e35a614c1bffffffffffffffffffffffffffffffffffffffffffffe48e5eb33a3a7f000000104a13a90c13653470268ea78892361e7e91e706d859aabaaf45ddd18c956640809a37cc7335cdf29b7d988dc8c05e2c1899ad1795364e6fa667088b49487472000000000000000000000000000000000000000000000000000000000000fff6fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b80756993dc4be6ecf1e46c48d6f9cae9255a8b46ef956a3d85442a5f41f70ecf93000000000000000000000000000000000000000000000000000000000076a700a77a4c48695a0407441e86efc633aee092d2ebd99c87fdfeebcd904fe33e086d000000000000000000000000000000000000000000000000000000000000001d563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd0633ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed69586530127b846a0115a3e561f49781eea70d4bcc4884906080e6adb068ff5fe13953f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b4498bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef328d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad82082401f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade0554594d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e05648dd821e471bd9a22c1f612735d2d7244c13832c4b0f28993ecafc561bfc52ae4f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cbba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c33f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8fd276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f6617237058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf259a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe2665f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a219fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb", + "dataAbiValues": { + "methodSignature": "handleCreateRequests(uint256[],bytes32[])", + "inputValues": [ + [ + "13824000", + "115791647525550000827488589184312722123641027794666345134718053606362806484993", + "58737407075920930096693749632210245280794127876199190949253348332199714210054", + "115792089237316195423570985008687907853269984665640564039457584007913128431336", + "115792089237316195423570985008687907853269984665640564039457584007913129035136", + "41504671482165347584846103287222174319130579613222615088745194098566077611617", + "0", + "49224452924880417829398231270379785502530069722970149981823851608145893694228", + "1636828073493779560152621491074002847609709387720111137750911676859097584502", + "262142", + "1", + "46995738119123743123282428161140493004285235666026628953647859202250191730442", + "77066943699312596523560233185714836616924754343478096130098486630426813805083", + "115792089237316195423570985008687907853269984665640564039457584007913129207916", + "20557653259021005890251421269967042420225955023564768794272035576696478452763", + "115792089237316195423570985008687907853269984665640563909857584007913129639936", + "7367887950809164700104084563884591449786965425123545364576065505479275931200", + "58168524174645209900719041489934173752247098791866719219864340874379345294450", + "65526", + "115792089237316195423570985008687907853269984665640564039457584007913129380736", + "53107142721938561923251317745913031228477959801596843755970727929974933606291", + "7776000", + "75752327540241786815348607290604056680494387521335977257182003214564422715501" + ], + [ + "563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe", + "27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a", + "9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd06", + "33ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865", + "30127b846a0115a3e561f49781eea70d4bcc4884906080e6adb068ff5fe13953", + "f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1", + "c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b44", + "98bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01", + "108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef32", + "8d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea", + "94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad8208240", + "1f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade05545", + "94d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056", + "48dd821e471bd9a22c1f612735d2d7244c13832c4b0f28993ecafc561bfc52ae", + "4f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa", + "9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874", + "ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cb", + "ba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c3", + "3f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8f", + "d276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99", + "fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce", + "3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb", + "4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f661723", + "7058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78", + "994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25", + "9a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe26", + "65f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a2", + "19fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c", + "51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb" + ] + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 21265, + "blockTimestampDelay": 360627 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000050000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x91e32c74e0613faa5f896b73380078af3c1ee8605eec949aaf9c8f422f264f3de916b58d4b3032484de1fb4c70c2a705584283a0288158e7d201a2526966e049d49acde5", + "dataAbiValues": { + "methodSignature": "handleCreateRequest(uint256,bytes32)", + "inputValues": [ + "101489901651207154401933345705911812335881908306802664469868899807780031346061", + "4b3032484de1fb4c70c2a705584283a0288158e7d201a2526966e049d49acde5" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 23884, + "blockTimestampDelay": 297676 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000080000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x62e8fd350000000000000000000000000000000000000000000000000000000000000000f3e0a4b7d4b9f146c330bf4206493b9644386108e6fb9dbd1ec9e9631656b911", + "dataAbiValues": { + "methodSignature": "handleOnDisputeStatusChange(uint256,uint256)", + "inputValues": [ + "0", + "110308932790717902341334723675742636402013152744066319296234386176011142609169" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 6, + "blockTimestampDelay": 447025 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000060000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xb05752f7000000000000000000000000000000000000000000000000000000000083d600ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff3cb74a490a6b235de22fdba8b11c89c1a75ba52781eaa376b8904d607971473952c39b6854fd2443ddec68f9b401b12b2c3233b939e902ba2cc4b78fc21880c9", + "dataAbiValues": { + "methodSignature": "handleOnSettleBondEscalation(uint256,uint256,uint256,uint256)", + "inputValues": [ + "8640000", + "115792089237316195423570985008687907853269984665640564039457584007913129639935", + "27462616626253393834172180586494418890954476283257859666307992469208736810809", + "37435261344928203651121242557808094327910915308413204917974281668150859169993" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 20576, + "blockTimestampDelay": 441138 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000050000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x88b05f29000000000000000000000000000000000000000000000000000000000009fffe000000000000000000000000c43801cd359a82757df4289878ce85539b0fcade000000000000000000000000000000000000000000000000000000000000006434998e76fdd43c55ad90e4a35d96044a3ebe674f5dfa103757d366102ca9f26c00000000000000000000000000000000000000000000000000000000000001000e694122e842adea5277bbbdab0b14091c2583d39824533976734442dab724e2195f41f8193b8fdb454e4c675da554f0f9409064f42db392c9ab9d5e83fad976fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe", + "dataAbiValues": { + "methodSignature": "handleSetDisputeModuleData(uint256,(address,address,uint256,uint256,uint256,uint256,uint256))", + "inputValues": [ + "655358", + { + "accountingExtension": "0xc43801Cd359A82757Df4289878CE85539B0fcAdE", + "bondEscalationDeadline": "6518348376578069825047353184871606747778953752910129049968505915388248663266", + "bondSize": "23791578983227214469447533216306682837879210004146422934780693486186688803436", + "bondToken": "0x0000000000000000000000000000000000000064", + "disputeWindow": "115792089237316195423570985008687907853269984665640564039457584007913129639934", + "maxNumberOfEscalations": "256", + "tyingBuffer": "11476126987972230713107770724661081842991657660629818104854040000448595417462" + } + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 1, + "blockTimestampDelay": 2 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000020000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xf84d6dfc00000000000000000000000000000000000000000000000006f05b59d3ad0000", + "dataAbiValues": { + "methodSignature": "handleAddEBORequestCreatorRequestModule(uint256)", + "inputValues": [ + "499999999999672320" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 12976, + "blockTimestampDelay": 472659 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000010000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x4741f6dcc0e4d0eee56b7f10aa9aefe04c4f650af62be8b532d57f12aa7ac5b950884c3a", + "dataAbiValues": { + "methodSignature": "handleSetFinalityModuleData(uint256)", + "inputValues": [ + "87248350062624793638699702709121271409886681841563726628967995216176035155002" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 29334, + "blockTimestampDelay": 296740 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000020000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x5356b681bebfb0dc367f431af08687c084e9c844567359d9793a12e0818425b7df16682a", + "dataAbiValues": { + "methodSignature": "handleAddEBORequestCreatorFinalityModule(uint256)", + "inputValues": [ + "86278129664477803463997658766424154744739678303000950581784606393529462581290" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 3566, + "blockTimestampDelay": 274227 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000040000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xaa1a5bd9ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffee0000000000000000000000000000000000000000000000000000000000000001", + "dataAbiValues": { + "methodSignature": "handleResolveDispute(uint256,uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913129639918", + "1" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 38128, + "blockTimestampDelay": 65536 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000080000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x864e2da9000000000000000000000000000000000000000000000000000000000004ff00bfa47f0f3034e3c5b418dac09c339f53fbdf69ff4b147e91a872420a6f7ed6e20000000000000000000000000000000000000000000000000000000000040000", + "dataAbiValues": { + "methodSignature": "handleArbitrateDispute(uint256,uint256,uint256)", + "inputValues": [ + "327424", + "86682393929289525193494153568452559356866521755790133919226203303415723775714", + "262144" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 28049, + "blockTimestampDelay": 147436 + }, + { + "call": { + "from": "0x00000000000000000000000000000000000a0000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x5356b681000000000000000000000000000000000000000000000000000000000000000a", + "dataAbiValues": { + "methodSignature": "handleAddEBORequestCreatorFinalityModule(uint256)", + "inputValues": [ + "10" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 21572, + "blockTimestampDelay": 167216 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000010000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xf84d6dfc87e2e521510210bb9f1efbff2cd79d7cd5675b7d503c446b0017b6bbcd5d492f", + "dataAbiValues": { + "methodSignature": "handleAddEBORequestCreatorRequestModule(uint256)", + "inputValues": [ + "61463123393503677610123184398943346662098674670775488627974437033537892600111" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 1005, + "blockTimestampDelay": 436171 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000090000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xec5bf215564402b8b5f207f4eed188f382ae7d299d56800cfcdbfbdd380f5d111164d7f3", + "dataAbiValues": { + "methodSignature": "handleFinalizeRequestResponseModule(uint256)", + "inputValues": [ + "39019069361849810475124568581956515548187837436962789536769612725416477644787" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 29390, + "blockTimestampDelay": 405151 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000050000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 2, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x2047c44964af5d348042810c6713f567b2ae0a1329f9a41a31dd65689466b80ed86a98102cf683f24338dbd0d0b4e969d552adaa1cb2ba854e7981b39db6aa7a4eb4733a4406bfd9ab92f3b803843d5137445ebcd4035dd79b752232dceb1e4a553a7fc90bc23f646eb8405f9865cad125e2b67c4cb5be6b00c8cbfeb79ac596e5fee34b", + "dataAbiValues": { + "methodSignature": "handlePay(uint256,uint256,uint256,uint256)", + "inputValues": [ + "45541126372497665840906508174782686333425760491760126897278402501345182128144", + "20337320375757040483596893633798835084481932414588544316829844888167896085306", + "30769198887980302917418981166398434808730110615619342329624446156192224018377", + "5318647182657600089902655701709793773207260177110878862668649309798760637259" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 23482, + "blockTimestampDelay": 51930 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000040000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x161c7318", + "dataAbiValues": { + "methodSignature": "test_debug()", + "inputValues": [] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 0, + "blockTimestampDelay": 0 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000070000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xf84d6dfcf6cf88d9f37a86121908cb039be9cc51a5103895c84fc649276df49538afcbad", + "dataAbiValues": { + "methodSignature": "handleAddEBORequestCreatorRequestModule(uint256)", + "inputValues": [ + "111635642607345537592182708073224837457339443516741764226233323948854559624109" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 23896, + "blockTimestampDelay": 360604 + }, + { + "call": { + "from": "0x00000000000000000000000000000000000a0000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xd1a55655000000000000000000000000000000000000000000000000000000000004839c", + "dataAbiValues": { + "methodSignature": "handleRevokeModule(uint256)", + "inputValues": [ + "295836" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 55339, + "blockTimestampDelay": 85204 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000090000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xefe223c58670cef9c731503eed4776ba6fad6b3696fa16be2eb18b465fbafeeaa0fe7be70000000000000000000000000000000000000000000000000000000000000064", + "dataAbiValues": { + "methodSignature": "handleDisputeResponseOracle(uint256,uint256)", + "inputValues": [ + "60809237075164466486500268418905379284411433772615587007980463004965951929319", + "100" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 38872, + "blockTimestampDelay": 360628 + } +] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803601793000-336e2810-dd51-4d25-9729-a91266346caf.json b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803601793000-336e2810-dd51-4d25-9729-a91266346caf.json new file mode 100755 index 0000000..71f1799 --- /dev/null +++ b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803601793000-336e2810-dd51-4d25-9729-a91266346caf.json @@ -0,0 +1,394 @@ +[ + { + "call": { + "from": "0x0000000000000000000000000000000000030000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x13a8b8040000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000034000000000000000000000000000000000000000000000000000000000000000170000000000000000000000000000000000000000000000000000000000d2f000ffffc0000000000000000000000000000000000000000000000000000000000181dc31bc03ad9bc8a966de91dfc8c49b929f6d5fd44a9c22a7f5bb37cebfc106ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed8ee8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b825bc2cfc37067e378b4feef3f3411136744d0b2851c161c601669654cf27bfe6100000000000000000000000000000000000000000000000000000000000000006cd40d93882a844c2becf361c7579664aef7a6ef6e8b79d6bf6f6f76426e9b14039e696f94058cfd274de97421f65916ac135f4d55083d357b9c1f34820c9376000000000000000000000000000000000000000000000000000000000003fffe000000000000000000000000000000000000000000000000000000000000000167e6a528e0202cf23a36eacf513eee303475d3e4c983b2ae2d616b11c440f70a4ac07813439b9213b22d4d86340307a2982de60c241368ad288dfea742b6eb5efffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9686c2d73382b1edfa908bcaeb6b9ac0073f469887a9150c80831642e47e35a614c1bffffffffffffffffffffffffffffffffffffffffffffe48e5eb33a3a7f000000104a13a90c13653470268ea78892361e7e91e706d859aabaaf45ddd18c956640809a37cc7335cdf29b7d988dc8c05e2c1899ad1795364e6fa667088b49487472000000000000000000000000000000000000000000000000000000000000fff6fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b80756993dc4be6ecf1e46c48d6f9cae9255a8b46ef956a3d85442a5f41f70ecf93000000000000000000000000000000000000000000000000000000000076a700a77a4c48695a0407441e86efc633aee092d2ebd99c87fdfeebcd904fe33e086d000000000000000000000000000000000000000000000000000000000000001d563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd0633ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed6958658aad3329b56f2f98187bbaed7351982ae06a00b9382adcb723b8b393d1f5e2def8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b4498bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef328d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad82082401f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade0554594d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae962914f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cbba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c33f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8fd276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f6617237058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf259a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe2665f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a219fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb", + "dataAbiValues": { + "methodSignature": "handleCreateRequests(uint256[],bytes32[])", + "inputValues": [ + [ + "13824000", + "115791647525550000827488589184312722123641027794666345134718053606362806484993", + "58737407075920930096693749632210245280794127876199190949253348332199714210054", + "115792089237316195423570985008687907853269984665640564039457584007913128431336", + "115792089237316195423570985008687907853269984665640564039457584007913129380738", + "41504671482165347584846103287222174319130579613222615088745194098566077611617", + "0", + "49224452924880417829398231270379785502530069722970149981823851608145893694228", + "1636828073493779560152621491074002847609709387720111137750911676859097584502", + "262142", + "1", + "46995738119123743123282428161140493004285235666026628953647859202250191730442", + "33811214160519685654400438720767591502827986970858420988841187408488311483230", + "115792089237316195423570985008687907853269984665640564039457584007913129207916", + "20557653259021005890251421269967042420225955023564768794272035576696478452763", + "115792089237316195423570985008687907853269984665640563909857584007913129639936", + "7367887950809164700104084563884591449786965425123545364576065505479275931200", + "58168524174645209900719041489934173752247098791866719219864340874379345294450", + "65526", + "115792089237316195423570985008687907853269984665640564039457584007913129380736", + "53107142721938561923251317745913031228477959801596843755970727929974933606291", + "7776000", + "75752327540241786815348607290604056680494387521335977257182003214564422715501" + ], + [ + "563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe", + "27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a", + "9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd06", + "33ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865", + "8aad3329b56f2f98187bbaed7351982ae06a00b9382adcb723b8b393d1f5e2de", + "f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1", + "c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b44", + "98bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01", + "108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef32", + "8d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea", + "94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad8208240", + "1f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade05545", + "94d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056", + "cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae96291", + "4f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa", + "9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874", + "ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cb", + "ba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c3", + "3f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8f", + "d276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99", + "fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce", + "3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb", + "4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f661723", + "7058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78", + "994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25", + "9a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe26", + "65f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a2", + "19fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c", + "51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb" + ] + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 21265, + "blockTimestampDelay": 360627 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000050000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x91e32c74e0613faa5f896b73380078af3c1ee8605eec949aaf9c8f422f264f3de916b58dc905ee964be623d23ba97ccc5a2b838249eaa10a8671d6a68f97b09746107abf", + "dataAbiValues": { + "methodSignature": "handleCreateRequest(uint256,bytes32)", + "inputValues": [ + "101489901651207154401933345705911812335881908306802664469868899807780031346061", + "c905ee964be623d23ba97ccc5a2b838249eaa10a8671d6a68f97b09746107abf" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 23884, + "blockTimestampDelay": 297676 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000020000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x161c7318", + "dataAbiValues": { + "methodSignature": "test_debug()", + "inputValues": [] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 0, + "blockTimestampDelay": 1 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000070000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xaa1a5bd9ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffee2cac1a259bf9695aac61487b4606621f281407f44a6d621116f436e53e00628b", + "dataAbiValues": { + "methodSignature": "handleResolveDispute(uint256,uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913129639918", + "20205843492154653597326893919151713313559584018734749877274787063574636290699" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 23891, + "blockTimestampDelay": 328958 + }, + { + "call": { + "from": "0x00000000000000000000000000000000000a0000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xec5bf215fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff60000", + "dataAbiValues": { + "methodSignature": "handleFinalizeRequestResponseModule(uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913128984576" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 23883, + "blockTimestampDelay": 276784 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000020000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xd1a55655fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe9c", + "dataAbiValues": { + "methodSignature": "handleRevokeModule(uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913129639580" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 14210, + "blockTimestampDelay": 524288 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000060000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x727899fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffb001400000000000000000000000000000000000000000000000000000000001275000000000000000000000000000000000000000000000000000000000000000000a46e28ce399e11c208b07a84e457189f5b64e15f51e128b7baf507642bfef8c6", + "dataAbiValues": { + "methodSignature": "handlePledge(uint256,uint256,uint256,uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913129312276", + "1209600", + "0", + "74373941974452021616102119156230516273735358461823357873191033522071497799878" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 1, + "blockTimestampDelay": 256 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000040000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xa44b098effffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0003", + "dataAbiValues": { + "methodSignature": "handleSetArbitrator(uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913129574403" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 43748, + "blockTimestampDelay": 541010 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000010000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x8f790139ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0", + "dataAbiValues": { + "methodSignature": "handleReleaseUnutilizedResponse(uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913129639904" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 11833, + "blockTimestampDelay": 213928 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000090000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xa59d317d7f4bab9c72ef04decea93d5f106890883b64be0e4f50aa1ceebd5a435a7fa13a0000000000000000000000001302f0402bb094e65a1c38fc8979628fa7cb7eb80000000000000000000000000000000000000000000000000000000000093a8000000000000000000000000000000000000000000000000000000000000d2f00fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff70000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff", + "dataAbiValues": { + "methodSignature": "handleSetResponseModuleData(uint256,(address,address,uint256,uint256,uint256))", + "inputValues": [ + "57577429716414119383889913852992200380066446236494108346454295294682507223354", + { + "accountingExtension": "0x1302F0402bb094e65a1c38fC8979628FA7cb7eB8", + "bondSize": "864000", + "bondToken": "0x0000000000000000000000000000000000093A80", + "deadline": "115792089237316195423570985008687907853269984665640564039457584007913129050112", + "disputeWindow": "115792089237316195423570985008687907853269984665640564039457584007913129639935" + } + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 30759, + "blockTimestampDelay": 56734 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000060000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x864e2da9ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff30838cd661e07d4920a4bce6f00da019a66f1a0c976d396f8827e2cc52ed8ce1fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff80000", + "dataAbiValues": { + "methodSignature": "handleArbitrateDispute(uint256,uint256,uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913129639935", + "21943445721707534311606538764242968064099548519492097564976924267444655983841", + "115792089237316195423570985008687907853269984665640564039457584007913129115648" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 1, + "blockTimestampDelay": 2 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000090000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x9f6259e5fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd0000ffff800000000000000000000000000000000000000000000000000000000007", + "dataAbiValues": { + "methodSignature": "handleResolve(uint256,uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913129443328", + "115791205813783806231406193359937536394012070923692126229978523204812483330055" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 23928, + "blockTimestampDelay": 603784 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000050000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x91e32c7440906eb1080127929789d55c169cd890ff51930058d460b835803e947a1382a9e3a84eb76ecf8f296e15f27686df9d7107dae93af0929c31ee8d76fd38476ee4", + "dataAbiValues": { + "methodSignature": "handleCreateRequest(uint256,bytes32)", + "inputValues": [ + "29203212251508816547276680880804676973046658682524638891611434720618890887849", + "e3a84eb76ecf8f296e15f27686df9d7107dae93af0929c31ee8d76fd38476ee4" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 8633, + "blockTimestampDelay": 384652 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000070000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xcd10417afffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00000e9d23751886f170e2b576c9a16ce5725aaa7d6b5a51829b582417606f258a52e", + "dataAbiValues": { + "methodSignature": "handleEscalateDispute(uint256,uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913128591360", + "105760313397677454187313767699264694345051805328600745402406216015374137730350" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 0, + "blockTimestampDelay": 0 + } +] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803602532000-1be16f79-52f8-40fb-91c4-ea3d3e097ca0.json b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803602532000-1be16f79-52f8-40fb-91c4-ea3d3e097ca0.json new file mode 100755 index 0000000..dbf1328 --- /dev/null +++ b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803602532000-1be16f79-52f8-40fb-91c4-ea3d3e097ca0.json @@ -0,0 +1,485 @@ +[ + { + "call": { + "from": "0x0000000000000000000000000000000000030000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x13a8b8040000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000034000000000000000000000000000000000000000000000000000000000000000170000000000000000000000000000000000000000000000000000000000d2f000ffffc0000000000000000000000000000000000000000000000000000000000181dc31bc03ad9bc8a966de91dfc8c49b929f6d5fd44a9c22a7f5bb37cebfc106ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed8ee8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b825bc2cfc37067e378b4feef3f3411136744d0b2851c161c601669654cf27afe610000000000000000000000000000000000000000000000000000000000000000578750b27e877a957d33dc50d914b1caf972efffa4bb78b85e66dd813a864ca4039e696f94058cfd274de97421f65916ac135f4d55083d357b9c1f34820c9376000000000000000000000000000000000000000000000000000000000003fffe000000000000000000000000000000000000000000000000000000000000000167e6a528e0202cf23a36eacf513eee303475d3e4c983b2ae2d616b11c440f70a4ac07813439b9213b22d4d86340307a2982de60c241368ad288dfea742b6eb5efffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9686c2d73382b1edfa908bcaeb6b9ac0073f469887a9150c80831642e47e35a614c1bffffffffffffffffffffffffffffffffffffffffffffe48e5eb33a3a7f000000104a13a90c13653470268ea78892361e7e91e706d859aabaaf45ddd18c956640809a37cc7335cdf29b7d988dc8c05e2c1899ad1795364e6fa667088b49487472000000000000000000000000000000000000000000000000000000000000fff6fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b800000000000000000000000000000000000000000000000000329c51ac594cf93000000000000000000000000000000000000000000000000000000000076a700a77a4c48695a0407441e86efc633aee092d2ebd99c87fdfeebcd904fe33e086d000000000000000000000000000000000000000000000000000000000000001d563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd0633ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865d5d6866ffb684491364a0853403f689144f5664f5d50de1b1a30d683ff29f21bf8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b4498bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef328d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad820824094c2949304cd969b5661cff34ece28aab6ca0f3eb707dc756ae848252d66c44a94d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae96291d8c581a922d52cd477658fcc2e2ca1f954f274ed2cd833a98e6d1d4455581f9d9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cbba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c389436d2b9b4dda11f7c2a5c1ca8fb20cba7512c884b100fa143fc24dc6c160eed276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f6617237058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25bcffd3ebd814d0f5e8e8dc7ef0303a14b98e79acfcabb14c9ad4225afd8f18c265f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a219fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c18aad5c04eb3f39ce81189eee664fb350f14bd8ce4dd62972aa7de342f017c7f", + "dataAbiValues": { + "methodSignature": "handleCreateRequests(uint256[],bytes32[])", + "inputValues": [ + [ + "13824000", + "115791647525550000827488589184312722123641027794666345134718053606362806484993", + "58737407075920930096693749632210245280794127876199190949253348332199714210054", + "115792089237316195423570985008687907853269984665640564039457584007913128431336", + "115792089237316195423570985008687907853269984665640564039457584007913129380738", + "41504671482165347584846103287222174319130579613222615088745194098566077546081", + "0", + "39590299132392589184737138068833640165131826767556478003143025413084726840484", + "1636828073493779560152621491074002847609709387720111137750911676859097584502", + "262142", + "1", + "46995738119123743123282428161140493004285235666026628953647859202250191730442", + "33811214160519685654400438720767591502827986970858420988841187408488311483230", + "115792089237316195423570985008687907853269984665640564039457584007913129207916", + "20557653259021005890251421269967042420225955023564768794272035576696478452763", + "115792089237316195423570985008687907853269984665640563909857584007913129639936", + "7367887950809164700104084563884591449786965425123545364576065505479275931200", + "58168524174645209900719041489934173752247098791866719219864340874379345294450", + "65526", + "115792089237316195423570985008687907853269984665640564039457584007913129380736", + "227929974933606291", + "7776000", + "75752327540241786815348607290604056680494387521335977257182003214564422715501" + ], + [ + "563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe", + "27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a", + "9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd06", + "33ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865", + "d5d6866ffb684491364a0853403f689144f5664f5d50de1b1a30d683ff29f21b", + "f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1", + "c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b44", + "98bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01", + "108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef32", + "8d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea", + "94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad8208240", + "94c2949304cd969b5661cff34ece28aab6ca0f3eb707dc756ae848252d66c44a", + "94d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056", + "cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae96291", + "d8c581a922d52cd477658fcc2e2ca1f954f274ed2cd833a98e6d1d4455581f9d", + "9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874", + "ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cb", + "ba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c3", + "89436d2b9b4dda11f7c2a5c1ca8fb20cba7512c884b100fa143fc24dc6c160ee", + "d276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99", + "fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce", + "3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb", + "4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f661723", + "7058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78", + "994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25", + "bcffd3ebd814d0f5e8e8dc7ef0303a14b98e79acfcabb14c9ad4225afd8f18c2", + "65f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a2", + "19fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c", + "18aad5c04eb3f39ce81189eee664fb350f14bd8ce4dd62972aa7de342f017c7f" + ] + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 21265, + "blockTimestampDelay": 360627 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000020000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x161c7318", + "dataAbiValues": { + "methodSignature": "test_debug()", + "inputValues": [] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 15325, + "blockTimestampDelay": 189245 + }, + { + "call": { + "from": "0x00000000000000000000000000000000000a0000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x88b05f294e5c5739570432e46e997185cf2683c287e8339e1ce7ab9502db4f4b4f0c1b77000000000000000000000000000000000000000000000000000000000012750000000000000000000000000000000000000000000000000006f05b59d3b200003c3b20fe3c6474ef6112cec6e2e1e2a66147c502767418c32e65c3bfa035d898948fc45007206ff5c0b2215d0b5c97d5551a84ed653f28e284b8567c463ce3650000000000000000000000000000000000000000000000000000000000069780ffffffffffffffffffffffffffffffffffffffffffffffffffffffec39800000109b1ce09a2caa796f35db2570026fd5d54f3b6f79d72997e7e30411ab7bab5f", + "dataAbiValues": { + "methodSignature": "handleSetDisputeModuleData(uint256,(address,address,uint256,uint256,uint256,uint256,uint256))", + "inputValues": [ + "35443554117267417118592017165536035041230544133048285386578266163756344810359", + { + "accountingExtension": "0x0000000000000000000000000000000000127500", + "bondEscalationDeadline": "432000", + "bondSize": "27243242601887521753615714576112380311306725462768124357416761313244220872856", + "bondToken": "0x00000000000000000000000006f05b59d3b20000", + "disputeWindow": "7511066176535142771400004346711719422194606327049609712661925953610498943839", + "maxNumberOfEscalations": "67196315620416968751812103706326677402054656808860235011842083525495944438629", + "tyingBuffer": "115792089237316195423570985008687907853269984665640564039457584007828194983936" + } + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 24101, + "blockTimestampDelay": 185392 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000010000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xb6c75efa8ba080b8a5e8e7e02b35ca63d619e3bf03ea7ee17a7395426e8c0ae38903a378ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff51e8737b07890aad8af4228017f323f8ee58c58602fe8a95d9a372445358479b", + "dataAbiValues": { + "methodSignature": "handleClaimEscalationReward(uint256,uint256,uint256)", + "inputValues": [ + "63155069885073485423962987089686113899340909970551762747564159406599093592952", + "115792089237316195423570985008687907853269984665640564039457584007913129639935", + "37048046271970045328561159781521571766041874645079829392453863326819299116955" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 7, + "blockTimestampDelay": 32 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000090000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x223b137400003ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe000000000000000000000000000000000000000000000000000000000000004006807205175b22b301c32b6c5e6ee194bd596681cba8c8638952ec1250f3d6450000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000000000000000000000000000000001518000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000027874838a0b68a875ec0ee81d4c8ef1980254e8ae6eaec10d74722bac9ebd5a49a6c310208a5de1500000000000000000000000000000000000000000000000000", + "dataAbiValues": { + "methodSignature": "handleSetRequestModuleData(uint256,(uint256,string,address,uint256))", + "inputValues": [ + "441711766194596082395824375185729628956870974218904739530401550323154942", + { + "accountingExtension": "0x0000000000000000000000000000000000015180", + "chainId": "\ufffdH8\ufffd\ufffd\ufffd\ufffd^\ufffd\ufffd\ufffd\ufffd\ufffd\ufffd\u0019\ufffd%N\ufffd\ufffd\ufffd\ufffd\u0010\ufffdG\"\ufffd\ufffd\ufffdդ\ufffdl1\u0002\b\ufffd\ufffd\u0015", + "epoch": "2940820452134172681045375212785432443100619197912571245547930807664892958277", + "paymentAmount": "0" + } + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 15253, + "blockTimestampDelay": 492034 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000080000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xaa1a5bd900000000000000000000000000000000000000000000000006f05b59d3b2000071f7cd086897aaf2110bd910f953453e7bcc20e82af33eec4c00647f9fb5da5e", + "dataAbiValues": { + "methodSignature": "handleResolveDispute(uint256,uint256)", + "inputValues": [ + "500000000000000000", + "51549178199604899047887187595007193100674999475015380254417935657395983604318" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 53242, + "blockTimestampDelay": 71336 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000070000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x52e3cb9cffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffec", + "dataAbiValues": { + "methodSignature": "handleSetMaxUsersToCheck(uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913129639916" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 45495, + "blockTimestampDelay": 225944 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000090000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xdb106aceffffffffffffffffffffffffffffffffffffffffffffffffffffffec398000001371ca94900c31d8e9be66d7c23f65b05f5d33ff2b30949acfed984f87f269e080baf5544430fe321ebd2409617ef6786f5b994597bc40798f800826b310e4524793f157456609da494af2a02075c03fcf9249185214862d5dd9f0eddb7447ce", + "dataAbiValues": { + "methodSignature": "handleSlash(uint256,uint256,uint256,uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007828194983936", + "8794995999406163856009545368231505849668095829549449500668097316828300339680", + "58226371372378751290891435773627286125304890291737788253576280229276508283986", + "32375604441627796962923040660328673776239995228426910584919203216277625915342" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 49592, + "blockTimestampDelay": 581992 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000080000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x223b1374000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000408986d1481eea494dad550c07436bc6bf24fda1699ae18ac8e867c2bc2cbb811f0000000000000000000000000000000000000000000000000000000000000080000000000000000000000000148bd2b35a0e0ff5f58651fe93524e321532b27500000000000000000000000000000000000000000000000000000000001274fe000000000000000000000000000000000000000000000000000000000000001419d972fb93584a547a564eb672065531206d2c71000000000000000000000000", + "dataAbiValues": { + "methodSignature": "handleSetRequestModuleData(uint256,(uint256,string,address,uint256))", + "inputValues": [ + "0", + { + "accountingExtension": "0x148bd2b35a0e0ff5f58651fe93524E321532b275", + "chainId": "\u0019\ufffdr\ufffd\ufffdXJTzVN\ufffdr\u0006U1 m,q", + "epoch": "62205062171946186530711375116649708949236787489916806320076639634871891493151", + "paymentAmount": "1209598" + } + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 57406, + "blockTimestampDelay": 508192 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000090000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 2, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x3f60f9cc0000000000000000000000000000000000000000000000000000000000000000235c58e45e6b448123df4ec75c527147b56e207c4815f37193cfafc12fe9143343aa8e00e44758769fcba79ddc533615c240383088eacc520788ca11f978270a", + "dataAbiValues": { + "methodSignature": "handleRelease(uint256,uint256,uint256)", + "inputValues": [ + "0", + "15994113140863775377512613840889015859198326455210825118094249343807524508723", + "30606304928112969978587259490316563804100123622315096384733063005977978611466" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 14222, + "blockTimestampDelay": 506677 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000010000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xa59d317d236b70e2ac17ad29db7127993a74e4044f47fe8ce7ed46db3cd8a16c797dd6a800000000000000000000000007743aecbf6a16d4951507d7551e5a420748d15000000000000000000000000000000000000000000000000000000000000003e8a4204edf78d831e0da05471c75e00fd5486a22d4239d68dbd4e843fd299ace8efffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc00000000000000000000000000007109709ecfa91a80626ff398ab49ad330281d12d", + "dataAbiValues": { + "methodSignature": "handleSetResponseModuleData(uint256,(address,address,uint256,uint256,uint256))", + "inputValues": [ + "16020781443007852116740508170121164524726566377185661961033510726941712176808", + { + "accountingExtension": "0x07743AecBF6a16d4951507D7551e5A420748D150", + "bondSize": "74236390634738164828042936817328106253978822253810691447408898961590657404558", + "bondToken": "0x00000000000000000000000000000000000003e8", + "deadline": "115792089237316195423570985008687907853269984665640564039457584007913129377792", + "disputeWindow": "645326474426547203313410069154905908525362434349" + } + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 4534, + "blockTimestampDelay": 153607 + }, + { + "call": { + "from": "0x00000000000000000000000000000000000a0000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x3c26dcf8ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0", + "dataAbiValues": { + "methodSignature": "handleSetEpochManager(uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913129639904" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 23786, + "blockTimestampDelay": 327680 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000030000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 2, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xc5c17157bbc9215b06808392dcec2e0c7851767c42bcbb477c1c8c8d2f6788a5f1c33d9d", + "dataAbiValues": { + "methodSignature": "handleAddChain(uint256)", + "inputValues": [ + "84937869156760602001974346264518001642163336959320593474760511948578749627805" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 1000, + "blockTimestampDelay": 604800 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000070000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x0692ea7effffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0000", + "dataAbiValues": { + "methodSignature": "handleRemoveChain(uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913129574400" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 36805, + "blockTimestampDelay": 229553 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000030000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 3, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xb6c75efa91f1b7da6044090f2bc54454fe4b82551e6e3fe26925710e360197150ba6c5040000000000000000000000000000000000000000000000000000000000069780fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b80", + "dataAbiValues": { + "methodSignature": "handleClaimEscalationReward(uint256,uint256,uint256)", + "inputValues": [ + "66012442094173021184902279859918771353213111919353305006878331952590280377604", + "432000", + "115792089237316195423570985008687907853269984665640564039457584007913129380736" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 26105, + "blockTimestampDelay": 563160 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000060000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xefe223c5ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc1eab46d9a71b9fc6196bc66df97ad0229e4ed4df31cb14738c45729db851061", + "dataAbiValues": { + "methodSignature": "handleDisputeResponseOracle(uint256,uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913129639935", + "87711067258970041198538357174074530315975071051269236784798286206430053994593" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 22062, + "blockTimestampDelay": 533426 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000090000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 3, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x3edc7cbdffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9c", + "dataAbiValues": { + "methodSignature": "handleFinalizeRequestFinalityModule(uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913129639836" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 58571, + "blockTimestampDelay": 448941 + } +] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803615385000-3017e126-f28b-4de3-a2d0-55924f78cb18.json b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803615385000-3017e126-f28b-4de3-a2d0-55924f78cb18.json new file mode 100755 index 0000000..1d5751d --- /dev/null +++ b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803615385000-3017e126-f28b-4de3-a2d0-55924f78cb18.json @@ -0,0 +1,865 @@ +[ + { + "call": { + "from": "0x0000000000000000000000000000000000030000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x13a8b8040000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000034000000000000000000000000000000000000000000000000000000000000000170000000000000000000000000000000000000000000000000000000000d2f000ffffc0000000000000000000000000000000000000000000000000000000000181dc31bc03ad9bc8a966de91dfc8c49b929f6d5fd44a9c22a7f5bb37cebfc106ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed8ee8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b825bc2cfc37067e378b4feef3f3411136744d0b2851c161c601669654cf27afe610000000000000000000000000000000000000000000000000000000000000000578750b27e877a957d33dc50d914b1caf972efffa4bb78b85e66dd813a864ca4039e696f94058cfd274de97421f65916ac135f4d55083d357b9c1f34820c9376000000000000000000000000000000000000000000000000000000000003fffe000000000000000000000000000000000000000000000000000000000000000167e6a528e0202cf23a36eacf513eee303475d3e4c983b2ae2d616b11c440f70a4ac07813439b9213b22d4d86340307a2982de60c241368ad288dfea742b6eb5efffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9686c2d73382b1edfa908bcaeb6b9ac0073f469887a9150c80831642e47e35a614c1bffffffffffffffffffffffffffffffffffffffffffffe48e5eb33a3a7f000000104a13a90c13653470268ea78892361e7e91e706d859aabaaf45ddd18c956640809a37cc7335cdf29b7d988dc8c05e2c1899ad1795364e6fa667088b49487472000000000000000000000000000000000000000000000000000000000000fff6fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b800000000000000000000000000000000000000000000000000329c51ac594cf93000000000000000000000000000000000000000000000000000000000076a700a77a4c48695a0407441e86efc633aee092d2ebd99c87fdfeebcd904fe33e086d000000000000000000000000000000000000000000000000000000000000001d563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd0633ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865d5d6866ffb684491364a0853403f689144f5664f5d50de1b1a30d683ff29f21bf8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b4498bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef328d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad820824094c2949304cd969b5661cff34ece28aab6ca0f3eb707dc756ae848252d66c44a94d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae96291d8c581a922d52cd477658fcc2e2ca1f954f274ed2cd833a98e6d1d4455581f9d9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cbba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c389436d2b9b4dda11f7c2a5c1ca8fb20cba7512c884b100fa143fc24dc6c160eed276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f6617237058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25bcffd3ebd814d0f5e8e8dc7ef0303a14b98e79acfcabb14c9ad4225afd8f18c265f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a219fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c18aad5c04eb3f39ce81189eee664fb350f14bd8ce4dd62972aa7de342f017c7f", + "dataAbiValues": { + "methodSignature": "handleCreateRequests(uint256[],bytes32[])", + "inputValues": [ + [ + "13824000", + "115791647525550000827488589184312722123641027794666345134718053606362806484993", + "58737407075920930096693749632210245280794127876199190949253348332199714210054", + "115792089237316195423570985008687907853269984665640564039457584007913128431336", + "115792089237316195423570985008687907853269984665640564039457584007913129380738", + "41504671482165347584846103287222174319130579613222615088745194098566077546081", + "0", + "39590299132392589184737138068833640165131826767556478003143025413084726840484", + "1636828073493779560152621491074002847609709387720111137750911676859097584502", + "262142", + "1", + "46995738119123743123282428161140493004285235666026628953647859202250191730442", + "33811214160519685654400438720767591502827986970858420988841187408488311483230", + "115792089237316195423570985008687907853269984665640564039457584007913129207916", + "20557653259021005890251421269967042420225955023564768794272035576696478452763", + "115792089237316195423570985008687907853269984665640563909857584007913129639936", + "7367887950809164700104084563884591449786965425123545364576065505479275931200", + "58168524174645209900719041489934173752247098791866719219864340874379345294450", + "65526", + "115792089237316195423570985008687907853269984665640564039457584007913129380736", + "227929974933606291", + "7776000", + "75752327540241786815348607290604056680494387521335977257182003214564422715501" + ], + [ + "563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe", + "27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a", + "9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd06", + "33ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865", + "d5d6866ffb684491364a0853403f689144f5664f5d50de1b1a30d683ff29f21b", + "f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1", + "c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b44", + "98bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01", + "108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef32", + "8d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea", + "94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad8208240", + "94c2949304cd969b5661cff34ece28aab6ca0f3eb707dc756ae848252d66c44a", + "94d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056", + "cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae96291", + "d8c581a922d52cd477658fcc2e2ca1f954f274ed2cd833a98e6d1d4455581f9d", + "9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874", + "ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cb", + "ba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c3", + "89436d2b9b4dda11f7c2a5c1ca8fb20cba7512c884b100fa143fc24dc6c160ee", + "d276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99", + "fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce", + "3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb", + "4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f661723", + "7058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78", + "994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25", + "bcffd3ebd814d0f5e8e8dc7ef0303a14b98e79acfcabb14c9ad4225afd8f18c2", + "65f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a2", + "19fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c", + "18aad5c04eb3f39ce81189eee664fb350f14bd8ce4dd62972aa7de342f017c7f" + ] + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 21265, + "blockTimestampDelay": 360627 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000020000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x161c7318", + "dataAbiValues": { + "methodSignature": "test_debug()", + "inputValues": [] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 15325, + "blockTimestampDelay": 189245 + }, + { + "call": { + "from": "0x00000000000000000000000000000000000a0000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x88b05f294e5c5739570432e46e997185cf2683c287e8339e1ce7ab9502db4f4b4f0c1b77000000000000000000000000000000000000000000000000000000000012750000000000000000000000000000000000000000000000000006f05b59d3b200003c3b20fe3c6474ef6112cec6e2e1e2a66147c502767418c32e65c3bfa035d898948fc45007206ff5c0b2215d0b5c97d5551a84ed653f28e284b8567c463ce3650000000000000000000000000000000000000000000000000000000000069780ffffffffffffffffffffffffffffffffffffffffffffffffffffffec39800000109b1ce09a2caa796f35db2570026fd5d54f3b6f79d72997e7e30411ab7bab5f", + "dataAbiValues": { + "methodSignature": "handleSetDisputeModuleData(uint256,(address,address,uint256,uint256,uint256,uint256,uint256))", + "inputValues": [ + "35443554117267417118592017165536035041230544133048285386578266163756344810359", + { + "accountingExtension": "0x0000000000000000000000000000000000127500", + "bondEscalationDeadline": "432000", + "bondSize": "27243242601887521753615714576112380311306725462768124357416761313244220872856", + "bondToken": "0x00000000000000000000000006f05b59d3b20000", + "disputeWindow": "7511066176535142771400004346711719422194606327049609712661925953610498943839", + "maxNumberOfEscalations": "67196315620416968751812103706326677402054656808860235011842083525495944438629", + "tyingBuffer": "115792089237316195423570985008687907853269984665640564039457584007828194983936" + } + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 24101, + "blockTimestampDelay": 185392 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000010000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xb6c75efa8ba080b8a5e8e7e02b35ca63d619e3bf03ea7ee17a7395426e8c0ae38903a378ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff51e8737b07890aad8af4228017f323f8ee58c58602fe8a95d9a372445358479b", + "dataAbiValues": { + "methodSignature": "handleClaimEscalationReward(uint256,uint256,uint256)", + "inputValues": [ + "63155069885073485423962987089686113899340909970551762747564159406599093592952", + "115792089237316195423570985008687907853269984665640564039457584007913129639935", + "37048046271970045328561159781521571766041874645079829392453863326819299116955" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 7, + "blockTimestampDelay": 32 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000090000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x223b137400003ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe000000000000000000000000000000000000000000000000000000000000004006807205175b22b301c32b6c5e6ee194bd596681cba8c8638952ec1250f3d6450000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000000000000000000000000000000001518000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000027874838a0b68a875ec0ee81d4c8ef1980254e8ae6eaec10d74722bac9ebd5a49a6c310208a5de1500000000000000000000000000000000000000000000000000", + "dataAbiValues": { + "methodSignature": "handleSetRequestModuleData(uint256,(uint256,string,address,uint256))", + "inputValues": [ + "441711766194596082395824375185729628956870974218904739530401550323154942", + { + "accountingExtension": "0x0000000000000000000000000000000000015180", + "chainId": "\ufffdH8\ufffd\ufffd\ufffd\ufffd^\ufffd\ufffd\ufffd\ufffd\ufffd\ufffd\u0019\ufffd%N\ufffd\ufffd\ufffd\ufffd\u0010\ufffdG\"\ufffd\ufffd\ufffdդ\ufffdl1\u0002\b\ufffd\ufffd\u0015", + "epoch": "2940820452134172681045375212785432443100619197912571245547930807664892958277", + "paymentAmount": "0" + } + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 15253, + "blockTimestampDelay": 492034 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000080000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xaa1a5bd900000000000000000000000000000000000000000000000006f05b59d3b2000071f7cd086897aaf2110bd910f953453e7bcc20e82af33eec4c00647f9fb5da5e", + "dataAbiValues": { + "methodSignature": "handleResolveDispute(uint256,uint256)", + "inputValues": [ + "500000000000000000", + "51549178199604899047887187595007193100674999475015380254417935657395983604318" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 53242, + "blockTimestampDelay": 71336 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000070000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x52e3cb9cffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffec", + "dataAbiValues": { + "methodSignature": "handleSetMaxUsersToCheck(uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913129639916" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 45495, + "blockTimestampDelay": 225944 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000090000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xdb106aceffffffffffffffffffffffffffffffffffffffffffffffffffffffec398000001371ca94900c31d8e9be66d7c23f65b05f5d33ff2b30949acfed984f87f269e080baf5544430fe321ebd2409617ef6786f5b994597bc40798f800826b310e4524793f157456609da494af2a02075c03fcf9249185214862d5dd9f0eddb7447ce", + "dataAbiValues": { + "methodSignature": "handleSlash(uint256,uint256,uint256,uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007828194983936", + "8794995999406163856009545368231505849668095829549449500668097316828300339680", + "58226371372378751290891435773627286125304890291737788253576280229276508283986", + "32375604441627796962923040660328673776239995228426910584919203216277625915342" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 49592, + "blockTimestampDelay": 581992 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000080000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x223b1374000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000408986d1481eea494dad550c07436bc6bf24fda1699ae18ac8e867c2bc2cbb811f0000000000000000000000000000000000000000000000000000000000000080000000000000000000000000148bd2b35a0e0ff5f58651fe93524e321532b27500000000000000000000000000000000000000000000000000000000001274fe000000000000000000000000000000000000000000000000000000000000001419d972fb93584a547a564eb672065531206d2c71000000000000000000000000", + "dataAbiValues": { + "methodSignature": "handleSetRequestModuleData(uint256,(uint256,string,address,uint256))", + "inputValues": [ + "0", + { + "accountingExtension": "0x148bd2b35a0e0ff5f58651fe93524E321532b275", + "chainId": "\u0019\ufffdr\ufffd\ufffdXJTzVN\ufffdr\u0006U1 m,q", + "epoch": "62205062171946186530711375116649708949236787489916806320076639634871891493151", + "paymentAmount": "1209598" + } + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 57406, + "blockTimestampDelay": 508192 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000090000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 2, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x3f60f9cc0000000000000000000000000000000000000000000000000000000000000000235c58e45e6b448123df4ec75c527147b56e207c4815f37193cfafc12fe9143343aa8e00e44758769fcba79ddc533615c240383088eacc520788ca11f978270a", + "dataAbiValues": { + "methodSignature": "handleRelease(uint256,uint256,uint256)", + "inputValues": [ + "0", + "15994113140863775377512613840889015859198326455210825118094249343807524508723", + "30606304928112969978587259490316563804100123622315096384733063005977978611466" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 14222, + "blockTimestampDelay": 506677 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000010000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xa59d317d236b70e2ac17ad29db7127993a74e4044f47fe8ce7ed46db3cd8a16c797dd6a800000000000000000000000007743aecbf6a16d4951507d7551e5a420748d15000000000000000000000000000000000000000000000000000000000000003e8a4204edf78d831e0da05471c75e00fd5486a22d4239d68dbd4e843fd299ace8efffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc00000000000000000000000000007109709ecfa91a80626ff398ab49ad330281d12d", + "dataAbiValues": { + "methodSignature": "handleSetResponseModuleData(uint256,(address,address,uint256,uint256,uint256))", + "inputValues": [ + "16020781443007852116740508170121164524726566377185661961033510726941712176808", + { + "accountingExtension": "0x07743AecBF6a16d4951507D7551e5A420748D150", + "bondSize": "74236390634738164828042936817328106253978822253810691447408898961590657404558", + "bondToken": "0x00000000000000000000000000000000000003e8", + "deadline": "115792089237316195423570985008687907853269984665640564039457584007913129377792", + "disputeWindow": "645326474426547203313410069154905908525362434349" + } + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 4534, + "blockTimestampDelay": 153607 + }, + { + "call": { + "from": "0x00000000000000000000000000000000000a0000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x3c26dcf8ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0", + "dataAbiValues": { + "methodSignature": "handleSetEpochManager(uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913129639904" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 23786, + "blockTimestampDelay": 327680 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000030000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 2, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xc5c17157bbc9215b06808392dcec2e0c7851767c42bcbb477c1c8c8d2f6788a5f1c33d9d", + "dataAbiValues": { + "methodSignature": "handleAddChain(uint256)", + "inputValues": [ + "84937869156760602001974346264518001642163336959320593474760511948578749627805" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 1000, + "blockTimestampDelay": 604800 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000070000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x0692ea7effffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0000", + "dataAbiValues": { + "methodSignature": "handleRemoveChain(uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913129574400" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 36805, + "blockTimestampDelay": 229553 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000030000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 3, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xb6c75efa91f1b7da6044090f2bc54454fe4b82551e6e3fe26925710e360197150ba6c5040000000000000000000000000000000000000000000000000000000000069780fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b80", + "dataAbiValues": { + "methodSignature": "handleClaimEscalationReward(uint256,uint256,uint256)", + "inputValues": [ + "66012442094173021184902279859918771353213111919353305006878331952590280377604", + "432000", + "115792089237316195423570985008687907853269984665640564039457584007913129380736" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 26105, + "blockTimestampDelay": 563160 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000060000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xefe223c5ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc1eab46d9a71b9fc6196bc66df97ad0229e4ed4df31cb14738c45729db851061", + "dataAbiValues": { + "methodSignature": "handleDisputeResponseOracle(uint256,uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913129639935", + "87711067258970041198538357174074530315975071051269236784798286206430053994593" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 22062, + "blockTimestampDelay": 533426 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000090000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 3, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x3edc7cbdffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9c", + "dataAbiValues": { + "methodSignature": "handleFinalizeRequestFinalityModule(uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913129639836" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 58571, + "blockTimestampDelay": 448941 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000090000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 4, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x9d2e6a6f9ad1b274a36d6422204cb38284e52c1e394b76dd420c12b133c0f54555fa8725", + "dataAbiValues": { + "methodSignature": "handleRemoveEBORequestCreatorRequestModule(uint256)", + "inputValues": [ + "70026681373776152693382902846792773999381205621007041991972413057813542766373" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 55128, + "blockTimestampDelay": 223499 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000040000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xcd10417aa9b7c8ba23219e921c8c24f084b211b31e9da2b176051da47b11bff8ff5c33212de575b81bb2e58ba5f1b8efa82a2605f4006b905e5e2cc82173eaf76a20add4", + "dataAbiValues": { + "methodSignature": "handleEscalateDispute(uint256,uint256)", + "inputValues": [ + "76765589790945662604547244204216214155946252006571676315847820028747638911777", + "20759498631951024433205069293438925811645138406748362097890303052587796049364" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 17266, + "blockTimestampDelay": 47869 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000040000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xf84d6dfc2e0a2c2d27894539cfe61cf1aa3dce6fa4cc0182d8a4f96446b30c16dcdb4280", + "dataAbiValues": { + "methodSignature": "handleAddEBORequestCreatorRequestModule(uint256)", + "inputValues": [ + "20824364399678545662833682292547392236236046121352715060387808748443780465280" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 8422, + "blockTimestampDelay": 175942 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000070000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 2, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x7aeb6fab0000000000000000000000000000000000000000000000000000000000080000861226f42b4f83fda125862408777203fcf059cc4d6afa3d8b5f14cbd0503cba", + "dataAbiValues": { + "methodSignature": "handleDisputeResponseBondEscalationModule(uint256,uint256)", + "inputValues": [ + "524288", + "60641993806473011143834861665095605796555276187455692014587155889705714728122" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 5058, + "blockTimestampDelay": 564562 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000030000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 4, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x9f6259e500000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000060000", + "dataAbiValues": { + "methodSignature": "handleResolve(uint256,uint256)", + "inputValues": [ + "262144", + "393216" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 54349, + "blockTimestampDelay": 446424 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000070000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 3, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xefe223c5ad8117bd6793da9372ee7a9f184c1f229a994a23f82083eb6803cf5612a5e084994694c28b481c29ef6ab1024c7f7ad48917e7b3644de29036693dfa1f6557a0", + "dataAbiValues": { + "methodSignature": "handleDisputeResponseOracle(uint256,uint256)", + "inputValues": [ + "78478209922765382613928019011452160112457201279089481808494135837808952467588", + "69328571831131295636312210863921518104963878476144420959825437715154096969632" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 356, + "blockTimestampDelay": 94684 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000010000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 2, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xec5bf215ffffffffffffffffffffffff8ef68f613056e57f9d900c6762970980a4e22ed3", + "dataAbiValues": { + "methodSignature": "handleFinalizeRequestResponseModule(uint256)", + "inputValues": [ + "115792089237316195423570985008042581378843437462327153970303678099387767205587" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 26236, + "blockTimestampDelay": 172938 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000040000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 2, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x727899fff514b534b61c375c439f68b334317ec7ad1c81896f2e7f7d9e2bf248e8b86bb80269a17e974e3f307c7b602e63a3a5f54ab7520e1ce48c185b85068b23a50c370000000000000000000000007109709ecfa91a80626ff3989d68f67f5b1dd12d0ce9ae7037dff0632bada0555a4b2a1709ee25a0f6d47ff213ef7dab06f13492", + "dataAbiValues": { + "methodSignature": "handlePledge(uint256,uint256,uint256,uint256)", + "inputValues": [ + "110853235481380273198257434098634459560730545434260276739156884901825263201208", + "1091259233017721395373144204062272118708516766005316865622853242594359839799", + "645326474426547203313410069153905908525362434349", + "5840633478355227696719452384365761985173515625270275222857093897003304301714" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 48302, + "blockTimestampDelay": 98481 + }, + { + "call": { + "from": "0x00000000000000000000000000000000000a0000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 2, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xc82f34f9ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffec00009c3ade46c6a10c03646645dceced151803cfed4a76a69d888d9528938805d33e", + "dataAbiValues": { + "methodSignature": "handleSettleBondEscalation(uint256,uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913128329216", + "70664815604550041696416122873938953675815643014153596578083942850550877770558" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 21405, + "blockTimestampDelay": 224071 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000070000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 4, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xd51b326a4f11ce728964fd5cfe4e67e0a4108fd7bd12e31d80bee3e9fd7503b25943d86bfffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600002fbcb13722d80a133f1e093640349fcea5017c8025ac70c52fefa1f32bef4147", + "dataAbiValues": { + "methodSignature": "handlePledgeForDispute(uint256,uint256,uint256)", + "inputValues": [ + "35764176285829964837988166432096626338604401112435149938249800147871318923371", + "115792089237316195423570985008687907853269984665640564039457584007913128984576", + "21592094227161796483602757534726537598958165417486369280358722180410608927047" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 30001, + "blockTimestampDelay": 418139 + }, + { + "call": { + "from": "0x00000000000000000000000000000000000a0000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 3, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x51b295e300000000000000000000000000000000000000000000000000000000000003a8", + "dataAbiValues": { + "methodSignature": "handleFinalize(uint256)", + "inputValues": [ + "936" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 23854, + "blockTimestampDelay": 283267 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000020000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x6b125a57fffffffffffffffffffe3bda3d84c15b95fe7640319d8a5c26029388bb4c0000", + "dataAbiValues": { + "methodSignature": "handleRemoveEBORequestCreatorFinalityModule(uint256)", + "inputValues": [ + "115792089237316195423570815840224595780479919275071395757947099535303139655680" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 132, + "blockTimestampDelay": 172800 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000050000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x6b125a57439c4dea175c1f4dc2283a0dca8df089ec1e32de1a71e6049937ba0ef888023b", + "dataAbiValues": { + "methodSignature": "handleRemoveEBORequestCreatorFinalityModule(uint256)", + "inputValues": [ + "30581126742740578579461185375868096517298438186402910784813700598662223626811" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 27956, + "blockTimestampDelay": 447027 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000070000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 5, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x64d6e6d3179a67678bb838478c44926fbd26493474eb791516d81ee5baa3765643a7f0f13935c24452e2a5faa498fca2a6c4ae1b3a3c6a9976af2868354336a0b5eae4a3df8b40fb6fcf686f1659e51d90d962d5cbfd1a55d1a1db345acbb7978cd9bd61", + "dataAbiValues": { + "methodSignature": "handlePledgeAgainstDispute(uint256,uint256,uint256)", + "inputValues": [ + "10676003636853416453138572180884583936897901964655062312574559468487432466673", + "25876816044475934884764655838030328364254713960717807302331158298975447737507", + "101111805466560395134870514718984948651558312084779106319072364710585748274529" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 9230, + "blockTimestampDelay": 259200 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000040000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 3, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x4741f6dc97ea50d8c074d187de7cfc88d0f1c34dc24db2642bef23ec1b88370e17145d67", + "dataAbiValues": { + "methodSignature": "handleSetFinalityModuleData(uint256)", + "inputValues": [ + "68713240332555606262576304945776648453307986915064085044793172925635856981351" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 12052, + "blockTimestampDelay": 19785 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000090000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 5, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x9d2e6a6f0000000000000000000000000000000000000000000006f05b59d3b200000000", + "dataAbiValues": { + "methodSignature": "handleRemoveEBORequestCreatorRequestModule(uint256)", + "inputValues": [ + "32768000000000000000000" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 0, + "blockTimestampDelay": 3 + } +] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803619106000-1075c611-326d-47eb-b752-8450c62dbeff.json b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803619106000-1075c611-326d-47eb-b752-8450c62dbeff.json new file mode 100755 index 0000000..9799367 --- /dev/null +++ b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803619106000-1075c611-326d-47eb-b752-8450c62dbeff.json @@ -0,0 +1,1226 @@ +[ + { + "call": { + "from": "0x0000000000000000000000000000000000030000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x13a8b8040000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000034000000000000000000000000000000000000000000000000000000000000000170000000000000000000000000000000000000000000000000000000000d2f000ffffc0000000000000000000000000000000000000000000000000000000000181dc31bc03ad9bc8a966de91dfc8c49b929f6d5fd44a9c22a7f5bb37cebfc106ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed8ee8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b825bc2cfc37067e378b4feef3f3411136744d0b2851c161c601669654cf27bfe6100000000000000000000000000000000000000000000000000000000000000006cd40d93882a844c2becf361c7579664aef7a6ef6e8b79d6bf6f6f76426e9b14039e696f94058cfd274de97421f65916ac135f4d55083d357b9c1f34820c9376000000000000000000000000000000000000000000000000000000000003fffe000000000000000000000000000000000000000000000000000000000000000167e6a528e0202cf23a36eacf513eee303475d3e4c983b2ae2d616b11c440f70a4ac07813439b9213b22d4d86340307a2982de60c241368ad288dfea742b6eb5efffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9686c2d73382b1edfa908bcaeb6b9ac0073f469887a9150c80831642e47e35a614c1bffffffffffffffffffffffffffffffffffffffffffffe48e5eb33a3a7f000000104a13a90c13653470268ea78892361e7e91e706d859aabaaf45ddd18c956640809a37cc7335cdf29b7d988dc8c05e2c1899ad1795364e6fa667088b49487472ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffee00b4fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b80756993dc4be6ecf1e46c48d6f9cae9255a8b46ef956a3d85442a5f41f70ecf93000000000000000000000000000000000000000000000000000000000076a700a77a4c48695a0407441e86efc633aee092d2ebd99c87fdfeebcd904fe33e086d000000000000000000000000000000000000000000000000000000000000001d563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd0633ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865a46715d7736dde0bcf6527392542031b42d0197ab2c1bb4c4d2d7abaed280007f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b4498bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef328d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad82082401f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade0554594d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae962914f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cbba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c33f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8fd276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f6617237058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf259a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe260d35d19771f7c1af646e114de36d19c25e3fc040b27be76073113bb33db17d5d19fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb", + "dataAbiValues": { + "methodSignature": "handleCreateRequests(uint256[],bytes32[])", + "inputValues": [ + [ + "13824000", + "115791647525550000827488589184312722123641027794666345134718053606362806484993", + "58737407075920930096693749632210245280794127876199190949253348332199714210054", + "115792089237316195423570985008687907853269984665640564039457584007913128431336", + "115792089237316195423570985008687907853269984665640564039457584007913129380738", + "41504671482165347584846103287222174319130579613222615088745194098566077611617", + "0", + "49224452924880417829398231270379785502530069722970149981823851608145893694228", + "1636828073493779560152621491074002847609709387720111137750911676859097584502", + "262142", + "1", + "46995738119123743123282428161140493004285235666026628953647859202250191730442", + "33811214160519685654400438720767591502827986970858420988841187408488311483230", + "115792089237316195423570985008687907853269984665640564039457584007913129207916", + "20557653259021005890251421269967042420225955023564768794272035576696478452763", + "115792089237316195423570985008687907853269984665640563909857584007913129639936", + "7367887950809164700104084563884591449786965425123545364576065505479275931200", + "58168524174645209900719041489934173752247098791866719219864340874379345294450", + "115792089237316195423570985008687907853269984665640564039457584007913128460468", + "115792089237316195423570985008687907853269984665640564039457584007913129380736", + "53107142721938561923251317745913031228477959801596843755970727929974933606291", + "7776000", + "75752327540241786815348607290604056680494387521335977257182003214564422715501" + ], + [ + "563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe", + "27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a", + "9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd06", + "33ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865", + "a46715d7736dde0bcf6527392542031b42d0197ab2c1bb4c4d2d7abaed280007", + "f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1", + "c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b44", + "98bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01", + "108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef32", + "8d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea", + "94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad8208240", + "1f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade05545", + "94d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056", + "cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae96291", + "4f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa", + "9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874", + "ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cb", + "ba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c3", + "3f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8f", + "d276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99", + "fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce", + "3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb", + "4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f661723", + "7058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78", + "994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25", + "9a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe26", + "0d35d19771f7c1af646e114de36d19c25e3fc040b27be76073113bb33db17d5d", + "19fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c", + "51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb" + ] + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 21265, + "blockTimestampDelay": 360627 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000080000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x51b295e3caac5b7c00ae43f0a0d2465bc3a827daefa6255afc3feafd105a01b058af4cc3", + "dataAbiValues": { + "methodSignature": "handleFinalize(uint256)", + "inputValues": [ + "91671724510984325847623981850838041499373483072178023597879983910219265559747" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 616, + "blockTimestampDelay": 245182 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000070000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x62e8fd357410315e284ca2250b236ba99041acd7e7626e3fc66727657ddcb75ed512355238b8e299444e7771cad3e9cc9efbc8237922a7b18f034d56199ddaad5f62f70c", + "dataAbiValues": { + "methodSignature": "handleOnDisputeStatusChange(uint256,uint256)", + "inputValues": [ + "52496900712745351460185096722717982602139275703227615313943886816707427317074", + "25656183307321870319256066529210878052151786525540532817103830451324188817164" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 0, + "blockTimestampDelay": 0 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000010000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x5cc02fa53b4e8ff8cbb94866d057a07c347e0cb79a079e6c49875d6adb448ca8b36b2f93", + "dataAbiValues": { + "methodSignature": "handleSetPendingCouncil(uint256)", + "inputValues": [ + "26825265794714411535119211388793422995701606456004679527746190657884506501011" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 22951, + "blockTimestampDelay": 222797 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000090000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x7aeb6faba969b1150e65eb039223322d37083c0f930e9f96e767cfaf888c1440b89042a7ffffffffffffffffffffffffffffffffffffffffffffffffffffffbe15000000", + "dataAbiValues": { + "methodSignature": "handleDisputeResponseBondEscalationModule(uint256,uint256)", + "inputValues": [ + "76627612529152310655938988775485703136714009850335653768166292952282670580391", + "115792089237316195423570985008687907853269984665640564039457584007630014119936" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 23866, + "blockTimestampDelay": 274647 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000030000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 2, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xf4fbbf9b0000000000000000000000000000000000000000000000000000000000000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed8b007c3160c01450d95568fbc7e3fe876965aa411c1bf13d7be2baabf28cedd3012f", + "dataAbiValues": { + "methodSignature": "handleBond(uint256,uint256,uint256)", + "inputValues": [ + "0", + "115792089237316195423570985008687907853269984665640564039457584007913128430336", + "56174036476597730143689219709059961134239333858317208755745576773703517274415" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 0, + "blockTimestampDelay": 404026 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000060000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x94ae6f8c0000000000000000000000000000000000000000000000000000000000000120", + "dataAbiValues": { + "methodSignature": "handleValidateArbitrator(uint256)", + "inputValues": [ + "288" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 28898, + "blockTimestampDelay": 360593 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000020000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x0692ea7e0000000000000000000000000000000000000000000000000000000000000100", + "dataAbiValues": { + "methodSignature": "handleRemoveChain(uint256)", + "inputValues": [ + "256" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 10120, + "blockTimestampDelay": 442746 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000030000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 3, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xb05752f77477db96404997c322ba9a11ba66d9f58fa471415b5c82afcf1965a16b52aa310000000000000000000000000000000000000000000000000000000000060000a3d04e821fd24d173d46c5c6591bac6f9d3ee4250e38f6752d158a2114dae86a7312ea15e2dc75c19cc06e815ad4c43b0e39987ce5ac5a5bac39cbb127f734e6", + "dataAbiValues": { + "methodSignature": "handleOnSettleBondEscalation(uint256,uint256,uint256,uint256)", + "inputValues": [ + "52680060769579736990081276342150508425883578818293859365287572298297987213873", + "393216", + "74095040352905635550053635482030730013005988265241047193937642446333545212010", + "52049396432936944477776417116733628414171704893437425841548460736384299644134" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 23866, + "blockTimestampDelay": 360369 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000020000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x9d2e6a6fb7ab9b804f5e3b07b64589457afe860d64ca8a1102a99dc3b01e9042b84b54c8", + "dataAbiValues": { + "methodSignature": "handleRemoveEBORequestCreatorRequestModule(uint256)", + "inputValues": [ + "83076455368730213982012688072579720945989878255995701383969604691644153287880" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 3912, + "blockTimestampDelay": 284189 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000050000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x13a8b80400000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000001dfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b820000000000000000000000000000000000000000000000000000000000000000ce675a74f87f83662332b39024ab66f66d3ad8159fb92d1081e73d8747ac44a2fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa0000f99ab80a56afb5cf2d406681086184fa568b2c59b23b9eed0fb97babbdd70dcb987572aba5f9d1eb2bdfd7db4a60daa53ab31e663abe9ea14abc72f369d5dae3d49d00025d7681398c1ac8e5b18d32589a9d3aee941f68217de08b573fb0ef22270657897cfb0e6dff27bde358d9cd33988862a59eafeb150f97e1fb0bd5db1eb09668549dc88efb456b69b806d30443b7484266af42ae24fadce2ada2bf2e00ffffffffffffffffffffffff8ef68f613056e57f9d900c6762970980a4e22ed300000000000000000000000000000000000000000000000000000000000100006558973ea0cf6ef065af511cdd91dcf8ebf51e410d0e710b8482f875357b01e5a82a9a69bb78fc7065db036b90eebef2590e8a9797d50a66dfb4ab86433720e10000000000000000000000000000000000000000000000000000000000002700fffffffffffffffffffffffffffffffffffffffffffffffff90fa4a62c4e00000000000000000000000000000000000000000000000000000000000000010000688ad2bfdd1982f027350b11d5a66e4eb674020afc643610b6411864c705684cbaab39a71efe2422fd2229cf398d057b9b06ccfbe74bc3a4994ba9deed6f93052af9415df05e3b4e4bb3efd2328b1fac61e86adbbb1f32d9fe4d9fa96ef608ab9d48454c637331b80fc8bdfe0b16c68d224ae00eca2bc8b6b5b82eeb5dbb05bdffffffffffffffffffffffff8ef68f613056e57f9d900c6762970980a4e22ed3aaa89e9ec9968c5d9717eac26037a4e7abb9cc9d43af24edb06275ca7126a4c8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff2d0f6000000000000000000000000000000000000000000000000000000000009000056db5811b60eafc5a06420c40941879ca1aae8ba576dbb8f9dd9cbe1e4e187fb14c4c80ff0fa9624d2a9e63be6e238aa088864d7cd2780d36bc6dee000c42d1b000000000000000000000000000000000000000000000000000000000003f48058825231460c027d950a84d667bec6ad5f4731e0cfaef9f9b65d7008ad39ff50fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa0000000000000000000000000000000000000000000000000000000000000029f87ffe759d510e1c1d646f2c46946d2e09cce6ece48d285eecbab28b6da0aaafbe4233335f0868c51a18ff4b577aba2300ff0e1110fe6ebcf65aab5b22a0cd7af45a3243de6773b2ac820589df08ee53500a017476ffbb1bc4ceb09189a3a8688430464e8052902c1bf8131a3b65b1b8579578c0674f6b54e6508ebe3e773f92f62a3923b7d048bd00e06c64c9764f411dd42925c5a3bc087d2acf2dd45670afee5922c58e2ab2a48008017cf695319fc8f68540c785800cac4fb40071265bc6c57dd1da3996638b1d193cb3f0de7290b528e8c2553b44fdb00bd2f7afeb507f780ecfa7e55b67e34060e5a3ab3fc7c2fd6270fb027a69d0e3430e553adf6819c8dbcc8fe9ee062b2c79b12ff5516725f8025598c75085e7022536add4c3462e067f6eb57330f4a2635836735eb4e0053c2a02ad8f30b1ebb63d99a2cd2153db645c350fe8e5c04c29094fa388abef6a8faa96395cb0ff0901d9a9031f7631b22558fb38048fa6c225997c825a3070205c6bcc28d8335499c58531230e56b3a4aec270fc970dd1c77c0c5296114545b189f9c61f42ccea793f3b2f3b6c3b46fd6fb449fc87916235c006bf56db0c5c21f31410623781ece548911499cc23d8ac091676bc100d89c7174c55fa0bd83529b7e4cd0d2fb4476413f61972f0f860f6c403befbb5f69d0e304161de4e70ca3042a1d04835a72006a53c3175c5109baf4182d0da9a3e83b98e43af1ad858e630be26febe27f2c8a4f67eec52f53b0d005a92a11a1dd559351c3b253a1d1a70c23193b67441c058e70e67ac3f8ac4aee50ed009392925b73b400df2177c6a10fe1f591984b99794e9156c3bd0b4a2ed7517c12532c97966b24ef7deb1cf9e6cf37ab8f578cfd25cc9f82f16474fe7e1bde4298cc60088e914f35d7d5a66ef30363aca7be4e251f53e2f64b81e00b44a4f3ed31e5f1f4a517d25b06946975a9d79df88cf56c616ae4c81922660d533aa9317d842f948b3d2a5cab98f377cd1b719e1be52bfb774c70bd5ed589e3a4bff539f55e90e58abc8536ecc396cd34b566e938f0f4864fe1d6ff24fb8e3e3ab1b4c42b42c06700cd46a831b567bbdea115be603b7703579c8280ed0e5d4f20a9e510271e5bb61a194d5b0b205124c05d8991782e8e73158b0fd60717823b82eb7b4dd90cf778f8607913cad2914c4dfe829100903d1830199c1fbf569d6e37e2adb5d073c66fd3991eb8187063de6745dcedadabd41f6a70c7b2bc8e61d100de94b032f6d262a2e7a314c8a07740f33d9c56d018c1e78418ac315f32e91eed3eacbcded8e609c83aef09642cbfb3b717abe19c73fd5e49e008e320b3ee4ccaed6c353284dc811b9981746d05d363d35325d6f5e61340a544bf9b32b7b6cec1644b91e0b92085ff64c8d92b30f5ad1033570b6077b8bc2bb7a44a70045644d7bccb31cd1d59dc43541430d346d2a743381036d2f2e2a7a59e07c0c65de024350786615d3e7aa2c597a5d7e035e9d109e65d7d4badc94bc4bd2e55e3bc724b748e74a0fcacb73a2a9ee52f36347a5ae6072f300d6fd2f62bf08605016a6931767f353ac73babce9625b51569ab81df833bee00d3ff2bbb3badef2878a170d7d7109f33ab0f46bc96f4fc89ca727c7d8bc4282604b5bf3bbf0eea2bab4f7798601d86277e09f88645c1d56a4cae35b59d720e8b57f7e4abc5ea43a53526265c5cc4dedc5b72f127134d3d97a31a652f905f82ee74953598bf2a05f52dd89152ca9400523884d909d0469c6a966a2d841f4f01b74e98660ea5a28534174638ba83bf16343fcc653aaed6743963ad798004516fca1ba790701142e7b44788e2b9a4c6744", + "dataAbiValues": { + "methodSignature": "handleCreateRequests(uint256[],bytes32[])", + "inputValues": [ + [ + "115792089237316195423570985008687907853269984665640564039457584007913129380738", + "0", + "93359056366519978384575301215212766084552195127475241400321367131381031519394", + "115792089237316195423570985008687907853269984665640564039457584007913129246720", + "112899263945265618091091185689767054075036928377626216345331905228274830609867", + "68959065517949274316588826283101587750558165013430347817640346533866916666083", + "96167718952585367175045237006581483249627268288674080939511722496406722768674", + "17651406335742926396690394648438989354403684618877496125906122976087978138398", + "79872808473243763044716704952744950461935635665535412421360192734135943376384", + "115792089237316195423570985008042581378843437462327153970303678099387767205587", + "65536", + "45840124100760761585173752354748948632868900822901326367871013022630665716197", + "76063831858184420518861268628451249077285698597102935859033978034718219116769", + "9984", + "115792089237316195423570985008687907853269984665640564039457084007913129639936", + "65536", + "47285815686966272144121693505188799597744533049049783177959832040536684193868", + "84432718589681428792934245815119003114976466487051385221334973405702499832581", + "19437535705728302099767088929537200823274258212636994203273729259332963797163", + "71140808496164046925239908329887697304458696034799907436633500076327881606589", + "115792089237316195423570985008042581378843437462327153970303678099387767205587", + "77191109322862123514795600886680155988643876662484090273820952307332291142856", + "115792089237316195423570985008687907853269984665640564039457584007913128775926", + "589824", + "39286452316517865283766389032392547299789935223147165990478078739011264940027", + "9393939775408484523215953034946785494006122941999182174070733730995117501723", + "259200", + "40033788065363256588949523368348146912228695325379481069044606228254426791760", + "115792089237316195423570985008687907853269984665640564039457584007913129639930" + ], + [ + "f87ffe759d510e1c1d646f2c46946d2e09cce6ece48d285eecbab28b6da0aaaf", + "be4233335f0868c51a18ff4b577aba2300ff0e1110fe6ebcf65aab5b22a0cd7a", + "f45a3243de6773b2ac820589df08ee53500a017476ffbb1bc4ceb09189a3a868", + "8430464e8052902c1bf8131a3b65b1b8579578c0674f6b54e6508ebe3e773f92", + "f62a3923b7d048bd00e06c64c9764f411dd42925c5a3bc087d2acf2dd45670af", + "ee5922c58e2ab2a48008017cf695319fc8f68540c785800cac4fb40071265bc6", + "c57dd1da3996638b1d193cb3f0de7290b528e8c2553b44fdb00bd2f7afeb507f", + "780ecfa7e55b67e34060e5a3ab3fc7c2fd6270fb027a69d0e3430e553adf6819", + "c8dbcc8fe9ee062b2c79b12ff5516725f8025598c75085e7022536add4c3462e", + "067f6eb57330f4a2635836735eb4e0053c2a02ad8f30b1ebb63d99a2cd2153db", + "645c350fe8e5c04c29094fa388abef6a8faa96395cb0ff0901d9a9031f7631b2", + "2558fb38048fa6c225997c825a3070205c6bcc28d8335499c58531230e56b3a4", + "aec270fc970dd1c77c0c5296114545b189f9c61f42ccea793f3b2f3b6c3b46fd", + "6fb449fc87916235c006bf56db0c5c21f31410623781ece548911499cc23d8ac", + "091676bc100d89c7174c55fa0bd83529b7e4cd0d2fb4476413f61972f0f860f6", + "c403befbb5f69d0e304161de4e70ca3042a1d04835a72006a53c3175c5109baf", + "4182d0da9a3e83b98e43af1ad858e630be26febe27f2c8a4f67eec52f53b0d00", + "5a92a11a1dd559351c3b253a1d1a70c23193b67441c058e70e67ac3f8ac4aee5", + "0ed009392925b73b400df2177c6a10fe1f591984b99794e9156c3bd0b4a2ed75", + "17c12532c97966b24ef7deb1cf9e6cf37ab8f578cfd25cc9f82f16474fe7e1bd", + "e4298cc60088e914f35d7d5a66ef30363aca7be4e251f53e2f64b81e00b44a4f", + "3ed31e5f1f4a517d25b06946975a9d79df88cf56c616ae4c81922660d533aa93", + "17d842f948b3d2a5cab98f377cd1b719e1be52bfb774c70bd5ed589e3a4bff53", + "9f55e90e58abc8536ecc396cd34b566e938f0f4864fe1d6ff24fb8e3e3ab1b4c", + "42b42c06700cd46a831b567bbdea115be603b7703579c8280ed0e5d4f20a9e51", + "0271e5bb61a194d5b0b205124c05d8991782e8e73158b0fd60717823b82eb7b4", + "dd90cf778f8607913cad2914c4dfe829100903d1830199c1fbf569d6e37e2adb", + "5d073c66fd3991eb8187063de6745dcedadabd41f6a70c7b2bc8e61d100de94b", + "032f6d262a2e7a314c8a07740f33d9c56d018c1e78418ac315f32e91eed3eacb", + "cded8e609c83aef09642cbfb3b717abe19c73fd5e49e008e320b3ee4ccaed6c3", + "53284dc811b9981746d05d363d35325d6f5e61340a544bf9b32b7b6cec1644b9", + "1e0b92085ff64c8d92b30f5ad1033570b6077b8bc2bb7a44a70045644d7bccb3", + "1cd1d59dc43541430d346d2a743381036d2f2e2a7a59e07c0c65de0243507866", + "15d3e7aa2c597a5d7e035e9d109e65d7d4badc94bc4bd2e55e3bc724b748e74a", + "0fcacb73a2a9ee52f36347a5ae6072f300d6fd2f62bf08605016a6931767f353", + "ac73babce9625b51569ab81df833bee00d3ff2bbb3badef2878a170d7d7109f3", + "3ab0f46bc96f4fc89ca727c7d8bc4282604b5bf3bbf0eea2bab4f7798601d862", + "77e09f88645c1d56a4cae35b59d720e8b57f7e4abc5ea43a53526265c5cc4ded", + "c5b72f127134d3d97a31a652f905f82ee74953598bf2a05f52dd89152ca94005", + "23884d909d0469c6a966a2d841f4f01b74e98660ea5a28534174638ba83bf163", + "43fcc653aaed6743963ad798004516fca1ba790701142e7b44788e2b9a4c6744" + ] + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 18813, + "blockTimestampDelay": 166386 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000050000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xb6c75efa21e47192f11d3f380576fd394ec9e1b4eb90a89bceb9b651bba78bf6ab564d9dfffffffffffffffffffffffffffffffffffffffffffffffff90fa4a62c4d00002c95da414ee489142bbc6e001fef7a12692a3b9d1210170c80e8d07cec96b7c5", + "dataAbiValues": { + "methodSignature": "handleClaimEscalationReward(uint256,uint256,uint256)", + "inputValues": [ + "15329948992898956970077422041464151575333773433396765238718102692294303305117", + "115792089237316195423570985008687907853269984665640564039457084007913129574400", + "20166531891724206848272694213144022190042376042953875838430089970096862050245" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 7764, + "blockTimestampDelay": 145528 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000090000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x161c7318", + "dataAbiValues": { + "methodSignature": "test_debug()", + "inputValues": [] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 15165, + "blockTimestampDelay": 79666 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000050000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 2, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x94c9ca03", + "dataAbiValues": { + "methodSignature": "handleConfirmCouncil()", + "inputValues": [] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 18, + "blockTimestampDelay": 12967 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000080000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x9d2e6a6fb9725d6fa85600a910792fa1036f0fc5f7aeee3d8a3c5f020c4eee7ab3acd4d2", + "dataAbiValues": { + "methodSignature": "handleRemoveEBORequestCreatorRequestModule(uint256)", + "inputValues": [ + "83879942425981193648324846942207323156479086214801606686020480705403632276690" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 34946, + "blockTimestampDelay": 577539 + }, + { + "call": { + "from": "0x00000000000000000000000000000000000a0000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x3f60f9ccfffffffffffffffffffffffffffffffffffffffffffffffff90fa4a62c4dff000000000000000000000000000000000000000000000000000000000000015180106377bcc6e3833de20fde0dec86034d72977efc56ce65d621eec9aef2e6254e", + "dataAbiValues": { + "methodSignature": "handleRelease(uint256,uint256,uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457084007913129639680", + "86400", + "7412749833975990795345248015108177440376656993723510144021351295583332476238" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 16720, + "blockTimestampDelay": 129266 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000020000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 2, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xdb106ace485fa72019613288a4d464af2e38b993bd6f4e91917334b0d1a52c61978ac8a8d2d39b6fe2ce149b4c141eb36a6107fd82a5e7526b6b0b9060ad19f590c521250000000000000000000000000000000000000000000000000000000000069780341dd0fd9f3ef23b5f0565845080e00f95f62e8508ba20febb8b8b6308593a55", + "dataAbiValues": { + "methodSignature": "handleSlash(uint256,uint256,uint256,uint256)", + "inputValues": [ + "32735529026180125829021357241527250244118779294171178089592553115267256469672", + "95359575720277367758421281161102555105495114724495679053042926100061433962789", + "432000", + "23572949092085613514975120988405477088071192393031085611716095677121225636437" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 40389, + "blockTimestampDelay": 599734 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000040000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x52e3cb9c5d04a79d586d6e202ac0bf3b7e68f4375a1303a65babaf4944016b6481419266", + "dataAbiValues": { + "methodSignature": "handleSetMaxUsersToCheck(uint256)", + "inputValues": [ + "42073319140166927053960887268496944931506674334749535415241953198096253031014" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 53112, + "blockTimestampDelay": 602139 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000080000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 2, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x40605c3faf2cf332d4be6aa3f13f683b2f3927dcfd17bd3f54a714dce4631f08661b5a3e00000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000000000003c000000000000000000000000000000000000000000001b71a14cc5c581000000fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8000008f83e5e1824c2e7448d4275eb1478eab6171c49a682fbaca44925028ba6b634ac3e77046f1673cfe53d1613ee88d823fd8aad7fdbe164cb637dfd93231185710000000000000000000000000000000000000000000000000000000000090000fffffffffffffffffffffffffffffffffffffffffffffffff21f494c589c00009f6eee7e10961fd4bdef3767d64c40c41041a44c6addeb15c424f8d94e48bc0f0000000000000000000000000000000000000000000000000de0b6b3a7640000ca36abf2deffed0c5066b5dff652794584689a6c7e705862ae7f597d1feb13e000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000000000012700f8cec1bca23ec15d783db7ef8f8cd2b323c5e0d231dab89cdd395bab8f65bac2c3edd48e36942610f12c56fdc9357fb10b3a3e19be3a4066f231966c6406cf5effffffffffffffffffffffffffffffffffffffffffffc87d253162700000000093df552fbae09922d5e1344f074adbf47a846017eb175b4402261497333a2055a4d33262e07685ce10e34f6961b25194b96689b2a080e5978b2503a001cff5246a2026be7cf65c6125395dd3bc1eb0c4f1cb378693a5f9b0d7b6653b198dafb7dfd2097d05560b48c451fde495c0ce47901168cca4573e1d273864cea467a8554643a7c00f45a9c007353f2f8ca155cafb190aa7ee8bc474573d7373c863ab3700000000000000000000000000000000000000000000000000000000000000230000000000000000000000000000000000000000000000000000000000000000fffffffffffffffffffffffffffffffffffffffffffffffff90fa4a62c4e0000fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc00007c26e68c22654056c9c7702aad1aa4eb1e874e2c5a7a20dcd3ccc3235bfaca46000000000000000000000000000000000000000000000000000000460000000071ecfe0fc25f5a80cc385509ba80f4ffb79779b42f787513c5d5695172cacf5bd11c1220171fc7f914eff9884727a5769f2b8e2d87e0c22f70fc2eedec98f47971cfcf2f40fd975cf40b591f12bcad2627a1d305e669ab648a6d1d6e9e8ba228db79eb5fdad89f08678f0421eebe41120e329edf9435dd8993b8f86fa6a5e606b92565b5ec953a8bdc7dcfadf6dc773c57ec40957931aff64bf580bd469d73f5fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff900000b23ad6af11c884d96e499df75402570d05d525bf13bffdd005aba9c2f4d4d1e0000000000000012725dd1d243aba0e75fe645cc4873f9e65afe688c928e1f2100000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000030000088ea18fb122584b1efa4d9e532c2d7376b9f0c47ff2eadf136d21989711216eb9716cdd484bb8bbe02ab9174b86bd7b509bd2eeb30877a23d529a1a43c1292a0000000000000000000000000000000000000000000000000000000000000020256038ae865306af96b60f1ff7f5f081cf29f9d852b575755ccb4accb34c440effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00f1e89b7d2ae0d60246f6b9863d6666883f2d35880bb617df8c197ea6a6f3bac319717d397a1e43d1ec8630e471a8adeb41f8ffa88fe8815a4248d755c19e6c2b00000000000000000000000000000000000000000000000000000000000000c47e910dd1a6977f98a111add8eb5444304438c90e3a7966b0e784c222e1e04f360000000000000000000000000000000000000000000000000000000000070000f3657bb93d92c779a7b3185266b8f8f8dab51c3837de27303ce3ed22b7c8232a6a906f04eb8e4039b614701bfea32b7ba4a2f3552a2c30f4c306ab2f2ed00e61fffffffffffffffffffffffffffffffffffffffffffffffff21f494c589c0000f2aeddbdc99b983797d26060078418723a7fc368f920516f8db6a0f8da37726c31373ee7f75e203fd4190399cec9ec1168f34323e93b89896930b25dd042c4ca5227a0cf23b80943a5950a8a918993cbb07a34c40b95fba67d521e49532ec56e00000000000000000000000000000000000000000000000000000000000d2f00fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9649800000000000000000000000000000000000000000000000000000000001fa400ea8aafc25424af88048ec96fd9ff8565e5e76a86744505329081bc2f1c426e797f666785d36b7006166b3640a4320dffa47ca2708b45eeef576d547c61209b9fffffffffffffffffffffffff8ef68f613056e57f9d900c6762970980a4e22ed3000000000000000000000000000000000000000000000000000003824430f69e028f5c28f5c28f5c28f5c28f5c28f5c28f5c28f5c28f5c28f5c28f5c28f5c28f0000000000000000000000000000000000000000000000000429d069189e0000000000000000000000000000000000000000000000000000000000000000004dffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffee000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000800004ba0f6427e3508d8bd04b36abd26f824e48305823859cb7b5564c67168d0017b4085526fc18f9177aff8ce39103da1f9971495b564928a93c75f38b11297ab7bfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc000000000000000000000000000000000000000000000000000000000000000697802f6423a89ba203deca11a1e637c14b3cd81945e8ddefaf89925c08901762555895622042fb9be61a1c172f8bc46ed4e946fc0edec8916bd330f619d53d9159ccffffffffffffffc282c7449873c3e7a76b006cac63d2bf0026054e2b6cd0ed9191f4242dbc893426f41de7e20a15eaa229434100aa190cbfdfa26c71bebabe061b711e33c5a2626a21641421aae78ad10302c3e4b68e0084326ce1a976ecd9d2fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc18fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa0000ffffffffffffffffffffffffffffffffffffffffffffffffffffff7942924169a2701b17adb49021260199c82feb263dae20dfb1f06f6d7b0e281b9bdd61fd2775ce3ef9f0b5c0c01dc8a2a4816283877ed45116d47568bec7b63dd5138de5014c131120b22f2a6188fc709abab26e2493c64a0a47d68524e454a808e9d68a4d0000000000000000000000000000000000000000000000000000000000000012eb70cfbcdc4cd24d362862bb16dd8354de5c369027336f4ddbea81c90fc5ff5e0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008fffe0000000000000000000000000000000000000000000000000000000000000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed8b007d78952ef91d5b6abe516ac64db444e3979fd26dca0df8c7995a2c199d038c3e3551972009bb26ba918f6da4305f8f74758d7998388287d7bc569f242db37bed53737eadc62c4e9c12e0eaeb0d3f291ca3d6a6736abe2fff500d5995b84a6dd600763808282f4724a7f5980b0fde1691a8ec464e20d6161bf3806d15f485866c000000000000000000000000000000000000000000000000000000000001000200000000000000000000000000000000000000000000000000000000000000033fcea3b0db78d1875e79b1354a2407d71f81529bd4b8d9e53648947656a923690000000000000000000000000000000000000000000000000000000000007500ffffffffffffffffffffffffffffffffffffffffffffffffffffffee0000000000000000000000000000000000000000000000000000000000000000000500000000000000000000000000000000000000000000000000000000000000032700502bd6e947dd8d5f04af7e204d2f8fda4599e101b7d8f26a70b66100ed50c83cef29af6267e45562d930be4d012c9990e9f3ec312fd1fb1250d2f24941337e02fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6c58070c1359629497822e1f9451d29df743ae330181bc9e2b10c549974773e8036dca08ff75ee457748096c6c1f4780e2f123afe03bd9044610c1f6bf171c8ea1918a9933ec858ef5823627e1952d0f024adf07d4fb760118799b53f281c64e36fca909fc08433a01c2f761ec47689e0e4afcf53553aa23a009cdf034acc2cc28ce800000000000000000000000000000000000000000000000006f05b59d3a90000000000000000000000000000000000000000000000000000000000000000000024888890ead6a3fa688eea15c1fb851c542c73063e36b474f733e77cc1e3dffe3770af29006695416eb06d59ee21b71f351d172b306175ce5098c4dafc5ceacdffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed8b000000000000000000000000000000000000000000000000000000000000000064332aa14fde53e1900e8b9e18e67ebbe584887125c7c87df20e55e7d2ccc596958ccb77c59cf7412d78e3502ca4ed593c96d7889d3aa7e2f35af20e45fb3f30b0447a0bce98c36c3f1464d030d94e1faa4cf1282192d66dc267208a05c20417fdeb27ec9d62517b40aa048bad057b792ea4b5570140d61938df4e248e9f41d224d826ba696696ef5c2f84a5bfa22440b058ead7b89ee23930cf5834e89ffae31d40baaf432a54fdc1149e61a4c275de983dc6e109fdee048e1db1fceec55312c62876f266ef80348000d46774154ffe91a79395f18511d8e4dbf5524576e1ecef96da03c301964363dd537b3d196514d16428949f3e7677accc3a4cb7b53eabffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffecd3262809b86aae0f6733691180bc3d4d28aa37b824be525776cf70cf5dfa1249fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffffffffffffffffffffffffffffffffffffffffffffffffffffffffb0000fa64731c4bac6932747b966f080ff4b69feea1ff4b5a34c11a499e46984b98adb45ac57345fa90da513dba9ee818309393b78a691fea587e6709af7e00c33ee2c8eaac2a564ea749c4f885df3f46c1b11bde75aa4c71483d327a89c0a107aea5ffffffffffffffffffffffffffffffffffffffffffffffffffffffe450800000a93976c1ea3eab6d00cc0755bddd65e8d9fdc33a21c2244a148af731cccb4ab7fffffffffffffffffffffffffffffffffffffffffffffffff90fa4a62c51f4809b16aa6fd5ddc427ff517fc492793a03d0d1053e9c7d646d348b1f6c819ec8bcffffffffffffffffffffffff8ef68f613056e57f9d900c6762970980a4e22f37f35b3bc1a21297e47c7ffb746b9f0392c95c41bffc375673d43fbb56fb3db54fce3d5d19c16c9ebb75ad9e08868f532e1c3cef92c2c9815209447828bae8fb8dfffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600008000000000000000000000000000000000000000000000000000000000008000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffec0000000000000000000000000000000000000000000000000000000000000003000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000001005069ce6545751092cbc2eff7f8a196368084a8d6575e723789a0a8550ab98fff", + "dataAbiValues": { + "methodSignature": "handleAmendEpoch(uint256,uint256[],uint256[])", + "inputValues": [ + "79234168267686009005088260694588693407234102385107460922602254484253129267774", + [ + "129600000000000000000000", + "115792089237316195423570985008687907853269984665640564039457584007913129115648", + "4057111305782275886571448300120152255027125755784863430760218107684929844788", + "77908175901692034127470361839288991262578550865601348498225359157260673189233", + "589824", + "115792089237316195423570985008687907853269984665640564039456584007913129639936", + "72113742116195548480853306837104241632999023982387119790698814234496216906767", + "1000000000000000000", + "91463791901734848429633524612431015587287462192412548639048745950508510548960", + "524288", + "75520", + "112538894066595722788315856528659501863855106263622911153991922780102220692162", + "88621215232375177742539071784431089817151237292122275030738334703048582418270", + "115792089237316195423570985008687907853269984665640563777313584007913129639936", + "66884583572423189936125899179878352008538100011771012405602043541671303061589", + "74552459651354750430174029843320369767657394133388412894085302753361367397668", + "48001968457810261411432527469825735958997723895879576113893948479301808402359", + "101236868603944277764776604371323779743105874173437918010876456299226217293909", + "31781435923726815159842015427101927434769505588009900572451953949977556003639", + "35", + "0", + "115792089237316195423570985008687907853269984665640564039457084007913129639936", + "115792089237316195423570985008687907853269984665640564039457584007913129377792", + "56155524592461176289193537074028160427039803039682165510113327887820869257798", + "300647710720", + "51530081265637896148265832957451117723923258375630496683253581940896230461275", + "94582982168304262223100306942296660289078495773942778513563741163193733018745", + "51478519167773814506353660548389024638097489026918201160503420063837816857128", + "99271926829207145105184311505618387825667524547266582325691221310367712273926", + "83743952310347544629337739241152284883214803800419070987633781806314039374837", + "115792089237316195423570985008687907853269984665640564039457584007913129181184", + "5038477866947515063779293836246906523661855668185302495208724210093145279774", + "115792089237316195423570985008687907853269984665640564039457", + "393216", + "196608", + "3870510126953272661260638544693110069552065422800236658373254995620968604014", + "83878282060591541165988934124893916466315011269761026377742732144499153250602", + "32", + "16905583918771723668203985488747601465300647358530698843745608175382153675790", + "115792089237316195423570985008687907853269984665640564039457584007913129639680", + "109418378172788479097976565158528463610367949333061091923009466030448721509059", + "11508339200772475836942584238735894096008812481055785241282078323770931440683", + "196", + "57247707120759955627861231083084937748463087404077160699542249942796596170550", + "458752", + "110091327668151569106656212371076950581517323424359657707275495659861304681258", + "48200354153645512092405378017278029286888535380384921634095420105910299659873", + "115792089237316195423570985008687907853269984665640564039456584007913129639936", + "109768671149026244196282058166387480657505063313740248501133168879717647348332", + "22260940331214902517078698554353337789774274525293014376850280696039113671882", + "37159670483240285730959311945893306683001739244975476702270549393749637514606", + "864000", + "115792089237316195423570985008687907853269984665640564039457584007913129206936", + "2073600", + "106086244508125417801857301639214534862807360304915830734311681226400224931449", + "57624664658493943488382046526502123636674525999134370480877318121633255299999", + "115792089237316195423570985008042581378843437462327153970303678099387767205587", + "3858024691358", + "1157920892373161954235709850086879078532699846656405640394575840079131296399", + "300000000000000000" + ], + [ + "115792089237316195423570985008687907853269984665640564039457584007913129639918", + "0", + "524288", + "34207858796358477032982332199103227800680963682113900705888576394651738571131", + "29183581925083423688941024243556918472240950106681870258114121065667818400635", + "115792089237316195423570985008687907853269984665640564039457584007913129377792", + "432000", + "21435634696674590800027916253531217193574632436428147040687748880920643523928", + "67567988112992069131955541420455057704257803104991654918452448815861751437772", + "115792089237316195037597354217633923108033367970014204528557635122444582841745", + "66016723424300789742696363044751745847457905496214292633421867648266750574086", + "12412309078229156196316056744446162391428261427606540221918756082497195137490", + "115792089237316195423570985008687907853269984665640564039457584007913129638936", + "115792089237316195423570985008687907853269984665640564039457584007913129246720", + "115792089237316195423570985008687907853269984665640564039457584007334425936233", + "73472755327267776421973308026127877254448753235279241337722751419352711560487", + "53285008426236454566748051132682028847339819413115705816936981301928320165121", + "34409464797730214306226898492491677276600003951317999613796828717384507755085", + "18", + "106492840041486846078994543683459419558759103786120915856380467923469092650846", + "0", + "589822", + "0", + "115792089237316195423570985008687907853269984665640564039457584007913128430336", + "56752157347279760584061988459896466632251204665298637164382967127040309038142", + "24116738614601626636262316706834351425780113827152737585691601622391363697645", + "37746028149841154082348966465882482073739327117181144174744035728330047778262", + "208874671350783627654011619176166943532470262436182909541616019327963989612", + "65538", + "3", + "28860809708808363631733710670448367504969159117079683355777824792248834401129", + "29952", + "115792089237316195423570985008687907853269984665640564039457584007835820228608", + "327680", + "206592", + "36262485573400882232750948645659881895505511249913352717491315900047208532028", + "108176421999683139320006814703476022389868388800359599546504170566370496577026", + "115792089237316195423570985008687907853269984665640564039457584007913129035136", + "51000410365724471114008171615480931417094146778501429531564914421877702670044", + "72624422193215754516809871724903902483456835817665995577449383577115760924952", + "76701031238723218773417768598239405779816635996681302996616590477272306380746", + "65415307578738459235868647833202766791924105994209683509064890500902214077672", + "499999999999410176", + "0", + "16524496294274308083629695117967514973992333081230357627998700327075389366270", + "25076302454345532317991179453975588392049298002395798453167346953400308525773", + "115792089237316195423570985008687907853269984665640564039457584007913128430336", + "100", + "23143276188878733369855721787300701595409365797703421949038175060940957259413", + "63683295391262500040053660345123134963003649787555382418829139948715282215088", + "30972910534611766052885009708331548806574709113778432448704108758892053534717", + "106364059507797551682376345505614661870178866851126703545554566351126735737380", + "97768002048865966396787282783599486347509804181797120543182022396104440210205", + "29277865479763023002045455033991214767156294025312250057192566611586697073350", + "18302674894727366470512727863237702326500252143132806070327522819073946807535", + "68232125910207413510190944879114302259660552503671705522015289130982393687039", + "115792089237316195423570985008687907853269984665640564039457584007913129639916", + "95505427571445525419893056846665506702282003017637153120937485582407915147849", + "115792089237316195423570985008687907853269984665640564039457584007913129639934", + "115792089237316195423570985008687907853269984665640564039457584007913129312256", + "113255691315972170737655322937944226254953141932784329941672505990365420689581", + "81576691732611813889692146194915255816437478366258821000512042635575890755298", + "90877200171590040849160843100203605841964938473240840015812931459296799469221", + "115792089237316195423570985008687907853269984665640564039457584007794221121536", + "76542401327271872630188488589529724892881472353281299693975843146660569631415", + "115792089237316195423570985008687907853269984665640564039457084007913129899136", + "70148538477787196565799666202731000647153111455354485542162922151222404106428", + "115792089237316195423570985008042581378843437462327153970303678099387767205687", + "110073217712000972854737607884891458488668168943622259050931618568476051748175", + "93284867035883231638201272367118637038182490523078318328091268509490756516749", + "115792089237316195423570985008687907853269984665640564039457584007913128984576", + "57896044618658097711785492504343953926634992332820282019728792003956564852736", + "115792089237316195423570985008687907853269984665640564039457584007913129639916", + "3", + "1", + "256", + "36371971318479799428720879351150229460299372035807030410998706812223634378751" + ] + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 14210, + "blockTimestampDelay": 400573 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000080000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 3, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xefe223c53a081d828024921fb3e3683ee9c830c9ef8fe7170b756ea62bd96e34e3b5815efcd959d04e5e2bb935b8d78af63ef65d615f65b47539442594d9d77842991252", + "dataAbiValues": { + "methodSignature": "handleDisputeResponseOracle(uint256,uint256)", + "inputValues": [ + "26248483663279818942769151459442293438689108851134711186925856570646541467998", + "114366863527386908765268916558662682870996281964872496749692396286780789822034" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 22904, + "blockTimestampDelay": 426359 + }, + { + "call": { + "from": "0x00000000000000000000000000000000000a0000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x94c9ca03", + "dataAbiValues": { + "methodSignature": "handleConfirmCouncil()", + "inputValues": [] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 47590, + "blockTimestampDelay": 385660 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000030000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 4, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x161c7318", + "dataAbiValues": { + "methodSignature": "test_debug()", + "inputValues": [] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 21016, + "blockTimestampDelay": 327698 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000090000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 2, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xa59d317db0e96ec45f70ab1a6b185bc8774865b3d4442a4eae0912cd756a58dd44ddc85600000000000000000000000002dbda51f6437fdf1e44affb97108ea687053adc000000000000000000000000e106fb87761caff2d1021dae243c793900fe4fd3fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeae800000000000000000000000000000000000000000000000000000000000020000fffffffffffffffffffffffffffffffffffffffffffffffff21f494c5892c580", + "dataAbiValues": { + "methodSignature": "handleSetResponseModuleData(uint256,(address,address,uint256,uint256,uint256))", + "inputValues": [ + "80019501203046958414394083451296369194874809996177420511204869599524250568790", + { + "accountingExtension": "0x02DBdA51F6437FDF1e44Affb97108ea687053adC", + "bondSize": "115792089237316195423570985008687907853269984665640564039457584007913129553536", + "bondToken": "0xE106Fb87761CAff2D1021dae243C793900FE4fD3", + "deadline": "131072", + "disputeWindow": "115792089237316195423570985008687907853269984665640564039456584007913129035136" + } + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 58748, + "blockTimestampDelay": 468302 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000090000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 3, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x5356b68100002aaaaaaaaaaaaaaaaaaaaaaa97d3c29032b9263fef9802113b192c401b7b", + "dataAbiValues": { + "methodSignature": "handleAddEBORequestCreatorFinalityModule(uint256)", + "inputValues": [ + "294474510796397388263882916788845269212960402075010055466470535531076475" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 31003, + "blockTimestampDelay": 360622 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000050000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 3, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x8f7901394925ff1fabdf3b9d527631e86f50c69fb786e3cc228f43c5735c956e5508d302", + "dataAbiValues": { + "methodSignature": "handleReleaseUnutilizedResponse(uint256)", + "inputValues": [ + "33085972087152259398148350074173106701657181330427390166930419516768067834626" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 26544, + "blockTimestampDelay": 136959 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000020000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 3, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xf6424e9bffffe00000000000000000000000000000000000000000000000000000000001ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffb800002aee4fcf576c5dea63797d217f235698ebd8cdd524db712f1296991b09598746", + "dataAbiValues": { + "methodSignature": "handleProposeResponse(uint256,uint256,uint256)", + "inputValues": [ + "115791868381433098125529787096500314988455506230153454587087818807137968062465", + "115792089237316195423570985008687907853269984665640564039457584007913124921344", + "19418200069791549251573263598653038858089745834953586683332351663093031995206" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 4532, + "blockTimestampDelay": 17718 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000050000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 4, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x48a41c27e43b2b1d328dee8e830879ac3e2b9df761fc4a14a6ae5ee3b89af83d2aeef730000000000000000000000000000000000000000000000000000000000003f4806b57ef5c3a635d84449b97cd66554b160268e4143a35cef59db2db750a404fc0", + "dataAbiValues": { + "methodSignature": "handlePropose(uint256,uint256,uint256)", + "inputValues": [ + "103231871016062028531064071152861392754600756700206012478131799386887709194032", + "259200", + "48552842496886188745291309869104770288336858018271129304343490604919439773632" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 8721, + "blockTimestampDelay": 360624 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000070000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xf6424e9b00000000000000000000000000000000000000000000000000000000000000120000000000000000000000000000000000000000000000000000000000000001a1d0a78419e659224765d2783070264b6e3cbdeebe5a666256d4c0d90dac2a90", + "dataAbiValues": { + "methodSignature": "handleProposeResponse(uint256,uint256,uint256)", + "inputValues": [ + "18", + "1", + "73191028964460233593113434797713296606570423639561929865580574633996067809936" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 5055, + "blockTimestampDelay": 327680 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000070000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 2, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x3edc7cbd6958e2a8bec647797b1b8d67b5b689a06e4b0ebe48b60c0c3236339998b513c1", + "dataAbiValues": { + "methodSignature": "handleFinalizeRequestFinalityModule(uint256)", + "inputValues": [ + "47649895986979786096688120517291916155931486675728401123136021757509814784961" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 1, + "blockTimestampDelay": 8 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000080000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 4, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x0fb550870000000000000000000000000000000000000000000000000000000000020000", + "dataAbiValues": { + "methodSignature": "handleApproveModule(uint256)", + "inputValues": [ + "131072" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 50125, + "blockTimestampDelay": 572210 + }, + { + "call": { + "from": "0x00000000000000000000000000000000000a0000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 2, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x161c7318", + "dataAbiValues": { + "methodSignature": "test_debug()", + "inputValues": [] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 15166, + "blockTimestampDelay": 501398 + }, + { + "call": { + "from": "0x00000000000000000000000000000000000a0000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 3, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x88b05f29fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff2d100000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000006f05b59d3b20000fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6c580fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff80002fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0a80000000000000000000000000000000000000000000000000000000000005ae80fffffffffffffffffffffffffffffffffffffffffffffffffbd62f96e761fffe", + "dataAbiValues": { + "methodSignature": "handleSetDisputeModuleData(uint256,(address,address,uint256,uint256,uint256,uint256,uint256))", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913128775936", + { + "accountingExtension": "0x0000000000000000000000000000000000020000", + "bondEscalationDeadline": "115792089237316195423570985008687907853269984665640564039457584007913129380480", + "bondSize": "115792089237316195423570985008687907853269984665640564039457584007913129035136", + "bondToken": "0x00000000000000000000000006f05b59d3b20000", + "disputeWindow": "115792089237316195423570985008687907853269984665640564039457284007913129639934", + "maxNumberOfEscalations": "115792089237316195423570985008687907853269984665640564039457584007913129115650", + "tyingBuffer": "372352" + } + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 8721, + "blockTimestampDelay": 164017 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000040000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x52e3cb9c0000000000000000000000000000000000000000000000000000000000026880", + "dataAbiValues": { + "methodSignature": "handleSetMaxUsersToCheck(uint256)", + "inputValues": [ + "157824" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 29918, + "blockTimestampDelay": 360626 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000090000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 4, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x91e32c74fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd00008b2f504a4886d33cd469df19bfc32eba3779a7310ec1722a15121f5054513179", + "dataAbiValues": { + "methodSignature": "handleCreateRequest(uint256,bytes32)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913129443328", + "8b2f504a4886d33cd469df19bfc32eba3779a7310ec1722a15121f5054513179" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 377, + "blockTimestampDelay": 1000 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000070000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 3, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x864e2da90000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000003f480de6deef4c262a02d1f4bda352984d86fd869a14691a94439107158d74c5c1fd7", + "dataAbiValues": { + "methodSignature": "handleArbitrateDispute(uint256,uint256,uint256)", + "inputValues": [ + "2", + "259200", + "100607687929874661888418568661020325420350303704691485588886032412608028221399" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 4369, + "blockTimestampDelay": 453266 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000060000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x864e2da9604929f514cd72e1360f1d390baf51677176a6697e70e82bb9ce3146e15f3aa200000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000", + "dataAbiValues": { + "methodSignature": "handleArbitrateDispute(uint256,uint256,uint256)", + "inputValues": [ + "43551302878700309751465049940172781782590258137281385509759150610741639199394", + "2", + "0" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 0, + "blockTimestampDelay": 0 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000060000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 2, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xc5c17157f4be88a44d136c69ee53db4fd74b38e9bf32139950068f561dbef47ed1bd8973", + "dataAbiValues": { + "methodSignature": "handleAddChain(uint256)", + "inputValues": [ + "110700979063676345534466355249276805376668590527194368940538449802091952966003" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 57589, + "blockTimestampDelay": 423465 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000010000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xdb106acefffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed4858b9e35f1b33c1f713b9d02d61a28d487272d8586e5fbfe7544f0604a9e7c64fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffaf480000000000000000000000000000000000000000000004563918244f400000000", + "dataAbiValues": { + "methodSignature": "handleSlash(uint256,uint256,uint256,uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913129639636", + "60404292533832586578238192527676098722506526996609456400172227640449105296484", + "115792089237316195423570985008687907853269984665640564039457584007913129309312", + "327680000000000000000000" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 51115, + "blockTimestampDelay": 495910 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000040000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 2, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x4741f6dc00000000000000000000000000000000000000000000000000000000000d2f00", + "dataAbiValues": { + "methodSignature": "handleSetFinalityModuleData(uint256)", + "inputValues": [ + "864000" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 48291, + "blockTimestampDelay": 575782 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000030000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 5, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x52e3cb9c6a282d9143762774ef58fb6edafdc2e9c4160dc11640a5c6518a3577ec00aa58", + "dataAbiValues": { + "methodSignature": "handleSetMaxUsersToCheck(uint256)", + "inputValues": [ + "48016150327299774183799517909410866737169299315003449758719295823099925146200" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 60205, + "blockTimestampDelay": 321792 + } +] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803628684000-d5281764-a7b2-4459-a57a-1d3573814c84.json b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803628684000-d5281764-a7b2-4459-a57a-1d3573814c84.json new file mode 100755 index 0000000..3d9e87b --- /dev/null +++ b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803628684000-d5281764-a7b2-4459-a57a-1d3573814c84.json @@ -0,0 +1,1623 @@ +[ + { + "call": { + "from": "0x0000000000000000000000000000000000030000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x13a8b8040000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000034000000000000000000000000000000000000000000000000000000000000000170000000000000000000000000000000000000000000000000000000000d2f000ffffc0000000000000000000000000000000000000000000000000000000000181dc31bc03ad9bc8a966de91dfc8c49b929f6d5fd44a9c22a7f5bb37cebfc106ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed8ee8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b825bc2cfc37067e378b4feef3f3411136744d0b2851c161c601669654cf27afe610000000000000000000000000000000000000000000000000000000000000000578750b27e877a957d33dc50d914b1caf972efffa4bb78b85e66dd813a864ca4039e696f94058cfd274de97421f65916ac135f4d55083d357b9c1f34820c9376000000000000000000000000000000000000000000000000000000000003fffe000000000000000000000000000000000000000000000000000000000000000167e6a528e0202cf23a36eacf513eee303475d3e4c983b2ae2d616b11c440f70a4ac07813439b9213b22d4d86340307a2982de60c241368ad288dfea742b6eb5efffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9686c2d73382b1edfa908bcaeb6b9ac0073f469887a9150c80831642e47e35a614c1bffffffffffffffffffffffffffffffffffffffffffffe48e5eb33a3a7f000000104a13a90c13653470268ea78892361e7e91e706d859aabaaf45ddd18c956640809a37cc7335cdf29b7d988dc8c05e2c1899ad1795364e6fa667088b49487472000000000000000000000000000000000000000000000000000000000000fff6fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b800000000000000000000000000000000000000000000000000329c51ac594cf93000000000000000000000000000000000000000000000000000000000076a700a77a4c48695a0407441e86efc633aee092d2ebd99c87fdfeebcd904fe33e086d000000000000000000000000000000000000000000000000000000000000001d563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd0633ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865d5d6866ffb684491364a0853403f689144f5664f5d50de1b1a30d683ff29f21bf8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b4498bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef328d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad820824094c2949304cd969b5661cff34ece28aab6ca0f3eb707dc756ae848252d66c44a94d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae96291d8c581a922d52cd477658fcc2e2ca1f954f274ed2cd833a98e6d1d4455581f9d9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cbba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c389436d2b9b4dda11f7c2a5c1ca8fb20cba7512c884b100fa143fc24dc6c160eed276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f6617237058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25bcffd3ebd814d0f5e8e8dc7ef0303a14b98e79acfcabb14c9ad4225afd8f18c265f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a219fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c18aad5c04eb3f39ce81189eee664fb350f14bd8ce4dd62972aa7de342f017c7f", + "dataAbiValues": { + "methodSignature": "handleCreateRequests(uint256[],bytes32[])", + "inputValues": [ + [ + "13824000", + "115791647525550000827488589184312722123641027794666345134718053606362806484993", + "58737407075920930096693749632210245280794127876199190949253348332199714210054", + "115792089237316195423570985008687907853269984665640564039457584007913128431336", + "115792089237316195423570985008687907853269984665640564039457584007913129380738", + "41504671482165347584846103287222174319130579613222615088745194098566077546081", + "0", + "39590299132392589184737138068833640165131826767556478003143025413084726840484", + "1636828073493779560152621491074002847609709387720111137750911676859097584502", + "262142", + "1", + "46995738119123743123282428161140493004285235666026628953647859202250191730442", + "33811214160519685654400438720767591502827986970858420988841187408488311483230", + "115792089237316195423570985008687907853269984665640564039457584007913129207916", + "20557653259021005890251421269967042420225955023564768794272035576696478452763", + "115792089237316195423570985008687907853269984665640563909857584007913129639936", + "7367887950809164700104084563884591449786965425123545364576065505479275931200", + "58168524174645209900719041489934173752247098791866719219864340874379345294450", + "65526", + "115792089237316195423570985008687907853269984665640564039457584007913129380736", + "227929974933606291", + "7776000", + "75752327540241786815348607290604056680494387521335977257182003214564422715501" + ], + [ + "563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe", + "27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a", + "9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd06", + "33ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865", + "d5d6866ffb684491364a0853403f689144f5664f5d50de1b1a30d683ff29f21b", + "f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1", + "c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b44", + "98bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01", + "108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef32", + "8d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea", + "94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad8208240", + "94c2949304cd969b5661cff34ece28aab6ca0f3eb707dc756ae848252d66c44a", + "94d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056", + "cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae96291", + "d8c581a922d52cd477658fcc2e2ca1f954f274ed2cd833a98e6d1d4455581f9d", + "9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874", + "ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cb", + "ba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c3", + "89436d2b9b4dda11f7c2a5c1ca8fb20cba7512c884b100fa143fc24dc6c160ee", + "d276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99", + "fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce", + "3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb", + "4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f661723", + "7058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78", + "994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25", + "bcffd3ebd814d0f5e8e8dc7ef0303a14b98e79acfcabb14c9ad4225afd8f18c2", + "65f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a2", + "19fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c", + "18aad5c04eb3f39ce81189eee664fb350f14bd8ce4dd62972aa7de342f017c7f" + ] + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 21265, + "blockTimestampDelay": 360627 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000020000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x161c7318", + "dataAbiValues": { + "methodSignature": "test_debug()", + "inputValues": [] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 15325, + "blockTimestampDelay": 189245 + }, + { + "call": { + "from": "0x00000000000000000000000000000000000a0000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x88b05f294e5c5739570432e46e997185cf2683c287e8339e1ce7ab9502db4f4b4f0c1b77000000000000000000000000000000000000000000000000000000000012750000000000000000000000000000000000000000000000000006f05b59d3b200003c3b20fe3c6474ef6112cec6e2e1e2a66147c502767418c32e65c3bfa035d898948fc45007206ff5c0b2215d0b5c97d5551a84ed653f28e284b8567c463ce3650000000000000000000000000000000000000000000000000000000000069780ffffffffffffffffffffffffffffffffffffffffffffffffffffffec39800000109b1ce09a2caa796f35db2570026fd5d54f3b6f79d72997e7e30411ab7bab5f", + "dataAbiValues": { + "methodSignature": "handleSetDisputeModuleData(uint256,(address,address,uint256,uint256,uint256,uint256,uint256))", + "inputValues": [ + "35443554117267417118592017165536035041230544133048285386578266163756344810359", + { + "accountingExtension": "0x0000000000000000000000000000000000127500", + "bondEscalationDeadline": "432000", + "bondSize": "27243242601887521753615714576112380311306725462768124357416761313244220872856", + "bondToken": "0x00000000000000000000000006f05b59d3b20000", + "disputeWindow": "7511066176535142771400004346711719422194606327049609712661925953610498943839", + "maxNumberOfEscalations": "67196315620416968751812103706326677402054656808860235011842083525495944438629", + "tyingBuffer": "115792089237316195423570985008687907853269984665640564039457584007828194983936" + } + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 24101, + "blockTimestampDelay": 185392 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000010000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xb6c75efa8ba080b8a5e8e7e02b35ca63d619e3bf03ea7ee17a7395426e8c0ae38903a378ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff51e8737b07890aad8af4228017f323f8ee58c58602fe8a95d9a372445358479b", + "dataAbiValues": { + "methodSignature": "handleClaimEscalationReward(uint256,uint256,uint256)", + "inputValues": [ + "63155069885073485423962987089686113899340909970551762747564159406599093592952", + "115792089237316195423570985008687907853269984665640564039457584007913129639935", + "37048046271970045328561159781521571766041874645079829392453863326819299116955" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 7, + "blockTimestampDelay": 32 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000090000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x223b137400003ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe000000000000000000000000000000000000000000000000000000000000004006807205175b22b301c32b6c5e6ee194bd596681cba8c8638952ec1250f3d6450000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000000000000000000000000000000001518000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000027874838a0b68a875ec0ee81d4c8ef1980254e8ae6eaec10d74722bac9ebd5a49a6c310208a5de1500000000000000000000000000000000000000000000000000", + "dataAbiValues": { + "methodSignature": "handleSetRequestModuleData(uint256,(uint256,string,address,uint256))", + "inputValues": [ + "441711766194596082395824375185729628956870974218904739530401550323154942", + { + "accountingExtension": "0x0000000000000000000000000000000000015180", + "chainId": "\ufffdH8\ufffd\ufffd\ufffd\ufffd^\ufffd\ufffd\ufffd\ufffd\ufffd\ufffd\u0019\ufffd%N\ufffd\ufffd\ufffd\ufffd\u0010\ufffdG\"\ufffd\ufffd\ufffdդ\ufffdl1\u0002\b\ufffd\ufffd\u0015", + "epoch": "2940820452134172681045375212785432443100619197912571245547930807664892958277", + "paymentAmount": "0" + } + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 15253, + "blockTimestampDelay": 492034 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000080000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xaa1a5bd900000000000000000000000000000000000000000000000006f05b59d3b2000071f7cd086897aaf2110bd910f953453e7bcc20e82af33eec4c00647f9fb5da5e", + "dataAbiValues": { + "methodSignature": "handleResolveDispute(uint256,uint256)", + "inputValues": [ + "500000000000000000", + "51549178199604899047887187595007193100674999475015380254417935657395983604318" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 53242, + "blockTimestampDelay": 71336 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000070000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x52e3cb9cffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffec", + "dataAbiValues": { + "methodSignature": "handleSetMaxUsersToCheck(uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913129639916" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 45495, + "blockTimestampDelay": 225944 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000090000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xdb106aceffffffffffffffffffffffffffffffffffffffffffffffffffffffec398000001371ca94900c31d8e9be66d7c23f65b05f5d33ff2b30949acfed984f87f269e080baf5544430fe321ebd2409617ef6786f5b994597bc40798f800826b310e4524793f157456609da494af2a02075c03fcf9249185214862d5dd9f0eddb7447ce", + "dataAbiValues": { + "methodSignature": "handleSlash(uint256,uint256,uint256,uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007828194983936", + "8794995999406163856009545368231505849668095829549449500668097316828300339680", + "58226371372378751290891435773627286125304890291737788253576280229276508283986", + "32375604441627796962923040660328673776239995228426910584919203216277625915342" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 49592, + "blockTimestampDelay": 581992 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000080000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x223b1374000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000408986d1481eea494dad550c07436bc6bf24fda1699ae18ac8e867c2bc2cbb811f0000000000000000000000000000000000000000000000000000000000000080000000000000000000000000148bd2b35a0e0ff5f58651fe93524e321532b27500000000000000000000000000000000000000000000000000000000001274fe000000000000000000000000000000000000000000000000000000000000001419d972fb93584a547a564eb672065531206d2c71000000000000000000000000", + "dataAbiValues": { + "methodSignature": "handleSetRequestModuleData(uint256,(uint256,string,address,uint256))", + "inputValues": [ + "0", + { + "accountingExtension": "0x148bd2b35a0e0ff5f58651fe93524E321532b275", + "chainId": "\u0019\ufffdr\ufffd\ufffdXJTzVN\ufffdr\u0006U1 m,q", + "epoch": "62205062171946186530711375116649708949236787489916806320076639634871891493151", + "paymentAmount": "1209598" + } + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 57406, + "blockTimestampDelay": 508192 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000090000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 2, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x3f60f9cc0000000000000000000000000000000000000000000000000000000000000000235c58e45e6b448123df4ec75c527147b56e207c4815f37193cfafc12fe9143343aa8e00e44758769fcba79ddc533615c240383088eacc520788ca11f978270a", + "dataAbiValues": { + "methodSignature": "handleRelease(uint256,uint256,uint256)", + "inputValues": [ + "0", + "15994113140863775377512613840889015859198326455210825118094249343807524508723", + "30606304928112969978587259490316563804100123622315096384733063005977978611466" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 14222, + "blockTimestampDelay": 506677 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000010000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xa59d317d236b70e2ac17ad29db7127993a74e4044f47fe8ce7ed46db3cd8a16c797dd6a800000000000000000000000007743aecbf6a16d4951507d7551e5a420748d15000000000000000000000000000000000000000000000000000000000000003e8a4204edf78d831e0da05471c75e00fd5486a22d4239d68dbd4e843fd299ace8efffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc00000000000000000000000000007109709ecfa91a80626ff398ab49ad330281d12d", + "dataAbiValues": { + "methodSignature": "handleSetResponseModuleData(uint256,(address,address,uint256,uint256,uint256))", + "inputValues": [ + "16020781443007852116740508170121164524726566377185661961033510726941712176808", + { + "accountingExtension": "0x07743AecBF6a16d4951507D7551e5A420748D150", + "bondSize": "74236390634738164828042936817328106253978822253810691447408898961590657404558", + "bondToken": "0x00000000000000000000000000000000000003e8", + "deadline": "115792089237316195423570985008687907853269984665640564039457584007913129377792", + "disputeWindow": "645326474426547203313410069154905908525362434349" + } + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 4534, + "blockTimestampDelay": 153607 + }, + { + "call": { + "from": "0x00000000000000000000000000000000000a0000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x3c26dcf8ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0", + "dataAbiValues": { + "methodSignature": "handleSetEpochManager(uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913129639904" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 23786, + "blockTimestampDelay": 327680 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000030000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 2, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xc5c17157bbc9215b06808392dcec2e0c7851767c42bcbb477c1c8c8d2f6788a5f1c33d9d", + "dataAbiValues": { + "methodSignature": "handleAddChain(uint256)", + "inputValues": [ + "84937869156760602001974346264518001642163336959320593474760511948578749627805" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 1000, + "blockTimestampDelay": 604800 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000070000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x0692ea7effffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0000", + "dataAbiValues": { + "methodSignature": "handleRemoveChain(uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913129574400" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 36805, + "blockTimestampDelay": 229553 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000030000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 3, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xb6c75efa91f1b7da6044090f2bc54454fe4b82551e6e3fe26925710e360197150ba6c5040000000000000000000000000000000000000000000000000000000000069780fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b80", + "dataAbiValues": { + "methodSignature": "handleClaimEscalationReward(uint256,uint256,uint256)", + "inputValues": [ + "66012442094173021184902279859918771353213111919353305006878331952590280377604", + "432000", + "115792089237316195423570985008687907853269984665640564039457584007913129380736" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 26105, + "blockTimestampDelay": 563160 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000060000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xefe223c5ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc1eab46d9a71b9fc6196bc66df97ad0229e4ed4df31cb14738c45729db851061", + "dataAbiValues": { + "methodSignature": "handleDisputeResponseOracle(uint256,uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913129639935", + "87711067258970041198538357174074530315975071051269236784798286206430053994593" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 22062, + "blockTimestampDelay": 533426 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000090000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 3, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x3edc7cbdffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9c", + "dataAbiValues": { + "methodSignature": "handleFinalizeRequestFinalityModule(uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913129639836" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 58571, + "blockTimestampDelay": 448941 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000090000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 4, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x9d2e6a6f9ad1b274a36d6422204cb38284e52c1e394b76dd420c12b133c0f54555fa8725", + "dataAbiValues": { + "methodSignature": "handleRemoveEBORequestCreatorRequestModule(uint256)", + "inputValues": [ + "70026681373776152693382902846792773999381205621007041991972413057813542766373" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 55128, + "blockTimestampDelay": 223499 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000040000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xcd10417aa9b7c8ba23219e921c8c24f084b211b31e9da2b176051da47b11bff8ff5c33212de575b81bb2e58ba5f1b8efa82a2605f4006b905e5e2cc82173eaf76a20add4", + "dataAbiValues": { + "methodSignature": "handleEscalateDispute(uint256,uint256)", + "inputValues": [ + "76765589790945662604547244204216214155946252006571676315847820028747638911777", + "20759498631951024433205069293438925811645138406748362097890303052587796049364" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 17266, + "blockTimestampDelay": 47869 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000040000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xf84d6dfc2e0a2c2d27894539cfe61cf1aa3dce6fa4cc0182d8a4f96446b30c16dcdb4280", + "dataAbiValues": { + "methodSignature": "handleAddEBORequestCreatorRequestModule(uint256)", + "inputValues": [ + "20824364399678545662833682292547392236236046121352715060387808748443780465280" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 8422, + "blockTimestampDelay": 175942 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000070000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 2, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x7aeb6fab0000000000000000000000000000000000000000000000000000000000080000861226f42b4f83fda125862408777203fcf059cc4d6afa3d8b5f14cbd0503cba", + "dataAbiValues": { + "methodSignature": "handleDisputeResponseBondEscalationModule(uint256,uint256)", + "inputValues": [ + "524288", + "60641993806473011143834861665095605796555276187455692014587155889705714728122" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 5058, + "blockTimestampDelay": 564562 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000030000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 4, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x9f6259e500000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000060000", + "dataAbiValues": { + "methodSignature": "handleResolve(uint256,uint256)", + "inputValues": [ + "262144", + "393216" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 54349, + "blockTimestampDelay": 446424 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000070000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 3, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xefe223c5ad8117bd6793da9372ee7a9f184c1f229a994a23f82083eb6803cf5612a5e084994694c28b481c29ef6ab1024c7f7ad48917e7b3644de29036693dfa1f6557a0", + "dataAbiValues": { + "methodSignature": "handleDisputeResponseOracle(uint256,uint256)", + "inputValues": [ + "78478209922765382613928019011452160112457201279089481808494135837808952467588", + "69328571831131295636312210863921518104963878476144420959825437715154096969632" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 356, + "blockTimestampDelay": 94684 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000010000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 2, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xec5bf215ffffffffffffffffffffffff8ef68f613056e57f9d900c6762970980a4e22ed3", + "dataAbiValues": { + "methodSignature": "handleFinalizeRequestResponseModule(uint256)", + "inputValues": [ + "115792089237316195423570985008042581378843437462327153970303678099387767205587" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 26236, + "blockTimestampDelay": 172938 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000040000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 2, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x727899fff514b534b61c375c439f68b334317ec7ad1c81896f2e7f7d9e2bf248e8b86bb80269a17e974e3f307c7b602e63a3a5f54ab7520e1ce48c185b85068b23a50c370000000000000000000000007109709ecfa91a80626ff3989d68f67f5b1dd12d0ce9ae7037dff0632bada0555a4b2a1709ee25a0f6d47ff213ef7dab06f13492", + "dataAbiValues": { + "methodSignature": "handlePledge(uint256,uint256,uint256,uint256)", + "inputValues": [ + "110853235481380273198257434098634459560730545434260276739156884901825263201208", + "1091259233017721395373144204062272118708516766005316865622853242594359839799", + "645326474426547203313410069153905908525362434349", + "5840633478355227696719452384365761985173515625270275222857093897003304301714" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 48302, + "blockTimestampDelay": 98481 + }, + { + "call": { + "from": "0x00000000000000000000000000000000000a0000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 2, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xc82f34f9ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffec00009c3ade46c6a10c03646645dceced151803cfed4a76a69d888d9528938805d33e", + "dataAbiValues": { + "methodSignature": "handleSettleBondEscalation(uint256,uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913128329216", + "70664815604550041696416122873938953675815643014153596578083942850550877770558" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 21405, + "blockTimestampDelay": 224071 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000070000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 4, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xd51b326a4f11ce728964fd5cfe4e67e0a4108fd7bd12e31d80bee3e9fd7503b25943d86bfffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600002fbcb13722d80a133f1e093640349fcea5017c8025ac70c52fefa1f32bef4147", + "dataAbiValues": { + "methodSignature": "handlePledgeForDispute(uint256,uint256,uint256)", + "inputValues": [ + "35764176285829964837988166432096626338604401112435149938249800147871318923371", + "115792089237316195423570985008687907853269984665640564039457584007913128984576", + "21592094227161796483602757534726537598958165417486369280358722180410608927047" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 30001, + "blockTimestampDelay": 418139 + }, + { + "call": { + "from": "0x00000000000000000000000000000000000a0000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 3, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x51b295e300000000000000000000000000000000000000000000000000000000000003a8", + "dataAbiValues": { + "methodSignature": "handleFinalize(uint256)", + "inputValues": [ + "936" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 23854, + "blockTimestampDelay": 283267 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000020000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x6b125a57fffffffffffffffffffe3bda3d84c15b95fe7640319d8a5c26029388bb4c0000", + "dataAbiValues": { + "methodSignature": "handleRemoveEBORequestCreatorFinalityModule(uint256)", + "inputValues": [ + "115792089237316195423570815840224595780479919275071395757947099535303139655680" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 132, + "blockTimestampDelay": 172800 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000050000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x6b125a57439c4dea175c1f4dc2283a0dca8df089ec1e32de1a71e6049937ba0ef888023b", + "dataAbiValues": { + "methodSignature": "handleRemoveEBORequestCreatorFinalityModule(uint256)", + "inputValues": [ + "30581126742740578579461185375868096517298438186402910784813700598662223626811" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 27956, + "blockTimestampDelay": 447027 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000070000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 5, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x64d6e6d3179a67678bb838478c44926fbd26493474eb791516d81ee5baa3765643a7f0f13935c24452e2a5faa498fca2a6c4ae1b3a3c6a9976af2868354336a0b5eae4a3df8b40fb6fcf686f1659e51d90d962d5cbfd1a55d1a1db345acbb7978cd9bd61", + "dataAbiValues": { + "methodSignature": "handlePledgeAgainstDispute(uint256,uint256,uint256)", + "inputValues": [ + "10676003636853416453138572180884583936897901964655062312574559468487432466673", + "25876816044475934884764655838030328364254713960717807302331158298975447737507", + "101111805466560395134870514718984948651558312084779106319072364710585748274529" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 9230, + "blockTimestampDelay": 259200 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000040000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 3, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x4741f6dc97ea50d8c074d187de7cfc88d0f1c34dc24db2642bef23ec1b88370e17145d67", + "dataAbiValues": { + "methodSignature": "handleSetFinalityModuleData(uint256)", + "inputValues": [ + "68713240332555606262576304945776648453307986915064085044793172925635856981351" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 12052, + "blockTimestampDelay": 19785 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000090000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 5, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x9d2e6a6f0000000000000000000000000000000000000000000006f05b59d3b200000000", + "dataAbiValues": { + "methodSignature": "handleRemoveEBORequestCreatorRequestModule(uint256)", + "inputValues": [ + "32768000000000000000000" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 0, + "blockTimestampDelay": 3 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000070000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 6, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xcd10417aa92d06f9b187c43210def504095e8426544f54827af0094e5c47e1262e065b663a93985339d1aaaa5528eca3343f64826af8471fa3111ff7b1a1d067661f7a4c", + "dataAbiValues": { + "methodSignature": "handleEscalateDispute(uint256,uint256)", + "inputValues": [ + "76520427670687974472084713126552624256348516399009121051566372436541744503654", + "26494923045561211048191064476495620839647940608616973048585101859895222696524" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 6938, + "blockTimestampDelay": 197916 + }, + { + "call": { + "from": "0x00000000000000000000000000000000000a0000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 4, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x91e32c745efa4f15675e1dc5e0820d8b61e4e1c3b2c7738498336617ce8c1e04c4745f79e0fd906e76d9087d90474287d3aa87bd7537e316bdda4a8d939805778b853ddd", + "dataAbiValues": { + "methodSignature": "handleCreateRequest(uint256,bytes32)", + "inputValues": [ + "42959665348027796296446623032871991309114884315911569472746230850572248178553", + "e0fd906e76d9087d90474287d3aa87bd7537e316bdda4a8d939805778b853ddd" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 100, + "blockTimestampDelay": 423478 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000080000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 2, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x88b05f2900000000000000000000000000000000000000000000000000000000000151800000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000012000000005bb97848736b7142c96367d03991dd42df02a25e9fc88dfdc517b1f4ce28bc31fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff83cfafea801b1496906d8ba69b3619acad07c602f5f5644c5546c0a5a1625c9e61db764de175bf41c23313c816c5b2dbc6935d8c395c4856ce1ad7fe38ed0f6", + "dataAbiValues": { + "methodSignature": "handleSetDisputeModuleData(uint256,(address,address,uint256,uint256,uint256,uint256,uint256))", + "inputValues": [ + "86400", + { + "accountingExtension": "0x0000000000000000000000000000000000010000", + "bondEscalationDeadline": "115792089237316195423570985008687907853269984665640564039457584007913129639935", + "bondSize": "77309411328", + "bondToken": "0x0000000000000000000000000000000000000001", + "disputeWindow": "104084459477994910024948624640243341651381141291966115158980558504594338926838", + "maxNumberOfEscalations": "41488166090894130137464127351763299761175392285857027714786127187107321003057", + "tyingBuffer": "112281329574643079738863202584985426034020956563149812400628300592423397369289" + } + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 184, + "blockTimestampDelay": 524578 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000020000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 2, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xa59d317d97e31ce94964032123e4969a0749e9aa014916f3250bf8d2d11218c2b83b7bc6000000000000000000000000dd92df5080374ff85078e1a74b8880cd00776ed60000000000000000000000000000000000000000000000000000000000000000b8a36831dc71f854fbe7d1b7ce3a553891cac7605d6efcc4d3c8b0472fa3db1dfffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6c5800000000000000000000000007109709ecfa91a80626ff3989d68f67f5b10a22d", + "dataAbiValues": { + "methodSignature": "handleSetResponseModuleData(uint256,(address,address,uint256,uint256,uint256))", + "inputValues": [ + "68700513958072141403648763787816715343496857287170728137452284071883052907462", + { + "accountingExtension": "0xdd92Df5080374fF85078e1A74B8880cd00776eD6", + "bondSize": "83514279336752933740344099228515725376396365006849213236518003647240640650013", + "bondToken": "0x0000000000000000000000000000000000000000", + "deadline": "115792089237316195423570985008687907853269984665640564039457584007913129035136", + "disputeWindow": "645326474426547203313410069153905908525361570349" + } + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 25919, + "blockTimestampDelay": 101425 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000060000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x40605c3f0200410cca20c8fe9f5721a3f210c230ddaa45fafcbeb1bfbbf8b5311c7ce95300000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000000000000000000000000004c7e5be381d4e135d9869c372ae5fdc127d572047db177eb937dab489b485956e200000000000000000000000000000000000000000000000000000000000003e59142690e4395ff8f7d36a51db819f9b2b627dd44624cc27af7881ae5d85dcdf200000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000000003311cf3105300073b4d65bc6c7ad79013e5ef42b3eb910126db263e9ccd31784a0000000000000000000000000000000000000000000000000000000000640000f6108ad6f1a58aee925973e0ace713bf95f2451f67e85bd48bcfbe31548e84b91c3de217cef27beae2f3d56daa00263ccdcf504d93eb4333cfc73c4509f5099f0000000000000000000000000000000000000000000000000429d069189e0000fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa0000aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaab1fffffffffffffffffffffffffffffffffffffffffffffffff90fa4a62c4e000100001c71c71c71c71c71c71c71c71c71c71c71c71c71c71c71c71c71c71c71c60000000000000000000000000000000000000000000000000000000000000000ffffffffffffffffffffffff8ef68f613056e57f9d900c6762970980a4e22ed36ce748c92fc6e8c7054eecab7ad246cb86145f4440496f6f14134d2aec40099345a0e41980dc4640d7d762ba666217e6d2335cc66cf9205e468798481258f2fe0000000000000000000000000000000000000000000000000000000000000020fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff2d100b4b43a80fecf041e66f27f63cd64cbeb745676ec606bab5bfbf3899cc19b73c381813101545d8fc28f8764c2ffa5e632ab2d55bad52d1355e873c7e7f0b09fbbb7144cb70eeda3d3734f9e6acc52eaaa4e71fa3aa5a9611a184c15f34667d8a20000000000000000000000000000000000000000000000000000000000000000380d9c3a02dbca81296453043d62e319d481e43707aaaada96af9359029428aad358e508346e35e1319cd1b4204bc2ae280a60efa60b5803373ae7fa2a728501a3dab0be6f911f13d935d9984ba3bdd1d59d56f0130475ed4366bbcc0ccb60ad00000000000000000000000000000000000000000000000000000000000003e8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b800000000000000000000000000000000000000000000000000000000000070000000000000000000000000000000000000000000000000000000000000000000309dff374c6182bc7cc7594dec4619e9906308720653134fe85cde855a6d6bdfaa9d82c04697a26a2f2fc89c44372efb5e17daff2e86a43e551c704094abe3499ffffffffffffffffffffffffffffffffffffffffffffffffffffffffdbf37c00ffffffffffffffffffffffffffffffffffffffffffffe2db4d2053ae00000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffec7800008c71842425c9851ef1fa1dac96fc89fac5b0a10086cfc789214bb9becf0570f74512d139774ad42286d555483a293074206770b602fb92c3af103dd07c60628b00000000000000000000000000000000000000000000000000000000000200020000000000000000000000000000000000000000000000000000000000093a80a10582f7dddd6ab3bb4bdd86be89aea4e2e7aba5ae91d125479d7a686d2c8b940000000000000000000000000000000000000000000000000000000000040000ec19fbf56c5e92f947dbc238c0da09f2fe83c31af46488e2a8cf6bf2976d77b370488e73d98a690a6a8abad72db885b7dae08dfdcca872b439b328b25759bf35000000000000000000000000000000000000000000000000000000000007ff9c000000000000000000000000000000000000000000000000000000a1b01d4b1ce614afd329253d5e4eec4dd3821b5fc692422bae9e1789c1b87ebedec11e9cda2e7d495c6ffa192ca0bb444aeccb50689c3623de6949f46854405bc966bcb6770000000000000000000000000000000000000000000000000000000000070000a4e0e70cede2c12be8a82c7bb0002b8eb6149b9c3ef7c6119916d7e857296399d854b911d10aec4be4765a7c0a482f821a05ebb500ef1254db1c40fd93b9fea61dba1c25c787be027fd2e3494b36e6d331be0f0aaa8cf3d6cd2ae8fd250dd7abcfa5e5962ef475853cfa87bc09f9191e602d950155da341dde817e11b764cc2095f022d0d7e91d3c9a4064a7f8205c5f4e170e666597e049b427dc16d073077500000000000000000000000000000000000000000000000000000000000000030000000000000000000000007109709ecfa91a80626ff3989d68f67f5b1dd12d872a7123006ff99b455a4921c98befc60fe0c67031de33c9f1c2145bb2613bbc2ea807ae15d2b865a7db6f945121113ed550d280408d1e329be213f1ed765870ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed8b00ffffffffffffffffffffffff8ef68f613056e57f9d900c6762970980a4e22ed3a6a2b6b51da8bc33f4de9b5693dd734fa7cbb006ea5213e8e3e8e55e28ec0b65fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff48b00ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00c794466b32dfa891ce64514d00c97ab1123e8400ee548d3f8334b220605190e200000000000000000000000000000000000000000000000000038d7ea4c6800048d3c657cd06a6172cb3c55c578d3a11d4476ac4cec723e3d4d655d02555f4f0265fa64c5d2062e6f10eb554c57cbe56bc6acbd8c12adca1149b04659538139d60fa47b00c655cdb0746da2c7c1cd853fb0af50da03b21b860d3926c7d2076fb896ec62efa3e29fb347e9b04144313f08bf6c48d1cceb29e16e564267c2fc0b4fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6ffffffffffffffffffffffff8ef68f613056e57f9d900c6762970980a4e22ed30000000000000000000000000000000000000000000000000000000000000000d5529cc29e90ca039d4efb38d951f7a223e64e786259b7d5ae0ba6abc28fcec000000000000000000000000000000000000000000000000000000000000003e8e36144b154dde00cc04c22ccc9f4e1c90f42f827d07dc6d0e8abc802539e6f73b626a2dfff01ab7170b9b9fb0dfedee8182d02c7f2b715ee32d21387ac488e97000000000000000000000000000000000000000000000000000000000000001d5288eea52b1384bbd194e84bdced3db4535acc1e4425f62d9f086423c1a080a2ffacaabbee7f158c60ecd0beb300d4ad2b3d6ef1ae7b077b7388a60235ad01d3b93a28878293b15b658497cc6c6d0ea6ecf9ee07217f0c9aa5f8b0892a9eb0b46bc461e6566d1e29af3ce8205223547d7d1591d6c983d4e71f516a689f2dd4d52b3128f618d8c77ac9b410c634ccba8b771ee6fcb33e1262ce574faadc0739ffcfb0305d23a092552aa1f8162b86e86028572ff2e1a5e606fb2fdc27f770a96dfffffffffffffffffffffffffffffffffffffffffffffffffffffffffff900004af955b5eabc23b72fb36631df6b6a6b8056fd0f84ee1a44f070cad12e02f57751e6631f7d05772a00431eb187afcece2b1d414a5fb6e13fb716ad60eaa96d2c0000000000000000000000000000000000000000000000000000000000030000fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff800009f03c25c5931ada832c74234efe3a7e5db174aff54c60d89d95b5eb7a1f125724fbc80f84c596e0da4001e1358a01b014a23caaa3a4c93e5f88620a6dd815bb50000000000000000000000000000000000000000000000000000000000030000000000000000000000000000000000000000000000000000000000000000fffe0000000000000000000000007109709ecfa91a80626ff3989d68f67f5b1dd12d0000000000000000000000000000000000000000000000000000000000050000ab50615387eec32faea1a92ebacb034b669d9b64caaa08f4e8b895e8923ff48c00000000000000000000000000000000000000000000000000000000000d2f008d4df9f3e5302865d5a2c3e35190e52cb892cd96d49288d7a5b569c9d4f28b94da805defbad575e35f256337a84606c33c2f2b33f0e78eeaef1efe5e3bcd3884662363efd8563acc5f21df0b8c49b32b3a8349a85ebd52d151c66429e2ba6fe20000000000000000000000000000000000000000000000000000000000020000500fcf757a48689b990676816e3bc221ef2b31ed3d4db7c7f6931cd01a29659f7ecd983caca3e954df272d682fb68a8b1ff7e5ee2516051735f3de364bc6bb3b3f55739d9e53abe1dbc67448fcaeadc645a202234d964e460efc32ffc3b94576ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0ba30927ed70a0112a623136ef66fb5bc60df1fc7b4e412700bae551a900a1a5ccf73baa7a51456e5e773ff32608a06d3f9adaf6d074d5a76dd8e887a28722023", + "dataAbiValues": { + "methodSignature": "handleAmendEpoch(uint256,uint256[],uint256[])", + "inputValues": [ + "905074655485004108607337249943135160874717547047819677943667362413800122707", + [ + "57153772201059091427674702095160085020575969444899274695515814120981387630306", + "997", + "65702700018772295285641744305422253124998005341393525800568053425846215364082", + "393216", + "3", + "22214478862856196402235137118502809823820432438836253392278385596944989911114", + "6553600", + "111298188540392792167251238172853782003803079965936529581948532548817759667385", + "12774097867830172567665155031478904706813822746602401712704343890851429419423", + "300000000000000000", + "115792089237316195423570985008687907853269984665640564039457584007913129246720", + "77194726158210796949047323339125271902179989777093709359638389338608753093297", + "115792089237316195423570985008687907853269984665640564039457084007913129639937", + "196316340530931592175921944526990946203053766319513217569067355699179974", + "0", + "115792089237316195423570985008042581378843437462327153970303678099387767205587", + "49258431668674329985233305063018037235645410780116477310508292538408990935443", + "31493856368346246194720234575958573204098127017253979057082649670744714834686", + "32", + "115792089237316195423570985008687907853269984665640564039457584007913128775936", + "81734748995643829897749293629050790648292396040940111871005096764596803040195", + "58576618960013436577985191491624867541201923372516262339792817517247239069627", + "82809117699998044416903094946931632162775816286453799866195757321946017552546", + "0", + "25353566768913084137975124568004511822114351841878927897817779161144602405034", + "95595074313884271267459208754562795167546826447980276332141791768385412039937", + "74113386820690374841632175234754098493152877767692964222255803744873003835565", + "1000", + "115792089237316195423570985008687907853269984665640564039457584007913129380736", + "458752", + "3", + "4466502805272837827542281810375039010959250724098765293399392848083032653306", + "76822814172351236704381957085694141751880008096938687989110002656304911234201", + "115792089237316195423570985008687907853269984665640564039457584007912524839936", + "115792089237316195423570985008687907853269984665640563901831984007913129639936", + "115792089237316195423570985008687907853269984665640564039457584007912801959936", + "63524364525032563486099473209578151861273580307383532114660109137943770525943", + "31242833813677776401571601700389063228100765957093565970677171678370104107659", + "131074", + "604800", + "72832106766726792058423032174356857004028480144157507654636072930991491812244", + "262144", + "106791742397202938182777462122874042302016213385485331829509551220079480108979", + "50787235201274696145106251269836276692246095160314164782915832401458227691317", + "524188", + "694444444444", + "104068505613939395620673537148501655846091818995213599622855705840613209316570", + "21027753237518509859013298513333261540195089137345481702615930526600716400247", + "458752", + "74576675562143808956693745165501454248914564230543746207844979903835350328217", + "97849267750834936202069277582968220853718105898992477735441665874625100906150", + "13445900430392228723257928073146961807097387790884559974765581692820184225707", + "93921873971274920962213762017475619213210183931518380568421618927139721366560", + "67818898024236242084042521021667633473967346330859660123835332080677218879349", + "3", + "645326474426547203313410069153905908525362434349", + "61137222976443039109911608729104452804191070247950560134441070334422814899132", + "21103274347266413479703070695065142448029868551910200139833503007741245282416", + "115792089237316195423570985008687907853269984665640564039457584007913128430336", + "115792089237316195423570985008042581378843437462327153970303678099387767205587", + "75371423090025251448523763095978950134991139729190694438513593473478234475365", + "115792089237316195423570985008687907853269984665640564039457584007913128889088", + "115792089237316195423570985008687907853269984665640564039457584007913129639680", + "90272236245973403234983831901481661623806340525386389709016894470763693838562", + "1000000000000000", + "32940698741547198576231977008498678030316414160745073629678995680899735352560", + "17356886465974949297740906028401751349449125040675107917178624515727185941405", + "43864240000434850618035279849298712645569081110998933520835965174566659061499", + "62162581245320974403036203567003251911058458786240641759078759572784452452532", + "115792089237316195423570985008687907853269984665640564039457584007913129639926", + "115792089237316195423570985008042581378843437462327153970303678099387767205587", + "0", + "96488600126906225865587874648621364254506924508256347287845454729728719048384", + "1000", + "102846874893284621945828007270689593150392822824032189361788766148864593784691", + "82389202752447669384498899468905313790058128858245263457757434057410801602199" + ], + [ + "37331591853195898332646914233173156955501937159015030398665417168470977577122", + "115644852447380397106580820209472115954010305551228447193779313880069065998803", + "83780633840859455039201963591578546882784623668416050544233602266931409105076", + "48744452502391184566360786457904555535403359862785255399679643279797858981077", + "19536310699872020071375096717549843195520823039636054431981813458089300933119", + "93940058534988809565601868948434030179172844667554385226371768320462873995629", + "115792089237316195423570985008687907853269984665640564039457584007913129181184", + "33911687267201826747227228408667605311127959699127589037438593522296594560375", + "37044399681956569630066473435830066290752459357848831750171393433806970645804", + "196608", + "115792089237316195423570985008687907853269984665640564039457584007913129115648", + "71924384894433292096989519172037299445580544500513898576006906343017514345842", + "36065772403896067072996942935610603333651879905849624192774582834877652097973", + "196608", + "65534", + "645326474426547203313410069153905908525362434349", + "327680", + "77487516594307415765035774972120118522131374758824921318574400461875517060236", + "864000", + "63913883984472213085539992323673314504226457836791357038462740680155449166740", + "98831005740957109638021708781159126811871769049869769667432650266880395524228", + "46198439941858928614091063460399623917777648473584188038534412802191458463714", + "131072", + "36212962421318419301993835762131349070021499536150148004768772560220653708703", + "57354673270993789344352727846460728222299326903621920205323618921321677110075", + "28646689411467215300358786927112113082682434223951368508192384407000789370230", + "115792089237316195423570985008687907853269984665640564039457584007913129639904", + "84216009570163080362684513090370046181896401684199635219638541266786313706076", + "93833235313702148338103348269210324456108000960628966079234547430264346386467" + ] + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 20470, + "blockTimestampDelay": 408021 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000090000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 6, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x0fb55087fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6c580", + "dataAbiValues": { + "methodSignature": "handleApproveModule(uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913129035136" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 8529, + "blockTimestampDelay": 184502 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000030000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 5, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x223b137400000000000000000000000000000000000000000000000000000000000151800000000000000000000000000000000000000000000000000000000000000040ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffec00000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000000000001813512a62e6c213f6d51f779f18e2c86e0d00fe76b8307ab550d59bb26dd317a0000000000000000000000000000000000000000000000000000000000000027416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c656400000000000000000000000000000000000000000000000000", + "dataAbiValues": { + "methodSignature": "handleSetRequestModuleData(uint256,(uint256,string,address,uint256))", + "inputValues": [ + "86400", + { + "accountingExtension": "0x0000000000000000000000000000000000000001", + "chainId": "Address: low-level delegate call failed", + "epoch": "115792089237316195423570985008687907853269984665640564039457584007913129639916", + "paymentAmount": "58442129073348854913675807273523946543963145606711603520462692937339565322618" + } + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 15158, + "blockTimestampDelay": 295089 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000050000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xec5bf215449ba16be31dc1d7de22fb93baba8df1958226e92a715719a8538005fae2aa18", + "dataAbiValues": { + "methodSignature": "handleFinalizeRequestResponseModule(uint256)", + "inputValues": [ + "31032249088497022257228939088440837287694462762632281658808369736101373585944" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 20983, + "blockTimestampDelay": 360615 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000090000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 7, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x223b13740000000000000000000000000000000000000000000000000000000000008f8000000000000000000000000000000000000000000000000000000000000000404d995b471c561b6a40db52ed1b0514237c79ca6e737325db49d7a7562fad4da00000000000000000000000000000000000000000000000000000000000000080000000000000000000000000213dc43012f326a0b2168c94fe01cabfdb0135490000000000000000000000000000000000000000000000000000000000055f00000000000000000000000000000000000000000000000000000000000000005bd25121e6f17a79669a63f3ee85a9e50f9718b00dc9ba49127d4896b0958069313f71ea11b70ef3e5c4e3d9124d325233b79b1ea36acb3e29610450877a8edf6525d7e8b05efb2c65283bf8333ffffa1213857d2b92e272a29e0fcb0000000000", + "dataAbiValues": { + "methodSignature": "handleSetRequestModuleData(uint256,(uint256,string,address,uint256))", + "inputValues": [ + "36736", + { + "accountingExtension": "0x213Dc43012F326A0B2168c94FE01cabFDB013549", + "chainId": "\ufffdQ!\ufffd\ufffdzyf\ufffdc\ufffd\ufffd\u000f\ufffd\u0018\ufffd\rɺI\u0012}H\ufffd\ufffd\ufffd\ufffdi1?q\ufffd\u0011\ufffd\u000e\ufffd\ufffd\ufffd\ufffd\ufffd\u0012M2R3\ufffd\ufffd\u001e\ufffdj\ufffd\u003e)a\u0004P\ufffdz\ufffd\ufffde%\ufffd\ufffd\ufffd^\ufffd,e(;\ufffd3?\ufffd\ufffd\u0012\u0013\ufffd}+\ufffd\ufffdr\ufffd\ufffd\u000f\ufffd", + "epoch": "35099046917880542585164555430508038868065917922440903797197539250676616220064", + "paymentAmount": "352000" + } + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 56280, + "blockTimestampDelay": 458752 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000080000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 3, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xefe223c5fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe00000000000000000000000000000000000000000000000000000000000000000000", + "dataAbiValues": { + "methodSignature": "handleDisputeResponseOracle(uint256,uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913129508864", + "0" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 14098, + "blockTimestampDelay": 569046 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000040000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 4, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x3f60f9ccc48e72a465398a458fa410f65630310cd37dc76294bc92537e2601e96c60ebd10000000000000000000000000000000000000000000000000000000000000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0000", + "dataAbiValues": { + "methodSignature": "handleRelease(uint256,uint256,uint256)", + "inputValues": [ + "88905001836693742325507352277997560608298154628648216827782397487703371344849", + "0", + "115792089237316195423570985008687907853269984665640564039457584007913129574400" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 0, + "blockTimestampDelay": 0 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000030000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 6, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x223b1374fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6c57f000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000003c80000000000000000000000000000000000000000000000000000000000000080000000000000000000000000da53940b00458626f6289ddf0adfdfa413fab300fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa00000000000000000000000000000000000000000000000000000000000000000031213c9412f9e5d2844620a737afabe7451705dc25ae97046b27367c0d73121c377e07f41a8682748c3637fadc5e985348d4000000000000000000000000000000", + "dataAbiValues": { + "methodSignature": "handleSetRequestModuleData(uint256,(uint256,string,address,uint256))", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913129035135", + { + "accountingExtension": "0xdA53940b00458626F6289Ddf0aDfDfA413fAB300", + "chainId": "!\u003c\ufffd\u0012\ufffd\ufffd҄F \ufffd7\ufffd\ufffd\ufffdE\u0017\u0005\ufffd%\ufffd\ufffd\u0004k'6|\rs\u0012\u001c7~\u0007\ufffd\u001a\ufffd\ufffdt\ufffd67\ufffd\ufffd^\ufffdSH\ufffd", + "epoch": "968", + "paymentAmount": "115792089237316195423570985008687907853269984665640564039457584007913129246720" + } + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 0, + "blockTimestampDelay": 282868 + }, + { + "call": { + "from": "0x00000000000000000000000000000000000a0000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 5, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x48a41c27120e574151e78e43d42b5f1d2755a6c8c1f3465ced2014824c5e3c7e4eeba9444fc74ee0c24ebdba3e62450bb6d404762453c8f86c21f2373a1ba170f3ecf81dac04840e25f58b0a6d622417c093c48e05fa9efa5bddc843219fe247671e0087", + "dataAbiValues": { + "methodSignature": "handlePropose(uint256,uint256,uint256)", + "inputValues": [ + "8166969346359948639484006387253416172301236988256769726962054929875661990212", + "36084861999675023071727212187156050330492265038665057332289628950360509708317", + "77805788756535527407772768649618221004754717959448356492205955344147878379655" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 32, + "blockTimestampDelay": 524288 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000060000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 2, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x727899ff8e109937a0c12587ee4666cf7eb8f9a914f1385f133128a7bbf4f5eff743301500000000000000000000000000000000000000000000000000000000000546005172646d987a680e04dd6a045e2c8e98a680e2b9c41a2d98c3072682e7a7efc25e43b123c01ac311bee46cc3bfa5a0be50d6b4473163049ec4c37d3a1caf1b11", + "dataAbiValues": { + "methodSignature": "handlePledge(uint256,uint256,uint256,uint256)", + "inputValues": [ + "64257751518777829519648785807987822488615391450098951710757499941744441241621", + "345600", + "36839454429956002479784537352517879993063816426425600860733833535606361681858", + "42637009093099676781532913644885930180275839542941773954417676940607658859281" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 18765, + "blockTimestampDelay": 352717 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000070000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 7, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x3c26dcf8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff70000", + "dataAbiValues": { + "methodSignature": "handleSetEpochManager(uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913129050112" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 25275, + "blockTimestampDelay": 604799 + }, + { + "call": { + "from": "0x00000000000000000000000000000000000a0000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 6, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xec5bf21572dba7dbe09c3bbe6a88d23c3bd9acfe205d1d60aefecc0db6a8499e751e9815", + "dataAbiValues": { + "methodSignature": "handleFinalizeRequestResponseModule(uint256)", + "inputValues": [ + "51951762765201292588978808218288335040492006071994363203642941846922903590933" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 42594, + "blockTimestampDelay": 143245 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000030000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 7, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xd1a55655388924a9c0b4fab8a3a6823ac564a32fb78cfbcc473b96e55fbeebc0eb71d773", + "dataAbiValues": { + "methodSignature": "handleRevokeModule(uint256)", + "inputValues": [ + "25571830607931438209766452591287454872650721757204844895931688485804152313715" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 53210, + "blockTimestampDelay": 360623 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000040000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 5, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x1c6850cfa7e5b450595c21a14259f758b64ec4381302d527c203a49e4b9c1e83094266dd6b48dae36a7e33922c16e094ce88a626bf6eaa1d596dd330476320c9b67cb28dfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0000", + "dataAbiValues": { + "methodSignature": "handleUpdateDisputeStatus(uint256,uint256,uint256)", + "inputValues": [ + "75942098171788587147868381348791675977767975212740010787554276083613701400285", + "48526198498900060195577435149830061143198857828146295147538220227829339828877", + "115792089237316195423570985008687907853269984665640564039457584007913129377792" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 14516, + "blockTimestampDelay": 162774 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000080000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 4, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xb05752f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff70000fffffffffffffffffffffff80d5614d5661c22f91420df44ee9eab0b97e74ad62bba341ead94025d38af6eca293db8770eb1b32ba67b7363e9f3d6803df81b0d0000000000000000000000000000000000000000000000000000000000000024", + "dataAbiValues": { + "methodSignature": "handleOnSettleBondEscalation(uint256,uint256,uint256,uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913129050112", + "115792089237316195423570984997072031313592135005999182794687277654456605821654", + "19778445761017581235509319627811875743548082417220173652855107228865444453133", + "36" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 258, + "blockTimestampDelay": 101436 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000090000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 8, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x13a8b8040000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000000050000000000000000000000000000000000000000000000000000000000010000fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd0000000000000000000000000000000000000000000000000000000000000006ffeeb3fd82fd57624ae9fddc080413e063c59aebfdd9e86aa1d14012b23cc42c3909a33c5245d7d9c850d37caf97974d05edd8cfe363dd7336cd23498b53ce1fac34000000000000000000000000000000000000000000000000000000000000003c080aa8886e229c59ad31a48e8790c532b08554e63f60fd65922b33e3589dd8b96aa104212b8f7bc224e863f0e8c252064d7229b15bbdbbe21c0b370fb52ecf016ae7f838205c29fb37c80991959f4df295b815ab130ddaf950ec1bec40be1244219653dcfedcb982b35ad7871ca540ce120b5cd731953fc8b91d4c4dc6f0e3d4d6f3303d5fde3a31146530161a95a9e5730847bb0e1adc263d276fd57bd0e9d5a1cc4a17639fc1be64e2f04f022fe314e4eb945526ac1e64f07770f1ade7d0db6c94d83e4ccac8e80511cfc9d681f3d91507412e8b07c2e7c8d526c804bea9d13570a7586321df39a35efc4800cfe6f84e57e37881266b4981bf8047828149e34fffc8ffbda96ca0340d3f9a352599a6dd40c1b5e04a6df65851467da3e99955756f07edf77dc0a01f914c598c84ffcc8992a824b7692ecadd637fd191d1ed0c455a2e9e136425ea6ed45a40080c391f2f2deb3b8048cfba079bbcfe913a6ef84d1e680ee7ba81fd7eaff5fa2094ed84e21f7f8f41e16193838b0e4c0ca6197ae2edffcfd0479da46a691dd1169eba1ff20b64d16f5124b8601d74e5e1320d6a8ae86f61d0b2921f586a223eed1d260417e9593c5fe94fe9c7c3e79e094cca39a2efac7e2bcd9829cb27ab0e73c400c60da9115aeb6f19875c4cd2353da0a35d33ecffa467bb2268d77ad6d71dd9bcb7b024f5ff4cd6a4007585993d5ea7df79255473ed437ad85ba26f6d6baec88ce97da00bcf30683c9c13d2412347ea64ac677e6040592518afb3ded7e96495db0cdf7d26a4975b0d955fc54b5bd4ed185f739cc30f03a7f23a25a5174766f8d7fd93b39c836e9c8afd3dd24301ff3dc6ba307623d89316ee4ce81d67849775b6a630da2070162aeb4c72585d93e0317c67b28a9a3a12d3f3fdeabf90aeb820806d3c6fed80f683055994f279e04b7d917f52c54497abed020dfd879d9e39b05bf9b57cabac7a801afb2a0241460b62bb477f69b395ce79330f3ac1b16009901a01e5a6a460f75039dea573505eba6ad0f70eb27909a646195dc69c0f5ca8a766100f3be920285377868bbaeadebcd299fe8c0427854ae7435ba56c29e52895feefb622ecc2945098f01cbdda3630343062eb1e37c3d5a4e6ae57229bba8c4fea1628c1ba448bc5cdf625c231047e4801079dd944f6f545e8919a5d5551d29a15bde1c5371198736dbb662280b7843d38d45d0dce2926c6fb2a8b59a8b7845c6c2d964a5aa85d684263c4b83dc4c7171da1e59e37c80155e035755661f7634ccd7b55a898d31544c8468e6f488bdede21dcc9265aa8818e56017d605c1dd0743ea6e2830c408cc25b6552d6014b618f130869b725292a8377fd7a13212306a1eca6e7cf0e7a8cde94bc2a8b3a95aecc11f627c13d2c7f480c3855b8cbd276a30a3fda895db68e33faf65b1bcd52b09bcfa04b9cb8b5f72afe3c9bde9ead1c97eb062e7112bc9aeca5c2bbe3ceec1ae37d16e29361c16456d264bda7323cc19e74ab7d7ebca395dfcb5bbf2ab0baad7794bba7db130667d95c3d572935aec28dc8b9f511a602bf74215c24248625d15b17ba40c7a58043e38ced1995d2154c366bc0be0e2eb305dd9eb025f96255be97a43631c8fadce211bafc2a31de41868fc1a4f2114e6a94cb7247ef7a7de850584011d18228e6e4bcdd035f52ec239685e26f7e641e9e709f65c50fcce5127abc58626ca96a4c1f5d7676f8e6bd1dabd05ad51ae7bbda1fc57e607b0e8d65071ea96dd51dd971e5934ba0a695986eb01879d508dbb993c92579d9b28574782cd7e0b758d48c6eb6a6c277838e4d71679e07e68fb0f85be1c4c4c1fe1d834de1cecdaa5d2a4f5d6a7d28fde6e6e96b919af9ad18de545be180fc12f3ccfcb9c7bde224c1c74304938d515f9cdc98040161272295aeec9689de3f42cd70e2dddd290ad657403cb197b4fd042e8b60dde8afc62b97f16b1feaffbab7823c8ec40a5f49fad5dba3355b47e16535bf0d4d0ac71372d1baaa0bf9b807572fcd8e70c4205736d8077a465d6e4d070f7d5f012f24141d1a4ef2e87e8896da73960cf26a54c6038c03a022069b8db8a3f4022289b2ee17a7411ac2c42b9f7f37335c0c0075d075fb276fc33c1f3f10462378fcd112eb273ee9bd511eb3f30f58b6f1edb2df4e57d24c67070dee36cf818164bae2dec3717b552c96ab42019d30f69484ea9a4dc68bda97dcba0fc6a093b5ba8e1e15e165fa671b83bef8b7b0cd614c1106a996895e97839afa6657e0febc0b48b129528ebe80368d5f23debd463575f69b7ed8426dc3fa665f13b9c08c8c05a1d4c31b41732523d2b943b8eee9b43a74a4cd533b781512468954ceec8c560e2522373a0c0a1b0e090af4cbaf9c4b28b2e30023693ebef35cdd1ada0dd7102e3ae0672b85fd5b7126b24cc4046a74abe14e7a2b592b1f463cb7110964aac14bb7e710ffe434b5dbbbf05edc9bb7a5c827fb36ab1799350c43a72fd170226bc9b9fffaa3744056aa18c854e975f117cc594be842217b1b451aea7ca191900a670f29acf18cb968865df37f4458ba9e720ed946a0ca1db4531403101cd0da03396348f9daf3cdca7b849d0ca2f15ee9fa5363f7fa7504ade218503f485f0cb3a1bac183cbae7268eeeef95c5a6797176ffa49a2cb7da742f9ad1cc3b7090cf4f59d8d046fb365198deead59f9514815d7c4494d8614", + "dataAbiValues": { + "methodSignature": "handleCreateRequests(uint256[],bytes32[])", + "inputValues": [ + [ + "65536", + "115792089237316195423570985008687907853269984665640564039457584007913129443328", + "458734", + "81411916260887808935637274574103901471821894122785804973774955777497682950409", + "73833572969127614450188660123107505555423378693848513117239642789239664389172" + ], + [ + "080aa8886e229c59ad31a48e8790c532b08554e63f60fd65922b33e3589dd8b9", + "6aa104212b8f7bc224e863f0e8c252064d7229b15bbdbbe21c0b370fb52ecf01", + "6ae7f838205c29fb37c80991959f4df295b815ab130ddaf950ec1bec40be1244", + "219653dcfedcb982b35ad7871ca540ce120b5cd731953fc8b91d4c4dc6f0e3d4", + "d6f3303d5fde3a31146530161a95a9e5730847bb0e1adc263d276fd57bd0e9d5", + "a1cc4a17639fc1be64e2f04f022fe314e4eb945526ac1e64f07770f1ade7d0db", + "6c94d83e4ccac8e80511cfc9d681f3d91507412e8b07c2e7c8d526c804bea9d1", + "3570a7586321df39a35efc4800cfe6f84e57e37881266b4981bf8047828149e3", + "4fffc8ffbda96ca0340d3f9a352599a6dd40c1b5e04a6df65851467da3e99955", + "756f07edf77dc0a01f914c598c84ffcc8992a824b7692ecadd637fd191d1ed0c", + "455a2e9e136425ea6ed45a40080c391f2f2deb3b8048cfba079bbcfe913a6ef8", + "4d1e680ee7ba81fd7eaff5fa2094ed84e21f7f8f41e16193838b0e4c0ca6197a", + "e2edffcfd0479da46a691dd1169eba1ff20b64d16f5124b8601d74e5e1320d6a", + "8ae86f61d0b2921f586a223eed1d260417e9593c5fe94fe9c7c3e79e094cca39", + "a2efac7e2bcd9829cb27ab0e73c400c60da9115aeb6f19875c4cd2353da0a35d", + "33ecffa467bb2268d77ad6d71dd9bcb7b024f5ff4cd6a4007585993d5ea7df79", + "255473ed437ad85ba26f6d6baec88ce97da00bcf30683c9c13d2412347ea64ac", + "677e6040592518afb3ded7e96495db0cdf7d26a4975b0d955fc54b5bd4ed185f", + "739cc30f03a7f23a25a5174766f8d7fd93b39c836e9c8afd3dd24301ff3dc6ba", + "307623d89316ee4ce81d67849775b6a630da2070162aeb4c72585d93e0317c67", + "b28a9a3a12d3f3fdeabf90aeb820806d3c6fed80f683055994f279e04b7d917f", + "52c54497abed020dfd879d9e39b05bf9b57cabac7a801afb2a0241460b62bb47", + "7f69b395ce79330f3ac1b16009901a01e5a6a460f75039dea573505eba6ad0f7", + "0eb27909a646195dc69c0f5ca8a766100f3be920285377868bbaeadebcd299fe", + "8c0427854ae7435ba56c29e52895feefb622ecc2945098f01cbdda3630343062", + "eb1e37c3d5a4e6ae57229bba8c4fea1628c1ba448bc5cdf625c231047e480107", + "9dd944f6f545e8919a5d5551d29a15bde1c5371198736dbb662280b7843d38d4", + "5d0dce2926c6fb2a8b59a8b7845c6c2d964a5aa85d684263c4b83dc4c7171da1", + "e59e37c80155e035755661f7634ccd7b55a898d31544c8468e6f488bdede21dc", + "c9265aa8818e56017d605c1dd0743ea6e2830c408cc25b6552d6014b618f1308", + "69b725292a8377fd7a13212306a1eca6e7cf0e7a8cde94bc2a8b3a95aecc11f6", + "27c13d2c7f480c3855b8cbd276a30a3fda895db68e33faf65b1bcd52b09bcfa0", + "4b9cb8b5f72afe3c9bde9ead1c97eb062e7112bc9aeca5c2bbe3ceec1ae37d16", + "e29361c16456d264bda7323cc19e74ab7d7ebca395dfcb5bbf2ab0baad7794bb", + "a7db130667d95c3d572935aec28dc8b9f511a602bf74215c24248625d15b17ba", + "40c7a58043e38ced1995d2154c366bc0be0e2eb305dd9eb025f96255be97a436", + "31c8fadce211bafc2a31de41868fc1a4f2114e6a94cb7247ef7a7de850584011", + "d18228e6e4bcdd035f52ec239685e26f7e641e9e709f65c50fcce5127abc5862", + "6ca96a4c1f5d7676f8e6bd1dabd05ad51ae7bbda1fc57e607b0e8d65071ea96d", + "d51dd971e5934ba0a695986eb01879d508dbb993c92579d9b28574782cd7e0b7", + "58d48c6eb6a6c277838e4d71679e07e68fb0f85be1c4c4c1fe1d834de1cecdaa", + "5d2a4f5d6a7d28fde6e6e96b919af9ad18de545be180fc12f3ccfcb9c7bde224", + "c1c74304938d515f9cdc98040161272295aeec9689de3f42cd70e2dddd290ad6", + "57403cb197b4fd042e8b60dde8afc62b97f16b1feaffbab7823c8ec40a5f49fa", + "d5dba3355b47e16535bf0d4d0ac71372d1baaa0bf9b807572fcd8e70c4205736", + "d8077a465d6e4d070f7d5f012f24141d1a4ef2e87e8896da73960cf26a54c603", + "8c03a022069b8db8a3f4022289b2ee17a7411ac2c42b9f7f37335c0c0075d075", + "fb276fc33c1f3f10462378fcd112eb273ee9bd511eb3f30f58b6f1edb2df4e57", + "d24c67070dee36cf818164bae2dec3717b552c96ab42019d30f69484ea9a4dc6", + "8bda97dcba0fc6a093b5ba8e1e15e165fa671b83bef8b7b0cd614c1106a99689", + "5e97839afa6657e0febc0b48b129528ebe80368d5f23debd463575f69b7ed842", + "6dc3fa665f13b9c08c8c05a1d4c31b41732523d2b943b8eee9b43a74a4cd533b", + "781512468954ceec8c560e2522373a0c0a1b0e090af4cbaf9c4b28b2e3002369", + "3ebef35cdd1ada0dd7102e3ae0672b85fd5b7126b24cc4046a74abe14e7a2b59", + "2b1f463cb7110964aac14bb7e710ffe434b5dbbbf05edc9bb7a5c827fb36ab17", + "99350c43a72fd170226bc9b9fffaa3744056aa18c854e975f117cc594be84221", + "7b1b451aea7ca191900a670f29acf18cb968865df37f4458ba9e720ed946a0ca", + "1db4531403101cd0da03396348f9daf3cdca7b849d0ca2f15ee9fa5363f7fa75", + "04ade218503f485f0cb3a1bac183cbae7268eeeef95c5a6797176ffa49a2cb7d", + "a742f9ad1cc3b7090cf4f59d8d046fb365198deead59f9514815d7c4494d8614" + ] + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 10110, + "blockTimestampDelay": 42400 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000020000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 3, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x3c26dcf800000000000000000000000000000000000000000000000000000000000000fe", + "dataAbiValues": { + "methodSignature": "handleSetEpochManager(uint256)", + "inputValues": [ + "254" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 31534, + "blockTimestampDelay": 502997 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000030000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 8, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x2047c44989b83856711dd6e2fff2fb4f6f9c007bb9771f1755a26b351a1eb3dfa452d159151dc355d1937bfc43323997c9d735e9178a3cf3e993e7b764f4bed67935ce4cec7893aedcb0a69d085a606cdee3b9838daf3fefc61d38b0f14ecdec26e33aa460f9421d6b80b366831f81a22a3a22ebd80e834740e6cd645da1790063ab1669", + "dataAbiValues": { + "methodSignature": "handlePay(uint256,uint256,uint256,uint256)", + "inputValues": [ + "62292348944090115746545714663996537181369460052517339629743735497958525948249", + "9551156539331198657207388647210792475747533930906137829599958395912405241420", + "106958873184409346177772424067264194416183043741641706881530640155496522398372", + "43862434691542092146243210499299989128919851476248082112521904879876197521001" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 27735, + "blockTimestampDelay": 575806 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000040000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 6, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x52e3cb9cffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff", + "dataAbiValues": { + "methodSignature": "handleSetMaxUsersToCheck(uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913129639935" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 18, + "blockTimestampDelay": 20 + } +] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803638838000-b6d2204e-b85e-4a35-937c-c1bc3c2af34d.json b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803638838000-b6d2204e-b85e-4a35-937c-c1bc3c2af34d.json new file mode 100755 index 0000000..8201846 --- /dev/null +++ b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803638838000-b6d2204e-b85e-4a35-937c-c1bc3c2af34d.json @@ -0,0 +1,2161 @@ +[ + { + "call": { + "from": "0x0000000000000000000000000000000000030000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x13a8b8040000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000034000000000000000000000000000000000000000000000000000000000000000170000000000000000000000000000000000000000000000000000000000d2f000ffffc0000000000000000000000000000000000000000000000000000000000181dc31bc03ad9bc8a966de91dfc8c49b929f6d5fd44a9c22a7f5bb37cebfc106ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed8ee8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b825bc2cfc37067e378b4feef3f3411136744d0b2851c161c601669654cf27afe610000000000000000000000000000000000000000000000000000000000000000578750b27e877a957d33dc50d914b1caf972efffa4bb78b85e66dd813a864ca4039e696f94058cfd274de97421f65916ac135f4d55083d357b9c1f34820c9376000000000000000000000000000000000000000000000000000000000003fffe000000000000000000000000000000000000000000000000000000000000000167e6a528e0202cf23a36eacf513eee303475d3e4c983b2ae2d616b11c440f70a4ac07813439b9213b22d4d86340307a2982de60c241368ad288dfea742b6eb5efffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9686c2d73382b1edfa908bcaeb6b9ac0073f469887a9150c80831642e47e35a614c1bffffffffffffffffffffffffffffffffffffffffffffe48e5eb33a3a7f000000104a13a90c13653470268ea78892361e7e91e706d859aabaaf45ddd18c956640809a37cc7335cdf29b7d988dc8c05e2c1899ad1795364e6fa667088b49487472000000000000000000000000000000000000000000000000000000000000fff6fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b800000000000000000000000000000000000000000000000000329c51ac594cf93000000000000000000000000000000000000000000000000000000000076a700a77a4c48695a0407441e86efc633aee092d2ebd99c87fdfeebcd904fe33e086d000000000000000000000000000000000000000000000000000000000000001d563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd0633ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865d5d6866ffb684491364a0853403f689144f5664f5d50de1b1a30d683ff29f21bf8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b4498bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef328d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad820824094c2949304cd969b5661cff34ece28aab6ca0f3eb707dc756ae848252d66c44a94d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae96291d8c581a922d52cd477658fcc2e2ca1f954f274ed2cd833a98e6d1d4455581f9d9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cbba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c389436d2b9b4dda11f7c2a5c1ca8fb20cba7512c884b100fa143fc24dc6c160eed276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f6617237058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25bcffd3ebd814d0f5e8e8dc7ef0303a14b98e79acfcabb14c9ad4225afd8f18c265f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a219fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c18aad5c04eb3f39ce81189eee664fb350f14bd8ce4dd62972aa7de342f017c7f", + "dataAbiValues": { + "methodSignature": "handleCreateRequests(uint256[],bytes32[])", + "inputValues": [ + [ + "13824000", + "115791647525550000827488589184312722123641027794666345134718053606362806484993", + "58737407075920930096693749632210245280794127876199190949253348332199714210054", + "115792089237316195423570985008687907853269984665640564039457584007913128431336", + "115792089237316195423570985008687907853269984665640564039457584007913129380738", + "41504671482165347584846103287222174319130579613222615088745194098566077546081", + "0", + "39590299132392589184737138068833640165131826767556478003143025413084726840484", + "1636828073493779560152621491074002847609709387720111137750911676859097584502", + "262142", + "1", + "46995738119123743123282428161140493004285235666026628953647859202250191730442", + "33811214160519685654400438720767591502827986970858420988841187408488311483230", + "115792089237316195423570985008687907853269984665640564039457584007913129207916", + "20557653259021005890251421269967042420225955023564768794272035576696478452763", + "115792089237316195423570985008687907853269984665640563909857584007913129639936", + "7367887950809164700104084563884591449786965425123545364576065505479275931200", + "58168524174645209900719041489934173752247098791866719219864340874379345294450", + "65526", + "115792089237316195423570985008687907853269984665640564039457584007913129380736", + "227929974933606291", + "7776000", + "75752327540241786815348607290604056680494387521335977257182003214564422715501" + ], + [ + "563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe", + "27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a", + "9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd06", + "33ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865", + "d5d6866ffb684491364a0853403f689144f5664f5d50de1b1a30d683ff29f21b", + "f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1", + "c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b44", + "98bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01", + "108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef32", + "8d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea", + "94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad8208240", + "94c2949304cd969b5661cff34ece28aab6ca0f3eb707dc756ae848252d66c44a", + "94d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056", + "cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae96291", + "d8c581a922d52cd477658fcc2e2ca1f954f274ed2cd833a98e6d1d4455581f9d", + "9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874", + "ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cb", + "ba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c3", + "89436d2b9b4dda11f7c2a5c1ca8fb20cba7512c884b100fa143fc24dc6c160ee", + "d276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99", + "fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce", + "3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb", + "4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f661723", + "7058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78", + "994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25", + "bcffd3ebd814d0f5e8e8dc7ef0303a14b98e79acfcabb14c9ad4225afd8f18c2", + "65f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a2", + "19fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c", + "18aad5c04eb3f39ce81189eee664fb350f14bd8ce4dd62972aa7de342f017c7f" + ] + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 21265, + "blockTimestampDelay": 360627 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000020000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x161c7318", + "dataAbiValues": { + "methodSignature": "test_debug()", + "inputValues": [] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 15325, + "blockTimestampDelay": 189245 + }, + { + "call": { + "from": "0x00000000000000000000000000000000000a0000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x88b05f294e5c5739570432e46e997185cf2683c287e8339e1ce7ab9502db4f4b4f0c1b77000000000000000000000000000000000000000000000000000000000012750000000000000000000000000000000000000000000000000006f05b59d3b200003c3b20fe3c6474ef6112cec6e2e1e2a66147c502767418c32e65c3bfa035d898948fc45007206ff5c0b2215d0b5c97d5551a84ed653f28e284b8567c463ce3650000000000000000000000000000000000000000000000000000000000069780ffffffffffffffffffffffffffffffffffffffffffffffffffffffec39800000109b1ce09a2caa796f35db2570026fd5d54f3b6f79d72997e7e30411ab7bab5f", + "dataAbiValues": { + "methodSignature": "handleSetDisputeModuleData(uint256,(address,address,uint256,uint256,uint256,uint256,uint256))", + "inputValues": [ + "35443554117267417118592017165536035041230544133048285386578266163756344810359", + { + "accountingExtension": "0x0000000000000000000000000000000000127500", + "bondEscalationDeadline": "432000", + "bondSize": "27243242601887521753615714576112380311306725462768124357416761313244220872856", + "bondToken": "0x00000000000000000000000006f05b59d3b20000", + "disputeWindow": "7511066176535142771400004346711719422194606327049609712661925953610498943839", + "maxNumberOfEscalations": "67196315620416968751812103706326677402054656808860235011842083525495944438629", + "tyingBuffer": "115792089237316195423570985008687907853269984665640564039457584007828194983936" + } + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 24101, + "blockTimestampDelay": 185392 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000010000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xb6c75efa8ba080b8a5e8e7e02b35ca63d619e3bf03ea7ee17a7395426e8c0ae38903a378ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff51e8737b07890aad8af4228017f323f8ee58c58602fe8a95d9a372445358479b", + "dataAbiValues": { + "methodSignature": "handleClaimEscalationReward(uint256,uint256,uint256)", + "inputValues": [ + "63155069885073485423962987089686113899340909970551762747564159406599093592952", + "115792089237316195423570985008687907853269984665640564039457584007913129639935", + "37048046271970045328561159781521571766041874645079829392453863326819299116955" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 7, + "blockTimestampDelay": 32 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000090000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x223b137400003ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe000000000000000000000000000000000000000000000000000000000000004006807205175b22b301c32b6c5e6ee194bd596681cba8c8638952ec1250f3d6450000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000000000000000000000000000000001518000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000027874838a0b68a875ec0ee81d4c8ef1980254e8ae6eaec10d74722bac9ebd5a49a6c310208a5de1500000000000000000000000000000000000000000000000000", + "dataAbiValues": { + "methodSignature": "handleSetRequestModuleData(uint256,(uint256,string,address,uint256))", + "inputValues": [ + "441711766194596082395824375185729628956870974218904739530401550323154942", + { + "accountingExtension": "0x0000000000000000000000000000000000015180", + "chainId": "\ufffdH8\ufffd\ufffd\ufffd\ufffd^\ufffd\ufffd\ufffd\ufffd\ufffd\ufffd\u0019\ufffd%N\ufffd\ufffd\ufffd\ufffd\u0010\ufffdG\"\ufffd\ufffd\ufffdդ\ufffdl1\u0002\b\ufffd\ufffd\u0015", + "epoch": "2940820452134172681045375212785432443100619197912571245547930807664892958277", + "paymentAmount": "0" + } + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 15253, + "blockTimestampDelay": 492034 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000080000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xaa1a5bd900000000000000000000000000000000000000000000000006f05b59d3b2000071f7cd086897aaf2110bd910f953453e7bcc20e82af33eec4c00647f9fb5da5e", + "dataAbiValues": { + "methodSignature": "handleResolveDispute(uint256,uint256)", + "inputValues": [ + "500000000000000000", + "51549178199604899047887187595007193100674999475015380254417935657395983604318" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 53242, + "blockTimestampDelay": 71336 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000070000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x52e3cb9cffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffec", + "dataAbiValues": { + "methodSignature": "handleSetMaxUsersToCheck(uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913129639916" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 45495, + "blockTimestampDelay": 225944 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000090000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xdb106aceffffffffffffffffffffffffffffffffffffffffffffffffffffffec398000001371ca94900c31d8e9be66d7c23f65b05f5d33ff2b30949acfed984f87f269e080baf5544430fe321ebd2409617ef6786f5b994597bc40798f800826b310e4524793f157456609da494af2a02075c03fcf9249185214862d5dd9f0eddb7447ce", + "dataAbiValues": { + "methodSignature": "handleSlash(uint256,uint256,uint256,uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007828194983936", + "8794995999406163856009545368231505849668095829549449500668097316828300339680", + "58226371372378751290891435773627286125304890291737788253576280229276508283986", + "32375604441627796962923040660328673776239995228426910584919203216277625915342" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 49592, + "blockTimestampDelay": 581992 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000080000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x223b1374000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000408986d1481eea494dad550c07436bc6bf24fda1699ae18ac8e867c2bc2cbb811f0000000000000000000000000000000000000000000000000000000000000080000000000000000000000000148bd2b35a0e0ff5f58651fe93524e321532b27500000000000000000000000000000000000000000000000000000000001274fe000000000000000000000000000000000000000000000000000000000000001419d972fb93584a547a564eb672065531206d2c71000000000000000000000000", + "dataAbiValues": { + "methodSignature": "handleSetRequestModuleData(uint256,(uint256,string,address,uint256))", + "inputValues": [ + "0", + { + "accountingExtension": "0x148bd2b35a0e0ff5f58651fe93524E321532b275", + "chainId": "\u0019\ufffdr\ufffd\ufffdXJTzVN\ufffdr\u0006U1 m,q", + "epoch": "62205062171946186530711375116649708949236787489916806320076639634871891493151", + "paymentAmount": "1209598" + } + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 57406, + "blockTimestampDelay": 508192 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000090000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 2, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x3f60f9cc0000000000000000000000000000000000000000000000000000000000000000235c58e45e6b448123df4ec75c527147b56e207c4815f37193cfafc12fe9143343aa8e00e44758769fcba79ddc533615c240383088eacc520788ca11f978270a", + "dataAbiValues": { + "methodSignature": "handleRelease(uint256,uint256,uint256)", + "inputValues": [ + "0", + "15994113140863775377512613840889015859198326455210825118094249343807524508723", + "30606304928112969978587259490316563804100123622315096384733063005977978611466" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 14222, + "blockTimestampDelay": 506677 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000010000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xa59d317d236b70e2ac17ad29db7127993a74e4044f47fe8ce7ed46db3cd8a16c797dd6a800000000000000000000000007743aecbf6a16d4951507d7551e5a420748d15000000000000000000000000000000000000000000000000000000000000003e8a4204edf78d831e0da05471c75e00fd5486a22d4239d68dbd4e843fd299ace8efffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc00000000000000000000000000007109709ecfa91a80626ff398ab49ad330281d12d", + "dataAbiValues": { + "methodSignature": "handleSetResponseModuleData(uint256,(address,address,uint256,uint256,uint256))", + "inputValues": [ + "16020781443007852116740508170121164524726566377185661961033510726941712176808", + { + "accountingExtension": "0x07743AecBF6a16d4951507D7551e5A420748D150", + "bondSize": "74236390634738164828042936817328106253978822253810691447408898961590657404558", + "bondToken": "0x00000000000000000000000000000000000003e8", + "deadline": "115792089237316195423570985008687907853269984665640564039457584007913129377792", + "disputeWindow": "645326474426547203313410069154905908525362434349" + } + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 4534, + "blockTimestampDelay": 153607 + }, + { + "call": { + "from": "0x00000000000000000000000000000000000a0000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x3c26dcf8ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0", + "dataAbiValues": { + "methodSignature": "handleSetEpochManager(uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913129639904" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 23786, + "blockTimestampDelay": 327680 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000030000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 2, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xc5c17157bbc9215b06808392dcec2e0c7851767c42bcbb477c1c8c8d2f6788a5f1c33d9d", + "dataAbiValues": { + "methodSignature": "handleAddChain(uint256)", + "inputValues": [ + "84937869156760602001974346264518001642163336959320593474760511948578749627805" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 1000, + "blockTimestampDelay": 604800 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000070000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x0692ea7effffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0000", + "dataAbiValues": { + "methodSignature": "handleRemoveChain(uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913129574400" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 36805, + "blockTimestampDelay": 229553 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000030000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 3, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xb6c75efa91f1b7da6044090f2bc54454fe4b82551e6e3fe26925710e360197150ba6c5040000000000000000000000000000000000000000000000000000000000069780fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b80", + "dataAbiValues": { + "methodSignature": "handleClaimEscalationReward(uint256,uint256,uint256)", + "inputValues": [ + "66012442094173021184902279859918771353213111919353305006878331952590280377604", + "432000", + "115792089237316195423570985008687907853269984665640564039457584007913129380736" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 26105, + "blockTimestampDelay": 563160 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000060000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xefe223c5ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc1eab46d9a71b9fc6196bc66df97ad0229e4ed4df31cb14738c45729db851061", + "dataAbiValues": { + "methodSignature": "handleDisputeResponseOracle(uint256,uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913129639935", + "87711067258970041198538357174074530315975071051269236784798286206430053994593" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 22062, + "blockTimestampDelay": 533426 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000090000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 3, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x3edc7cbdffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9c", + "dataAbiValues": { + "methodSignature": "handleFinalizeRequestFinalityModule(uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913129639836" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 58571, + "blockTimestampDelay": 448941 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000090000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 4, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x9d2e6a6f9ad1b274a36d6422204cb38284e52c1e394b76dd420c12b133c0f54555fa8725", + "dataAbiValues": { + "methodSignature": "handleRemoveEBORequestCreatorRequestModule(uint256)", + "inputValues": [ + "70026681373776152693382902846792773999381205621007041991972413057813542766373" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 55128, + "blockTimestampDelay": 223499 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000040000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xcd10417aa9b7c8ba23219e921c8c24f084b211b31e9da2b176051da47b11bff8ff5c33212de575b81bb2e58ba5f1b8efa82a2605f4006b905e5e2cc82173eaf76a20add4", + "dataAbiValues": { + "methodSignature": "handleEscalateDispute(uint256,uint256)", + "inputValues": [ + "76765589790945662604547244204216214155946252006571676315847820028747638911777", + "20759498631951024433205069293438925811645138406748362097890303052587796049364" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 17266, + "blockTimestampDelay": 47869 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000040000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xf84d6dfc2e0a2c2d27894539cfe61cf1aa3dce6fa4cc0182d8a4f96446b30c16dcdb4280", + "dataAbiValues": { + "methodSignature": "handleAddEBORequestCreatorRequestModule(uint256)", + "inputValues": [ + "20824364399678545662833682292547392236236046121352715060387808748443780465280" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 8422, + "blockTimestampDelay": 175942 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000070000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 2, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x7aeb6fab0000000000000000000000000000000000000000000000000000000000080000861226f42b4f83fda125862408777203fcf059cc4d6afa3d8b5f14cbd0503cba", + "dataAbiValues": { + "methodSignature": "handleDisputeResponseBondEscalationModule(uint256,uint256)", + "inputValues": [ + "524288", + "60641993806473011143834861665095605796555276187455692014587155889705714728122" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 5058, + "blockTimestampDelay": 564562 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000030000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 4, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x9f6259e500000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000060000", + "dataAbiValues": { + "methodSignature": "handleResolve(uint256,uint256)", + "inputValues": [ + "262144", + "393216" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 54349, + "blockTimestampDelay": 446424 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000070000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 3, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xefe223c5ad8117bd6793da9372ee7a9f184c1f229a994a23f82083eb6803cf5612a5e084994694c28b481c29ef6ab1024c7f7ad48917e7b3644de29036693dfa1f6557a0", + "dataAbiValues": { + "methodSignature": "handleDisputeResponseOracle(uint256,uint256)", + "inputValues": [ + "78478209922765382613928019011452160112457201279089481808494135837808952467588", + "69328571831131295636312210863921518104963878476144420959825437715154096969632" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 356, + "blockTimestampDelay": 94684 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000010000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 2, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xec5bf215ffffffffffffffffffffffff8ef68f613056e57f9d900c6762970980a4e22ed3", + "dataAbiValues": { + "methodSignature": "handleFinalizeRequestResponseModule(uint256)", + "inputValues": [ + "115792089237316195423570985008042581378843437462327153970303678099387767205587" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 26236, + "blockTimestampDelay": 172938 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000040000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 2, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x727899fff514b534b61c375c439f68b334317ec7ad1c81896f2e7f7d9e2bf248e8b86bb80269a17e974e3f307c7b602e63a3a5f54ab7520e1ce48c185b85068b23a50c370000000000000000000000007109709ecfa91a80626ff3989d68f67f5b1dd12d0ce9ae7037dff0632bada0555a4b2a1709ee25a0f6d47ff213ef7dab06f13492", + "dataAbiValues": { + "methodSignature": "handlePledge(uint256,uint256,uint256,uint256)", + "inputValues": [ + "110853235481380273198257434098634459560730545434260276739156884901825263201208", + "1091259233017721395373144204062272118708516766005316865622853242594359839799", + "645326474426547203313410069153905908525362434349", + "5840633478355227696719452384365761985173515625270275222857093897003304301714" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 48302, + "blockTimestampDelay": 98481 + }, + { + "call": { + "from": "0x00000000000000000000000000000000000a0000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 2, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xc82f34f9ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffec00009c3ade46c6a10c03646645dceced151803cfed4a76a69d888d9528938805d33e", + "dataAbiValues": { + "methodSignature": "handleSettleBondEscalation(uint256,uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913128329216", + "70664815604550041696416122873938953675815643014153596578083942850550877770558" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 21405, + "blockTimestampDelay": 224071 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000070000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 4, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xd51b326a4f11ce728964fd5cfe4e67e0a4108fd7bd12e31d80bee3e9fd7503b25943d86bfffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600002fbcb13722d80a133f1e093640349fcea5017c8025ac70c52fefa1f32bef4147", + "dataAbiValues": { + "methodSignature": "handlePledgeForDispute(uint256,uint256,uint256)", + "inputValues": [ + "35764176285829964837988166432096626338604401112435149938249800147871318923371", + "115792089237316195423570985008687907853269984665640564039457584007913128984576", + "21592094227161796483602757534726537598958165417486369280358722180410608927047" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 30001, + "blockTimestampDelay": 418139 + }, + { + "call": { + "from": "0x00000000000000000000000000000000000a0000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 3, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x51b295e300000000000000000000000000000000000000000000000000000000000003a8", + "dataAbiValues": { + "methodSignature": "handleFinalize(uint256)", + "inputValues": [ + "936" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 23854, + "blockTimestampDelay": 283267 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000020000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x6b125a57fffffffffffffffffffe3bda3d84c15b95fe7640319d8a5c26029388bb4c0000", + "dataAbiValues": { + "methodSignature": "handleRemoveEBORequestCreatorFinalityModule(uint256)", + "inputValues": [ + "115792089237316195423570815840224595780479919275071395757947099535303139655680" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 132, + "blockTimestampDelay": 172800 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000050000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x6b125a57439c4dea175c1f4dc2283a0dca8df089ec1e32de1a71e6049937ba0ef888023b", + "dataAbiValues": { + "methodSignature": "handleRemoveEBORequestCreatorFinalityModule(uint256)", + "inputValues": [ + "30581126742740578579461185375868096517298438186402910784813700598662223626811" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 27956, + "blockTimestampDelay": 447027 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000070000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 5, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x64d6e6d3179a67678bb838478c44926fbd26493474eb791516d81ee5baa3765643a7f0f13935c24452e2a5faa498fca2a6c4ae1b3a3c6a9976af2868354336a0b5eae4a3df8b40fb6fcf686f1659e51d90d962d5cbfd1a55d1a1db345acbb7978cd9bd61", + "dataAbiValues": { + "methodSignature": "handlePledgeAgainstDispute(uint256,uint256,uint256)", + "inputValues": [ + "10676003636853416453138572180884583936897901964655062312574559468487432466673", + "25876816044475934884764655838030328364254713960717807302331158298975447737507", + "101111805466560395134870514718984948651558312084779106319072364710585748274529" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 9230, + "blockTimestampDelay": 259200 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000040000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 3, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x4741f6dc97ea50d8c074d187de7cfc88d0f1c34dc24db2642bef23ec1b88370e17145d67", + "dataAbiValues": { + "methodSignature": "handleSetFinalityModuleData(uint256)", + "inputValues": [ + "68713240332555606262576304945776648453307986915064085044793172925635856981351" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 12052, + "blockTimestampDelay": 19785 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000090000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 5, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x9d2e6a6f0000000000000000000000000000000000000000000006f05b59d3b200000000", + "dataAbiValues": { + "methodSignature": "handleRemoveEBORequestCreatorRequestModule(uint256)", + "inputValues": [ + "32768000000000000000000" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 0, + "blockTimestampDelay": 3 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000070000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 6, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xcd10417aa92d06f9b187c43210def504095e8426544f54827af0094e5c47e1262e065b663a93985339d1aaaa5528eca3343f64826af8471fa3111ff7b1a1d067661f7a4c", + "dataAbiValues": { + "methodSignature": "handleEscalateDispute(uint256,uint256)", + "inputValues": [ + "76520427670687974472084713126552624256348516399009121051566372436541744503654", + "26494923045561211048191064476495620839647940608616973048585101859895222696524" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 6938, + "blockTimestampDelay": 197916 + }, + { + "call": { + "from": "0x00000000000000000000000000000000000a0000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 4, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x91e32c745efa4f15675e1dc5e0820d8b61e4e1c3b2c7738498336617ce8c1e04c4745f79e0fd906e76d9087d90474287d3aa87bd7537e316bdda4a8d939805778b853ddd", + "dataAbiValues": { + "methodSignature": "handleCreateRequest(uint256,bytes32)", + "inputValues": [ + "42959665348027796296446623032871991309114884315911569472746230850572248178553", + "e0fd906e76d9087d90474287d3aa87bd7537e316bdda4a8d939805778b853ddd" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 100, + "blockTimestampDelay": 423478 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000080000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 2, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x88b05f2900000000000000000000000000000000000000000000000000000000000151800000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000012000000005bb97848736b7142c96367d03991dd42df02a25e9fc88dfdc517b1f4ce28bc31fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff83cfafea801b1496906d8ba69b3619acad07c602f5f5644c5546c0a5a1625c9e61db764de175bf41c23313c816c5b2dbc6935d8c395c4856ce1ad7fe38ed0f6", + "dataAbiValues": { + "methodSignature": "handleSetDisputeModuleData(uint256,(address,address,uint256,uint256,uint256,uint256,uint256))", + "inputValues": [ + "86400", + { + "accountingExtension": "0x0000000000000000000000000000000000010000", + "bondEscalationDeadline": "115792089237316195423570985008687907853269984665640564039457584007913129639935", + "bondSize": "77309411328", + "bondToken": "0x0000000000000000000000000000000000000001", + "disputeWindow": "104084459477994910024948624640243341651381141291966115158980558504594338926838", + "maxNumberOfEscalations": "41488166090894130137464127351763299761175392285857027714786127187107321003057", + "tyingBuffer": "112281329574643079738863202584985426034020956563149812400628300592423397369289" + } + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 184, + "blockTimestampDelay": 524578 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000020000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 2, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xa59d317d97e31ce94964032123e4969a0749e9aa014916f3250bf8d2d11218c2b83b7bc6000000000000000000000000dd92df5080374ff85078e1a74b8880cd00776ed60000000000000000000000000000000000000000000000000000000000000000b8a36831dc71f854fbe7d1b7ce3a553891cac7605d6efcc4d3c8b0472fa3db1dfffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6c5800000000000000000000000007109709ecfa91a80626ff3989d68f67f5b10a22d", + "dataAbiValues": { + "methodSignature": "handleSetResponseModuleData(uint256,(address,address,uint256,uint256,uint256))", + "inputValues": [ + "68700513958072141403648763787816715343496857287170728137452284071883052907462", + { + "accountingExtension": "0xdd92Df5080374fF85078e1A74B8880cd00776eD6", + "bondSize": "83514279336752933740344099228515725376396365006849213236518003647240640650013", + "bondToken": "0x0000000000000000000000000000000000000000", + "deadline": "115792089237316195423570985008687907853269984665640564039457584007913129035136", + "disputeWindow": "645326474426547203313410069153905908525361570349" + } + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 25919, + "blockTimestampDelay": 101425 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000060000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x40605c3f0200410cca20c8fe9f5721a3f210c230ddaa45fafcbeb1bfbbf8b5311c7ce95300000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000000000000000000000000004c7e5be381d4e135d9869c372ae5fdc127d572047db177eb937dab489b485956e200000000000000000000000000000000000000000000000000000000000003e59142690e4395ff8f7d36a51db819f9b2b627dd44624cc27af7881ae5d85dcdf200000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000000003311cf3105300073b4d65bc6c7ad79013e5ef42b3eb910126db263e9ccd31784a0000000000000000000000000000000000000000000000000000000000640000f6108ad6f1a58aee925973e0ace713bf95f2451f67e85bd48bcfbe31548e84b91c3de217cef27beae2f3d56daa00263ccdcf504d93eb4333cfc73c4509f5099f0000000000000000000000000000000000000000000000000429d069189e0000fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa0000aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaab1fffffffffffffffffffffffffffffffffffffffffffffffff90fa4a62c4e000100001c71c71c71c71c71c71c71c71c71c71c71c71c71c71c71c71c71c71c71c60000000000000000000000000000000000000000000000000000000000000000ffffffffffffffffffffffff8ef68f613056e57f9d900c6762970980a4e22ed36ce748c92fc6e8c7054eecab7ad246cb86145f4440496f6f14134d2aec40099345a0e41980dc4640d7d762ba666217e6d2335cc66cf9205e468798481258f2fe0000000000000000000000000000000000000000000000000000000000000020fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff2d100b4b43a80fecf041e66f27f63cd64cbeb745676ec606bab5bfbf3899cc19b73c381813101545d8fc28f8764c2ffa5e632ab2d55bad52d1355e873c7e7f0b09fbbb7144cb70eeda3d3734f9e6acc52eaaa4e71fa3aa5a9611a184c15f34667d8a20000000000000000000000000000000000000000000000000000000000000000380d9c3a02dbca81296453043d62e319d481e43707aaaada96af9359029428aad358e508346e35e1319cd1b4204bc2ae280a60efa60b5803373ae7fa2a728501a3dab0be6f911f13d935d9984ba3bdd1d59d56f0130475ed4366bbcc0ccb60ad00000000000000000000000000000000000000000000000000000000000003e8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b800000000000000000000000000000000000000000000000000000000000070000000000000000000000000000000000000000000000000000000000000000000309dff374c6182bc7cc7594dec4619e9906308720653134fe85cde855a6d6bdfaa9d82c04697a26a2f2fc89c44372efb5e17daff2e86a43e551c704094abe3499ffffffffffffffffffffffffffffffffffffffffffffffffffffffffdbf37c00ffffffffffffffffffffffffffffffffffffffffffffe2db4d2053ae00000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffec7800008c71842425c9851ef1fa1dac96fc89fac5b0a10086cfc789214bb9becf0570f74512d139774ad42286d555483a293074206770b602fb92c3af103dd07c60628b00000000000000000000000000000000000000000000000000000000000200020000000000000000000000000000000000000000000000000000000000093a80a10582f7dddd6ab3bb4bdd86be89aea4e2e7aba5ae91d125479d7a686d2c8b940000000000000000000000000000000000000000000000000000000000040000ec19fbf56c5e92f947dbc238c0da09f2fe83c31af46488e2a8cf6bf2976d77b370488e73d98a690a6a8abad72db885b7dae08dfdcca872b439b328b25759bf35000000000000000000000000000000000000000000000000000000000007ff9c000000000000000000000000000000000000000000000000000000a1b01d4b1ce614afd329253d5e4eec4dd3821b5fc692422bae9e1789c1b87ebedec11e9cda2e7d495c6ffa192ca0bb444aeccb50689c3623de6949f46854405bc966bcb6770000000000000000000000000000000000000000000000000000000000070000a4e0e70cede2c12be8a82c7bb0002b8eb6149b9c3ef7c6119916d7e857296399d854b911d10aec4be4765a7c0a482f821a05ebb500ef1254db1c40fd93b9fea61dba1c25c787be027fd2e3494b36e6d331be0f0aaa8cf3d6cd2ae8fd250dd7abcfa5e5962ef475853cfa87bc09f9191e602d950155da341dde817e11b764cc2095f022d0d7e91d3c9a4064a7f8205c5f4e170e666597e049b427dc16d073077500000000000000000000000000000000000000000000000000000000000000030000000000000000000000007109709ecfa91a80626ff3989d68f67f5b1dd12d872a7123006ff99b455a4921c98befc60fe0c67031de33c9f1c2145bb2613bbc2ea807ae15d2b865a7db6f945121113ed550d280408d1e329be213f1ed765870ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed8b00ffffffffffffffffffffffff8ef68f613056e57f9d900c6762970980a4e22ed3a6a2b6b51da8bc33f4de9b5693dd734fa7cbb006ea5213e8e3e8e55e28ec0b65fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff48b00ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00c794466b32dfa891ce64514d00c97ab1123e8400ee548d3f8334b220605190e200000000000000000000000000000000000000000000000000038d7ea4c6800048d3c657cd06a6172cb3c55c578d3a11d4476ac4cec723e3d4d655d02555f4f0265fa64c5d2062e6f10eb554c57cbe56bc6acbd8c12adca1149b04659538139d60fa47b00c655cdb0746da2c7c1cd853fb0af50da03b21b860d3926c7d2076fb896ec62efa3e29fb347e9b04144313f08bf6c48d1cceb29e16e564267c2fc0b4fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6ffffffffffffffffffffffff8ef68f613056e57f9d900c6762970980a4e22ed30000000000000000000000000000000000000000000000000000000000000000d5529cc29e90ca039d4efb38d951f7a223e64e786259b7d5ae0ba6abc28fcec000000000000000000000000000000000000000000000000000000000000003e8e36144b154dde00cc04c22ccc9f4e1c90f42f827d07dc6d0e8abc802539e6f73b626a2dfff01ab7170b9b9fb0dfedee8182d02c7f2b715ee32d21387ac488e97000000000000000000000000000000000000000000000000000000000000001d5288eea52b1384bbd194e84bdced3db4535acc1e4425f62d9f086423c1a080a2ffacaabbee7f158c60ecd0beb300d4ad2b3d6ef1ae7b077b7388a60235ad01d3b93a28878293b15b658497cc6c6d0ea6ecf9ee07217f0c9aa5f8b0892a9eb0b46bc461e6566d1e29af3ce8205223547d7d1591d6c983d4e71f516a689f2dd4d52b3128f618d8c77ac9b410c634ccba8b771ee6fcb33e1262ce574faadc0739ffcfb0305d23a092552aa1f8162b86e86028572ff2e1a5e606fb2fdc27f770a96dfffffffffffffffffffffffffffffffffffffffffffffffffffffffffff900004af955b5eabc23b72fb36631df6b6a6b8056fd0f84ee1a44f070cad12e02f57751e6631f7d05772a00431eb187afcece2b1d414a5fb6e13fb716ad60eaa96d2c0000000000000000000000000000000000000000000000000000000000030000fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff800009f03c25c5931ada832c74234efe3a7e5db174aff54c60d89d95b5eb7a1f125724fbc80f84c596e0da4001e1358a01b014a23caaa3a4c93e5f88620a6dd815bb50000000000000000000000000000000000000000000000000000000000030000000000000000000000000000000000000000000000000000000000000000fffe0000000000000000000000007109709ecfa91a80626ff3989d68f67f5b1dd12d0000000000000000000000000000000000000000000000000000000000050000ab50615387eec32faea1a92ebacb034b669d9b64caaa08f4e8b895e8923ff48c00000000000000000000000000000000000000000000000000000000000d2f008d4df9f3e5302865d5a2c3e35190e52cb892cd96d49288d7a5b569c9d4f28b94da805defbad575e35f256337a84606c33c2f2b33f0e78eeaef1efe5e3bcd3884662363efd8563acc5f21df0b8c49b32b3a8349a85ebd52d151c66429e2ba6fe20000000000000000000000000000000000000000000000000000000000020000500fcf757a48689b990676816e3bc221ef2b31ed3d4db7c7f6931cd01a29659f7ecd983caca3e954df272d682fb68a8b1ff7e5ee2516051735f3de364bc6bb3b3f55739d9e53abe1dbc67448fcaeadc645a202234d964e460efc32ffc3b94576ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0ba30927ed70a0112a623136ef66fb5bc60df1fc7b4e412700bae551a900a1a5ccf73baa7a51456e5e773ff32608a06d3f9adaf6d074d5a76dd8e887a28722023", + "dataAbiValues": { + "methodSignature": "handleAmendEpoch(uint256,uint256[],uint256[])", + "inputValues": [ + "905074655485004108607337249943135160874717547047819677943667362413800122707", + [ + "57153772201059091427674702095160085020575969444899274695515814120981387630306", + "997", + "65702700018772295285641744305422253124998005341393525800568053425846215364082", + "393216", + "3", + "22214478862856196402235137118502809823820432438836253392278385596944989911114", + "6553600", + "111298188540392792167251238172853782003803079965936529581948532548817759667385", + "12774097867830172567665155031478904706813822746602401712704343890851429419423", + "300000000000000000", + "115792089237316195423570985008687907853269984665640564039457584007913129246720", + "77194726158210796949047323339125271902179989777093709359638389338608753093297", + "115792089237316195423570985008687907853269984665640564039457084007913129639937", + "196316340530931592175921944526990946203053766319513217569067355699179974", + "0", + "115792089237316195423570985008042581378843437462327153970303678099387767205587", + "49258431668674329985233305063018037235645410780116477310508292538408990935443", + "31493856368346246194720234575958573204098127017253979057082649670744714834686", + "32", + "115792089237316195423570985008687907853269984665640564039457584007913128775936", + "81734748995643829897749293629050790648292396040940111871005096764596803040195", + "58576618960013436577985191491624867541201923372516262339792817517247239069627", + "82809117699998044416903094946931632162775816286453799866195757321946017552546", + "0", + "25353566768913084137975124568004511822114351841878927897817779161144602405034", + "95595074313884271267459208754562795167546826447980276332141791768385412039937", + "74113386820690374841632175234754098493152877767692964222255803744873003835565", + "1000", + "115792089237316195423570985008687907853269984665640564039457584007913129380736", + "458752", + "3", + "4466502805272837827542281810375039010959250724098765293399392848083032653306", + "76822814172351236704381957085694141751880008096938687989110002656304911234201", + "115792089237316195423570985008687907853269984665640564039457584007912524839936", + "115792089237316195423570985008687907853269984665640563901831984007913129639936", + "115792089237316195423570985008687907853269984665640564039457584007912801959936", + "63524364525032563486099473209578151861273580307383532114660109137943770525943", + "31242833813677776401571601700389063228100765957093565970677171678370104107659", + "131074", + "604800", + "72832106766726792058423032174356857004028480144157507654636072930991491812244", + "262144", + "106791742397202938182777462122874042302016213385485331829509551220079480108979", + "50787235201274696145106251269836276692246095160314164782915832401458227691317", + "524188", + "694444444444", + "104068505613939395620673537148501655846091818995213599622855705840613209316570", + "21027753237518509859013298513333261540195089137345481702615930526600716400247", + "458752", + "74576675562143808956693745165501454248914564230543746207844979903835350328217", + "97849267750834936202069277582968220853718105898992477735441665874625100906150", + "13445900430392228723257928073146961807097387790884559974765581692820184225707", + "93921873971274920962213762017475619213210183931518380568421618927139721366560", + "67818898024236242084042521021667633473967346330859660123835332080677218879349", + "3", + "645326474426547203313410069153905908525362434349", + "61137222976443039109911608729104452804191070247950560134441070334422814899132", + "21103274347266413479703070695065142448029868551910200139833503007741245282416", + "115792089237316195423570985008687907853269984665640564039457584007913128430336", + "115792089237316195423570985008042581378843437462327153970303678099387767205587", + "75371423090025251448523763095978950134991139729190694438513593473478234475365", + "115792089237316195423570985008687907853269984665640564039457584007913128889088", + "115792089237316195423570985008687907853269984665640564039457584007913129639680", + "90272236245973403234983831901481661623806340525386389709016894470763693838562", + "1000000000000000", + "32940698741547198576231977008498678030316414160745073629678995680899735352560", + "17356886465974949297740906028401751349449125040675107917178624515727185941405", + "43864240000434850618035279849298712645569081110998933520835965174566659061499", + "62162581245320974403036203567003251911058458786240641759078759572784452452532", + "115792089237316195423570985008687907853269984665640564039457584007913129639926", + "115792089237316195423570985008042581378843437462327153970303678099387767205587", + "0", + "96488600126906225865587874648621364254506924508256347287845454729728719048384", + "1000", + "102846874893284621945828007270689593150392822824032189361788766148864593784691", + "82389202752447669384498899468905313790058128858245263457757434057410801602199" + ], + [ + "37331591853195898332646914233173156955501937159015030398665417168470977577122", + "115644852447380397106580820209472115954010305551228447193779313880069065998803", + "83780633840859455039201963591578546882784623668416050544233602266931409105076", + "48744452502391184566360786457904555535403359862785255399679643279797858981077", + "19536310699872020071375096717549843195520823039636054431981813458089300933119", + "93940058534988809565601868948434030179172844667554385226371768320462873995629", + "115792089237316195423570985008687907853269984665640564039457584007913129181184", + "33911687267201826747227228408667605311127959699127589037438593522296594560375", + "37044399681956569630066473435830066290752459357848831750171393433806970645804", + "196608", + "115792089237316195423570985008687907853269984665640564039457584007913129115648", + "71924384894433292096989519172037299445580544500513898576006906343017514345842", + "36065772403896067072996942935610603333651879905849624192774582834877652097973", + "196608", + "65534", + "645326474426547203313410069153905908525362434349", + "327680", + "77487516594307415765035774972120118522131374758824921318574400461875517060236", + "864000", + "63913883984472213085539992323673314504226457836791357038462740680155449166740", + "98831005740957109638021708781159126811871769049869769667432650266880395524228", + "46198439941858928614091063460399623917777648473584188038534412802191458463714", + "131072", + "36212962421318419301993835762131349070021499536150148004768772560220653708703", + "57354673270993789344352727846460728222299326903621920205323618921321677110075", + "28646689411467215300358786927112113082682434223951368508192384407000789370230", + "115792089237316195423570985008687907853269984665640564039457584007913129639904", + "84216009570163080362684513090370046181896401684199635219638541266786313706076", + "93833235313702148338103348269210324456108000960628966079234547430264346386467" + ] + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 20470, + "blockTimestampDelay": 408021 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000090000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 6, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x0fb55087fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6c580", + "dataAbiValues": { + "methodSignature": "handleApproveModule(uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913129035136" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 8529, + "blockTimestampDelay": 184502 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000030000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 5, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x223b137400000000000000000000000000000000000000000000000000000000000151800000000000000000000000000000000000000000000000000000000000000040ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffec00000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000000000001813512a62e6c213f6d51f779f18e2c86e0d00fe76b8307ab550d59bb26dd317a0000000000000000000000000000000000000000000000000000000000000027416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c656400000000000000000000000000000000000000000000000000", + "dataAbiValues": { + "methodSignature": "handleSetRequestModuleData(uint256,(uint256,string,address,uint256))", + "inputValues": [ + "86400", + { + "accountingExtension": "0x0000000000000000000000000000000000000001", + "chainId": "Address: low-level delegate call failed", + "epoch": "115792089237316195423570985008687907853269984665640564039457584007913129639916", + "paymentAmount": "58442129073348854913675807273523946543963145606711603520462692937339565322618" + } + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 15158, + "blockTimestampDelay": 295089 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000050000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 1, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xec5bf215449ba16be31dc1d7de22fb93baba8df1958226e92a715719a8538005fae2aa18", + "dataAbiValues": { + "methodSignature": "handleFinalizeRequestResponseModule(uint256)", + "inputValues": [ + "31032249088497022257228939088440837287694462762632281658808369736101373585944" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 20983, + "blockTimestampDelay": 360615 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000090000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 7, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x223b13740000000000000000000000000000000000000000000000000000000000008f8000000000000000000000000000000000000000000000000000000000000000404d995b471c561b6a40db52ed1b0514237c79ca6e737325db49d7a7562fad4da00000000000000000000000000000000000000000000000000000000000000080000000000000000000000000213dc43012f326a0b2168c94fe01cabfdb0135490000000000000000000000000000000000000000000000000000000000055f00000000000000000000000000000000000000000000000000000000000000005bd25121e6f17a79669a63f3ee85a9e50f9718b00dc9ba49127d4896b0958069313f71ea11b70ef3e5c4e3d9124d325233b79b1ea36acb3e29610450877a8edf6525d7e8b05efb2c65283bf8333ffffa1213857d2b92e272a29e0fcb0000000000", + "dataAbiValues": { + "methodSignature": "handleSetRequestModuleData(uint256,(uint256,string,address,uint256))", + "inputValues": [ + "36736", + { + "accountingExtension": "0x213Dc43012F326A0B2168c94FE01cabFDB013549", + "chainId": "\ufffdQ!\ufffd\ufffdzyf\ufffdc\ufffd\ufffd\u000f\ufffd\u0018\ufffd\rɺI\u0012}H\ufffd\ufffd\ufffd\ufffdi1?q\ufffd\u0011\ufffd\u000e\ufffd\ufffd\ufffd\ufffd\ufffd\u0012M2R3\ufffd\ufffd\u001e\ufffdj\ufffd\u003e)a\u0004P\ufffdz\ufffd\ufffde%\ufffd\ufffd\ufffd^\ufffd,e(;\ufffd3?\ufffd\ufffd\u0012\u0013\ufffd}+\ufffd\ufffdr\ufffd\ufffd\u000f\ufffd", + "epoch": "35099046917880542585164555430508038868065917922440903797197539250676616220064", + "paymentAmount": "352000" + } + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 56280, + "blockTimestampDelay": 458752 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000080000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 3, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xefe223c5fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe00000000000000000000000000000000000000000000000000000000000000000000", + "dataAbiValues": { + "methodSignature": "handleDisputeResponseOracle(uint256,uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913129508864", + "0" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 14098, + "blockTimestampDelay": 569046 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000040000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 4, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x3f60f9ccc48e72a465398a458fa410f65630310cd37dc76294bc92537e2601e96c60ebd10000000000000000000000000000000000000000000000000000000000000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0000", + "dataAbiValues": { + "methodSignature": "handleRelease(uint256,uint256,uint256)", + "inputValues": [ + "88905001836693742325507352277997560608298154628648216827782397487703371344849", + "0", + "115792089237316195423570985008687907853269984665640564039457584007913129574400" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 0, + "blockTimestampDelay": 0 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000030000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 6, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x223b1374fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6c57f000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000003c80000000000000000000000000000000000000000000000000000000000000080000000000000000000000000da53940b00458626f6289ddf0adfdfa413fab300fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa00000000000000000000000000000000000000000000000000000000000000000031213c9412f9e5d2844620a737afabe7451705dc25ae97046b27367c0d73121c377e07f41a8682748c3637fadc5e985348d4000000000000000000000000000000", + "dataAbiValues": { + "methodSignature": "handleSetRequestModuleData(uint256,(uint256,string,address,uint256))", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913129035135", + { + "accountingExtension": "0xdA53940b00458626F6289Ddf0aDfDfA413fAB300", + "chainId": "!\u003c\ufffd\u0012\ufffd\ufffd҄F \ufffd7\ufffd\ufffd\ufffdE\u0017\u0005\ufffd%\ufffd\ufffd\u0004k'6|\rs\u0012\u001c7~\u0007\ufffd\u001a\ufffd\ufffdt\ufffd67\ufffd\ufffd^\ufffdSH\ufffd", + "epoch": "968", + "paymentAmount": "115792089237316195423570985008687907853269984665640564039457584007913129246720" + } + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 0, + "blockTimestampDelay": 282868 + }, + { + "call": { + "from": "0x00000000000000000000000000000000000a0000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 5, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x48a41c27120e574151e78e43d42b5f1d2755a6c8c1f3465ced2014824c5e3c7e4eeba9444fc74ee0c24ebdba3e62450bb6d404762453c8f86c21f2373a1ba170f3ecf81dac04840e25f58b0a6d622417c093c48e05fa9efa5bddc843219fe247671e0087", + "dataAbiValues": { + "methodSignature": "handlePropose(uint256,uint256,uint256)", + "inputValues": [ + "8166969346359948639484006387253416172301236988256769726962054929875661990212", + "36084861999675023071727212187156050330492265038665057332289628950360509708317", + "77805788756535527407772768649618221004754717959448356492205955344147878379655" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 32, + "blockTimestampDelay": 524288 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000060000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 2, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x727899ff8e109937a0c12587ee4666cf7eb8f9a914f1385f133128a7bbf4f5eff743301500000000000000000000000000000000000000000000000000000000000546005172646d987a680e04dd6a045e2c8e98a680e2b9c41a2d98c3072682e7a7efc25e43b123c01ac311bee46cc3bfa5a0be50d6b4473163049ec4c37d3a1caf1b11", + "dataAbiValues": { + "methodSignature": "handlePledge(uint256,uint256,uint256,uint256)", + "inputValues": [ + "64257751518777829519648785807987822488615391450098951710757499941744441241621", + "345600", + "36839454429956002479784537352517879993063816426425600860733833535606361681858", + "42637009093099676781532913644885930180275839542941773954417676940607658859281" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 18765, + "blockTimestampDelay": 352717 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000070000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 7, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x3c26dcf8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff70000", + "dataAbiValues": { + "methodSignature": "handleSetEpochManager(uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913129050112" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 25275, + "blockTimestampDelay": 604799 + }, + { + "call": { + "from": "0x00000000000000000000000000000000000a0000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 6, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xec5bf21572dba7dbe09c3bbe6a88d23c3bd9acfe205d1d60aefecc0db6a8499e751e9815", + "dataAbiValues": { + "methodSignature": "handleFinalizeRequestResponseModule(uint256)", + "inputValues": [ + "51951762765201292588978808218288335040492006071994363203642941846922903590933" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 42594, + "blockTimestampDelay": 143245 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000030000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 7, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xd1a55655388924a9c0b4fab8a3a6823ac564a32fb78cfbcc473b96e55fbeebc0eb71d773", + "dataAbiValues": { + "methodSignature": "handleRevokeModule(uint256)", + "inputValues": [ + "25571830607931438209766452591287454872650721757204844895931688485804152313715" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 53210, + "blockTimestampDelay": 360623 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000040000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 5, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x1c6850cfa7e5b450595c21a14259f758b64ec4381302d527c203a49e4b9c1e83094266dd6b48dae36a7e33922c16e094ce88a626bf6eaa1d596dd330476320c9b67cb28dfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0000", + "dataAbiValues": { + "methodSignature": "handleUpdateDisputeStatus(uint256,uint256,uint256)", + "inputValues": [ + "75942098171788587147868381348791675977767975212740010787554276083613701400285", + "48526198498900060195577435149830061143198857828146295147538220227829339828877", + "115792089237316195423570985008687907853269984665640564039457584007913129377792" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 14516, + "blockTimestampDelay": 162774 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000080000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 4, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xb05752f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff70000fffffffffffffffffffffff80d5614d5661c22f91420df44ee9eab0b97e74ad62bba341ead94025d38af6eca293db8770eb1b32ba67b7363e9f3d6803df81b0d0000000000000000000000000000000000000000000000000000000000000024", + "dataAbiValues": { + "methodSignature": "handleOnSettleBondEscalation(uint256,uint256,uint256,uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913129050112", + "115792089237316195423570984997072031313592135005999182794687277654456605821654", + "19778445761017581235509319627811875743548082417220173652855107228865444453133", + "36" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 258, + "blockTimestampDelay": 101436 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000090000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 8, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x13a8b8040000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000000050000000000000000000000000000000000000000000000000000000000010000fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd0000000000000000000000000000000000000000000000000000000000000006ffeeb3fd82fd57624ae9fddc080413e063c59aebfdd9e86aa1d14012b23cc42c3909a33c5245d7d9c850d37caf97974d05edd8cfe363dd7336cd23498b53ce1fac34000000000000000000000000000000000000000000000000000000000000003c080aa8886e229c59ad31a48e8790c532b08554e63f60fd65922b33e3589dd8b96aa104212b8f7bc224e863f0e8c252064d7229b15bbdbbe21c0b370fb52ecf016ae7f838205c29fb37c80991959f4df295b815ab130ddaf950ec1bec40be1244219653dcfedcb982b35ad7871ca540ce120b5cd731953fc8b91d4c4dc6f0e3d4d6f3303d5fde3a31146530161a95a9e5730847bb0e1adc263d276fd57bd0e9d5a1cc4a17639fc1be64e2f04f022fe314e4eb945526ac1e64f07770f1ade7d0db6c94d83e4ccac8e80511cfc9d681f3d91507412e8b07c2e7c8d526c804bea9d13570a7586321df39a35efc4800cfe6f84e57e37881266b4981bf8047828149e34fffc8ffbda96ca0340d3f9a352599a6dd40c1b5e04a6df65851467da3e99955756f07edf77dc0a01f914c598c84ffcc8992a824b7692ecadd637fd191d1ed0c455a2e9e136425ea6ed45a40080c391f2f2deb3b8048cfba079bbcfe913a6ef84d1e680ee7ba81fd7eaff5fa2094ed84e21f7f8f41e16193838b0e4c0ca6197ae2edffcfd0479da46a691dd1169eba1ff20b64d16f5124b8601d74e5e1320d6a8ae86f61d0b2921f586a223eed1d260417e9593c5fe94fe9c7c3e79e094cca39a2efac7e2bcd9829cb27ab0e73c400c60da9115aeb6f19875c4cd2353da0a35d33ecffa467bb2268d77ad6d71dd9bcb7b024f5ff4cd6a4007585993d5ea7df79255473ed437ad85ba26f6d6baec88ce97da00bcf30683c9c13d2412347ea64ac677e6040592518afb3ded7e96495db0cdf7d26a4975b0d955fc54b5bd4ed185f739cc30f03a7f23a25a5174766f8d7fd93b39c836e9c8afd3dd24301ff3dc6ba307623d89316ee4ce81d67849775b6a630da2070162aeb4c72585d93e0317c67b28a9a3a12d3f3fdeabf90aeb820806d3c6fed80f683055994f279e04b7d917f52c54497abed020dfd879d9e39b05bf9b57cabac7a801afb2a0241460b62bb477f69b395ce79330f3ac1b16009901a01e5a6a460f75039dea573505eba6ad0f70eb27909a646195dc69c0f5ca8a766100f3be920285377868bbaeadebcd299fe8c0427854ae7435ba56c29e52895feefb622ecc2945098f01cbdda3630343062eb1e37c3d5a4e6ae57229bba8c4fea1628c1ba448bc5cdf625c231047e4801079dd944f6f545e8919a5d5551d29a15bde1c5371198736dbb662280b7843d38d45d0dce2926c6fb2a8b59a8b7845c6c2d964a5aa85d684263c4b83dc4c7171da1e59e37c80155e035755661f7634ccd7b55a898d31544c8468e6f488bdede21dcc9265aa8818e56017d605c1dd0743ea6e2830c408cc25b6552d6014b618f130869b725292a8377fd7a13212306a1eca6e7cf0e7a8cde94bc2a8b3a95aecc11f627c13d2c7f480c3855b8cbd276a30a3fda895db68e33faf65b1bcd52b09bcfa04b9cb8b5f72afe3c9bde9ead1c97eb062e7112bc9aeca5c2bbe3ceec1ae37d16e29361c16456d264bda7323cc19e74ab7d7ebca395dfcb5bbf2ab0baad7794bba7db130667d95c3d572935aec28dc8b9f511a602bf74215c24248625d15b17ba40c7a58043e38ced1995d2154c366bc0be0e2eb305dd9eb025f96255be97a43631c8fadce211bafc2a31de41868fc1a4f2114e6a94cb7247ef7a7de850584011d18228e6e4bcdd035f52ec239685e26f7e641e9e709f65c50fcce5127abc58626ca96a4c1f5d7676f8e6bd1dabd05ad51ae7bbda1fc57e607b0e8d65071ea96dd51dd971e5934ba0a695986eb01879d508dbb993c92579d9b28574782cd7e0b758d48c6eb6a6c277838e4d71679e07e68fb0f85be1c4c4c1fe1d834de1cecdaa5d2a4f5d6a7d28fde6e6e96b919af9ad18de545be180fc12f3ccfcb9c7bde224c1c74304938d515f9cdc98040161272295aeec9689de3f42cd70e2dddd290ad657403cb197b4fd042e8b60dde8afc62b97f16b1feaffbab7823c8ec40a5f49fad5dba3355b47e16535bf0d4d0ac71372d1baaa0bf9b807572fcd8e70c4205736d8077a465d6e4d070f7d5f012f24141d1a4ef2e87e8896da73960cf26a54c6038c03a022069b8db8a3f4022289b2ee17a7411ac2c42b9f7f37335c0c0075d075fb276fc33c1f3f10462378fcd112eb273ee9bd511eb3f30f58b6f1edb2df4e57d24c67070dee36cf818164bae2dec3717b552c96ab42019d30f69484ea9a4dc68bda97dcba0fc6a093b5ba8e1e15e165fa671b83bef8b7b0cd614c1106a996895e97839afa6657e0febc0b48b129528ebe80368d5f23debd463575f69b7ed8426dc3fa665f13b9c08c8c05a1d4c31b41732523d2b943b8eee9b43a74a4cd533b781512468954ceec8c560e2522373a0c0a1b0e090af4cbaf9c4b28b2e30023693ebef35cdd1ada0dd7102e3ae0672b85fd5b7126b24cc4046a74abe14e7a2b592b1f463cb7110964aac14bb7e710ffe434b5dbbbf05edc9bb7a5c827fb36ab1799350c43a72fd170226bc9b9fffaa3744056aa18c854e975f117cc594be842217b1b451aea7ca191900a670f29acf18cb968865df37f4458ba9e720ed946a0ca1db4531403101cd0da03396348f9daf3cdca7b849d0ca2f15ee9fa5363f7fa7504ade218503f485f0cb3a1bac183cbae7268eeeef95c5a6797176ffa49a2cb7da742f9ad1cc3b7090cf4f59d8d046fb365198deead59f9514815d7c4494d8614", + "dataAbiValues": { + "methodSignature": "handleCreateRequests(uint256[],bytes32[])", + "inputValues": [ + [ + "65536", + "115792089237316195423570985008687907853269984665640564039457584007913129443328", + "458734", + "81411916260887808935637274574103901471821894122785804973774955777497682950409", + "73833572969127614450188660123107505555423378693848513117239642789239664389172" + ], + [ + "080aa8886e229c59ad31a48e8790c532b08554e63f60fd65922b33e3589dd8b9", + "6aa104212b8f7bc224e863f0e8c252064d7229b15bbdbbe21c0b370fb52ecf01", + "6ae7f838205c29fb37c80991959f4df295b815ab130ddaf950ec1bec40be1244", + "219653dcfedcb982b35ad7871ca540ce120b5cd731953fc8b91d4c4dc6f0e3d4", + "d6f3303d5fde3a31146530161a95a9e5730847bb0e1adc263d276fd57bd0e9d5", + "a1cc4a17639fc1be64e2f04f022fe314e4eb945526ac1e64f07770f1ade7d0db", + "6c94d83e4ccac8e80511cfc9d681f3d91507412e8b07c2e7c8d526c804bea9d1", + "3570a7586321df39a35efc4800cfe6f84e57e37881266b4981bf8047828149e3", + "4fffc8ffbda96ca0340d3f9a352599a6dd40c1b5e04a6df65851467da3e99955", + "756f07edf77dc0a01f914c598c84ffcc8992a824b7692ecadd637fd191d1ed0c", + "455a2e9e136425ea6ed45a40080c391f2f2deb3b8048cfba079bbcfe913a6ef8", + "4d1e680ee7ba81fd7eaff5fa2094ed84e21f7f8f41e16193838b0e4c0ca6197a", + "e2edffcfd0479da46a691dd1169eba1ff20b64d16f5124b8601d74e5e1320d6a", + "8ae86f61d0b2921f586a223eed1d260417e9593c5fe94fe9c7c3e79e094cca39", + "a2efac7e2bcd9829cb27ab0e73c400c60da9115aeb6f19875c4cd2353da0a35d", + "33ecffa467bb2268d77ad6d71dd9bcb7b024f5ff4cd6a4007585993d5ea7df79", + "255473ed437ad85ba26f6d6baec88ce97da00bcf30683c9c13d2412347ea64ac", + "677e6040592518afb3ded7e96495db0cdf7d26a4975b0d955fc54b5bd4ed185f", + "739cc30f03a7f23a25a5174766f8d7fd93b39c836e9c8afd3dd24301ff3dc6ba", + "307623d89316ee4ce81d67849775b6a630da2070162aeb4c72585d93e0317c67", + "b28a9a3a12d3f3fdeabf90aeb820806d3c6fed80f683055994f279e04b7d917f", + "52c54497abed020dfd879d9e39b05bf9b57cabac7a801afb2a0241460b62bb47", + "7f69b395ce79330f3ac1b16009901a01e5a6a460f75039dea573505eba6ad0f7", + "0eb27909a646195dc69c0f5ca8a766100f3be920285377868bbaeadebcd299fe", + "8c0427854ae7435ba56c29e52895feefb622ecc2945098f01cbdda3630343062", + "eb1e37c3d5a4e6ae57229bba8c4fea1628c1ba448bc5cdf625c231047e480107", + "9dd944f6f545e8919a5d5551d29a15bde1c5371198736dbb662280b7843d38d4", + "5d0dce2926c6fb2a8b59a8b7845c6c2d964a5aa85d684263c4b83dc4c7171da1", + "e59e37c80155e035755661f7634ccd7b55a898d31544c8468e6f488bdede21dc", + "c9265aa8818e56017d605c1dd0743ea6e2830c408cc25b6552d6014b618f1308", + "69b725292a8377fd7a13212306a1eca6e7cf0e7a8cde94bc2a8b3a95aecc11f6", + "27c13d2c7f480c3855b8cbd276a30a3fda895db68e33faf65b1bcd52b09bcfa0", + "4b9cb8b5f72afe3c9bde9ead1c97eb062e7112bc9aeca5c2bbe3ceec1ae37d16", + "e29361c16456d264bda7323cc19e74ab7d7ebca395dfcb5bbf2ab0baad7794bb", + "a7db130667d95c3d572935aec28dc8b9f511a602bf74215c24248625d15b17ba", + "40c7a58043e38ced1995d2154c366bc0be0e2eb305dd9eb025f96255be97a436", + "31c8fadce211bafc2a31de41868fc1a4f2114e6a94cb7247ef7a7de850584011", + "d18228e6e4bcdd035f52ec239685e26f7e641e9e709f65c50fcce5127abc5862", + "6ca96a4c1f5d7676f8e6bd1dabd05ad51ae7bbda1fc57e607b0e8d65071ea96d", + "d51dd971e5934ba0a695986eb01879d508dbb993c92579d9b28574782cd7e0b7", + "58d48c6eb6a6c277838e4d71679e07e68fb0f85be1c4c4c1fe1d834de1cecdaa", + "5d2a4f5d6a7d28fde6e6e96b919af9ad18de545be180fc12f3ccfcb9c7bde224", + "c1c74304938d515f9cdc98040161272295aeec9689de3f42cd70e2dddd290ad6", + "57403cb197b4fd042e8b60dde8afc62b97f16b1feaffbab7823c8ec40a5f49fa", + "d5dba3355b47e16535bf0d4d0ac71372d1baaa0bf9b807572fcd8e70c4205736", + "d8077a465d6e4d070f7d5f012f24141d1a4ef2e87e8896da73960cf26a54c603", + "8c03a022069b8db8a3f4022289b2ee17a7411ac2c42b9f7f37335c0c0075d075", + "fb276fc33c1f3f10462378fcd112eb273ee9bd511eb3f30f58b6f1edb2df4e57", + "d24c67070dee36cf818164bae2dec3717b552c96ab42019d30f69484ea9a4dc6", + "8bda97dcba0fc6a093b5ba8e1e15e165fa671b83bef8b7b0cd614c1106a99689", + "5e97839afa6657e0febc0b48b129528ebe80368d5f23debd463575f69b7ed842", + "6dc3fa665f13b9c08c8c05a1d4c31b41732523d2b943b8eee9b43a74a4cd533b", + "781512468954ceec8c560e2522373a0c0a1b0e090af4cbaf9c4b28b2e3002369", + "3ebef35cdd1ada0dd7102e3ae0672b85fd5b7126b24cc4046a74abe14e7a2b59", + "2b1f463cb7110964aac14bb7e710ffe434b5dbbbf05edc9bb7a5c827fb36ab17", + "99350c43a72fd170226bc9b9fffaa3744056aa18c854e975f117cc594be84221", + "7b1b451aea7ca191900a670f29acf18cb968865df37f4458ba9e720ed946a0ca", + "1db4531403101cd0da03396348f9daf3cdca7b849d0ca2f15ee9fa5363f7fa75", + "04ade218503f485f0cb3a1bac183cbae7268eeeef95c5a6797176ffa49a2cb7d", + "a742f9ad1cc3b7090cf4f59d8d046fb365198deead59f9514815d7c4494d8614" + ] + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 10110, + "blockTimestampDelay": 42400 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000020000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 3, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x3c26dcf800000000000000000000000000000000000000000000000000000000000000fe", + "dataAbiValues": { + "methodSignature": "handleSetEpochManager(uint256)", + "inputValues": [ + "254" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 31534, + "blockTimestampDelay": 502997 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000030000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 8, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x2047c44989b83856711dd6e2fff2fb4f6f9c007bb9771f1755a26b351a1eb3dfa452d159151dc355d1937bfc43323997c9d735e9178a3cf3e993e7b764f4bed67935ce4cec7893aedcb0a69d085a606cdee3b9838daf3fefc61d38b0f14ecdec26e33aa460f9421d6b80b366831f81a22a3a22ebd80e834740e6cd645da1790063ab1669", + "dataAbiValues": { + "methodSignature": "handlePay(uint256,uint256,uint256,uint256)", + "inputValues": [ + "62292348944090115746545714663996537181369460052517339629743735497958525948249", + "9551156539331198657207388647210792475747533930906137829599958395912405241420", + "106958873184409346177772424067264194416183043741641706881530640155496522398372", + "43862434691542092146243210499299989128919851476248082112521904879876197521001" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 27735, + "blockTimestampDelay": 575806 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000040000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 6, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x52e3cb9cffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff", + "dataAbiValues": { + "methodSignature": "handleSetMaxUsersToCheck(uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007913129639935" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 18, + "blockTimestampDelay": 20 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000070000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 8, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xa59d317da9b7ffe2a516347da9c7b4c4b6ae42e8609c59b0cb7f09830ad4b00363e88790000000000000000000000000ca35a220922f49469f8450bb7a228e9617adf1720000000000000000000000000000000000000000000000000000000000127500b6d1272bc09fd6bc67cd052a9f8747390a82481960a5bc0c6fa1495297f44265404755b83e9d47b6336cb6091295892a5cb2df7df807bb022ae2427525c5139d0000000000000000000000046a5e66341c9b0903d85f83f62619a0f98f2a2bc2", + "dataAbiValues": { + "methodSignature": "handleSetResponseModuleData(uint256,(address,address,uint256,uint256,uint256))", + "inputValues": [ + "76765970479078505087172132790769196193875293089148160874969796479246995589008", + { + "accountingExtension": "0xCa35A220922f49469f8450BB7A228e9617adf172", + "bondSize": "82690479826364110402191412604700717854937475693104284101643285021357893763685", + "bondToken": "0x0000000000000000000000000000000000127500", + "deadline": "29074060066592041470552804502606064400270805074050606064170760158631296308125", + "disputeWindow": "6453264744265472033134100691539059085253624343490" + } + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 50550, + "blockTimestampDelay": 486500 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000080000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 5, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x51b295e30000000000000000000000000000000000000000000000000de0b6b3a7640000", + "dataAbiValues": { + "methodSignature": "handleFinalize(uint256)", + "inputValues": [ + "1000000000000000000" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 7633, + "blockTimestampDelay": 413359 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000020000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 4, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xaa1a5bd9ffffffffffffffffffffffffffffffffffffffffffffffffffffffe450800000943d1cc0e0a72acefbc5f3051c02cd30f7710a00ce7f42e7f3c32805d1895c0a", + "dataAbiValues": { + "methodSignature": "handleResolveDispute(uint256,uint256)", + "inputValues": [ + "115792089237316195423570985008687907853269984665640564039457584007794221121536", + "67050277710141099091744694012791071895666839557564171981805597144066810272778" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 25919, + "blockTimestampDelay": 76237 + }, + { + "call": { + "from": "0x00000000000000000000000000000000000a0000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 7, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x6b125a570000000000000000000000000000000000000000000000000000000000000003", + "dataAbiValues": { + "methodSignature": "handleRemoveEBORequestCreatorFinalityModule(uint256)", + "inputValues": [ + "3" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 23142, + "blockTimestampDelay": 128128 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000090000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 9, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x223b137400000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000000040d116271a88b78df3b16f9c87d74fbb517557fbdf0a3d8e721b30c85e3b8b69920000000000000000000000000000000000000000000000000000000000000080000000000000000000000000d7b78ae01d58862475bfc70e37701f8f9fe755e34dc2130568dfa3f1c536a456c48d15439ef9df8a3b95fc53df64359b920dab7400000000000000000000000000000000000000000000000000000000000000602bc10063184282f4a2fa990b72259004ee5f7dd720754e31cc660997590894d76ede263821e35c23c3f1b0be7c3a1243c2181fdf099f7fcb80b30c11e93e4682772569f5d9a0913ec02a8f6e442146aa449e9cfef196aa3242f95b524afc3005", + "dataAbiValues": { + "methodSignature": "handleSetRequestModuleData(uint256,(uint256,string,address,uint256))", + "inputValues": [ + "262144", + { + "accountingExtension": "0xd7b78Ae01D58862475Bfc70e37701f8f9fe755E3", + "chainId": "+\ufffd\u0000c\u0018B\ufffd\ufffd\ufffd\ufffd\ufffd\u000br%\ufffd\u0004\ufffd_}\ufffd uN1\ufffdf\t\ufffdY\b\ufffd\ufffdn\ufffd\u00268!\ufffd\\#\ufffd\ufffd\ufffd\ufffd|:\u0012C\ufffd\u0018\u001f\ufffd\t\ufffdˀ\ufffd\f\u0011\ufffd\u003eF\ufffdw%i\ufffd٠\ufffd\u003e\ufffd*\ufffdnD!F\ufffdD\ufffd\ufffd\ufffd\ufffd\ufffd\ufffd2B\ufffd[RJ\ufffd0\u0005", + "epoch": "94572525872791919411551829050132471108268635740177933945826491102856422844818", + "paymentAmount": "35170988950503319482269276984279281525970186279109048616497784802293716986740" + } + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 43327, + "blockTimestampDelay": 193391 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000050000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 2, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x5543846577a2896edbc40e9ca88afd969edb16fb5a69b5d4fb3f2126e81569fb7d6b4e830000000000000000000000000000000000000000000000000000000000000000", + "dataAbiValues": { + "methodSignature": "handleSetResolutionModuleData(uint256,(address))", + "inputValues": [ + "54112406733890487250843239228330788486116669721842396950548875203665053044355", + { + "arbitrator": "0x0000000000000000000000000000000000000000" + } + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 23840, + "blockTimestampDelay": 360469 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000010000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 3, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x7aeb6fab0000000000000000000000000000000000000000000000000000000000000000cbe948b5be54de7347b0baed46df324f3f9265f4eccf528ba7024d144ae9aa57", + "dataAbiValues": { + "methodSignature": "handleDisputeResponseBondEscalationModule(uint256,uint256)", + "inputValues": [ + "0", + "92231685454028004540036189161247674429480000235646609934922547449704212965975" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 40519, + "blockTimestampDelay": 558576 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000050000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 3, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x2047c449000000000000000000000000000000000000000000000000000000000003f4803e86cd1402413549cbe3dcdfaa14a8352d2984f61273ab07b33491fcdc2e3b57fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa00142f0ae537572b7f06fe05e73630aa85e994443501076dc5f72bc6e055d5e3a26c", + "dataAbiValues": { + "methodSignature": "handlePay(uint256,uint256,uint256,uint256)", + "inputValues": [ + "259200", + "28281569516280294651237206632352886593805123328047145378345777697969341872983", + "115792089237316195423570985008687907853269984665640564039457584007913129246740", + "21277954345951848503413116570976869607775625029033321891944703140412013126252" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 0, + "blockTimestampDelay": 0 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000070000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 9, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xb05752f7ffffffffffffffffffffffff8ef68f613056e57f9d900c6762970980a4e22ed3ffffd929f231e917bddb707d00fc6f59bb94e5adeda4d379972c38bcb82b1578194357abacca51d454e3dcd860254c9d793e6ae9fe8ddf727f5da7c3debee1528c1daa24ce7c4268aa8a1d1d86475ccd8da1cab7e02577fc2fea5127e5ea681d", + "dataAbiValues": { + "methodSignature": "handleOnSettleBondEscalation(uint256,uint256,uint256,uint256)", + "inputValues": [ + "115792089237316195423570985008042581378843437462327153970303678099387767205587", + "115791821200072590524970467483259647001631435429564949130744529707950148359544", + "11426805048201805963169305461898672040284463055656252044675264087198940455250", + "63376211655718351371001050529841262640998658649231171098195437570374905784349" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 19334, + "blockTimestampDelay": 360627 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000030000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 9, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xd1a556556f60a873b54607721a734446886795cd45b739fc87b4e98200cc2a80aa91ebb4", + "dataAbiValues": { + "methodSignature": "handleRevokeModule(uint256)", + "inputValues": [ + "50377506123831754628685281813552634495196877964909193589569641750213365459892" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 9413, + "blockTimestampDelay": 17360 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000050000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 4, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xcd10417affffffffffffffffffffffff8ef68f613056e57f9d900c6762970980a4e22ed30000000000000000000000000000000000000000000000000000000000000000", + "dataAbiValues": { + "methodSignature": "handleEscalateDispute(uint256,uint256)", + "inputValues": [ + "115792089237316195423570985008042581378843437462327153970303678099387767205587", + "0" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 11350, + "blockTimestampDelay": 359625 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000070000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 10, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xdb106ace3d280395fccb07c6a5dfd64b44fcd42e6fbf15e21cf2eb30c5cc44f82ca315a4fffffffffffffffffffffffffffffffffffffffffffffffffbd62f96e76200001dc10fb9def0b910839351104d8d9c5ed8c95449ea35af15112790eca17a2eb00000000000000000000000000000000000000000000000000000000000000020", + "dataAbiValues": { + "methodSignature": "handleSlash(uint256,uint256,uint256,uint256)", + "inputValues": [ + "27661782395063698193352940616692331668161891326097904127568031406258563257764", + "115792089237316195423570985008687907853269984665640564039457284007913129639936", + "13458182629680645130818154872710839978279753283324590313766542751800879623856", + "32" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 0, + "blockTimestampDelay": 8 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000050000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 5, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x13a8b804000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000006a00000000000000000000000000000000000000000000000000000000000000032ffffffffffffffffffffffffffffffffffffffffffffbff6dcf787ddd30000000000555555555555555555555555555555555555555555555555555555555554d71deecc06ea91cb1bcaf752d734249ead10dba3412bbacb6c075fa8b7c30035ffffbf45e8fdd9d23c6dbb7b01a4b9958df8297736bd60755149b3e532f2791dc824597fd5f03a2c14088807202aa07bc4b68baf3ca0deb361d441bf51a03c5d0000000000000000000000000000000000000000000000000000000000000002fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0000000000000000000000000000000000000000000000000000000000000064eaab522cf7b43c436e73d823a787f6f5ce91566599d9365ad0b8fd21cdb9a1d5bfd2e21584dd14c0fa6c701f8feb697bbba6ce49af97388f54d1146230a7e6fa7aa391855d8c10bfbeeb34bfb3ae21385572b581853afa321d7bf89dbd5f57db9b1f49ce0f444bc76ea892965e60b283b9dc328e4a6465618b4c8748a5f2ade06ec5448e5afebf8743992fcc788625746cef6ee48f3004e5689c2353ad78ee984d44a95bda8d0eca021f3493e4fbfd801ab43b100ab36f0f082c318d217a4d6104ae4499aa7b9ad18a39626ccae83b5d874a22fd02f6a83c7b91228bf3d7e2430000000000000000000000007109709ecfa91a80626ff3989d68f67f5b1dd12d9d25c550d1dce4f82f73b8dcc0a1563ae3807de11f3bfd7a660529a4af8c330e00000000000000000000000000000000000000000000000000000000000003e8e414cab4a0f9dcb2a77893a7be65af8b8e310172bf2c5105d529e6504450ce03fffffffffffffffffffffffffffffffffffffffffffffffffffffffff70000000000000000000000000000000000000000000000000000000000000000000002ffffffffffffffed8da22e2dbc545f18a019ba33b78c0619a50197736d71e0df3f024687bd26450e31befce33a0f1d962f91dbde0f2b059cc80a2ca90d3d6284fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeae80fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd0000142ce2b3d1cbe4ea106fe2e8abd32942f329afb37ded261596cf93935d8a63bbb6a9a6d77f775d2abf35518df0c6254bf2243b780e8d69afd1c881ce9c5618e3d1c578b78a5d13db6622a56aa2f493b31d1ceb4c42beea89d46ccbe3e471037b00000000000000000000000000000000000000000000000000000000000000020ec27f23a27cbfa51e0f2ddb99984f46ce49ff42dcd6b4384facaa9b5db182535c3d56cdb8d7a38fe0a71ddef45f635bb87ff529945c5d16269c8f0a39245d27ffffffffffffffffffffffff8ef68f613056e57f9d900c6762970980a4d82ed3de5a7d7ac15f480f4b01f0f6214bb27cf573c1b173faed7e4d739545db3d285e6b7cacc3607b46ca25b85c1f375fdfaaeb2da8577a7c246f60f6b4f89e3b5de5275b194e71ab4e53847c8adb1a75b9ba329aa91b9221ea17b5ad9bd7341e95fbfcb1bb7cfb751679e53740bf99ebf0446139bae7dea4dbcf6398d2390c6c0524000000000000000000000000000000000000000000000000000000000012750090a405c85e777939c587f9fd675fb88438d6404d156a5daf4dd0c3148dc8efcf4d8e13dcadaa20de6c2ea8eb3d6062b0b0ff5e1929651d791ed646a29fe7a5110000000000000000000000000000000000000000000000000000000000010000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff14e68dbc99b1ca64c39e80cc676ed750909cfc9716632c25ac5060e5390d9fa64e6b4aeda2f9dbf442914a22d3d0af7bc5dcb3f3089ec0f36f689b5001b635780000000000000000000000000000000000000000000000000429d06918a70000fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffdffee882a645af8c7be6d0204ebf545606dbeed90041c95e2bc8361589d597b1fb48ac0752e18ab9eaccadfe8c0064e4e5f6bf8c60afb53b5eb009466dbd487f21bec08797cca6c8fc8cbb885ee5c0e5f9310a1f0f3db6fc26096fa1fd4b32a88b8247194a0110c8b274c5c0da47ccb25b6e3c31b05c77a9869213053aba5dd2536677a8374bbae18ccca0f54822d937600879ade5b1ed403f4946f8e90af14b314890000000000000000000000000000000000000000000000000000000000000001eb74aa4a874df7a335782afb334a89ab4e6c01d76b3d9cc1fe2ff916554e1e47", + "dataAbiValues": { + "methodSignature": "handleCreateRequests(uint256[],bytes32[])", + "inputValues": [ + [ + "115792089237316195423570985008687907853269984665640563737057584007913129639936", + "588949021592794776527765833580972838609161298958539652707202067097539924", + "97300149126468872946298719527718559585565665257986245164447256517436825075765", + "115791642508576853925903455799640806433872402605514539191602493507974827505949", + "90526793912853732476770378586585277343029490875048592954147148941125048351837", + "2", + "115792089237316195423570985008687907853269984665640564039457584007913129639934", + "100", + "106143904572085809367345156999994537224757041176896365712109151200852485710293", + "86764352337832765543243135124983939307060546704010196127172314433318589818618", + "55471167947462230089350410651390369929420914282189749916827202199679726999515", + "70163773172254528980983328759942934130758511185959352145159444818543825300960", + "50102955372567556491514702357555579969476127719319705342853027578991280189080", + "34949403812820303739696160479315432965725102677683363242846725312722350263649", + "2117156245181863891780898452852869243911901874320625874256816074787055460931", + "645326474426547203313410069153905908525362434349", + "71079852391896813957063743779150319803344180428654282229287260319500431274766", + "1000", + "103164065440785509990172417204742762960872811806416140653015052755049127136771", + "115792089237316195423570985008687907853269984665640564039457584007912978644992", + "2", + "115792089237316195307778895771371712429698999656952656186187599342272565600479", + "28499729936632181027456188814062791341980167576255328996025749534672244531844", + "115792089237316195423570985008687907853269984665640564039457584007913129553536", + "115792089237316195423570985008687907853269984665640564039457584007913129443328", + "9125562885114550931480067593791841579449611360550632175869852674707872703419", + "82620687095807894822672715295356445493430938527808615710009902450962702145763", + "94882287383467257979405315622849930615494021358762995058189695385862906381179", + "2", + "6676025693228821602247608155091043715251406817164054196531140988940986712659", + "41721158837053050299823051350385566222745598222798285009320417872749504257319", + "115792089237316195423570985008042581378843437462327153970303678099387766550227", + "100573334649086503842194753569836899284346481270167703051335103407971203098718", + "48617756202163964304041873980565407338979102073642939279270886685230094835173", + "17801158836147492066184211441311724727825683879567388308483181264065018107387", + "114296863769530692793417655521522383832011771556989401885926109654571538973988", + "1209600", + "65422853025283586318323521557159447223036856580449837561561715510604429062095", + "35079118706767911493932672185279904898541286022194878064121969747254118425873", + "65536", + "115792089237316195423570985008687907853269984665640564039457584007913129639935", + "9453610027455146493027345783990690814816068126690203309689399735142463676326", + "35469971961326465394482855579418590623266103564687152841456260419880068986232", + "300000000000589824", + "115792089237316195423570985008687907853269984665640564039457584007913129508846", + "61589447611274418248561831207091074656114852506959387062692807541808737268874", + "87051106180010566883934928413423474515126488244096168065028690751082059668460", + "3833152557393421359718460994913442463737212702259210843010968603061444458532", + "51373949994551874532021020473078958118795590399810405978006856002821605897831", + "55414430155065263052674293890809666778911738121654525477979261100536691365001" + ], + [ + "eb74aa4a874df7a335782afb334a89ab4e6c01d76b3d9cc1fe2ff916554e1e47" + ] + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 0, + "blockTimestampDelay": 581951 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000090000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 10, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x3c26dcf864294be83a58eb073de8b343bbb0302d54fe1f8eae1dd4189b04a31ccb138c5a", + "dataAbiValues": { + "methodSignature": "handleSetEpochManager(uint256)", + "inputValues": [ + "45304249479810880359013321461885329334191304905487559402900184695003598261338" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 23, + "blockTimestampDelay": 256 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000010000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 4, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0x40605c3f59547733744bb6aa3b948ed7db0c9ec5e723d7e5a3daa8b186c2e31ada2b259600000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000460000000000000000000000000000000000000000000000000000000000000001f00000000000000000000000000000000000000000000000000000000000726e0ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffef70f4d2274821468cd3da5812c52c59849a40988f425875b35bc9280f101986592045f36fc9b7a28b8f3d1590f4b6c576b835a31d73fd587445616649d22c380000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010011316b93c90b2954e5f685ac12ec40750d50a6c8edce7db4b0055d50c61c35a731f5c594ec0a05e1ff30134f53e31b2e805bfe14a93ec6b853210f6f40d3b56a0000000000000000000000000000000000000000000000000000000000119c0000000000000000000000000000000000000000000000000000000000000d2f00000000000000000000000000000000000000000000000000000000000002518000000000000000000000000000000000000000000000000000000000001baf8090d8a8081773c0b7a3c1986ea1546f048d5c1885a326cf72b87d1836d3923e140000000000000000000000000000000000000000000000000000000000062700fea998cd10f88335187124857b44d01e11ea70a89281878e8e741a125fef2f79a0752292c05214d83f876fb696759598e3f5fcc58d2e47a4016a9a0bdd08e13cfffffffffffffffffffffffffffffffffffffffffffffffff21f494c589700001c043201f6dd629e517ee09aab46a63c0ebe0e7f714318ece9eb0906c757d7fad34455dcab64c46e9e9434db7c8b32e422233fcc5965567024146642cec91e4400000000000000000000000000000000000000000000000000000000000003e8ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed8b00a6587e7185bb7b8eb7be87650a3ed8d318489d270b725059ad4d3dfc83bddd7c00000000000000000000000000000000000000000000000000000000000d2f0013d4a27fba570c08da9361ddcc4aaf7ad2bb70eae3c954242a5ab9818cad01f5c62d28beaecf65f00bd8564836773ab69f22bb5bf9a2048036a2c034dd9d3980ffffffffffffffffffffffffffffffffffffffffffffffffffffffacf1800000667f7713d44e73183990746628bf484ad904335dde0c85c333e67a90fe8e40e3b7b6d1c75af526d51d4e69f1c0a2f84f5d8e473586313a2d6b74ebd6c2a8a3c50000000000000000000000000000000000000000000000000000000000147500fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6c580fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe00000000000000000000000000000000000000000000000000000000000000350000000000000000000000000000000000000000000000000000000000000000fffffffffffffffffffffffffffffffffffffffffffffffff21f494c589c000047bfb7731084ecef826e21864db7b21685e4a54c97f8a1a295cbf3449add1424117f2b9c8a15fecec8ce2ade91243d86aefbcdec46847fc029cf7690d0f91a67000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000100002e9ee5529a1d745ee8f4e52ffe5e8bced434b773b39baf3b7ff8a6e7f99a553efffffffffffffffffffffffffffffffffffffffffffffffffffffffffff81700483c7d15a4fabaa3928f659f4a402c1327d3c7560f95e483fb582b83e6d0f658fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc000058734c30ed3dcf722610a8f7220adcc5df0fefc208a923a55a22d8cb31d90bb488c340641e819d25704e47716e95c42e643c26b737268fd7482b96cdcf8112d4fffffffffffffffffffffffffffffffffffffffffffffffff90fa4a62c4dffeefffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7000a8ffd405bfa2b705196f456df871eee2fd24472dea3cebd2fe4b1c82fcfbd0a431357513138b0b48a2471b2751ed4c1ed3756af7f6238ccb73d08d59d5ebfd4d6f443d9b9146bb74c2a74bc90910eabe9901de2a9a471daaa1d059d30a112302f00000000000000000000000000000000000000000000000000000000000c9780111ab9737a308fc3a79a0aea10fda53782311459f252b0f8177ec67f8045b9de7784e8ecc9192176e71c69f519a18675e4874584c463ab293dfbfc6fc6a0239115c7ea992046436abd0d547ea1cd3f37f2c770beadf55cec20073d07933742f30000000000000000000000000000000000000000000000000000000000015180d788f87f68f2bbec419ffe75db0da226eae363225ac083f5d5ff7fb8021001304e11a3f82a6169590f64b3205f726309ea6d8e967333347473c7bb79fcb24b77814bc8d363c16b946698ab3c6e97f3f6bf32fe58989d501a0a87a239eef722c47c8271019a2e092fb450254854dfe31d6e234a0fbd06ca24ccc194273fa746610764ddcfb88ce43f53c60e2ea98a8e274e04e03d9e3333b6af2dd693edf380fc0000000000000000000000000000000000000000000000000000000000000000ffffffffffffffffffffffff8ef68f613056e57f9d900c6762970980a4e22ed30000000000000000000000000000000000000000000000000000000000093a8085534e6e106f7258facae299849aebcd779806ca4389535ac53a64d8a2aa1a6dfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc00000000000000000000000000000000000000000000000000000000000000030000fffffffffffffffffffffffffffffffffffffffffffffffff90fa4a62c44c5807fc8c3c5c42ab9f40d12a1b94e962371575ae79ebd6b4cb24c954b2bc665542dd5dfff1b3f25a96537c5dbb8b7cb414ac7a7c2f5992aee62abbfff0d40effffdffffffffffffffffffffffffffffffffffffffffffffffffffffffcf0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002fa69b525f2f8afb2ab2709532ba6c19b8f0d2d024a645112186fb67461984363fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6c580ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0000ffffffffffffffffffffffff8ef68f613056e57f9d900c6762970980a4d4ffd3fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff800003a62493818a9ffc6c6d575ff0f7de1fd749868f366120706d698f1060b8bdf3800000000000000000000000000000000000000000000000000000000039ada009c7d74cfbdf6870b97239b87f02fbe69d202dd662a708acd2143de9e202aac4efffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd00004b4d98f7554646696e02284ba909382873b0fe7816957b68af6f82d5f72adde26275fabe47665062a8c7d719701c60f28a0527c422a8e22137e4fb0051ffb633000000000000000000000000000000000000000000000000000000000003f480fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6c58097b2a08caae117560e803d9ff487d1cae10fbdc4d7f1ce42c17c3279ffe8a62f", + "dataAbiValues": { + "methodSignature": "handleAmendEpoch(uint256,uint256[],uint256[])", + "inputValues": [ + "40405081372372013525978842751480547648830585058002218560052824541518384276886", + [ + "468704", + "115792089237316195423570985008687907853269984665640564039457584007913129639935", + "108302347374490114794247470068453275236970502802041765057741931396446790097286", + "40312865413521231599469127350250368932864074321428907992477063259908346096696", + "0", + "256", + "7776636403233298276253061663045486640566586725079590454983046077716153251239", + "22597570770411005718869703345429806287326890051333564724524690162399837402474", + "1154048", + "864000", + "151936", + "1814400", + "65515848873518125742099285123205810943868570509039343656124856800723611041300", + "403200", + "115187115288118217321521096822295133275178171810456120279525350046711931678585", + "72577015495683423729415946567495045139854135403158185023070152337249295458620", + "115792089237316195423570985008687907853269984665640564039456584007913129312256", + "12672172288865754958077163999193268232164723021684544264829499294607721617402", + "95558749249151737195728267629550015234200265821457644489891043472939732770372", + "1000", + "115792089237316195423570985008687907853269984665640564039457584007913128430336", + "75240288087120047969240812827624044409543488721765204073059881773745085209980", + "864000", + "8969637227260380969735815280626781060859691137771066048662962574156700123637", + "89637733348055167992630140218051507917741631649314216604589540142220331268480", + "115792089237316195423570985008687907853269984665640564039457584007556404084736", + "46361121975132759299427894430752904177409753528724240323705793688533277229283", + "83096265296122236816804385099747923929591995471611939729814346157993958613957", + "1340672", + "115792089237316195423570985008687907853269984665640564039457584007913129035136", + "115792089237316195423570985008687907853269984665640564039457584007913129639934" + ], + [ + "0", + "115792089237316195423570985008687907853269984665640564039456584007913129639936", + "32452946160499593434845515983749491193360575568983265452848750613217421366308", + "7914008998529120091403017187811262520050336970137546822451211378327503313511", + "131072", + "65536", + "21087135597924490160278020514065782793896386251015380148550080688744482624830", + "115792089237316195423570985008687907853269984665640564039457584007913129121536", + "32673399223708471639004615736289804896918918515932326137346663860919247894104", + "115792089237316195423570985008687907853269984665640564039457584007913129377792", + "40007243939561192903478474581237238277896365367969487827322469259954649369524", + "61859526995929563870496971111192669598713952570891010695340589311216477868756", + "115792089237316195423570985008687907853269984665640564039457084007913129639918", + "115792089237316195423570985008687907853269984665640564039457584007913129050122", + "65128193846263308659898635884805607662929603315266917015218026707436814797379", + "8748220186179438191757987152810977590993902718976285270336195886881194366166", + "110484216476355095116425746801137834228519025173024774277640481781885458067503", + "825216", + "7736536385935866230076509398764828221037707568349848839431264619680227506654", + "54060060382837424610463789153473438885123356029849274111165842602920746427281", + "9851791523055379701405275548384104572107430401262603791621449007965991813875", + "86400", + "97489268714271697896705846749594679479407455605280867798540626098486888104240", + "35311570264780500165106808272303065940551864765922418643875330416305075538807", + "58482257045423333150395405324167105011009172457122719577788102409466116776644", + "56317263283280387103251088560264135469139820267753028420016476996313861801569", + "3344405532647725072257448408366309387956403234721251587778117246701536510204", + "0", + "115792089237316195423570985008042581378843437462327153970303678099387767205587", + "604800", + "60304798471491061771187315716613785729266119230600130154555496580879529679469", + "115792089237316195423570985008687907853269984665640564039457584007913129377792", + "196608", + "115792089237316195423570985008687907853269984665640564039457084007913129035136", + "57798452355336411558304053412944624517533058062928609984161549502631077303341", + "96738404323568479536006817878102180689741362345052177931574407294650430783485", + "115792089237316195423570985008687907853269984665640564039457584007702676242432", + "0", + "2", + "113264981326813001426579739302796134635236993762371986774788670885055195267939", + "115792089237316195423570985008687907853269984665640564039457584007913129035136", + "115792089237316195423570985008687907853269984665640564039457584007913129574400", + "115792089237316195423570985008042581378843437462327153970303678099387766341587", + "115792089237316195423570985008687907853269984665640564039457584007913129115648", + "26407801570015489846079290137767899830219430462024808264222157239198944059192", + "60480000", + "70782466465377481098040837367240474665534298962720260604428952780686496541774", + "115792089237316195423570985008687907853269984665640564039457584007913129443328", + "34060566601264907942317606397667532019345739303935969127430028569503353986530", + "44535110834235003675732683884032315076716567284433000855253588131861869082163", + "259200", + "115792089237316195423570985008687907853269984665640564039457584007913129035136", + "68614846985407483661098704758783976762533480380480839604392799459043936085551" + ] + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 7165, + "blockTimestampDelay": 348336 + }, + { + "call": { + "from": "0x0000000000000000000000000000000000090000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 11, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xd1a5565500000000000000000000000000000000000000000000000003f0ffb1376b8b00", + "dataAbiValues": { + "methodSignature": "handleRevokeModule(uint256)", + "inputValues": [ + "284007913128430336" + ] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 10, + "blockTimestampDelay": 506673 + } +] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/coverage_report.html b/test/invariants/fuzz/corpus/coverage_report.html new file mode 100644 index 0000000..dd24bdf --- /dev/null +++ b/test/invariants/fuzz/corpus/coverage_report.html @@ -0,0 +1,197588 @@ + + + + + Coverage Report + + + + +
+

Coverage Report

+
+ + + + + + + +
Files: 65
Lines: 8454
Covered: + + + + + + + + 371 / 1371 (27.1%) + +
+
+
+ + + + + + + + + + + + +
+
+
+ + + + + + +
Lines covered: 0 / 3 (0.0%)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
1 + + + + + +
// SPDX-License-Identifier: MIT
+ +
2 + + + + + +
pragma solidity ^0.8.19;
+ +
3 + + + + + +

+                            
+                        
4 + + + + + +
import {IModule} from '../interfaces/IModule.sol';
+ +
5 + + + + + +
import {IOracle} from '../interfaces/IOracle.sol';
+ +
6 + + + + + +

+                            
+                        
7 + + + + + +
import {Validator} from './Validator.sol';
+ +
8 + + + + + +

+                            
+                        
9 + + + + + +
abstract contract Module is Validator, IModule {
+ +
10 + + + + + +
  constructor(IOracle _oracle) Validator(_oracle) {}
+ +
11 + + + + + +

+                            
+                        
12 + + + + + +
  /**
+ +
13 + + + + + +
   * @notice Checks that the caller is the oracle
+ +
14 + + + + + +
   */
+ +
15 + + + + + +
  modifier onlyOracle() {
+ +
16 + + + + + +
    if (msg.sender != address(ORACLE)) revert Module_OnlyOracle();
+ +
17 + + + + + +
    _;
+ +
18 + + + + + +
  }
+ +
19 + + + + + +

+                            
+                        
20 + + + + + +
  /// @inheritdoc IModule
+ +
21 + + + + + +
  function finalizeRequest(
+ +
22 + + + + + +
    IOracle.Request calldata _request,
+ +
23 + + + + + +
    IOracle.Response calldata _response,
+ +
24 + + + + + +
    address _finalizer
+ +
25 + + + + + +
  ) external virtual onlyOracle {}
+ +
26 + + + + + +

+                            
+                        
27 + + + + + +
  /// @inheritdoc IModule
+ +
28 + + + + + +
  function validateParameters(bytes calldata _encodedParameters) external view virtual returns (bool _valid) {}
+ +
29 + + + + + +
}
+ +
30 + + + + + +

+                            
+                        
+
+
+ + + + + + + + + + +
+
+
+ + + + + + +
Lines covered: 1 / 161 (0.6%)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
1 + + + + + +
// SPDX-License-Identifier: MIT
+ +
2 + + + + + +
pragma solidity ^0.8.19;
+ +
3 + + + + + +

+                            
+                        
4 + + + + + +
import {IOracle} from '../interfaces/IOracle.sol';
+ +
5 + + + + + +

+                            
+                        
6 + + + + + +
import {IDisputeModule} from '../interfaces/modules/dispute/IDisputeModule.sol';
+ +
7 + + + + + +

+                            
+                        
8 + + + + + +
import {IFinalityModule} from '../interfaces/modules/finality/IFinalityModule.sol';
+ +
9 + + + + + +
import {IRequestModule} from '../interfaces/modules/request/IRequestModule.sol';
+ +
10 + + + + + +
import {IResolutionModule} from '../interfaces/modules/resolution/IResolutionModule.sol';
+ +
11 + + + + + +
import {IResponseModule} from '../interfaces/modules/response/IResponseModule.sol';
+ +
12 + + + + + +
import {ValidatorLib} from '../libraries/ValidatorLib.sol';
+ +
13 + + + + + +

+                            
+                        
14 + +
+ +
+ + + +
contract Oracle is IOracle {
+ +
15 + + + + + +
  using ValidatorLib for *;
+ +
16 + + + + + +

+                            
+                        
17 + + + + + +
  /// @inheritdoc IOracle
+ +
18 + + + + + +
  mapping(bytes32 _requestId => uint256 _finalizedAt) public finalizedAt;
+ +
19 + + + + + +

+                            
+                        
20 + + + + + +
  /// @inheritdoc IOracle
+ +
21 + + + + + +
  mapping(bytes32 _id => uint256 _requestCreatedAt) public requestCreatedAt;
+ +
22 + + + + + +

+                            
+                        
23 + + + + + +
  /// @inheritdoc IOracle
+ +
24 + + + + + +
  mapping(bytes32 _id => uint256 _responseCreatedAt) public responseCreatedAt;
+ +
25 + + + + + +

+                            
+                        
26 + + + + + +
  /// @inheritdoc IOracle
+ +
27 + + + + + +
  mapping(bytes32 _id => uint256 _disputeCreatedAt) public disputeCreatedAt;
+ +
28 + + + + + +

+                            
+                        
29 + + + + + +
  /// @inheritdoc IOracle
+ +
30 + + + + + +
  mapping(bytes32 _responseId => bytes32 _disputeId) public disputeOf;
+ +
31 + + + + + +

+                            
+                        
32 + + + + + +
  /// @inheritdoc IOracle
+ +
33 + + + + + +
  mapping(bytes32 _disputeId => DisputeStatus _status) public disputeStatus;
+ +
34 + + + + + +

+                            
+                        
35 + + + + + +
  /// @inheritdoc IOracle
+ +
36 + + + + + +
  mapping(uint256 _requestNumber => bytes32 _id) public nonceToRequestId;
+ +
37 + + + + + +

+                            
+                        
38 + + + + + +
  /// @inheritdoc IOracle
+ +
39 + + + + + +
  mapping(bytes32 _requestId => bytes32 _finalizedResponseId) public finalizedResponseId;
+ +
40 + + + + + +

+                            
+                        
41 + + + + + +
  /// @inheritdoc IOracle
+ +
42 + + + + + +
  mapping(bytes32 _requestId => mapping(address _module => bool _allowed)) public allowedModule;
+ +
43 + + + + + +

+                            
+                        
44 + + + + + +
  /// @inheritdoc IOracle
+ +
45 + + + + + +
  mapping(bytes32 _requestId => mapping(address _user => bool _isParticipant)) public isParticipant;
+ +
46 + + + + + +

+                            
+                        
47 + + + + + +
  /**
+ +
48 + + + + + +
   * @notice The list of the response ids for each request
+ +
49 + + + + + +
   */
+ +
50 + + + + + +
  mapping(bytes32 _requestId => bytes _responseIds) internal _responseIds;
+ +
51 + + + + + +

+                            
+                        
52 + + + + + +
  /// @inheritdoc IOracle
+ +
53 + + + + + +
  uint256 public totalRequestCount;
+ +
54 + + + + + +

+                            
+                        
55 + + + + + +
  /// @inheritdoc IOracle
+ +
56 + + + + + +
  function createRequest(Request calldata _request, bytes32 _ipfsHash) external returns (bytes32 _requestId) {
+ +
57 + + + + + +
    _requestId = _createRequest(_request, _ipfsHash);
+ +
58 + + + + + +
  }
+ +
59 + + + + + +

+                            
+                        
60 + + + + + +
  /// @inheritdoc IOracle
+ +
61 + + + + + +
  function createRequests(
+ +
62 + + + + + +
    Request[] calldata _requestsData,
+ +
63 + + + + + +
    bytes32[] calldata _ipfsHashes
+ +
64 + + + + + +
  ) external returns (bytes32[] memory _batchRequestsIds) {
+ +
65 + + + + + +
    uint256 _requestsAmount = _requestsData.length;
+ +
66 + + + + + +
    _batchRequestsIds = new bytes32[](_requestsAmount);
+ +
67 + + + + + +

+                            
+                        
68 + + + + + +
    for (uint256 _i = 0; _i < _requestsAmount;) {
+ +
69 + + + + + +
      _batchRequestsIds[_i] = _createRequest(_requestsData[_i], _ipfsHashes[_i]);
+ +
70 + + + + + +
      unchecked {
+ +
71 + + + + + +
        ++_i;
+ +
72 + + + + + +
      }
+ +
73 + + + + + +
    }
+ +
74 + + + + + +
  }
+ +
75 + + + + + +

+                            
+                        
76 + + + + + +
  /// @inheritdoc IOracle
+ +
77 + + + + + +
  function listRequestIds(uint256 _startFrom, uint256 _batchSize) external view returns (bytes32[] memory _list) {
+ +
78 + + + + + +
    uint256 _totalRequestsCount = totalRequestCount;
+ +
79 + + + + + +

+                            
+                        
80 + + + + + +
    // If trying to collect non-existent ids only, return empty array
+ +
81 + + + + + +
    if (_startFrom > _totalRequestsCount) {
+ +
82 + + + + + +
      return _list;
+ +
83 + + + + + +
    }
+ +
84 + + + + + +

+                            
+                        
85 + + + + + +
    if (_batchSize > _totalRequestsCount - _startFrom) {
+ +
86 + + + + + +
      _batchSize = _totalRequestsCount - _startFrom;
+ +
87 + + + + + +
    }
+ +
88 + + + + + +

+                            
+                        
89 + + + + + +
    _list = new bytes32[](_batchSize);
+ +
90 + + + + + +

+                            
+                        
91 + + + + + +
    uint256 _index;
+ +
92 + + + + + +
    while (_index < _batchSize) {
+ +
93 + + + + + +
      _list[_index] = nonceToRequestId[_startFrom + _index];
+ +
94 + + + + + +

+                            
+                        
95 + + + + + +
      unchecked {
+ +
96 + + + + + +
        ++_index;
+ +
97 + + + + + +
      }
+ +
98 + + + + + +
    }
+ +
99 + + + + + +
  }
+ +
100 + + + + + +

+                            
+                        
101 + + + + + +
  /// @inheritdoc IOracle
+ +
102 + + + + + +
  function proposeResponse(
+ +
103 + + + + + +
    Request calldata _request,
+ +
104 + + + + + +
    Response calldata _response
+ +
105 + + + + + +
  ) external returns (bytes32 _responseId) {
+ +
106 + + + + + +
    _responseId = ValidatorLib._validateResponse(_request, _response);
+ +
107 + + + + + +

+                            
+                        
108 + + + + + +
    bytes32 _requestId = _response.requestId;
+ +
109 + + + + + +

+                            
+                        
110 + + + + + +
    if (requestCreatedAt[_requestId] == 0) {
+ +
111 + + + + + +
      revert Oracle_InvalidRequest();
+ +
112 + + + + + +
    }
+ +
113 + + + + + +

+                            
+                        
114 + + + + + +
    // The caller must be the proposer, unless the response is coming from a dispute module
+ +
115 + + + + + +
    if (msg.sender != _response.proposer && msg.sender != address(_request.disputeModule)) {
+ +
116 + + + + + +
      revert Oracle_InvalidProposer();
+ +
117 + + + + + +
    }
+ +
118 + + + + + +

+                            
+                        
119 + + + + + +
    // Can't propose the same response twice
+ +
120 + + + + + +
    if (responseCreatedAt[_responseId] != 0) {
+ +
121 + + + + + +
      revert Oracle_ResponseAlreadyProposed();
+ +
122 + + + + + +
    }
+ +
123 + + + + + +

+                            
+                        
124 + + + + + +
    if (finalizedAt[_requestId] != 0) {
+ +
125 + + + + + +
      revert Oracle_AlreadyFinalized(_requestId);
+ +
126 + + + + + +
    }
+ +
127 + + + + + +
    isParticipant[_requestId][_response.proposer] = true;
+ +
128 + + + + + +
    IResponseModule(_request.responseModule).propose(_request, _response, msg.sender);
+ +
129 + + + + + +
    _responseIds[_requestId] = abi.encodePacked(_responseIds[_requestId], _responseId);
+ +
130 + + + + + +
    responseCreatedAt[_responseId] = block.timestamp;
+ +
131 + + + + + +

+                            
+                        
132 + + + + + +
    emit ResponseProposed(_requestId, _responseId, _response);
+ +
133 + + + + + +
  }
+ +
134 + + + + + +

+                            
+                        
135 + + + + + +
  /// @inheritdoc IOracle
+ +
136 + + + + + +
  function disputeResponse(
+ +
137 + + + + + +
    Request calldata _request,
+ +
138 + + + + + +
    Response calldata _response,
+ +
139 + + + + + +
    Dispute calldata _dispute
+ +
140 + + + + + +
  ) external returns (bytes32 _disputeId) {
+ +
141 + + + + + +
    bytes32 _responseId;
+ +
142 + + + + + +
    (_responseId, _disputeId) = ValidatorLib._validateResponseAndDispute(_request, _response, _dispute);
+ +
143 + + + + + +

+                            
+                        
144 + + + + + +
    bytes32 _requestId = _dispute.requestId;
+ +
145 + + + + + +

+                            
+                        
146 + + + + + +
    if (responseCreatedAt[_responseId] == 0) {
+ +
147 + + + + + +
      revert Oracle_InvalidResponse();
+ +
148 + + + + + +
    }
+ +
149 + + + + + +

+                            
+                        
150 + + + + + +
    if (_dispute.proposer != _response.proposer) {
+ +
151 + + + + + +
      revert Oracle_InvalidProposer();
+ +
152 + + + + + +
    }
+ +
153 + + + + + +

+                            
+                        
154 + + + + + +
    if (_dispute.disputer != msg.sender) {
+ +
155 + + + + + +
      revert Oracle_InvalidDisputer();
+ +
156 + + + + + +
    }
+ +
157 + + + + + +

+                            
+                        
158 + + + + + +
    if (finalizedAt[_requestId] != 0) {
+ +
159 + + + + + +
      revert Oracle_AlreadyFinalized(_requestId);
+ +
160 + + + + + +
    }
+ +
161 + + + + + +

+                            
+                        
162 + + + + + +
    if (disputeOf[_responseId] != bytes32(0)) {
+ +
163 + + + + + +
      revert Oracle_ResponseAlreadyDisputed(_responseId);
+ +
164 + + + + + +
    }
+ +
165 + + + + + +
    isParticipant[_requestId][msg.sender] = true;
+ +
166 + + + + + +
    disputeStatus[_disputeId] = DisputeStatus.Active;
+ +
167 + + + + + +
    disputeOf[_responseId] = _disputeId;
+ +
168 + + + + + +
    disputeCreatedAt[_disputeId] = block.timestamp;
+ +
169 + + + + + +

+                            
+                        
170 + + + + + +
    IDisputeModule(_request.disputeModule).disputeResponse(_request, _response, _dispute);
+ +
171 + + + + + +

+                            
+                        
172 + + + + + +
    emit ResponseDisputed(_responseId, _disputeId, _dispute);
+ +
173 + + + + + +
  }
+ +
174 + + + + + +

+                            
+                        
175 + + + + + +
  /// @inheritdoc IOracle
+ +
176 + + + + + +
  function escalateDispute(Request calldata _request, Response calldata _response, Dispute calldata _dispute) external {
+ +
177 + + + + + +
    (bytes32 _responseId, bytes32 _disputeId) = ValidatorLib._validateResponseAndDispute(_request, _response, _dispute);
+ +
178 + + + + + +

+                            
+                        
179 + + + + + +
    if (disputeCreatedAt[_disputeId] == 0) {
+ +
180 + + + + + +
      revert Oracle_InvalidDispute();
+ +
181 + + + + + +
    }
+ +
182 + + + + + +

+                            
+                        
183 + + + + + +
    if (disputeOf[_responseId] != _disputeId) {
+ +
184 + + + + + +
      revert Oracle_InvalidDisputeId(_disputeId);
+ +
185 + + + + + +
    }
+ +
186 + + + + + +

+                            
+                        
187 + + + + + +
    if (disputeStatus[_disputeId] != DisputeStatus.Active) {
+ +
188 + + + + + +
      revert Oracle_CannotEscalate(_disputeId);
+ +
189 + + + + + +
    }
+ +
190 + + + + + +

+                            
+                        
191 + + + + + +
    // Change the dispute status
+ +
192 + + + + + +
    disputeStatus[_disputeId] = DisputeStatus.Escalated;
+ +
193 + + + + + +

+                            
+                        
194 + + + + + +
    // Notify the dispute module about the escalation
+ +
195 + + + + + +
    IDisputeModule(_request.disputeModule).onDisputeStatusChange(_disputeId, _request, _response, _dispute);
+ +
196 + + + + + +

+                            
+                        
197 + + + + + +
    emit DisputeEscalated(msg.sender, _disputeId, _dispute);
+ +
198 + + + + + +

+                            
+                        
199 + + + + + +
    if (address(_request.resolutionModule) != address(0)) {
+ +
200 + + + + + +
      // Initiate the resolution
+ +
201 + + + + + +
      IResolutionModule(_request.resolutionModule).startResolution(_disputeId, _request, _response, _dispute);
+ +
202 + + + + + +
    }
+ +
203 + + + + + +
  }
+ +
204 + + + + + +

+                            
+                        
205 + + + + + +
  /// @inheritdoc IOracle
+ +
206 + + + + + +
  function resolveDispute(Request calldata _request, Response calldata _response, Dispute calldata _dispute) external {
+ +
207 + + + + + +
    (bytes32 _responseId, bytes32 _disputeId) = ValidatorLib._validateResponseAndDispute(_request, _response, _dispute);
+ +
208 + + + + + +

+                            
+                        
209 + + + + + +
    if (disputeCreatedAt[_disputeId] == 0) {
+ +
210 + + + + + +
      revert Oracle_InvalidDispute();
+ +
211 + + + + + +
    }
+ +
212 + + + + + +

+                            
+                        
213 + + + + + +
    if (disputeOf[_responseId] != _disputeId) {
+ +
214 + + + + + +
      revert Oracle_InvalidDisputeId(_disputeId);
+ +
215 + + + + + +
    }
+ +
216 + + + + + +

+                            
+                        
217 + + + + + +
    // Revert if the dispute is not active nor escalated
+ +
218 + + + + + +
    DisputeStatus _currentStatus = disputeStatus[_disputeId];
+ +
219 + + + + + +
    if (_currentStatus != DisputeStatus.Active && _currentStatus != DisputeStatus.Escalated) {
+ +
220 + + + + + +
      revert Oracle_CannotResolve(_disputeId);
+ +
221 + + + + + +
    }
+ +
222 + + + + + +

+                            
+                        
223 + + + + + +
    if (address(_request.resolutionModule) == address(0)) {
+ +
224 + + + + + +
      revert Oracle_NoResolutionModule(_disputeId);
+ +
225 + + + + + +
    }
+ +
226 + + + + + +

+                            
+                        
227 + + + + + +
    IResolutionModule(_request.resolutionModule).resolveDispute(_disputeId, _request, _response, _dispute);
+ +
228 + + + + + +

+                            
+                        
229 + + + + + +
    emit DisputeResolved(_disputeId, _dispute, msg.sender);
+ +
230 + + + + + +
  }
+ +
231 + + + + + +

+                            
+                        
232 + + + + + +
  /// @inheritdoc IOracle
+ +
233 + + + + + +
  function updateDisputeStatus(
+ +
234 + + + + + +
    Request calldata _request,
+ +
235 + + + + + +
    Response calldata _response,
+ +
236 + + + + + +
    Dispute calldata _dispute,
+ +
237 + + + + + +
    DisputeStatus _status
+ +
238 + + + + + +
  ) external {
+ +
239 + + + + + +
    (bytes32 _responseId, bytes32 _disputeId) = ValidatorLib._validateResponseAndDispute(_request, _response, _dispute);
+ +
240 + + + + + +

+                            
+                        
241 + + + + + +
    if (disputeCreatedAt[_disputeId] == 0) {
+ +
242 + + + + + +
      revert Oracle_InvalidDispute();
+ +
243 + + + + + +
    }
+ +
244 + + + + + +

+                            
+                        
245 + + + + + +
    if (disputeOf[_responseId] != _disputeId) {
+ +
246 + + + + + +
      revert Oracle_InvalidDisputeId(_disputeId);
+ +
247 + + + + + +
    }
+ +
248 + + + + + +

+                            
+                        
249 + + + + + +
    if (msg.sender != address(_request.disputeModule) && msg.sender != address(_request.resolutionModule)) {
+ +
250 + + + + + +
      revert Oracle_NotDisputeOrResolutionModule(msg.sender);
+ +
251 + + + + + +
    }
+ +
252 + + + + + +
    disputeStatus[_disputeId] = _status;
+ +
253 + + + + + +
    IDisputeModule(_request.disputeModule).onDisputeStatusChange(_disputeId, _request, _response, _dispute);
+ +
254 + + + + + +

+                            
+                        
255 + + + + + +
    emit DisputeStatusUpdated(_disputeId, _dispute, _status);
+ +
256 + + + + + +
  }
+ +
257 + + + + + +

+                            
+                        
258 + + + + + +
  /// @inheritdoc IOracle
+ +
259 + + + + + +
  function getResponseIds(bytes32 _requestId) public view returns (bytes32[] memory _ids) {
+ +
260 + + + + + +
    bytes memory _responses = _responseIds[_requestId];
+ +
261 + + + + + +
    uint256 _length = _responses.length / 32;
+ +
262 + + + + + +

+                            
+                        
263 + + + + + +
    assembly {
+ +
264 + + + + + +
      for { let _i := 0 } lt(_i, _length) { _i := add(_i, 1) } {
+ +
265 + + + + + +
        // Increase the size of the array
+ +
266 + + + + + +
        mstore(_ids, add(mload(_ids), 1))
+ +
267 + + + + + +

+                            
+                        
268 + + + + + +
        // Store the response id in the array
+ +
269 + + + + + +
        mstore(add(_ids, add(32, mul(_i, 32))), mload(add(_responses, add(32, mul(_i, 32)))))
+ +
270 + + + + + +
      }
+ +
271 + + + + + +
    }
+ +
272 + + + + + +
  }
+ +
273 + + + + + +

+                            
+                        
274 + + + + + +
  /// @inheritdoc IOracle
+ +
275 + + + + + +
  function finalize(IOracle.Request calldata _request, IOracle.Response calldata _response) external {
+ +
276 + + + + + +
    bytes32 _requestId;
+ +
277 + + + + + +
    bytes32 _responseId;
+ +
278 + + + + + +

+                            
+                        
279 + + + + + +
    // Finalizing without a response (by passing a Response with `requestId` == 0x0)
+ +
280 + + + + + +
    if (_response.requestId == bytes32(0)) {
+ +
281 + + + + + +
      _requestId = _finalizeWithoutResponse(_request);
+ +
282 + + + + + +
    } else {
+ +
283 + + + + + +
      (_requestId, _responseId) = _finalizeWithResponse(_request, _response);
+ +
284 + + + + + +
    }
+ +
285 + + + + + +

+                            
+                        
286 + + + + + +
    if (finalizedAt[_requestId] != 0) {
+ +
287 + + + + + +
      revert Oracle_AlreadyFinalized(_requestId);
+ +
288 + + + + + +
    }
+ +
289 + + + + + +

+                            
+                        
290 + + + + + +
    finalizedAt[_requestId] = block.timestamp;
+ +
291 + + + + + +

+                            
+                        
292 + + + + + +
    if (address(_request.finalityModule) != address(0)) {
+ +
293 + + + + + +
      IFinalityModule(_request.finalityModule).finalizeRequest(_request, _response, msg.sender);
+ +
294 + + + + + +
    }
+ +
295 + + + + + +

+                            
+                        
296 + + + + + +
    if (address(_request.resolutionModule) != address(0)) {
+ +
297 + + + + + +
      IResolutionModule(_request.resolutionModule).finalizeRequest(_request, _response, msg.sender);
+ +
298 + + + + + +
    }
+ +
299 + + + + + +

+                            
+                        
300 + + + + + +
    IDisputeModule(_request.disputeModule).finalizeRequest(_request, _response, msg.sender);
+ +
301 + + + + + +
    IResponseModule(_request.responseModule).finalizeRequest(_request, _response, msg.sender);
+ +
302 + + + + + +
    IRequestModule(_request.requestModule).finalizeRequest(_request, _response, msg.sender);
+ +
303 + + + + + +

+                            
+                        
304 + + + + + +
    emit OracleRequestFinalized(_requestId, _responseId, msg.sender);
+ +
305 + + + + + +
  }
+ +
306 + + + + + +

+                            
+                        
307 + + + + + +
  /**
+ +
308 + + + + + +
   * @notice Finalizing a request that either does not have any responses or only has disputed responses
+ +
309 + + + + + +
   *
+ +
310 + + + + + +
   * @param _request The request to be finalized
+ +
311 + + + + + +
   * @return _requestId The id of the finalized request
+ +
312 + + + + + +
   */
+ +
313 + + + + + +
  function _finalizeWithoutResponse(IOracle.Request calldata _request) internal view returns (bytes32 _requestId) {
+ +
314 + + + + + +
    _requestId = ValidatorLib._getId(_request);
+ +
315 + + + + + +

+                            
+                        
316 + + + + + +
    if (requestCreatedAt[_requestId] == 0) {
+ +
317 + + + + + +
      revert Oracle_InvalidRequest();
+ +
318 + + + + + +
    }
+ +
319 + + + + + +

+                            
+                        
320 + + + + + +
    bytes32[] memory _responses = getResponseIds(_requestId);
+ +
321 + + + + + +
    uint256 _responsesAmount = _responses.length;
+ +
322 + + + + + +

+                            
+                        
323 + + + + + +
    if (_responsesAmount != 0) {
+ +
324 + + + + + +
      for (uint256 _i = 0; _i < _responsesAmount;) {
+ +
325 + + + + + +
        bytes32 _responseId = _responses[_i];
+ +
326 + + + + + +
        bytes32 _disputeId = disputeOf[_responseId];
+ +
327 + + + + + +
        DisputeStatus _status = disputeStatus[_disputeId];
+ +
328 + + + + + +

+                            
+                        
329 + + + + + +
        // If there is an undisputed response or with a lost dispute, must finalize with it
+ +
330 + + + + + +
        if (_status == DisputeStatus.None || _status == DisputeStatus.Lost) {
+ +
331 + + + + + +
          revert Oracle_FinalizableResponseExists(_responseId);
+ +
332 + + + + + +
        }
+ +
333 + + + + + +

+                            
+                        
334 + + + + + +
        unchecked {
+ +
335 + + + + + +
          ++_i;
+ +
336 + + + + + +
        }
+ +
337 + + + + + +
      }
+ +
338 + + + + + +
    }
+ +
339 + + + + + +
  }
+ +
340 + + + + + +

+                            
+                        
341 + + + + + +
  /**
+ +
342 + + + + + +
   * @notice Finalizing a request with a response
+ +
343 + + + + + +
   *
+ +
344 + + + + + +
   * @param _request The request to be finalized
+ +
345 + + + + + +
   * @param _response The final response
+ +
346 + + + + + +
   * @return _requestId The id of the finalized request
+ +
347 + + + + + +
   * @return _responseId The id of the final response
+ +
348 + + + + + +
   */
+ +
349 + + + + + +
  function _finalizeWithResponse(
+ +
350 + + + + + +
    IOracle.Request calldata _request,
+ +
351 + + + + + +
    IOracle.Response calldata _response
+ +
352 + + + + + +
  ) internal returns (bytes32 _requestId, bytes32 _responseId) {
+ +
353 + + + + + +
    _responseId = ValidatorLib._validateResponse(_request, _response);
+ +
354 + + + + + +

+                            
+                        
355 + + + + + +
    _requestId = _response.requestId;
+ +
356 + + + + + +

+                            
+                        
357 + + + + + +
    if (responseCreatedAt[_responseId] == 0) {
+ +
358 + + + + + +
      revert Oracle_InvalidResponse();
+ +
359 + + + + + +
    }
+ +
360 + + + + + +

+                            
+                        
361 + + + + + +
    DisputeStatus _status = disputeStatus[disputeOf[_responseId]];
+ +
362 + + + + + +

+                            
+                        
363 + + + + + +
    if (_status != DisputeStatus.None && _status != DisputeStatus.Lost) {
+ +
364 + + + + + +
      revert Oracle_InvalidFinalizedResponse();
+ +
365 + + + + + +
    }
+ +
366 + + + + + +

+                            
+                        
367 + + + + + +
    finalizedResponseId[_requestId] = _responseId;
+ +
368 + + + + + +
  }
+ +
369 + + + + + +

+                            
+                        
370 + + + + + +
  /**
+ +
371 + + + + + +
   * @notice Stores a request in the contract and configures it in the modules
+ +
372 + + + + + +
   *
+ +
373 + + + + + +
   * @param _request The request to be created
+ +
374 + + + + + +
   * @param _ipfsHash The hashed IPFS CID of the metadata json
+ +
375 + + + + + +
   * @return _requestId The id of the created request
+ +
376 + + + + + +
   */
+ +
377 + + + + + +
  function _createRequest(Request memory _request, bytes32 _ipfsHash) internal returns (bytes32 _requestId) {
+ +
378 + + + + + +
    uint256 _requestNonce = totalRequestCount++;
+ +
379 + + + + + +

+                            
+                        
380 + + + + + +
    if (_request.nonce == 0) _request.nonce = uint96(_requestNonce);
+ +
381 + + + + + +

+                            
+                        
382 + + + + + +
    if (msg.sender != _request.requester || _requestNonce != _request.nonce) {
+ +
383 + + + + + +
      revert Oracle_InvalidRequestBody();
+ +
384 + + + + + +
    }
+ +
385 + + + + + +

+                            
+                        
386 + + + + + +
    _requestId = ValidatorLib._getId(_request);
+ +
387 + + + + + +
    nonceToRequestId[_requestNonce] = _requestId;
+ +
388 + + + + + +
    requestCreatedAt[_requestId] = block.timestamp;
+ +
389 + + + + + +

+                            
+                        
390 + + + + + +
    allowedModule[_requestId][_request.requestModule] = true;
+ +
391 + + + + + +
    allowedModule[_requestId][_request.responseModule] = true;
+ +
392 + + + + + +
    allowedModule[_requestId][_request.disputeModule] = true;
+ +
393 + + + + + +
    allowedModule[_requestId][_request.resolutionModule] = true;
+ +
394 + + + + + +
    allowedModule[_requestId][_request.finalityModule] = true;
+ +
395 + + + + + +

+                            
+                        
396 + + + + + +
    isParticipant[_requestId][msg.sender] = true;
+ +
397 + + + + + +

+                            
+                        
398 + + + + + +
    IRequestModule(_request.requestModule).createRequest(_requestId, _request.requestModuleData, msg.sender);
+ +
399 + + + + + +

+                            
+                        
400 + + + + + +
    emit RequestCreated(_requestId, _request, _ipfsHash);
+ +
401 + + + + + +
  }
+ +
402 + + + + + +
}
+ +
403 + + + + + +

+                            
+                        
+
+
+ + + + + + + + + + +
+
+
+ + + + + + +
Lines covered: 2 / 17 (11.8%)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
1 + + + + + +
// SPDX-License-Identifier: MIT
+ +
2 + + + + + +
pragma solidity ^0.8.19;
+ +
3 + + + + + +

+                            
+                        
4 + + + + + +
import {IOracle, IValidator} from '../interfaces/IValidator.sol';
+ +
5 + + + + + +

+                            
+                        
6 + + + + + +
import {ValidatorLib} from '../libraries/ValidatorLib.sol';
+ +
7 + + + + + +

+                            
+                        
8 + + + + + +
abstract contract Validator is IValidator {
+ +
9 + + + + + +
  /// @inheritdoc IValidator
+ +
10 + +
+ +
+ + + +
  IOracle public immutable ORACLE;
+ +
11 + + + + + +

+                            
+                        
12 + + + + + +
  constructor(IOracle _oracle) {
+ +
13 + +
+ +
+ + + +
    ORACLE = _oracle;
+ +
14 + + + + + +
  }
+ +
15 + + + + + +
  /**
+ +
16 + + + + + +
   * @notice Computes the id a given request
+ +
17 + + + + + +
   *
+ +
18 + + + + + +
   * @param _request The request to compute the id for
+ +
19 + + + + + +
   * @return _id The id the request
+ +
20 + + + + + +
   */
+ +
21 + + + + + +

+                            
+                        
22 + + + + + +
  function _getId(IOracle.Request calldata _request) internal pure returns (bytes32 _id) {
+ +
23 + + + + + +
    _id = ValidatorLib._getId(_request);
+ +
24 + + + + + +
  }
+ +
25 + + + + + +

+                            
+                        
26 + + + + + +
  /**
+ +
27 + + + + + +
   * @notice Computes the id a given response
+ +
28 + + + + + +
   *
+ +
29 + + + + + +
   * @param _response The response to compute the id for
+ +
30 + + + + + +
   * @return _id The id the response
+ +
31 + + + + + +
   */
+ +
32 + + + + + +
  function _getId(IOracle.Response calldata _response) internal pure returns (bytes32 _id) {
+ +
33 + + + + + +
    _id = ValidatorLib._getId(_response);
+ +
34 + + + + + +
  }
+ +
35 + + + + + +

+                            
+                        
36 + + + + + +
  /**
+ +
37 + + + + + +
   * @notice Computes the id a given dispute
+ +
38 + + + + + +
   *
+ +
39 + + + + + +
   * @param _dispute The dispute to compute the id for
+ +
40 + + + + + +
   * @return _id The id the dispute
+ +
41 + + + + + +
   */
+ +
42 + + + + + +
  function _getId(IOracle.Dispute calldata _dispute) internal pure returns (bytes32 _id) {
+ +
43 + + + + + +
    _id = ValidatorLib._getId(_dispute);
+ +
44 + + + + + +
  }
+ +
45 + + + + + +

+                            
+                        
46 + + + + + +
  /**
+ +
47 + + + + + +
   * @notice Validates the correctness and existance of a request-response pair
+ +
48 + + + + + +
   *
+ +
49 + + + + + +
   * @param _request The request to compute the id for
+ +
50 + + + + + +
   * @param _response The response to compute the id for
+ +
51 + + + + + +
   * @return _responseId The id the response
+ +
52 + + + + + +
   */
+ +
53 + + + + + +
  function _validateResponse(
+ +
54 + + + + + +
    IOracle.Request calldata _request,
+ +
55 + + + + + +
    IOracle.Response calldata _response
+ +
56 + + + + + +
  ) internal view returns (bytes32 _responseId) {
+ +
57 + + + + + +
    _responseId = ValidatorLib._validateResponse(_request, _response);
+ +
58 + + + + + +

+                            
+                        
59 + + + + + +
    if (ORACLE.responseCreatedAt(_responseId) == 0) revert Validator_InvalidResponse();
+ +
60 + + + + + +
  }
+ +
61 + + + + + +

+                            
+                        
62 + + + + + +
  /**
+ +
63 + + + + + +
   * @notice Validates the correctness of a request-dispute pair
+ +
64 + + + + + +
   *
+ +
65 + + + + + +
   * @param _request The request to compute the id for
+ +
66 + + + + + +
   * @param _dispute The dispute to compute the id for
+ +
67 + + + + + +
   * @return _disputeId The id the dispute
+ +
68 + + + + + +
   */
+ +
69 + + + + + +
  function _validateDispute(
+ +
70 + + + + + +
    IOracle.Request calldata _request,
+ +
71 + + + + + +
    IOracle.Dispute calldata _dispute
+ +
72 + + + + + +
  ) internal view returns (bytes32 _disputeId) {
+ +
73 + + + + + +
    _disputeId = ValidatorLib._validateDispute(_request, _dispute);
+ +
74 + + + + + +

+                            
+                        
75 + + + + + +
    if (ORACLE.disputeCreatedAt(_disputeId) == 0) revert Validator_InvalidDispute();
+ +
76 + + + + + +
  }
+ +
77 + + + + + +

+                            
+                        
78 + + + + + +
  /**
+ +
79 + + + + + +
   * @notice Validates the correctness of a response-dispute pair
+ +
80 + + + + + +
   *
+ +
81 + + + + + +
   * @param _response The response to compute the id for
+ +
82 + + + + + +
   * @param _dispute The dispute to compute the id for
+ +
83 + + + + + +
   * @return _disputeId The id the dispute
+ +
84 + + + + + +
   */
+ +
85 + + + + + +
  function _validateDispute(
+ +
86 + + + + + +
    IOracle.Response calldata _response,
+ +
87 + + + + + +
    IOracle.Dispute calldata _dispute
+ +
88 + + + + + +
  ) internal view returns (bytes32 _disputeId) {
+ +
89 + + + + + +
    _disputeId = ValidatorLib._validateDispute(_response, _dispute);
+ +
90 + + + + + +

+                            
+                        
91 + + + + + +
    if (ORACLE.disputeCreatedAt(_disputeId) == 0) revert Validator_InvalidDispute();
+ +
92 + + + + + +
  }
+ +
93 + + + + + +

+                            
+                        
94 + + + + + +
  /**
+ +
95 + + + + + +
   * @notice Validates the correctness of a request-response-dispute triplet
+ +
96 + + + + + +
   *
+ +
97 + + + + + +
   * @param _request The request to compute the id for
+ +
98 + + + + + +
   * @param _response The response to compute the id for
+ +
99 + + + + + +
   * @param _dispute The dispute to compute the id for
+ +
100 + + + + + +
   * @return _responseId The id the response
+ +
101 + + + + + +
   * @return _disputeId The id the dispute
+ +
102 + + + + + +
   */
+ +
103 + + + + + +
  function _validateResponseAndDispute(
+ +
104 + + + + + +
    IOracle.Request calldata _request,
+ +
105 + + + + + +
    IOracle.Response calldata _response,
+ +
106 + + + + + +
    IOracle.Dispute calldata _dispute
+ +
107 + + + + + +
  ) internal view returns (bytes32 _responseId, bytes32 _disputeId) {
+ +
108 + + + + + +
    (_responseId, _disputeId) = ValidatorLib._validateResponseAndDispute(_request, _response, _dispute);
+ +
109 + + + + + +

+                            
+                        
110 + + + + + +
    if (ORACLE.disputeCreatedAt(_disputeId) == 0) revert Validator_InvalidDispute();
+ +
111 + + + + + +
  }
+ +
112 + + + + + +
}
+ +
113 + + + + + +

+                            
+                        
+
+
+ + + + + + + + + + +
+
+
+ + + + + + +
Lines covered: 0 / 0 (0.0%)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
1 + + + + + +
// SPDX-License-Identifier: MIT
+ +
2 + + + + + +
pragma solidity ^0.8.19;
+ +
3 + + + + + +

+                            
+                        
4 + + + + + +
import {IOracle} from './IOracle.sol';
+ +
5 + + + + + +
import {IValidator} from './IValidator.sol';
+ +
6 + + + + + +

+                            
+                        
7 + + + + + +
/**
+ +
8 + + + + + +
 * @title Module
+ +
9 + + + + + +
 * @notice Abstract contract to be inherited by all modules
+ +
10 + + + + + +
 */
+ +
11 + + + + + +
interface IModule is IValidator {
+ +
12 + + + + + +
  /*///////////////////////////////////////////////////////////////
+ +
13 + + + + + +
                              EVENTS
+ +
14 + + + + + +
  //////////////////////////////////////////////////////////////*/
+ +
15 + + + + + +

+                            
+                        
16 + + + + + +
  /**
+ +
17 + + + + + +
   * @notice Emitted when a request is finalized
+ +
18 + + + + + +
   * @param _requestId The id of the request that was finalized
+ +
19 + + + + + +
   * @param _response The final response
+ +
20 + + + + + +
   * @param _finalizer The address that initiated the finalization
+ +
21 + + + + + +
   */
+ +
22 + + + + + +
  event RequestFinalized(bytes32 indexed _requestId, IOracle.Response _response, address _finalizer);
+ +
23 + + + + + +

+                            
+                        
24 + + + + + +
  /*///////////////////////////////////////////////////////////////
+ +
25 + + + + + +
                              ERRORS
+ +
26 + + + + + +
  //////////////////////////////////////////////////////////////*/
+ +
27 + + + + + +

+                            
+                        
28 + + + + + +
  /**
+ +
29 + + + + + +
   * @notice Thrown when the caller is not the oracle
+ +
30 + + + + + +
   */
+ +
31 + + + + + +
  error Module_OnlyOracle();
+ +
32 + + + + + +

+                            
+                        
33 + + + + + +
  /*///////////////////////////////////////////////////////////////
+ +
34 + + + + + +
                              LOGIC
+ +
35 + + + + + +
  //////////////////////////////////////////////////////////////*/
+ +
36 + + + + + +

+                            
+                        
37 + + + + + +
  /**
+ +
38 + + + + + +
   * @notice Finalizes the request
+ +
39 + + + + + +
   *
+ +
40 + + + + + +
   * @param _request The request being finalized
+ +
41 + + + + + +
   * @param _response The final response
+ +
42 + + + + + +
   * @param _finalizer The address that initiated the finalization
+ +
43 + + + + + +
   */
+ +
44 + + + + + +
  function finalizeRequest(
+ +
45 + + + + + +
    IOracle.Request calldata _request,
+ +
46 + + + + + +
    IOracle.Response calldata _response,
+ +
47 + + + + + +
    address _finalizer
+ +
48 + + + + + +
  ) external;
+ +
49 + + + + + +

+                            
+                        
50 + + + + + +
  /**
+ +
51 + + + + + +
   * @notice Validates parameters prior to creating a request
+ +
52 + + + + + +
   *
+ +
53 + + + + + +
   * @param _encodedParameters The encoded parameters for the request
+ +
54 + + + + + +
   * @return _valid Boolean indicating if the parameters are valid or not
+ +
55 + + + + + +
   */
+ +
56 + + + + + +
  function validateParameters(bytes calldata _encodedParameters) external view returns (bool _valid);
+ +
57 + + + + + +

+                            
+                        
58 + + + + + +
  /**
+ +
59 + + + + + +
   * @notice Returns the name of the module.
+ +
60 + + + + + +
   *
+ +
61 + + + + + +
   * @return _moduleName The name of the module.
+ +
62 + + + + + +
   */
+ +
63 + + + + + +
  function moduleName() external view returns (string memory _moduleName);
+ +
64 + + + + + +
}
+ +
65 + + + + + +

+                            
+                        
+
+
+ + + + + + + + + + +
+
+
+ + + + + + +
Lines covered: 0 / 0 (0.0%)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
1 + + + + + +
// SPDX-License-Identifier: MIT
+ +
2 + + + + + +
pragma solidity ^0.8.19;
+ +
3 + + + + + +

+                            
+                        
4 + + + + + +
/**
+ +
5 + + + + + +
 * @title Oracle
+ +
6 + + + + + +
 * @notice The main contract storing requests, responses and disputes, and routing the calls to the modules.
+ +
7 + + + + + +
 */
+ +
8 + + + + + +
interface IOracle {
+ +
9 + + + + + +
  /*///////////////////////////////////////////////////////////////
+ +
10 + + + + + +
                              EVENTS
+ +
11 + + + + + +
  //////////////////////////////////////////////////////////////*/
+ +
12 + + + + + +

+                            
+                        
13 + + + + + +
  /**
+ +
14 + + + + + +
   * @notice Emitted when a request is created
+ +
15 + + + + + +
   * @param _requestId The id of the created request
+ +
16 + + + + + +
   * @param _request The request that has been created
+ +
17 + + + + + +
   * @param _ipfsHash The hashed IPFS CID of the metadata json
+ +
18 + + + + + +
   */
+ +
19 + + + + + +
  event RequestCreated(bytes32 indexed _requestId, Request _request, bytes32 _ipfsHash);
+ +
20 + + + + + +

+                            
+                        
21 + + + + + +
  /**
+ +
22 + + + + + +
   * @notice Emitted when a response is proposed
+ +
23 + + + + + +
   * @param _requestId The id of the request
+ +
24 + + + + + +
   * @param _responseId The id of the proposed response
+ +
25 + + + + + +
   * @param _response The response that has been proposed
+ +
26 + + + + + +
   */
+ +
27 + + + + + +
  event ResponseProposed(bytes32 indexed _requestId, bytes32 indexed _responseId, Response _response);
+ +
28 + + + + + +

+                            
+                        
29 + + + + + +
  /**
+ +
30 + + + + + +
   * @notice Emitted when a response is disputed
+ +
31 + + + + + +
   * @param _responseId The id of the response being disputed
+ +
32 + + + + + +
   * @param _disputeId The id of the dispute
+ +
33 + + + + + +
   * @param _dispute The dispute that has been created
+ +
34 + + + + + +
   */
+ +
35 + + + + + +
  event ResponseDisputed(bytes32 indexed _responseId, bytes32 indexed _disputeId, Dispute _dispute);
+ +
36 + + + + + +

+                            
+                        
37 + + + + + +
  /**
+ +
38 + + + + + +
   * @notice Emitted when a request is finalized
+ +
39 + + + + + +
   * @param _requestId The id of the request being finalized
+ +
40 + + + + + +
   * @param _responseId The id of the final response, may be empty
+ +
41 + + + + + +
   * @param _caller The address of the user who finalized the request
+ +
42 + + + + + +
   */
+ +
43 + + + + + +
  event OracleRequestFinalized(bytes32 indexed _requestId, bytes32 indexed _responseId, address indexed _caller);
+ +
44 + + + + + +

+                            
+                        
45 + + + + + +
  /**
+ +
46 + + + + + +
   * @notice Emitted when a dispute is escalated
+ +
47 + + + + + +
   * @param _caller The address of the user who escalated the dispute
+ +
48 + + + + + +
   * @param _disputeId The id of the dispute being escalated
+ +
49 + + + + + +
   * @param _dispute The dispute that is being escalated
+ +
50 + + + + + +
   */
+ +
51 + + + + + +
  event DisputeEscalated(address indexed _caller, bytes32 indexed _disputeId, Dispute _dispute);
+ +
52 + + + + + +

+                            
+                        
53 + + + + + +
  /**
+ +
54 + + + + + +
   * @notice Emitted when a dispute's status changes
+ +
55 + + + + + +
   * @param _disputeId The id of the dispute
+ +
56 + + + + + +
   * @param _dispute The dispute that is being updated
+ +
57 + + + + + +
   * @param _status The new dispute status
+ +
58 + + + + + +
   */
+ +
59 + + + + + +
  event DisputeStatusUpdated(bytes32 indexed _disputeId, Dispute _dispute, DisputeStatus _status);
+ +
60 + + + + + +

+                            
+                        
61 + + + + + +
  /**
+ +
62 + + + + + +
   * @notice Emitted when a dispute is resolved
+ +
63 + + + + + +
   * @param _disputeId The id of the dispute being resolved
+ +
64 + + + + + +
   * @param _dispute The dispute that is being updated
+ +
65 + + + + + +
   * @param _caller The address of the user who resolved the dispute
+ +
66 + + + + + +
   */
+ +
67 + + + + + +
  event DisputeResolved(bytes32 indexed _disputeId, Dispute _dispute, address indexed _caller);
+ +
68 + + + + + +

+                            
+                        
69 + + + + + +
  /*///////////////////////////////////////////////////////////////
+ +
70 + + + + + +
                              ERRORS
+ +
71 + + + + + +
  //////////////////////////////////////////////////////////////*/
+ +
72 + + + + + +

+                            
+                        
73 + + + + + +
  /**
+ +
74 + + + + + +
   * @notice Thrown when an unauthorized caller is trying to change a dispute's status
+ +
75 + + + + + +
   * @param _caller The caller of the function
+ +
76 + + + + + +
   */
+ +
77 + + + + + +
  error Oracle_NotDisputeOrResolutionModule(address _caller);
+ +
78 + + + + + +

+                            
+                        
79 + + + + + +
  /**
+ +
80 + + + + + +
   * @notice Thrown when trying to resolve a dispute of a request without resolution module
+ +
81 + + + + + +
   * @param _disputeId The id of the dispute being
+ +
82 + + + + + +
   */
+ +
83 + + + + + +
  error Oracle_NoResolutionModule(bytes32 _disputeId);
+ +
84 + + + + + +

+                            
+                        
85 + + + + + +
  /**
+ +
86 + + + + + +
   * @notice Thrown when disputing a response that is already disputed
+ +
87 + + + + + +
   * @param _responseId The id of the response being disputed
+ +
88 + + + + + +
   */
+ +
89 + + + + + +
  error Oracle_ResponseAlreadyDisputed(bytes32 _responseId);
+ +
90 + + + + + +

+                            
+                        
91 + + + + + +
  /**
+ +
92 + + + + + +
   * @notice Thrown when trying to dispute or finalize a request that is already finalized
+ +
93 + + + + + +
   * @param _requestId The id of the request
+ +
94 + + + + + +
   */
+ +
95 + + + + + +
  error Oracle_AlreadyFinalized(bytes32 _requestId);
+ +
96 + + + + + +

+                            
+                        
97 + + + + + +
  /**
+ +
98 + + + + + +
   * @notice Thrown when trying to finalize a request with an invalid response
+ +
99 + + + + + +
   */
+ +
100 + + + + + +
  error Oracle_InvalidFinalizedResponse();
+ +
101 + + + + + +

+                            
+                        
102 + + + + + +
  /**
+ +
103 + + + + + +
   * @notice Thrown when trying to finalize a request without a response while there is, in fact, a response
+ +
104 + + + + + +
   * @param _responseId The id of the response that would be suitable for finalization
+ +
105 + + + + + +
   */
+ +
106 + + + + + +
  error Oracle_FinalizableResponseExists(bytes32 _responseId);
+ +
107 + + + + + +

+                            
+                        
108 + + + + + +
  /**
+ +
109 + + + + + +
   * @notice Thrown when trying to resolve or escalate an invalid dispute
+ +
110 + + + + + +
   * @param _disputeId The id of the dispute
+ +
111 + + + + + +
   */
+ +
112 + + + + + +
  error Oracle_InvalidDisputeId(bytes32 _disputeId);
+ +
113 + + + + + +

+                            
+                        
114 + + + + + +
  /**
+ +
115 + + + + + +
   * @notice Thrown when trying to escalate a dispute that's not in the active state
+ +
116 + + + + + +
   * @param _disputeId The id of the dispute
+ +
117 + + + + + +
   */
+ +
118 + + + + + +
  error Oracle_CannotEscalate(bytes32 _disputeId);
+ +
119 + + + + + +

+                            
+                        
120 + + + + + +
  /**
+ +
121 + + + + + +
   * @notice Thrown when trying to resolve a dispute that's not in the active nor escalated state
+ +
122 + + + + + +
   * @param _disputeId The id of the dispute
+ +
123 + + + + + +
   */
+ +
124 + + + + + +
  error Oracle_CannotResolve(bytes32 _disputeId);
+ +
125 + + + + + +

+                            
+                        
126 + + + + + +
  /**
+ +
127 + + + + + +
   * @notice Thrown when trying to create a request with invalid parameters
+ +
128 + + + + + +
   */
+ +
129 + + + + + +
  error Oracle_InvalidRequestBody();
+ +
130 + + + + + +

+                            
+                        
131 + + + + + +
  /**
+ +
132 + + + + + +
   * @notice Thrown when trying to propose a response with invalid parameters
+ +
133 + + + + + +
   */
+ +
134 + + + + + +
  error Oracle_InvalidResponseBody();
+ +
135 + + + + + +

+                            
+                        
136 + + + + + +
  /**
+ +
137 + + + + + +
   * @notice Thrown when trying to create a dispute with invalid parameters
+ +
138 + + + + + +
   */
+ +
139 + + + + + +
  error Oracle_InvalidDisputeBody();
+ +
140 + + + + + +

+                            
+                        
141 + + + + + +
  /**
+ +
142 + + + + + +
   * @notice Thrown when the request provided does not exist
+ +
143 + + + + + +
   */
+ +
144 + + + + + +
  error Oracle_InvalidRequest();
+ +
145 + + + + + +

+                            
+                        
146 + + + + + +
  /**
+ +
147 + + + + + +
   * @notice Thrown when the response provided does not exist
+ +
148 + + + + + +
   */
+ +
149 + + + + + +
  error Oracle_InvalidResponse();
+ +
150 + + + + + +

+                            
+                        
151 + + + + + +
  /**
+ +
152 + + + + + +
   * @notice Thrown when the dispute provided does not exist
+ +
153 + + + + + +
   */
+ +
154 + + + + + +
  error Oracle_InvalidDispute();
+ +
155 + + + + + +

+                            
+                        
156 + + + + + +
  /**
+ +
157 + + + + + +
   * @notice Thrown when response has been already proposed
+ +
158 + + + + + +
   */
+ +
159 + + + + + +
  error Oracle_ResponseAlreadyProposed();
+ +
160 + + + + + +

+                            
+                        
161 + + + + + +
  /**
+ +
162 + + + + + +
   * @notice Thrown when the proposer is invalid
+ +
163 + + + + + +
   */
+ +
164 + + + + + +
  error Oracle_InvalidProposer();
+ +
165 + + + + + +

+                            
+                        
166 + + + + + +
  /**
+ +
167 + + + + + +
   * @notice Thrown when the disputer is invalid
+ +
168 + + + + + +
   */
+ +
169 + + + + + +
  error Oracle_InvalidDisputer();
+ +
170 + + + + + +

+                            
+                        
171 + + + + + +
  /*///////////////////////////////////////////////////////////////
+ +
172 + + + + + +
                              ENUMS
+ +
173 + + + + + +
  //////////////////////////////////////////////////////////////*/
+ +
174 + + + + + +

+                            
+                        
175 + + + + + +
  /**
+ +
176 + + + + + +
   * @notice All available statuses a dispute can have
+ +
177 + + + + + +
   */
+ +
178 + + + + + +
  enum DisputeStatus {
+ +
179 + + + + + +
    None, // The dispute has not been started yet
+ +
180 + + + + + +
    Active, // The dispute is active and can be escalated or resolved
+ +
181 + + + + + +
    Escalated, // The dispute is being resolved by the resolution module
+ +
182 + + + + + +
    Won, // The disputer has won the dispute
+ +
183 + + + + + +
    Lost, // The disputer has lost the dispute
+ +
184 + + + + + +
    NoResolution // The dispute was inconclusive
+ +
185 + + + + + +

+                            
+                        
186 + + + + + +
  }
+ +
187 + + + + + +

+                            
+                        
188 + + + + + +
  /*///////////////////////////////////////////////////////////////
+ +
189 + + + + + +
                              STRUCTS
+ +
190 + + + + + +
  //////////////////////////////////////////////////////////////*/
+ +
191 + + + + + +

+                            
+                        
192 + + + + + +
  /**
+ +
193 + + + + + +
   * @notice Request as stored in the oracle
+ +
194 + + + + + +
   * @param requestModule The address of the request module
+ +
195 + + + + + +
   * @param responseModule The address of the response module
+ +
196 + + + + + +
   * @param disputeModule The address of the dispute module
+ +
197 + + + + + +
   * @param resolutionModule The address of the resolution module
+ +
198 + + + + + +
   * @param finalityModule The address of the finality module
+ +
199 + + + + + +
   * @param requestModuleData The parameters for the request module
+ +
200 + + + + + +
   * @param responseModuleData The parameters for the response module
+ +
201 + + + + + +
   * @param disputeModuleData The parameters for the dispute module
+ +
202 + + + + + +
   * @param resolutionModuleData The parameters for the resolution module
+ +
203 + + + + + +
   * @param finalityModuleData The parameters for the finality module
+ +
204 + + + + + +
   * @param requester The address of the user who created the request
+ +
205 + + + + + +
   * @param nonce The nonce of the request
+ +
206 + + + + + +
   */
+ +
207 + + + + + +
  struct Request {
+ +
208 + + + + + +
    uint96 nonce;
+ +
209 + + + + + +
    address requester;
+ +
210 + + + + + +
    address requestModule;
+ +
211 + + + + + +
    address responseModule;
+ +
212 + + + + + +
    address disputeModule;
+ +
213 + + + + + +
    address resolutionModule;
+ +
214 + + + + + +
    address finalityModule;
+ +
215 + + + + + +
    bytes requestModuleData;
+ +
216 + + + + + +
    bytes responseModuleData;
+ +
217 + + + + + +
    bytes disputeModuleData;
+ +
218 + + + + + +
    bytes resolutionModuleData;
+ +
219 + + + + + +
    bytes finalityModuleData;
+ +
220 + + + + + +
  }
+ +
221 + + + + + +

+                            
+                        
222 + + + + + +
  /**
+ +
223 + + + + + +
   * @notice The response struct
+ +
224 + + + + + +
   * @param proposer The address of the user who proposed the response
+ +
225 + + + + + +
   * @param requestId The id of the request this response is proposed for
+ +
226 + + + + + +
   * @param response The encoded data of the response
+ +
227 + + + + + +
   */
+ +
228 + + + + + +
  struct Response {
+ +
229 + + + + + +
    address proposer;
+ +
230 + + + + + +
    bytes32 requestId;
+ +
231 + + + + + +
    bytes response;
+ +
232 + + + + + +
  }
+ +
233 + + + + + +

+                            
+                        
234 + + + + + +
  /**
+ +
235 + + + + + +
   * @notice The dispute struct
+ +
236 + + + + + +
   * @param disputer The address of the user who started the dispute
+ +
237 + + + + + +
   * @param proposer The address of the user who proposed the response
+ +
238 + + + + + +
   * @param responseId The id of the response being disputed
+ +
239 + + + + + +
   * @param requestId The id of the request this dispute is related to
+ +
240 + + + + + +
   */
+ +
241 + + + + + +
  struct Dispute {
+ +
242 + + + + + +
    address disputer;
+ +
243 + + + + + +
    address proposer;
+ +
244 + + + + + +
    bytes32 responseId;
+ +
245 + + + + + +
    bytes32 requestId;
+ +
246 + + + + + +
  }
+ +
247 + + + + + +

+                            
+                        
248 + + + + + +
  /*///////////////////////////////////////////////////////////////
+ +
249 + + + + + +
                              VARIABLES
+ +
250 + + + + + +
  //////////////////////////////////////////////////////////////*/
+ +
251 + + + + + +

+                            
+                        
252 + + + + + +
  /**
+ +
253 + + + + + +
   * @notice Returns the dispute id for a given response
+ +
254 + + + + + +
   *
+ +
255 + + + + + +
   * @param _responseId The response id to get the dispute for
+ +
256 + + + + + +
   * @return _disputeId The id of the dispute associated with the given response
+ +
257 + + + + + +
   */
+ +
258 + + + + + +
  function disputeOf(bytes32 _responseId) external view returns (bytes32 _disputeId);
+ +
259 + + + + + +

+                            
+                        
260 + + + + + +
  /**
+ +
261 + + + + + +
   * @notice Returns the total number of requests stored in the oracle
+ +
262 + + + + + +
   *
+ +
263 + + + + + +
   * @return _count The total number of requests
+ +
264 + + + + + +
   */
+ +
265 + + + + + +
  function totalRequestCount() external view returns (uint256 _count);
+ +
266 + + + + + +

+                            
+                        
267 + + + + + +
  /**
+ +
268 + + + + + +
   * @notice Returns the status of a dispute
+ +
269 + + + + + +
   *
+ +
270 + + + + + +
   * @param _disputeId The id of the dispute
+ +
271 + + + + + +
   * @return _status The status of the dispute
+ +
272 + + + + + +
   */
+ +
273 + + + + + +
  function disputeStatus(bytes32 _disputeId) external view returns (DisputeStatus _status);
+ +
274 + + + + + +

+                            
+                        
275 + + + + + +
  /**
+ +
276 + + + + + +
   * @notice The id of each request in chronological order
+ +
277 + + + + + +
   *
+ +
278 + + + + + +
   * @param _nonce The nonce of the request
+ +
279 + + + + + +
   * @return _requestId The id of the request
+ +
280 + + + + + +
   */
+ +
281 + + + + + +
  function nonceToRequestId(uint256 _nonce) external view returns (bytes32 _requestId);
+ +
282 + + + + + +

+                            
+                        
283 + + + + + +
  /**
+ +
284 + + + + + +
   * @notice Returns the finalized response ID for a given request
+ +
285 + + + + + +
   *
+ +
286 + + + + + +
   * @param _requestId The id of the request
+ +
287 + + + + + +
   * @return _finalizedResponseId The id of the finalized response
+ +
288 + + + + + +
   */
+ +
289 + + + + + +
  function finalizedResponseId(bytes32 _requestId) external view returns (bytes32 _finalizedResponseId);
+ +
290 + + + + + +

+                            
+                        
291 + + + + + +
  /**
+ +
292 + + + + + +
   * @notice The block's timestamp at which a request was created
+ +
293 + + + + + +
   *
+ +
294 + + + + + +
   * @param _id The request id
+ +
295 + + + + + +
   * @return _requestCreatedAt The block's timestamp
+ +
296 + + + + + +
   */
+ +
297 + + + + + +
  function requestCreatedAt(bytes32 _id) external view returns (uint256 _requestCreatedAt);
+ +
298 + + + + + +

+                            
+                        
299 + + + + + +
  /**
+ +
300 + + + + + +
   * @notice The block's timestamp at which a response was created
+ +
301 + + + + + +
   *
+ +
302 + + + + + +
   * @param _id The response id
+ +
303 + + + + + +
   * @return _responseCreatedAt The block's timestamp
+ +
304 + + + + + +
   */
+ +
305 + + + + + +
  function responseCreatedAt(bytes32 _id) external view returns (uint256 _responseCreatedAt);
+ +
306 + + + + + +

+                            
+                        
307 + + + + + +
  /**
+ +
308 + + + + + +
   * @notice The block's timestamp at which a dispute was created
+ +
309 + + + + + +
   *
+ +
310 + + + + + +
   * @param _id The dispute id
+ +
311 + + + + + +
   * @return _disputeCreatedAt The block's timestamp
+ +
312 + + + + + +
   */
+ +
313 + + + + + +
  function disputeCreatedAt(bytes32 _id) external view returns (uint256 _disputeCreatedAt);
+ +
314 + + + + + +

+                            
+                        
315 + + + + + +
  /**
+ +
316 + + + + + +
   * @notice The block's timestamp at which a request was finalized
+ +
317 + + + + + +
   *
+ +
318 + + + + + +
   * @param _requestId The request id
+ +
319 + + + + + +
   * @return _finalizedAt The block's timestamp
+ +
320 + + + + + +
   */
+ +
321 + + + + + +
  function finalizedAt(bytes32 _requestId) external view returns (uint256 _finalizedAt);
+ +
322 + + + + + +

+                            
+                        
323 + + + + + +
  /*///////////////////////////////////////////////////////////////
+ +
324 + + + + + +
                              LOGIC
+ +
325 + + + + + +
  //////////////////////////////////////////////////////////////*/
+ +
326 + + + + + +

+                            
+                        
327 + + + + + +
  /**
+ +
328 + + + + + +
   * @notice Generates the request ID and initializes the modules for the request
+ +
329 + + + + + +
   *
+ +
330 + + + + + +
   * @dev The modules must be real contracts following the IModule interface
+ +
331 + + + + + +
   * @param _request The request data
+ +
332 + + + + + +
   * @param _ipfsHash The hashed IPFS CID of the metadata json
+ +
333 + + + + + +
   * @return _requestId The id of the request, can be used to propose a response or query results
+ +
334 + + + + + +
   */
+ +
335 + + + + + +
  function createRequest(Request memory _request, bytes32 _ipfsHash) external returns (bytes32 _requestId);
+ +
336 + + + + + +

+                            
+                        
337 + + + + + +
  /**
+ +
338 + + + + + +
   * @notice Creates multiple requests, the same way as createRequest
+ +
339 + + + + + +
   *
+ +
340 + + + + + +
   * @param _requestsData The array of calldata for each request
+ +
341 + + + + + +
   * @return _batchRequestsIds The array of request IDs
+ +
342 + + + + + +
   * @param _ipfsHashes The array of hashed IPFS CIDs of the metadata files
+ +
343 + + + + + +
   */
+ +
344 + + + + + +
  function createRequests(
+ +
345 + + + + + +
    Request[] calldata _requestsData,
+ +
346 + + + + + +
    bytes32[] calldata _ipfsHashes
+ +
347 + + + + + +
  ) external returns (bytes32[] memory _batchRequestsIds);
+ +
348 + + + + + +

+                            
+                        
349 + + + + + +
  /**
+ +
350 + + + + + +
   * @notice Returns the list of request IDs
+ +
351 + + + + + +
   *
+ +
352 + + + + + +
   * @param _startFrom The index to start from
+ +
353 + + + + + +
   * @param _batchSize The number of requests to return
+ +
354 + + + + + +
   * @return _list The list of request IDs
+ +
355 + + + + + +
   */
+ +
356 + + + + + +
  function listRequestIds(uint256 _startFrom, uint256 _batchSize) external view returns (bytes32[] memory _list);
+ +
357 + + + + + +

+                            
+                        
358 + + + + + +
  /**
+ +
359 + + + + + +
   * @notice Creates a new response for a given request
+ +
360 + + + + + +
   *
+ +
361 + + + + + +
   * @param _request The request to create a response for
+ +
362 + + + + + +
   * @param _response The response data
+ +
363 + + + + + +
   * @return _responseId The id of the created response
+ +
364 + + + + + +
   */
+ +
365 + + + + + +
  function proposeResponse(
+ +
366 + + + + + +
    Request calldata _request,
+ +
367 + + + + + +
    Response calldata _response
+ +
368 + + + + + +
  ) external returns (bytes32 _responseId);
+ +
369 + + + + + +

+                            
+                        
370 + + + + + +
  /**
+ +
371 + + + + + +
   * @notice Starts the process of disputing a response
+ +
372 + + + + + +
   *
+ +
373 + + + + + +
   * @param _request The request
+ +
374 + + + + + +
   * @param _response The response to dispute
+ +
375 + + + + + +
   * @param _dispute The dispute data
+ +
376 + + + + + +
   * @return _disputeId The id of the created dispute
+ +
377 + + + + + +
   */
+ +
378 + + + + + +
  function disputeResponse(
+ +
379 + + + + + +
    Request calldata _request,
+ +
380 + + + + + +
    Response calldata _response,
+ +
381 + + + + + +
    Dispute calldata _dispute
+ +
382 + + + + + +
  ) external returns (bytes32 _disputeId);
+ +
383 + + + + + +

+                            
+                        
384 + + + + + +
  /**
+ +
385 + + + + + +
   * @notice Escalates a dispute, sending it to the resolution module
+ +
386 + + + + + +
   *
+ +
387 + + + + + +
   * @param _request The request
+ +
388 + + + + + +
   * @param _response The disputed response
+ +
389 + + + + + +
   * @param _dispute The dispute that is being escalated
+ +
390 + + + + + +
   */
+ +
391 + + + + + +
  function escalateDispute(Request calldata _request, Response calldata _response, Dispute calldata _dispute) external;
+ +
392 + + + + + +

+                            
+                        
393 + + + + + +
  /**
+ +
394 + + + + + +
   * @notice Resolves a dispute
+ +
395 + + + + + +
   *
+ +
396 + + + + + +
   * @param _request The request
+ +
397 + + + + + +
   * @param _response The disputed response
+ +
398 + + + + + +
   * @param _dispute The dispute that is being resolved
+ +
399 + + + + + +
   */
+ +
400 + + + + + +
  function resolveDispute(Request calldata _request, Response calldata _response, Dispute calldata _dispute) external;
+ +
401 + + + + + +

+                            
+                        
402 + + + + + +
  /**
+ +
403 + + + + + +
   * @notice Updates the status of a dispute
+ +
404 + + + + + +
   *
+ +
405 + + + + + +
   * @param _request The request
+ +
406 + + + + + +
   * @param _response The disputed response
+ +
407 + + + + + +
   * @param _dispute The dispute that is being updated
+ +
408 + + + + + +
   * @param _status The new status of the dispute
+ +
409 + + + + + +
   */
+ +
410 + + + + + +
  function updateDisputeStatus(
+ +
411 + + + + + +
    Request calldata _request,
+ +
412 + + + + + +
    Response calldata _response,
+ +
413 + + + + + +
    Dispute calldata _dispute,
+ +
414 + + + + + +
    DisputeStatus _status
+ +
415 + + + + + +
  ) external;
+ +
416 + + + + + +

+                            
+                        
417 + + + + + +
  /**
+ +
418 + + + + + +
   * @notice Checks if the given address is a module used in the request
+ +
419 + + + + + +
   *
+ +
420 + + + + + +
   * @param _requestId The id of the request
+ +
421 + + + + + +
   * @param _module The address to check
+ +
422 + + + + + +
   * @return _allowedModule If the module is a part of the request
+ +
423 + + + + + +
   */
+ +
424 + + + + + +
  function allowedModule(bytes32 _requestId, address _module) external view returns (bool _allowedModule);
+ +
425 + + + + + +

+                            
+                        
426 + + + + + +
  /**
+ +
427 + + + + + +
   * @notice Checks if the given address is participating in a specific request
+ +
428 + + + + + +
   *
+ +
429 + + + + + +
   * @param _requestId The id of the request
+ +
430 + + + + + +
   * @param _user The address to check
+ +
431 + + + + + +
   * @return _isParticipant If the user is a participant of the request
+ +
432 + + + + + +
   */
+ +
433 + + + + + +
  function isParticipant(bytes32 _requestId, address _user) external view returns (bool _isParticipant);
+ +
434 + + + + + +

+                            
+                        
435 + + + + + +
  /**
+ +
436 + + + + + +
   * @notice Returns the ids of the responses for a given request
+ +
437 + + + + + +
   *
+ +
438 + + + + + +
   * @param _requestId The id of the request
+ +
439 + + + + + +
   * @return _ids The ids of the responses
+ +
440 + + + + + +
   */
+ +
441 + + + + + +
  function getResponseIds(bytes32 _requestId) external view returns (bytes32[] memory _ids);
+ +
442 + + + + + +

+                            
+                        
443 + + + + + +
  /**
+ +
444 + + + + + +
   * @notice Finalizes the request and executes the post-request logic on the modules
+ +
445 + + + + + +
   *
+ +
446 + + + + + +
   * @dev In case of a request with no responses, an response with am empty `requestId` is expected
+ +
447 + + + + + +
   * @param _request The request being finalized
+ +
448 + + + + + +
   * @param _response The final response
+ +
449 + + + + + +
   */
+ +
450 + + + + + +
  function finalize(Request calldata _request, Response calldata _response) external;
+ +
451 + + + + + +
}
+ +
452 + + + + + +

+                            
+                        
+
+
+ + + + + + + + + + +
+
+
+ + + + + + +
Lines covered: 0 / 0 (0.0%)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
1 + + + + + +
// SPDX-License-Identifier: MIT
+ +
2 + + + + + +
pragma solidity ^0.8.19;
+ +
3 + + + + + +

+                            
+                        
4 + + + + + +
import {IOracle} from './IOracle.sol';
+ +
5 + + + + + +

+                            
+                        
6 + + + + + +
/**
+ +
7 + + + + + +
 * @title Validator
+ +
8 + + + + + +
 * @notice Contract to validate requests, responses, and disputes
+ +
9 + + + + + +
 */
+ +
10 + + + + + +
interface IValidator {
+ +
11 + + + + + +
  /*///////////////////////////////////////////////////////////////
+ +
12 + + + + + +
                              ERRORS
+ +
13 + + + + + +
  //////////////////////////////////////////////////////////////*/
+ +
14 + + + + + +

+                            
+                        
15 + + + + + +
  /**
+ +
16 + + + + + +
   * @notice Thrown when the response provided does not exist
+ +
17 + + + + + +
   */
+ +
18 + + + + + +
  error Validator_InvalidResponse();
+ +
19 + + + + + +

+                            
+                        
20 + + + + + +
  /**
+ +
21 + + + + + +
   * @notice Thrown when the dispute provided does not exist
+ +
22 + + + + + +
   */
+ +
23 + + + + + +
  error Validator_InvalidDispute();
+ +
24 + + + + + +

+                            
+                        
25 + + + + + +
  /*///////////////////////////////////////////////////////////////
+ +
26 + + + + + +
                              VARIABLES
+ +
27 + + + + + +
  //////////////////////////////////////////////////////////////*/
+ +
28 + + + + + +

+                            
+                        
29 + + + + + +
  /**
+ +
30 + + + + + +
   * @notice The oracle contract
+ +
31 + + + + + +
   */
+ +
32 + + + + + +
  function ORACLE() external view returns (IOracle _oracle);
+ +
33 + + + + + +
}
+ +
34 + + + + + +

+                            
+                        
+
+
+ + + + + + + + + + +
+
+
+ + + + + + +
Lines covered: 0 / 0 (0.0%)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
1 + + + + + +
// SPDX-License-Identifier: MIT
+ +
2 + + + + + +
pragma solidity ^0.8.19;
+ +
3 + + + + + +

+                            
+                        
4 + + + + + +
import {IModule} from '../../IModule.sol';
+ +
5 + + + + + +
import {IOracle} from '../../IOracle.sol';
+ +
6 + + + + + +

+                            
+                        
7 + + + + + +
interface IDisputeModule is IModule {
+ +
8 + + + + + +
  /*///////////////////////////////////////////////////////////////
+ +
9 + + + + + +
                              EVENTS
+ +
10 + + + + + +
  //////////////////////////////////////////////////////////////*/
+ +
11 + + + + + +

+                            
+                        
12 + + + + + +
  /**
+ +
13 + + + + + +
   * @notice Emitted when a response is disputed
+ +
14 + + + + + +
   * @param _requestId The id of the request
+ +
15 + + + + + +
   * @param _responseId The id of the response disputed
+ +
16 + + + + + +
   * @param _disputeId The id of the dispute
+ +
17 + + + + + +
   * @param _dispute The dispute that is being created
+ +
18 + + + + + +
   */
+ +
19 + + + + + +
  event ResponseDisputed(
+ +
20 + + + + + +
    bytes32 indexed _requestId, bytes32 indexed _responseId, bytes32 indexed _disputeId, IOracle.Dispute _dispute
+ +
21 + + + + + +
  );
+ +
22 + + + + + +

+                            
+                        
23 + + + + + +
  /**
+ +
24 + + + + + +
   * @notice Emitted when a dispute status is updated
+ +
25 + + + + + +
   * @param _disputeId The id of the dispute
+ +
26 + + + + + +
   * @param _dispute The dispute
+ +
27 + + + + + +
   * @param _status The new status of the dispute
+ +
28 + + + + + +
   */
+ +
29 + + + + + +
  event DisputeStatusChanged(bytes32 indexed _disputeId, IOracle.Dispute _dispute, IOracle.DisputeStatus _status);
+ +
30 + + + + + +

+                            
+                        
31 + + + + + +
  /*///////////////////////////////////////////////////////////////
+ +
32 + + + + + +
                             FUNCTIONS
+ +
33 + + + + + +
  //////////////////////////////////////////////////////////////*/
+ +
34 + + + + + +

+                            
+                        
35 + + + + + +
  /**
+ +
36 + + + + + +
   * @notice Called by the oracle when a dispute has been made on a response
+ +
37 + + + + + +
   * @dev Bonds the tokens of the disputer
+ +
38 + + + + + +
   * @param _request The request
+ +
39 + + + + + +
   * @param _response The disputed response
+ +
40 + + + + + +
   * @param _dispute The dispute
+ +
41 + + + + + +
   */
+ +
42 + + + + + +
  function disputeResponse(
+ +
43 + + + + + +
    IOracle.Request calldata _request,
+ +
44 + + + + + +
    IOracle.Response calldata _response,
+ +
45 + + + + + +
    IOracle.Dispute calldata _dispute
+ +
46 + + + + + +
  ) external;
+ +
47 + + + + + +

+                            
+                        
48 + + + + + +
  /**
+ +
49 + + + + + +
   * @notice Callback executed after a response to a dispute is received by the oracle
+ +
50 + + + + + +
   * @param _disputeId The id of the dispute
+ +
51 + + + + + +
   * @param _request The request
+ +
52 + + + + + +
   * @param _response The disputed response
+ +
53 + + + + + +
   * @param _dispute The dispute
+ +
54 + + + + + +
   */
+ +
55 + + + + + +
  function onDisputeStatusChange(
+ +
56 + + + + + +
    bytes32 _disputeId,
+ +
57 + + + + + +
    IOracle.Request calldata _request,
+ +
58 + + + + + +
    IOracle.Response calldata _response,
+ +
59 + + + + + +
    IOracle.Dispute calldata _dispute
+ +
60 + + + + + +
  ) external;
+ +
61 + + + + + +
}
+ +
62 + + + + + +

+                            
+                        
+
+
+ + + + + + + + + + +
+
+
+ + + + + + +
Lines covered: 0 / 0 (0.0%)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
1 + + + + + +
// SPDX-License-Identifier: MIT
+ +
2 + + + + + +
pragma solidity ^0.8.19;
+ +
3 + + + + + +

+                            
+                        
4 + + + + + +
import {IModule} from '../../IModule.sol';
+ +
5 + + + + + +

+                            
+                        
6 + + + + + +
interface IFinalityModule is IModule {}
+ +
7 + + + + + +

+                            
+                        
+
+
+ + + + + + + + + + +
+
+
+ + + + + + +
Lines covered: 0 / 0 (0.0%)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
1 + + + + + +
// SPDX-License-Identifier: MIT
+ +
2 + + + + + +
pragma solidity ^0.8.19;
+ +
3 + + + + + +

+                            
+                        
4 + + + + + +
import {IModule} from '../../IModule.sol';
+ +
5 + + + + + +

+                            
+                        
6 + + + + + +
interface IRequestModule is IModule {
+ +
7 + + + + + +
  /**
+ +
8 + + + + + +
   * @notice Called by the oracle when a request has been made
+ +
9 + + + + + +
   * @param _requestId The id of the request
+ +
10 + + + + + +
   * @param _data The data of the request
+ +
11 + + + + + +
   * @param _requester The address of the requester
+ +
12 + + + + + +
   */
+ +
13 + + + + + +
  function createRequest(bytes32 _requestId, bytes calldata _data, address _requester) external;
+ +
14 + + + + + +
}
+ +
15 + + + + + +

+                            
+                        
+
+
+ + + + + + + + + + +
+
+
+ + + + + + +
Lines covered: 0 / 0 (0.0%)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
1 + + + + + +
// SPDX-License-Identifier: MIT
+ +
2 + + + + + +
pragma solidity ^0.8.19;
+ +
3 + + + + + +

+                            
+                        
4 + + + + + +
import {IModule} from '../../IModule.sol';
+ +
5 + + + + + +
import {IOracle} from '../../IOracle.sol';
+ +
6 + + + + + +

+                            
+                        
7 + + + + + +
/**
+ +
8 + + + + + +
 * @title ResolutionModule
+ +
9 + + + + + +
 * @notice Common interface for all resolution modules
+ +
10 + + + + + +
 */
+ +
11 + + + + + +
interface IResolutionModule is IModule {
+ +
12 + + + + + +
  /*///////////////////////////////////////////////////////////////
+ +
13 + + + + + +
                              EVENTS
+ +
14 + + + + + +
  //////////////////////////////////////////////////////////////*/
+ +
15 + + + + + +
  /**
+ +
16 + + + + + +
   * @notice Emitted when a dispute has been resolved
+ +
17 + + + + + +
   * @param _requestId The id for the request that was disputed
+ +
18 + + + + + +
   * @param _disputeId The id for the dispute that was resolved
+ +
19 + + + + + +
   * @param _status The final result of the resolution
+ +
20 + + + + + +
   */
+ +
21 + + + + + +
  event DisputeResolved(bytes32 indexed _requestId, bytes32 indexed _disputeId, IOracle.DisputeStatus _status);
+ +
22 + + + + + +

+                            
+                        
23 + + + + + +
  /**
+ +
24 + + + + + +
   * @notice Emitted when a resolution is started
+ +
25 + + + + + +
   * @param _requestId The id for the request for the dispute
+ +
26 + + + + + +
   * @param _disputeId The id for the dispute that the resolution was started for
+ +
27 + + + + + +
   */
+ +
28 + + + + + +
  event ResolutionStarted(bytes32 indexed _requestId, bytes32 indexed _disputeId);
+ +
29 + + + + + +

+                            
+                        
30 + + + + + +
  /*///////////////////////////////////////////////////////////////
+ +
31 + + + + + +
                              LOGIC
+ +
32 + + + + + +
  //////////////////////////////////////////////////////////////*/
+ +
33 + + + + + +

+                            
+                        
34 + + + + + +
  /**
+ +
35 + + + + + +
   * @notice Starts the resolution process
+ +
36 + + + + + +
   *
+ +
37 + + + + + +
   * @param _disputeId The id of the dispute
+ +
38 + + + + + +
   * @param _request The request data
+ +
39 + + + + + +
   * @param _response The disputed response
+ +
40 + + + + + +
   * @param _dispute The dispute being resolved
+ +
41 + + + + + +
   */
+ +
42 + + + + + +
  function startResolution(
+ +
43 + + + + + +
    bytes32 _disputeId,
+ +
44 + + + + + +
    IOracle.Request calldata _request,
+ +
45 + + + + + +
    IOracle.Response calldata _response,
+ +
46 + + + + + +
    IOracle.Dispute calldata _dispute
+ +
47 + + + + + +
  ) external;
+ +
48 + + + + + +

+                            
+                        
49 + + + + + +
  /**
+ +
50 + + + + + +
   * @notice Resolves a dispute
+ +
51 + + + + + +
   *
+ +
52 + + + + + +
   * @param _disputeId The id of the dispute being resolved
+ +
53 + + + + + +
   * @param _request The request data
+ +
54 + + + + + +
   * @param _response The disputed response
+ +
55 + + + + + +
   * @param _dispute The dispute being resolved
+ +
56 + + + + + +
   */
+ +
57 + + + + + +
  function resolveDispute(
+ +
58 + + + + + +
    bytes32 _disputeId,
+ +
59 + + + + + +
    IOracle.Request calldata _request,
+ +
60 + + + + + +
    IOracle.Response calldata _response,
+ +
61 + + + + + +
    IOracle.Dispute calldata _dispute
+ +
62 + + + + + +
  ) external;
+ +
63 + + + + + +
}
+ +
64 + + + + + +

+                            
+                        
+
+
+ + + + + + + + + + +
+
+
+ + + + + + +
Lines covered: 0 / 0 (0.0%)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
1 + + + + + +
// SPDX-License-Identifier: MIT
+ +
2 + + + + + +
pragma solidity ^0.8.19;
+ +
3 + + + + + +

+                            
+                        
4 + + + + + +
import {IModule} from '../../IModule.sol';
+ +
5 + + + + + +
import {IOracle} from '../../IOracle.sol';
+ +
6 + + + + + +

+                            
+                        
7 + + + + + +
/**
+ +
8 + + + + + +
 * @title ResponseModule
+ +
9 + + + + + +
 * @notice Common interface for all response modules
+ +
10 + + + + + +
 */
+ +
11 + + + + + +
interface IResponseModule is IModule {
+ +
12 + + + + + +
  /**
+ +
13 + + + + + +
   * @notice Creates a new response for a given request
+ +
14 + + + + + +
   *
+ +
15 + + + + + +
   * @param _request The request to create a response for
+ +
16 + + + + + +
   * @param _response The response to create
+ +
17 + + + + + +
   * @param _sender The creator of the response
+ +
18 + + + + + +
   */
+ +
19 + + + + + +
  function propose(IOracle.Request calldata _request, IOracle.Response calldata _response, address _sender) external;
+ +
20 + + + + + +

+                            
+                        
21 + + + + + +
  /**
+ +
22 + + + + + +
   * @notice Refunds the proposer for a valid and unutilized response
+ +
23 + + + + + +
   *
+ +
24 + + + + + +
   * @param _request The request
+ +
25 + + + + + +
   * @param _response The unutilized response
+ +
26 + + + + + +
   */
+ +
27 + + + + + +
  function releaseUnutilizedResponse(IOracle.Request calldata _request, IOracle.Response calldata _response) external;
+ +
28 + + + + + +
}
+ +
29 + + + + + +

+                            
+                        
+
+
+ + + + + + + + + + +
+
+
+ + + + + + +
Lines covered: 0 / 26 (0.0%)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
1 + + + + + +
// SPDX-License-Identifier: MIT
+ +
2 + + + + + +
pragma solidity ^0.8.19;
+ +
3 + + + + + +

+                            
+                        
4 + + + + + +
import {IOracle} from '../interfaces/IOracle.sol';
+ +
5 + + + + + +

+                            
+                        
6 + + + + + +
library ValidatorLib {
+ +
7 + + + + + +
  /**
+ +
8 + + + + + +
   * @notice Thrown when the response provided does not match the request
+ +
9 + + + + + +
   */
+ +
10 + + + + + +
  error ValidatorLib_InvalidResponseBody();
+ +
11 + + + + + +

+                            
+                        
12 + + + + + +
  /**
+ +
13 + + + + + +
   * @notice Thrown when the dispute provided does not match the request or response
+ +
14 + + + + + +
   */
+ +
15 + + + + + +
  error ValidatorLib_InvalidDisputeBody();
+ +
16 + + + + + +

+                            
+                        
17 + + + + + +
  /**
+ +
18 + + + + + +
   * @notice Computes the id a given request
+ +
19 + + + + + +
   *
+ +
20 + + + + + +
   * @param _request The request to compute the id for
+ +
21 + + + + + +
   * @return _id The id the request
+ +
22 + + + + + +
   */
+ +
23 + + + + + +
  function _getId(IOracle.Request calldata _request) public pure returns (bytes32 _id) {
+ +
24 + + + + + +
    _id = keccak256(abi.encode(_request));
+ +
25 + + + + + +
  }
+ +
26 + + + + + +

+                            
+                        
27 + + + + + +
  /**
+ +
28 + + + + + +
   * @notice Computes the id a given response
+ +
29 + + + + + +
   *
+ +
30 + + + + + +
   * @param _response The response to compute the id for
+ +
31 + + + + + +
   * @return _id The id the response
+ +
32 + + + + + +
   */
+ +
33 + + + + + +
  function _getId(IOracle.Response calldata _response) public pure returns (bytes32 _id) {
+ +
34 + + + + + +
    _id = keccak256(abi.encode(_response));
+ +
35 + + + + + +
  }
+ +
36 + + + + + +

+                            
+                        
37 + + + + + +
  /**
+ +
38 + + + + + +
   * @notice Computes the id a given dispute
+ +
39 + + + + + +
   *
+ +
40 + + + + + +
   * @param _dispute The dispute to compute the id for
+ +
41 + + + + + +
   * @return _id The id the dispute
+ +
42 + + + + + +
   */
+ +
43 + + + + + +
  function _getId(IOracle.Dispute calldata _dispute) public pure returns (bytes32 _id) {
+ +
44 + + + + + +
    _id = keccak256(abi.encode(_dispute));
+ +
45 + + + + + +
  }
+ +
46 + + + + + +

+                            
+                        
47 + + + + + +
  /**
+ +
48 + + + + + +
   * @notice Validates the correctness and existance of a request-response pair
+ +
49 + + + + + +
   *
+ +
50 + + + + + +
   * @param _request The request to compute the id for
+ +
51 + + + + + +
   * @param _response The response to compute the id for
+ +
52 + + + + + +
   * @return _responseId The id the response
+ +
53 + + + + + +
   */
+ +
54 + + + + + +
  function _validateResponse(
+ +
55 + + + + + +
    IOracle.Request calldata _request,
+ +
56 + + + + + +
    IOracle.Response calldata _response
+ +
57 + + + + + +
  ) public pure returns (bytes32 _responseId) {
+ +
58 + + + + + +
    bytes32 _requestId = _getId(_request);
+ +
59 + + + + + +
    _responseId = _getId(_response);
+ +
60 + + + + + +

+                            
+                        
61 + + + + + +
    if (_response.requestId != _requestId) revert ValidatorLib_InvalidResponseBody();
+ +
62 + + + + + +
  }
+ +
63 + + + + + +

+                            
+                        
64 + + + + + +
  /**
+ +
65 + + + + + +
   * @notice Validates the correctness of a request-dispute pair
+ +
66 + + + + + +
   *
+ +
67 + + + + + +
   * @param _request The request to compute the id for
+ +
68 + + + + + +
   * @param _dispute The dispute to compute the id for
+ +
69 + + + + + +
   * @return _disputeId The id the dispute
+ +
70 + + + + + +
   */
+ +
71 + + + + + +
  function _validateDispute(
+ +
72 + + + + + +
    IOracle.Request calldata _request,
+ +
73 + + + + + +
    IOracle.Dispute calldata _dispute
+ +
74 + + + + + +
  ) public pure returns (bytes32 _disputeId) {
+ +
75 + + + + + +
    bytes32 _requestId = _getId(_request);
+ +
76 + + + + + +
    _disputeId = _getId(_dispute);
+ +
77 + + + + + +

+                            
+                        
78 + + + + + +
    if (_dispute.requestId != _requestId) revert ValidatorLib_InvalidDisputeBody();
+ +
79 + + + + + +
  }
+ +
80 + + + + + +

+                            
+                        
81 + + + + + +
  /**
+ +
82 + + + + + +
   * @notice Validates the correctness of a response-dispute pair
+ +
83 + + + + + +
   *
+ +
84 + + + + + +
   * @param _response The response to compute the id for
+ +
85 + + + + + +
   * @param _dispute The dispute to compute the id for
+ +
86 + + + + + +
   * @return _disputeId The id the dispute
+ +
87 + + + + + +
   */
+ +
88 + + + + + +
  function _validateDispute(
+ +
89 + + + + + +
    IOracle.Response calldata _response,
+ +
90 + + + + + +
    IOracle.Dispute calldata _dispute
+ +
91 + + + + + +
  ) public pure returns (bytes32 _disputeId) {
+ +
92 + + + + + +
    bytes32 _responseId = _getId(_response);
+ +
93 + + + + + +
    _disputeId = _getId(_dispute);
+ +
94 + + + + + +

+                            
+                        
95 + + + + + +
    if (_dispute.responseId != _responseId) revert ValidatorLib_InvalidDisputeBody();
+ +
96 + + + + + +
  }
+ +
97 + + + + + +

+                            
+                        
98 + + + + + +
  /**
+ +
99 + + + + + +
   * @notice Validates the correctness of a request-response-dispute triplet
+ +
100 + + + + + +
   *
+ +
101 + + + + + +
   * @param _request The request to compute the id for
+ +
102 + + + + + +
   * @param _response The response to compute the id for
+ +
103 + + + + + +
   * @param _dispute The dispute to compute the id for
+ +
104 + + + + + +
   * @return _responseId The id the response
+ +
105 + + + + + +
   * @return _disputeId The id the dispute
+ +
106 + + + + + +
   */
+ +
107 + + + + + +
  function _validateResponseAndDispute(
+ +
108 + + + + + +
    IOracle.Request calldata _request,
+ +
109 + + + + + +
    IOracle.Response calldata _response,
+ +
110 + + + + + +
    IOracle.Dispute calldata _dispute
+ +
111 + + + + + +
  ) public pure returns (bytes32 _responseId, bytes32 _disputeId) {
+ +
112 + + + + + +
    bytes32 _requestId = _getId(_request);
+ +
113 + + + + + +
    _responseId = _getId(_response);
+ +
114 + + + + + +
    _disputeId = _getId(_dispute);
+ +
115 + + + + + +

+                            
+                        
116 + + + + + +
    if (_response.requestId != _requestId) revert ValidatorLib_InvalidResponseBody();
+ +
117 + + + + + +
    if (_dispute.requestId != _requestId || _dispute.responseId != _responseId) {
+ +
118 + + + + + +
      revert ValidatorLib_InvalidDisputeBody();
+ +
119 + + + + + +
    }
+ +
120 + + + + + +
  }
+ +
121 + + + + + +
}
+ +
122 + + + + + +

+                            
+                        
+
+
+ + + + + + + + + + +
+
+
+ + + + + + +
Lines covered: 1 / 169 (0.6%)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
1 + + + + + +
// SPDX-License-Identifier: MIT
+ +
2 + + + + + +
pragma solidity ^0.8.19;
+ +
3 + + + + + +

+                            
+                        
4 + + + + + +
import {IModule, Module} from '@defi-wonderland/prophet-core/solidity/contracts/Module.sol';
+ +
5 + + + + + +
import {IOracle} from '@defi-wonderland/prophet-core/solidity/interfaces/IOracle.sol';
+ +
6 + + + + + +
import {FixedPointMathLib} from 'solmate/src/utils/FixedPointMathLib.sol';
+ +
7 + + + + + +

+                            
+                        
8 + + + + + +
import {IBondEscalationModule} from '../../../interfaces/modules/dispute/IBondEscalationModule.sol';
+ +
9 + + + + + +

+                            
+                        
10 + + + + + +
contract BondEscalationModule is Module, IBondEscalationModule {
+ +
11 + + + + + +
  /// @inheritdoc IBondEscalationModule
+ +
12 + + + + + +
  mapping(bytes32 _requestId => mapping(address _pledger => uint256 pledges)) public pledgesForDispute;
+ +
13 + + + + + +

+                            
+                        
14 + + + + + +
  /// @inheritdoc IBondEscalationModule
+ +
15 + + + + + +
  mapping(bytes32 _requestId => mapping(address _pledger => uint256 pledges)) public pledgesAgainstDispute;
+ +
16 + + + + + +

+                            
+                        
17 + + + + + +
  /**
+ +
18 + + + + + +
   * @notice Struct containing all the data for a given escalation.
+ +
19 + + + + + +
   */
+ +
20 + + + + + +
  mapping(bytes32 _requestId => BondEscalation) internal _escalations;
+ +
21 + + + + + +

+                            
+                        
22 + +
+ +
+ + + +
  constructor(IOracle _oracle) Module(_oracle) {}
+ +
23 + + + + + +

+                            
+                        
24 + + + + + +
  /// @inheritdoc IModule
+ +
25 + + + + + +
  function moduleName() external pure returns (string memory _moduleName) {
+ +
26 + + + + + +
    return 'BondEscalationModule';
+ +
27 + + + + + +
  }
+ +
28 + + + + + +

+                            
+                        
29 + + + + + +
  /// @inheritdoc IBondEscalationModule
+ +
30 + + + + + +
  function disputeResponse(
+ +
31 + + + + + +
    IOracle.Request calldata _request,
+ +
32 + + + + + +
    IOracle.Response calldata _response,
+ +
33 + + + + + +
    IOracle.Dispute calldata _dispute
+ +
34 + + + + + +
  ) external onlyOracle {
+ +
35 + + + + + +
    bytes32 _disputeId = _getId(_dispute);
+ +
36 + + + + + +
    RequestParameters memory _params = decodeRequestData(_request.disputeModuleData);
+ +
37 + + + + + +
    BondEscalation storage _escalation = _escalations[_dispute.requestId];
+ +
38 + + + + + +

+                            
+                        
39 + + + + + +
    if (block.timestamp > ORACLE.responseCreatedAt(_dispute.responseId) + _params.disputeWindow) {
+ +
40 + + + + + +
      revert BondEscalationModule_DisputeWindowOver();
+ +
41 + + + + + +
    }
+ +
42 + + + + + +

+                            
+                        
43 + + + + + +
    _params.accountingExtension.bond({
+ +
44 + + + + + +
      _bonder: _dispute.disputer,
+ +
45 + + + + + +
      _requestId: _dispute.requestId,
+ +
46 + + + + + +
      _token: _params.bondToken,
+ +
47 + + + + + +
      _amount: _params.bondSize
+ +
48 + + + + + +
    });
+ +
49 + + + + + +

+                            
+                        
50 + + + + + +
    emit ResponseDisputed({
+ +
51 + + + + + +
      _requestId: _dispute.requestId,
+ +
52 + + + + + +
      _responseId: _dispute.responseId,
+ +
53 + + + + + +
      _disputeId: _disputeId,
+ +
54 + + + + + +
      _dispute: _dispute
+ +
55 + + + + + +
    });
+ +
56 + + + + + +

+                            
+                        
57 + + + + + +
    // Only the first dispute of a request should go through the bond escalation
+ +
58 + + + + + +
    // Consecutive disputes should be handled by the resolution module
+ +
59 + + + + + +
    if (_escalation.status == BondEscalationStatus.None) {
+ +
60 + + + + + +
      _escalation.status = BondEscalationStatus.Active;
+ +
61 + + + + + +
      _escalation.disputeId = _disputeId;
+ +
62 + + + + + +
      emit BondEscalationStatusUpdated(_dispute.requestId, _disputeId, BondEscalationStatus.Active);
+ +
63 + + + + + +
    } else if (_disputeId != _escalation.disputeId) {
+ +
64 + + + + + +
      ORACLE.escalateDispute(_request, _response, _dispute);
+ +
65 + + + + + +
    }
+ +
66 + + + + + +
  }
+ +
67 + + + + + +

+                            
+                        
68 + + + + + +
  /// @inheritdoc IBondEscalationModule
+ +
69 + + + + + +
  function onDisputeStatusChange(
+ +
70 + + + + + +
    bytes32 _disputeId,
+ +
71 + + + + + +
    IOracle.Request calldata _request,
+ +
72 + + + + + +
    IOracle.Response calldata,
+ +
73 + + + + + +
    IOracle.Dispute calldata _dispute
+ +
74 + + + + + +
  ) external onlyOracle {
+ +
75 + + + + + +
    RequestParameters memory _params = decodeRequestData(_request.disputeModuleData);
+ +
76 + + + + + +
    BondEscalation storage _escalation = _escalations[_dispute.requestId];
+ +
77 + + + + + +
    IOracle.DisputeStatus _disputeStatus = ORACLE.disputeStatus(_disputeId);
+ +
78 + + + + + +
    BondEscalationStatus _newStatus;
+ +
79 + + + + + +

+                            
+                        
80 + + + + + +
    if (_disputeId == _escalation.disputeId) {
+ +
81 + + + + + +
      // The bond escalated (first) dispute has been updated
+ +
82 + + + + + +
      if (_disputeStatus == IOracle.DisputeStatus.Escalated) {
+ +
83 + + + + + +
        // The dispute has been escalated to the Resolution module
+ +
84 + + + + + +
        // Make sure the bond escalation deadline has passed and update the status
+ +
85 + + + + + +
        if (block.timestamp <= ORACLE.disputeCreatedAt(_disputeId) + _params.bondEscalationDeadline) {
+ +
86 + + + + + +
          revert BondEscalationModule_BondEscalationNotOver();
+ +
87 + + + + + +
        }
+ +
88 + + + + + +

+                            
+                        
89 + + + + + +
        if (
+ +
90 + + + + + +
          _escalation.status != BondEscalationStatus.Active
+ +
91 + + + + + +
            || _escalation.amountOfPledgesForDispute != _escalation.amountOfPledgesAgainstDispute
+ +
92 + + + + + +
        ) {
+ +
93 + + + + + +
          revert BondEscalationModule_NotEscalatable();
+ +
94 + + + + + +
        }
+ +
95 + + + + + +

+                            
+                        
96 + + + + + +
        _newStatus = BondEscalationStatus.Escalated;
+ +
97 + + + + + +
      } else if (_disputeStatus == IOracle.DisputeStatus.NoResolution) {
+ +
98 + + + + + +
        // The resolution module failed to reach a resolution
+ +
99 + + + + + +
        // Refund the disputer and all pledgers, the bond escalation escalation status stays Escalated
+ +
100 + + + + + +
        _newStatus = BondEscalationStatus.Escalated;
+ +
101 + + + + + +

+                            
+                        
102 + + + + + +
        if (_escalation.amountOfPledgesForDispute + _escalation.amountOfPledgesAgainstDispute > 0) {
+ +
103 + + + + + +
          _params.accountingExtension.onSettleBondEscalation({
+ +
104 + + + + + +
            _request: _request,
+ +
105 + + + + + +
            _dispute: _dispute,
+ +
106 + + + + + +
            _token: _params.bondToken,
+ +
107 + + + + + +
            _amountPerPledger: _params.bondSize,
+ +
108 + + + + + +
            _winningPledgersLength: _escalation.amountOfPledgesForDispute + _escalation.amountOfPledgesAgainstDispute
+ +
109 + + + + + +
          });
+ +
110 + + + + + +
        }
+ +
111 + + + + + +

+                            
+                        
112 + + + + + +
        _params.accountingExtension.release({
+ +
113 + + + + + +
          _requestId: _dispute.requestId,
+ +
114 + + + + + +
          _bonder: _dispute.disputer,
+ +
115 + + + + + +
          _token: _params.bondToken,
+ +
116 + + + + + +
          _amount: _params.bondSize
+ +
117 + + + + + +
        });
+ +
118 + + + + + +
      } else {
+ +
119 + + + + + +
        // One of the sides won
+ +
120 + + + + + +
        // Pay the winner (proposer/disputer) and the pledgers, the bond escalation status changes to DisputerWon/DisputerLost
+ +
121 + + + + + +
        bool _won = _disputeStatus == IOracle.DisputeStatus.Won;
+ +
122 + + + + + +
        _newStatus = _won ? BondEscalationStatus.DisputerWon : BondEscalationStatus.DisputerLost;
+ +
123 + + + + + +

+                            
+                        
124 + + + + + +
        uint256 _pledgesForDispute = _escalation.amountOfPledgesForDispute;
+ +
125 + + + + + +
        uint256 _pledgesAgainstDispute = _escalation.amountOfPledgesAgainstDispute;
+ +
126 + + + + + +

+                            
+                        
127 + + + + + +
        if (_pledgesAgainstDispute > 0 || _pledgesForDispute > 0) {
+ +
128 + + + + + +
          uint256 _amountToPay = _won
+ +
129 + + + + + +
            ? _params.bondSize
+ +
130 + + + + + +
              + FixedPointMathLib.mulDivDown(_pledgesAgainstDispute, _params.bondSize, _pledgesForDispute)
+ +
131 + + + + + +
            : _params.bondSize
+ +
132 + + + + + +
              + FixedPointMathLib.mulDivDown(_pledgesForDispute, _params.bondSize, _pledgesAgainstDispute);
+ +
133 + + + + + +

+                            
+                        
134 + + + + + +
          _params.accountingExtension.onSettleBondEscalation({
+ +
135 + + + + + +
            _request: _request,
+ +
136 + + + + + +
            _dispute: _dispute,
+ +
137 + + + + + +
            _token: _params.bondToken,
+ +
138 + + + + + +
            _amountPerPledger: _amountToPay,
+ +
139 + + + + + +
            _winningPledgersLength: _won ? _pledgesForDispute : _pledgesAgainstDispute
+ +
140 + + + + + +
          });
+ +
141 + + + + + +
        }
+ +
142 + + + + + +

+                            
+                        
143 + + + + + +
        _params.accountingExtension.pay({
+ +
144 + + + + + +
          _requestId: _dispute.requestId,
+ +
145 + + + + + +
          _payer: _won ? _dispute.proposer : _dispute.disputer,
+ +
146 + + + + + +
          _receiver: _won ? _dispute.disputer : _dispute.proposer,
+ +
147 + + + + + +
          _token: _params.bondToken,
+ +
148 + + + + + +
          _amount: _params.bondSize
+ +
149 + + + + + +
        });
+ +
150 + + + + + +

+                            
+                        
151 + + + + + +
        if (_won) {
+ +
152 + + + + + +
          _params.accountingExtension.release({
+ +
153 + + + + + +
            _requestId: _dispute.requestId,
+ +
154 + + + + + +
            _bonder: _dispute.disputer,
+ +
155 + + + + + +
            _token: _params.bondToken,
+ +
156 + + + + + +
            _amount: _params.bondSize
+ +
157 + + + + + +
          });
+ +
158 + + + + + +
        }
+ +
159 + + + + + +
      }
+ +
160 + + + + + +
    } else {
+ +
161 + + + + + +
      // The non-bond escalated (second and subsequent) dispute has been updated
+ +
162 + + + + + +
      if (_disputeStatus == IOracle.DisputeStatus.Escalated) {
+ +
163 + + + + + +
        // The dispute has been escalated to the Resolution module
+ +
164 + + + + + +
        // Update the bond escalation status to Escalated
+ +
165 + + + + + +
        _newStatus = BondEscalationStatus.Escalated;
+ +
166 + + + + + +
      } else if (_disputeStatus == IOracle.DisputeStatus.NoResolution) {
+ +
167 + + + + + +
        // The resolution module failed to reach a resolution
+ +
168 + + + + + +
        // Refund the disputer, the bond escalation status stays Escalated
+ +
169 + + + + + +
        _newStatus = BondEscalationStatus.Escalated;
+ +
170 + + + + + +
        _params.accountingExtension.release({
+ +
171 + + + + + +
          _requestId: _dispute.requestId,
+ +
172 + + + + + +
          _bonder: _dispute.disputer,
+ +
173 + + + + + +
          _token: _params.bondToken,
+ +
174 + + + + + +
          _amount: _params.bondSize
+ +
175 + + + + + +
        });
+ +
176 + + + + + +
      } else {
+ +
177 + + + + + +
        // One of the sides won
+ +
178 + + + + + +
        // Pay the winner (proposer/disputer), the bond escalation status changes to DisputerWon/DisputerLost
+ +
179 + + + + + +
        bool _won = _disputeStatus == IOracle.DisputeStatus.Won;
+ +
180 + + + + + +
        _newStatus = _won ? BondEscalationStatus.DisputerWon : BondEscalationStatus.DisputerLost;
+ +
181 + + + + + +

+                            
+                        
182 + + + + + +
        _params.accountingExtension.pay({
+ +
183 + + + + + +
          _requestId: _dispute.requestId,
+ +
184 + + + + + +
          _payer: _won ? _dispute.proposer : _dispute.disputer,
+ +
185 + + + + + +
          _receiver: _won ? _dispute.disputer : _dispute.proposer,
+ +
186 + + + + + +
          _token: _params.bondToken,
+ +
187 + + + + + +
          _amount: _params.bondSize
+ +
188 + + + + + +
        });
+ +
189 + + + + + +

+                            
+                        
190 + + + + + +
        if (_won) {
+ +
191 + + + + + +
          _params.accountingExtension.release({
+ +
192 + + + + + +
            _requestId: _dispute.requestId,
+ +
193 + + + + + +
            _bonder: _dispute.disputer,
+ +
194 + + + + + +
            _token: _params.bondToken,
+ +
195 + + + + + +
            _amount: _params.bondSize
+ +
196 + + + + + +
          });
+ +
197 + + + + + +
        }
+ +
198 + + + + + +
      }
+ +
199 + + + + + +
    }
+ +
200 + + + + + +

+                            
+                        
201 + + + + + +
    _escalation.status = _newStatus;
+ +
202 + + + + + +
    emit BondEscalationStatusUpdated(_dispute.requestId, _disputeId, _newStatus);
+ +
203 + + + + + +
    emit DisputeStatusChanged({_disputeId: _disputeId, _dispute: _dispute, _status: _disputeStatus});
+ +
204 + + + + + +
  }
+ +
205 + + + + + +

+                            
+                        
206 + + + + + +
  ////////////////////////////////////////////////////////////////////
+ +
207 + + + + + +
  //                Bond Escalation Exclusive Functions
+ +
208 + + + + + +
  ////////////////////////////////////////////////////////////////////
+ +
209 + + + + + +

+                            
+                        
210 + + + + + +
  /// @inheritdoc IBondEscalationModule
+ +
211 + + + + + +
  function pledgeForDispute(IOracle.Request calldata _request, IOracle.Dispute calldata _dispute) external {
+ +
212 + + + + + +
    bytes32 _disputeId = _getId(_dispute);
+ +
213 + + + + + +
    RequestParameters memory _params = _pledgeChecks(_request, _dispute, true);
+ +
214 + + + + + +

+                            
+                        
215 + + + + + +
    _escalations[_dispute.requestId].amountOfPledgesForDispute += 1;
+ +
216 + + + + + +
    pledgesForDispute[_dispute.requestId][msg.sender] += 1;
+ +
217 + + + + + +
    _params.accountingExtension.pledge({
+ +
218 + + + + + +
      _pledger: msg.sender,
+ +
219 + + + + + +
      _request: _request,
+ +
220 + + + + + +
      _dispute: _dispute,
+ +
221 + + + + + +
      _token: _params.bondToken,
+ +
222 + + + + + +
      _amount: _params.bondSize
+ +
223 + + + + + +
    });
+ +
224 + + + + + +

+                            
+                        
225 + + + + + +
    emit PledgedForDispute(_disputeId, msg.sender, _params.bondSize);
+ +
226 + + + + + +
  }
+ +
227 + + + + + +

+                            
+                        
228 + + + + + +
  /// @inheritdoc IBondEscalationModule
+ +
229 + + + + + +
  function pledgeAgainstDispute(IOracle.Request calldata _request, IOracle.Dispute calldata _dispute) external {
+ +
230 + + + + + +
    bytes32 _disputeId = _getId(_dispute);
+ +
231 + + + + + +
    RequestParameters memory _params = _pledgeChecks(_request, _dispute, false);
+ +
232 + + + + + +

+                            
+                        
233 + + + + + +
    _escalations[_dispute.requestId].amountOfPledgesAgainstDispute += 1;
+ +
234 + + + + + +
    pledgesAgainstDispute[_dispute.requestId][msg.sender] += 1;
+ +
235 + + + + + +
    _params.accountingExtension.pledge({
+ +
236 + + + + + +
      _pledger: msg.sender,
+ +
237 + + + + + +
      _request: _request,
+ +
238 + + + + + +
      _dispute: _dispute,
+ +
239 + + + + + +
      _token: _params.bondToken,
+ +
240 + + + + + +
      _amount: _params.bondSize
+ +
241 + + + + + +
    });
+ +
242 + + + + + +

+                            
+                        
243 + + + + + +
    emit PledgedAgainstDispute(_disputeId, msg.sender, _params.bondSize);
+ +
244 + + + + + +
  }
+ +
245 + + + + + +

+                            
+                        
246 + + + + + +
  /// @inheritdoc IBondEscalationModule
+ +
247 + + + + + +
  function settleBondEscalation(
+ +
248 + + + + + +
    IOracle.Request calldata _request,
+ +
249 + + + + + +
    IOracle.Response calldata _response,
+ +
250 + + + + + +
    IOracle.Dispute calldata _dispute
+ +
251 + + + + + +
  ) external {
+ +
252 + + + + + +
    (, bytes32 _disputeId) = _validateResponseAndDispute(_request, _response, _dispute);
+ +
253 + + + + + +
    RequestParameters memory _params = decodeRequestData(_request.disputeModuleData);
+ +
254 + + + + + +
    BondEscalation storage _escalation = _escalations[_dispute.requestId];
+ +
255 + + + + + +

+                            
+                        
256 + + + + + +
    uint256 _disputeCreatedAt = ORACLE.disputeCreatedAt(_disputeId);
+ +
257 + + + + + +
    if (block.timestamp <= _disputeCreatedAt + _params.bondEscalationDeadline + _params.tyingBuffer) {
+ +
258 + + + + + +
      revert BondEscalationModule_BondEscalationNotOver();
+ +
259 + + + + + +
    }
+ +
260 + + + + + +

+                            
+                        
261 + + + + + +
    if (_escalation.status != BondEscalationStatus.Active) {
+ +
262 + + + + + +
      revert BondEscalationModule_BondEscalationCantBeSettled();
+ +
263 + + + + + +
    }
+ +
264 + + + + + +

+                            
+                        
265 + + + + + +
    uint256 _pledgesForDispute = _escalation.amountOfPledgesForDispute;
+ +
266 + + + + + +
    uint256 _pledgesAgainstDispute = _escalation.amountOfPledgesAgainstDispute;
+ +
267 + + + + + +

+                            
+                        
268 + + + + + +
    if (_pledgesForDispute == _pledgesAgainstDispute) {
+ +
269 + + + + + +
      revert BondEscalationModule_ShouldBeEscalated();
+ +
270 + + + + + +
    }
+ +
271 + + + + + +

+                            
+                        
272 + + + + + +
    bool _disputersWon = _pledgesForDispute > _pledgesAgainstDispute;
+ +
273 + + + + + +
    _escalation.status = _disputersWon ? BondEscalationStatus.DisputerWon : BondEscalationStatus.DisputerLost;
+ +
274 + + + + + +

+                            
+                        
275 + + + + + +
    emit BondEscalationStatusUpdated(_dispute.requestId, _disputeId, _escalation.status);
+ +
276 + + + + + +

+                            
+                        
277 + + + + + +
    ORACLE.updateDisputeStatus(
+ +
278 + + + + + +
      _request, _response, _dispute, _disputersWon ? IOracle.DisputeStatus.Won : IOracle.DisputeStatus.Lost
+ +
279 + + + + + +
    );
+ +
280 + + + + + +
  }
+ +
281 + + + + + +

+                            
+                        
282 + + + + + +
  /**
+ +
283 + + + + + +
   * @notice Checks the necessary conditions for pledging
+ +
284 + + + + + +
   * @param _request The request data
+ +
285 + + + + + +
   * @param _dispute The dispute data
+ +
286 + + + + + +
   * @param _forDispute Whether the pledge is for or against the dispute
+ +
287 + + + + + +
   * @return _params The decoded parameters for the request
+ +
288 + + + + + +
   */
+ +
289 + + + + + +
  function _pledgeChecks(
+ +
290 + + + + + +
    IOracle.Request calldata _request,
+ +
291 + + + + + +
    IOracle.Dispute calldata _dispute,
+ +
292 + + + + + +
    bool _forDispute
+ +
293 + + + + + +
  ) internal view returns (RequestParameters memory _params) {
+ +
294 + + + + + +
    bytes32 _disputeId = _validateDispute(_request, _dispute);
+ +
295 + + + + + +

+                            
+                        
296 + + + + + +
    BondEscalation memory _escalation = _escalations[_dispute.requestId];
+ +
297 + + + + + +

+                            
+                        
298 + + + + + +
    if (_disputeId != _escalation.disputeId) {
+ +
299 + + + + + +
      revert BondEscalationModule_InvalidDispute();
+ +
300 + + + + + +
    }
+ +
301 + + + + + +

+                            
+                        
302 + + + + + +
    _params = decodeRequestData(_request.disputeModuleData);
+ +
303 + + + + + +

+                            
+                        
304 + + + + + +
    uint256 _disputeCreatedAt = ORACLE.disputeCreatedAt(_disputeId);
+ +
305 + + + + + +
    if (block.timestamp > _disputeCreatedAt + _params.bondEscalationDeadline + _params.tyingBuffer) {
+ +
306 + + + + + +
      revert BondEscalationModule_BondEscalationOver();
+ +
307 + + + + + +
    }
+ +
308 + + + + + +

+                            
+                        
309 + + + + + +
    uint256 _numPledgersForDispute = _escalation.amountOfPledgesForDispute;
+ +
310 + + + + + +
    uint256 _numPledgersAgainstDispute = _escalation.amountOfPledgesAgainstDispute;
+ +
311 + + + + + +

+                            
+                        
312 + + + + + +
    if (_forDispute) {
+ +
313 + + + + + +
      if (_numPledgersForDispute == _params.maxNumberOfEscalations) {
+ +
314 + + + + + +
        revert BondEscalationModule_MaxNumberOfEscalationsReached();
+ +
315 + + + + + +
      }
+ +
316 + + + + + +
      if (_numPledgersForDispute > _numPledgersAgainstDispute) revert BondEscalationModule_CanOnlySurpassByOnePledge();
+ +
317 + + + + + +
    } else {
+ +
318 + + + + + +
      if (_numPledgersAgainstDispute == _params.maxNumberOfEscalations) {
+ +
319 + + + + + +
        revert BondEscalationModule_MaxNumberOfEscalationsReached();
+ +
320 + + + + + +
      }
+ +
321 + + + + + +
      if (_numPledgersAgainstDispute > _numPledgersForDispute) revert BondEscalationModule_CanOnlySurpassByOnePledge();
+ +
322 + + + + + +
    }
+ +
323 + + + + + +

+                            
+                        
324 + + + + + +
    if (
+ +
325 + + + + + +
      block.timestamp > _disputeCreatedAt + _params.bondEscalationDeadline
+ +
326 + + + + + +
        && _numPledgersForDispute == _numPledgersAgainstDispute
+ +
327 + + + + + +
    ) {
+ +
328 + + + + + +
      revert BondEscalationModule_CannotBreakTieDuringTyingBuffer();
+ +
329 + + + + + +
    }
+ +
330 + + + + + +
  }
+ +
331 + + + + + +

+                            
+                        
332 + + + + + +
  ////////////////////////////////////////////////////////////////////
+ +
333 + + + + + +
  //                        View Functions
+ +
334 + + + + + +
  ////////////////////////////////////////////////////////////////////
+ +
335 + + + + + +

+                            
+                        
336 + + + + + +
  /// @inheritdoc IBondEscalationModule
+ +
337 + + + + + +
  function decodeRequestData(bytes calldata _data) public pure returns (RequestParameters memory _params) {
+ +
338 + + + + + +
    _params = abi.decode(_data, (RequestParameters));
+ +
339 + + + + + +
  }
+ +
340 + + + + + +

+                            
+                        
341 + + + + + +
  /// @inheritdoc IBondEscalationModule
+ +
342 + + + + + +
  function getEscalation(bytes32 _requestId) public view returns (BondEscalation memory _escalation) {
+ +
343 + + + + + +
    _escalation = _escalations[_requestId];
+ +
344 + + + + + +
  }
+ +
345 + + + + + +

+                            
+                        
346 + + + + + +
  /// @inheritdoc IModule
+ +
347 + + + + + +
  function validateParameters(bytes calldata _encodedParameters)
+ +
348 + + + + + +
    external
+ +
349 + + + + + +
    pure
+ +
350 + + + + + +
    override(Module, IModule)
+ +
351 + + + + + +
    returns (bool _valid)
+ +
352 + + + + + +
  {
+ +
353 + + + + + +
    RequestParameters memory _params = decodeRequestData(_encodedParameters);
+ +
354 + + + + + +
    _valid = address(_params.accountingExtension) != address(0) && address(_params.bondToken) != address(0)
+ +
355 + + + + + +
      && _params.bondSize != 0 && _params.bondEscalationDeadline != 0 && _params.maxNumberOfEscalations != 0
+ +
356 + + + + + +
      && _params.tyingBuffer != 0 && _params.disputeWindow != 0;
+ +
357 + + + + + +
  }
+ +
358 + + + + + +
}
+ +
359 + + + + + +

+                            
+                        
+
+
+ + + + + + + + + + +
+
+
+ + + + + + +
Lines covered: 1 / 20 (5.0%)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
1 + + + + + +
// SPDX-License-Identifier: MIT
+ +
2 + + + + + +
pragma solidity ^0.8.19;
+ +
3 + + + + + +

+                            
+                        
4 + + + + + +
import {IModule, Module} from '@defi-wonderland/prophet-core/solidity/contracts/Module.sol';
+ +
5 + + + + + +
import {IOracle} from '@defi-wonderland/prophet-core/solidity/interfaces/IOracle.sol';
+ +
6 + + + + + +

+                            
+                        
7 + + + + + +
import {IArbitrator} from '../../../interfaces/IArbitrator.sol';
+ +
8 + + + + + +
import {IArbitratorModule} from '../../../interfaces/modules/resolution/IArbitratorModule.sol';
+ +
9 + + + + + +

+                            
+                        
10 + + + + + +
contract ArbitratorModule is Module, IArbitratorModule {
+ +
11 + + + + + +
  /**
+ +
12 + + + + + +
   * @notice The status of all disputes
+ +
13 + + + + + +
   */
+ +
14 + + + + + +
  mapping(bytes32 _disputeId => ArbitrationStatus _status) internal _disputeData;
+ +
15 + + + + + +

+                            
+                        
16 + +
+ +
+ + + +
  constructor(IOracle _oracle) Module(_oracle) {}
+ +
17 + + + + + +

+                            
+                        
18 + + + + + +
  /// @inheritdoc IModule
+ +
19 + + + + + +
  function moduleName() external pure returns (string memory _moduleName) {
+ +
20 + + + + + +
    return 'ArbitratorModule';
+ +
21 + + + + + +
  }
+ +
22 + + + + + +

+                            
+                        
23 + + + + + +
  /// @inheritdoc IArbitratorModule
+ +
24 + + + + + +
  function decodeRequestData(bytes calldata _data) public pure returns (RequestParameters memory _params) {
+ +
25 + + + + + +
    _params = abi.decode(_data, (RequestParameters));
+ +
26 + + + + + +
  }
+ +
27 + + + + + +

+                            
+                        
28 + + + + + +
  /// @inheritdoc IArbitratorModule
+ +
29 + + + + + +
  function getStatus(bytes32 _disputeId) external view returns (ArbitrationStatus _disputeStatus) {
+ +
30 + + + + + +
    _disputeStatus = _disputeData[_disputeId];
+ +
31 + + + + + +
  }
+ +
32 + + + + + +

+                            
+                        
33 + + + + + +
  /// @inheritdoc IArbitratorModule
+ +
34 + + + + + +
  function startResolution(
+ +
35 + + + + + +
    bytes32 _disputeId,
+ +
36 + + + + + +
    IOracle.Request calldata _request,
+ +
37 + + + + + +
    IOracle.Response calldata _response,
+ +
38 + + + + + +
    IOracle.Dispute calldata _dispute
+ +
39 + + + + + +
  ) external onlyOracle {
+ +
40 + + + + + +
    RequestParameters memory _params = decodeRequestData(_request.resolutionModuleData);
+ +
41 + + + + + +
    if (_params.arbitrator == address(0)) revert ArbitratorModule_InvalidArbitrator();
+ +
42 + + + + + +

+                            
+                        
43 + + + + + +
    _disputeData[_disputeId] = ArbitrationStatus.Active;
+ +
44 + + + + + +
    IArbitrator(_params.arbitrator).resolve(_request, _response, _dispute);
+ +
45 + + + + + +

+                            
+                        
46 + + + + + +
    emit ResolutionStarted(_dispute.requestId, _disputeId);
+ +
47 + + + + + +
  }
+ +
48 + + + + + +

+                            
+                        
49 + + + + + +
  /// @inheritdoc IArbitratorModule
+ +
50 + + + + + +
  function resolveDispute(
+ +
51 + + + + + +
    bytes32 _disputeId,
+ +
52 + + + + + +
    IOracle.Request calldata _request,
+ +
53 + + + + + +
    IOracle.Response calldata _response,
+ +
54 + + + + + +
    IOracle.Dispute calldata _dispute
+ +
55 + + + + + +
  ) external onlyOracle {
+ +
56 + + + + + +
    if (ORACLE.disputeStatus(_disputeId) != IOracle.DisputeStatus.Escalated) revert ArbitratorModule_InvalidDisputeId();
+ +
57 + + + + + +

+                            
+                        
58 + + + + + +
    RequestParameters memory _params = decodeRequestData(_request.resolutionModuleData);
+ +
59 + + + + + +
    IOracle.DisputeStatus _status = IArbitrator(_params.arbitrator).getAnswer(_disputeId);
+ +
60 + + + + + +

+                            
+                        
61 + + + + + +
    if (_status <= IOracle.DisputeStatus.Escalated) revert ArbitratorModule_InvalidResolutionStatus();
+ +
62 + + + + + +
    _disputeData[_disputeId] = ArbitrationStatus.Resolved;
+ +
63 + + + + + +

+                            
+                        
64 + + + + + +
    ORACLE.updateDisputeStatus(_request, _response, _dispute, _status);
+ +
65 + + + + + +

+                            
+                        
66 + + + + + +
    emit DisputeResolved(_dispute.requestId, _disputeId, _status);
+ +
67 + + + + + +
  }
+ +
68 + + + + + +

+                            
+                        
69 + + + + + +
  /// @inheritdoc IModule
+ +
70 + + + + + +
  function validateParameters(bytes calldata _encodedParameters)
+ +
71 + + + + + +
    external
+ +
72 + + + + + +
    pure
+ +
73 + + + + + +
    override(Module, IModule)
+ +
74 + + + + + +
    returns (bool _valid)
+ +
75 + + + + + +
  {
+ +
76 + + + + + +
    RequestParameters memory _params = decodeRequestData(_encodedParameters);
+ +
77 + + + + + +
    _valid = _params.arbitrator != address(0);
+ +
78 + + + + + +
  }
+ +
79 + + + + + +
}
+ +
80 + + + + + +

+                            
+                        
+
+
+ + + + + + + + + + +
+
+
+ + + + + + +
Lines covered: 1 / 60 (1.7%)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
1 + + + + + +
// SPDX-License-Identifier: MIT
+ +
2 + + + + + +
pragma solidity ^0.8.19;
+ +
3 + + + + + +

+                            
+                        
4 + + + + + +
import {IBondedResponseModule} from '../../../interfaces/modules/response/IBondedResponseModule.sol';
+ +
5 + + + + + +

+                            
+                        
6 + + + + + +
import {IModule, Module} from '@defi-wonderland/prophet-core/solidity/contracts/Module.sol';
+ +
7 + + + + + +
import {IOracle} from '@defi-wonderland/prophet-core/solidity/interfaces/IOracle.sol';
+ +
8 + + + + + +

+                            
+                        
9 + + + + + +
contract BondedResponseModule is Module, IBondedResponseModule {
+ +
10 + +
+ +
+ + + +
  constructor(IOracle _oracle) Module(_oracle) {}
+ +
11 + + + + + +

+                            
+                        
12 + + + + + +
  /// @inheritdoc IModule
+ +
13 + + + + + +
  function moduleName() public pure returns (string memory _moduleName) {
+ +
14 + + + + + +
    _moduleName = 'BondedResponseModule';
+ +
15 + + + + + +
  }
+ +
16 + + + + + +

+                            
+                        
17 + + + + + +
  /// @inheritdoc IBondedResponseModule
+ +
18 + + + + + +
  function decodeRequestData(bytes calldata _data) public pure returns (RequestParameters memory _params) {
+ +
19 + + + + + +
    _params = abi.decode(_data, (RequestParameters));
+ +
20 + + + + + +
  }
+ +
21 + + + + + +

+                            
+                        
22 + + + + + +
  /// @inheritdoc IBondedResponseModule
+ +
23 + + + + + +
  function propose(
+ +
24 + + + + + +
    IOracle.Request calldata _request,
+ +
25 + + + + + +
    IOracle.Response calldata _response,
+ +
26 + + + + + +
    address _sender
+ +
27 + + + + + +
  ) external onlyOracle {
+ +
28 + + + + + +
    RequestParameters memory _params = decodeRequestData(_request.responseModuleData);
+ +
29 + + + + + +

+                            
+                        
30 + + + + + +
    // Cannot propose after the deadline
+ +
31 + + + + + +
    uint256 _requestCreatedAt = ORACLE.requestCreatedAt(_response.requestId);
+ +
32 + + + + + +
    if (block.timestamp >= _requestCreatedAt + _params.deadline) revert BondedResponseModule_TooLateToPropose();
+ +
33 + + + + + +

+                            
+                        
34 + + + + + +
    // Cannot propose to a request with a response, unless the response is being disputed
+ +
35 + + + + + +
    bytes32[] memory _responseIds = ORACLE.getResponseIds(_response.requestId);
+ +
36 + + + + + +
    uint256 _responsesLength = _responseIds.length;
+ +
37 + + + + + +

+                            
+                        
38 + + + + + +
    if (_responsesLength != 0) {
+ +
39 + + + + + +
      bytes32 _disputeId = ORACLE.disputeOf(_responseIds[_responsesLength - 1]);
+ +
40 + + + + + +

+                            
+                        
41 + + + + + +
      // Allowing one undisputed response at a time
+ +
42 + + + + + +
      if (_disputeId == bytes32(0)) revert BondedResponseModule_AlreadyResponded();
+ +
43 + + + + + +
      IOracle.DisputeStatus _status = ORACLE.disputeStatus(_disputeId);
+ +
44 + + + + + +
      // If the dispute was lost, we assume the proposed answer was correct.
+ +
45 + + + + + +
      // DisputeStatus.None should not be reachable due to the previous check.
+ +
46 + + + + + +
      if (_status == IOracle.DisputeStatus.Lost) revert BondedResponseModule_AlreadyResponded();
+ +
47 + + + + + +
    }
+ +
48 + + + + + +

+                            
+                        
49 + + + + + +
    if (_sender != _response.proposer) {
+ +
50 + + + + + +
      _params.accountingExtension.bond({
+ +
51 + + + + + +
        _bonder: _response.proposer,
+ +
52 + + + + + +
        _requestId: _response.requestId,
+ +
53 + + + + + +
        _token: _params.bondToken,
+ +
54 + + + + + +
        _amount: _params.bondSize,
+ +
55 + + + + + +
        _sender: _sender
+ +
56 + + + + + +
      });
+ +
57 + + + + + +
    } else {
+ +
58 + + + + + +
      _params.accountingExtension.bond({
+ +
59 + + + + + +
        _bonder: _response.proposer,
+ +
60 + + + + + +
        _requestId: _response.requestId,
+ +
61 + + + + + +
        _token: _params.bondToken,
+ +
62 + + + + + +
        _amount: _params.bondSize
+ +
63 + + + + + +
      });
+ +
64 + + + + + +
    }
+ +
65 + + + + + +

+                            
+                        
66 + + + + + +
    emit ResponseProposed(_response.requestId, _response);
+ +
67 + + + + + +
  }
+ +
68 + + + + + +

+                            
+                        
69 + + + + + +
  /// @inheritdoc IBondedResponseModule
+ +
70 + + + + + +
  function finalizeRequest(
+ +
71 + + + + + +
    IOracle.Request calldata _request,
+ +
72 + + + + + +
    IOracle.Response calldata _response,
+ +
73 + + + + + +
    address _finalizer
+ +
74 + + + + + +
  ) external override(IBondedResponseModule, Module) onlyOracle {
+ +
75 + + + + + +
    RequestParameters memory _params = decodeRequestData(_request.responseModuleData);
+ +
76 + + + + + +

+                            
+                        
77 + + + + + +
    bytes32 _requestId = _getId(_request);
+ +
78 + + + + + +

+                            
+                        
79 + + + + + +
    bool _isModule = ORACLE.allowedModule(_requestId, _finalizer);
+ +
80 + + + + + +

+                            
+                        
81 + + + + + +
    if (!_isModule && block.timestamp < ORACLE.requestCreatedAt(_requestId) + _params.deadline) {
+ +
82 + + + + + +
      revert BondedResponseModule_TooEarlyToFinalize();
+ +
83 + + + + + +
    }
+ +
84 + + + + + +

+                            
+                        
85 + + + + + +
    uint256 _responseCreatedAt = ORACLE.responseCreatedAt(_getId(_response));
+ +
86 + + + + + +
    if (_responseCreatedAt != 0) {
+ +
87 + + + + + +
      if (!_isModule && block.timestamp < _responseCreatedAt + _params.disputeWindow) {
+ +
88 + + + + + +
        revert BondedResponseModule_TooEarlyToFinalize();
+ +
89 + + + + + +
      }
+ +
90 + + + + + +

+                            
+                        
91 + + + + + +
      _params.accountingExtension.release({
+ +
92 + + + + + +
        _bonder: _response.proposer,
+ +
93 + + + + + +
        _requestId: _requestId,
+ +
94 + + + + + +
        _token: _params.bondToken,
+ +
95 + + + + + +
        _amount: _params.bondSize
+ +
96 + + + + + +
      });
+ +
97 + + + + + +
    }
+ +
98 + + + + + +

+                            
+                        
99 + + + + + +
    emit RequestFinalized(_requestId, _response, _finalizer);
+ +
100 + + + + + +
  }
+ +
101 + + + + + +

+                            
+                        
102 + + + + + +
  /// @inheritdoc IBondedResponseModule
+ +
103 + + + + + +
  function releaseUnutilizedResponse(IOracle.Request calldata _request, IOracle.Response calldata _response) external {
+ +
104 + + + + + +
    bytes32 _responseId = _validateResponse(_request, _response);
+ +
105 + + + + + +
    bytes32 _disputeId = ORACLE.disputeOf(_responseId);
+ +
106 + + + + + +

+                            
+                        
107 + + + + + +
    if (_disputeId > 0) {
+ +
108 + + + + + +
      IOracle.DisputeStatus _disputeStatus = ORACLE.disputeStatus(_disputeId);
+ +
109 + + + + + +
      if (_disputeStatus != IOracle.DisputeStatus.Lost && _disputeStatus != IOracle.DisputeStatus.NoResolution) {
+ +
110 + + + + + +
        revert BondedResponseModule_InvalidReleaseParameters();
+ +
111 + + + + + +
      }
+ +
112 + + + + + +
    }
+ +
113 + + + + + +

+                            
+                        
114 + + + + + +
    bytes32 _finalizedResponseId = ORACLE.finalizedResponseId(_response.requestId);
+ +
115 + + + + + +
    if (_finalizedResponseId == _responseId || _finalizedResponseId == bytes32(0)) {
+ +
116 + + + + + +
      revert BondedResponseModule_InvalidReleaseParameters();
+ +
117 + + + + + +
    }
+ +
118 + + + + + +

+                            
+                        
119 + + + + + +
    RequestParameters memory _params = decodeRequestData(_request.responseModuleData);
+ +
120 + + + + + +
    _params.accountingExtension.release({
+ +
121 + + + + + +
      _bonder: _response.proposer,
+ +
122 + + + + + +
      _requestId: _response.requestId,
+ +
123 + + + + + +
      _token: _params.bondToken,
+ +
124 + + + + + +
      _amount: _params.bondSize
+ +
125 + + + + + +
    });
+ +
126 + + + + + +

+                            
+                        
127 + + + + + +
    emit UnutilizedResponseReleased(_response.requestId, _responseId);
+ +
128 + + + + + +
  }
+ +
129 + + + + + +

+                            
+                        
130 + + + + + +
  /// @inheritdoc IModule
+ +
131 + + + + + +
  function validateParameters(bytes calldata _encodedParameters)
+ +
132 + + + + + +
    external
+ +
133 + + + + + +
    pure
+ +
134 + + + + + +
    override(Module, IModule)
+ +
135 + + + + + +
    returns (bool _valid)
+ +
136 + + + + + +
  {
+ +
137 + + + + + +
    RequestParameters memory _params = decodeRequestData(_encodedParameters);
+ +
138 + + + + + +
    _valid = address(_params.accountingExtension) != address(0) && address(_params.bondToken) != address(0)
+ +
139 + + + + + +
      && _params.bondSize != 0 && _params.disputeWindow != 0 && _params.deadline != 0;
+ +
140 + + + + + +
  }
+ +
141 + + + + + +
}
+ +
142 + + + + + +

+                            
+                        
+
+
+ + + + + + + + + + +
+
+
+ + + + + + +
Lines covered: 0 / 0 (0.0%)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
1 + + + + + +
// SPDX-License-Identifier: MIT
+ +
2 + + + + + +
pragma solidity ^0.8.19;
+ +
3 + + + + + +

+                            
+                        
4 + + + + + +
import {IOracle} from '@defi-wonderland/prophet-core/solidity/interfaces/IOracle.sol';
+ +
5 + + + + + +

+                            
+                        
6 + + + + + +
interface IArbitrator {
+ +
7 + + + + + +
  /**
+ +
8 + + + + + +
   * @notice Returns the status of a dispute
+ +
9 + + + + + +
   * @param _dispute The ID of the dispute
+ +
10 + + + + + +
   * @return _status The status of the dispute
+ +
11 + + + + + +
   */
+ +
12 + + + + + +
  function getAnswer(bytes32 _dispute) external returns (IOracle.DisputeStatus _status);
+ +
13 + + + + + +

+                            
+                        
14 + + + + + +
  /**
+ +
15 + + + + + +
   * @notice Resolves a dispute
+ +
16 + + + + + +
   * @param _request The request object
+ +
17 + + + + + +
   * @param _response The response object
+ +
18 + + + + + +
   * @param _dispute The dispute object
+ +
19 + + + + + +
   * @return _data The data for the dispute resolution
+ +
20 + + + + + +
   */
+ +
21 + + + + + +
  function resolve(
+ +
22 + + + + + +
    IOracle.Request memory _request,
+ +
23 + + + + + +
    IOracle.Response memory _response,
+ +
24 + + + + + +
    IOracle.Dispute memory _dispute
+ +
25 + + + + + +
  ) external returns (bytes memory _data);
+ +
26 + + + + + +
}
+ +
27 + + + + + +

+                            
+                        
+
+
+ + + + + + + + + + +
+
+
+ + + + + + +
Lines covered: 0 / 0 (0.0%)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
1 + + + + + +
// SPDX-License-Identifier: MIT
+ +
2 + + + + + +
pragma solidity ^0.8.19;
+ +
3 + + + + + +

+                            
+                        
4 + + + + + +
import {IValidator} from '@defi-wonderland/prophet-core/solidity/interfaces/IValidator.sol';
+ +
5 + + + + + +
import {IERC20} from '@openzeppelin/contracts/token/ERC20/IERC20.sol';
+ +
6 + + + + + +

+                            
+                        
7 + + + + + +
/*
+ +
8 + + + + + +
  * @title AccountingExtension
+ +
9 + + + + + +
  * @notice Extension allowing users to deposit and bond funds
+ +
10 + + + + + +
  * to be used for payments and disputes.
+ +
11 + + + + + +
  */
+ +
12 + + + + + +
interface IAccountingExtension is IValidator {
+ +
13 + + + + + +
  /*///////////////////////////////////////////////////////////////
+ +
14 + + + + + +
                              EVENTS
+ +
15 + + + + + +
  //////////////////////////////////////////////////////////////*/
+ +
16 + + + + + +

+                            
+                        
17 + + + + + +
  /**
+ +
18 + + + + + +
   * @notice A user deposited tokens into the accounting extension
+ +
19 + + + + + +
   * @param _depositor The user who deposited the tokens
+ +
20 + + + + + +
   * @param _token The address of the token deposited by the user
+ +
21 + + + + + +
   * @param _amount The amount of `_token` deposited
+ +
22 + + + + + +
   */
+ +
23 + + + + + +
  event Deposited(address indexed _depositor, IERC20 indexed _token, uint256 _amount);
+ +
24 + + + + + +

+                            
+                        
25 + + + + + +
  /**
+ +
26 + + + + + +
   * @notice A user withdrew tokens from the accounting extension
+ +
27 + + + + + +
   * @param _withdrawer The user who withdrew the tokens
+ +
28 + + + + + +
   * @param _token The address of the token withdrawn by the user
+ +
29 + + + + + +
   * @param _amount The amount of `_token` withdrawn
+ +
30 + + + + + +
   */
+ +
31 + + + + + +
  event Withdrew(address indexed _withdrawer, IERC20 indexed _token, uint256 _amount);
+ +
32 + + + + + +

+                            
+                        
33 + + + + + +
  /**
+ +
34 + + + + + +
   * @notice A payment between users has been made
+ +
35 + + + + + +
   * @param _requestId The ID of the request
+ +
36 + + + + + +
   * @param _beneficiary The user receiving the tokens
+ +
37 + + + + + +
   * @param _payer The user who is getting its tokens transferred
+ +
38 + + + + + +
   * @param _token The address of the token being transferred
+ +
39 + + + + + +
   * @param _amount The amount of `_token` transferred
+ +
40 + + + + + +
   */
+ +
41 + + + + + +
  event Paid(
+ +
42 + + + + + +
    bytes32 indexed _requestId, address indexed _beneficiary, address indexed _payer, IERC20 _token, uint256 _amount
+ +
43 + + + + + +
  );
+ +
44 + + + + + +

+                            
+                        
45 + + + + + +
  /**
+ +
46 + + + + + +
   * @notice User's funds have been bonded
+ +
47 + + + + + +
   * @param _requestId The ID of the request
+ +
48 + + + + + +
   * @param _bonder The user who is getting its tokens bonded
+ +
49 + + + + + +
   * @param _token The address of the token being bonded
+ +
50 + + + + + +
   * @param _amount The amount of `_token` bonded
+ +
51 + + + + + +
   */
+ +
52 + + + + + +
  event Bonded(bytes32 indexed _requestId, address indexed _bonder, IERC20 indexed _token, uint256 _amount);
+ +
53 + + + + + +

+                            
+                        
54 + + + + + +
  /**
+ +
55 + + + + + +
   * @notice User's funds have been released
+ +
56 + + + + + +
   * @param _requestId The ID of the request
+ +
57 + + + + + +
   * @param _beneficiary The user who is getting its tokens released
+ +
58 + + + + + +
   * @param _token The address of the token being released
+ +
59 + + + + + +
   * @param _amount The amount of `_token` released
+ +
60 + + + + + +
   */
+ +
61 + + + + + +
  event Released(bytes32 indexed _requestId, address indexed _beneficiary, IERC20 indexed _token, uint256 _amount);
+ +
62 + + + + + +

+                            
+                        
63 + + + + + +
  /*///////////////////////////////////////////////////////////////
+ +
64 + + + + + +
                              ERRORS
+ +
65 + + + + + +
  //////////////////////////////////////////////////////////////*/
+ +
66 + + + + + +

+                            
+                        
67 + + + + + +
  /**
+ +
68 + + + + + +
   * @notice Thrown when depositing tokens with a fee on transfer
+ +
69 + + + + + +
   */
+ +
70 + + + + + +
  error AccountingExtension_FeeOnTransferToken();
+ +
71 + + + + + +

+                            
+                        
72 + + + + + +
  /**
+ +
73 + + + + + +
   * @notice Thrown when the account doesn't have enough balance to bond/withdraw
+ +
74 + + + + + +
   * or not enough bonded to release/pay
+ +
75 + + + + + +
   */
+ +
76 + + + + + +
  error AccountingExtension_InsufficientFunds();
+ +
77 + + + + + +

+                            
+                        
78 + + + + + +
  /**
+ +
79 + + + + + +
   * @notice Thrown when the module bonding user tokens hasn't been approved by the user.
+ +
80 + + + + + +
   */
+ +
81 + + + + + +
  error AccountingExtension_NotAllowed();
+ +
82 + + + + + +

+                            
+                        
83 + + + + + +
  /**
+ +
84 + + + + + +
   * @notice Thrown when an `onlyAllowedModule` function is called by something
+ +
85 + + + + + +
   * else than a module being used in the corresponding request
+ +
86 + + + + + +
   */
+ +
87 + + + + + +
  error AccountingExtension_UnauthorizedModule();
+ +
88 + + + + + +

+                            
+                        
89 + + + + + +
  /**
+ +
90 + + + + + +
   * @notice Thrown when an `onlyParticipant` function is called with an address
+ +
91 + + + + + +
   * that is not part of the request.
+ +
92 + + + + + +
   */
+ +
93 + + + + + +
  error AccountingExtension_UnauthorizedUser();
+ +
94 + + + + + +

+                            
+                        
95 + + + + + +
  /*///////////////////////////////////////////////////////////////
+ +
96 + + + + + +
                            VARIABLES
+ +
97 + + + + + +
  //////////////////////////////////////////////////////////////*/
+ +
98 + + + + + +

+                            
+                        
99 + + + + + +
  /**
+ +
100 + + + + + +
   * @notice Returns the amount of a token a user has bonded
+ +
101 + + + + + +
   * @param _user The address of the user with bonded tokens
+ +
102 + + + + + +
   * @param _bondToken The token bonded
+ +
103 + + + + + +
   * @param _requestId The id of the request the user bonded for
+ +
104 + + + + + +
   * @return _amount The amount of `_bondToken` bonded
+ +
105 + + + + + +
   */
+ +
106 + + + + + +
  function bondedAmountOf(address _user, IERC20 _bondToken, bytes32 _requestId) external returns (uint256 _amount);
+ +
107 + + + + + +

+                            
+                        
108 + + + + + +
  /**
+ +
109 + + + + + +
   * @notice Returns the amount of a token a user has deposited
+ +
110 + + + + + +
   * @param _user The address of the user with deposited tokens
+ +
111 + + + + + +
   * @param _token The token deposited
+ +
112 + + + + + +
   * @return _amount The amount of `_token` deposited
+ +
113 + + + + + +
   */
+ +
114 + + + + + +
  function balanceOf(address _user, IERC20 _token) external view returns (uint256 _amount);
+ +
115 + + + + + +

+                            
+                        
116 + + + + + +
  /*///////////////////////////////////////////////////////////////
+ +
117 + + + + + +
                              LOGIC
+ +
118 + + + + + +
  //////////////////////////////////////////////////////////////*/
+ +
119 + + + + + +

+                            
+                        
120 + + + + + +
  /**
+ +
121 + + + + + +
   * @notice Transfers tokens from a user and updates his virtual balance
+ +
122 + + + + + +
   * @dev The user must have approved the accounting extension to transfer the tokens.
+ +
123 + + + + + +
   * The transfer must not take a fee (deflationary tokens can lead to unexpected behavior).
+ +
124 + + + + + +
   * @param _token The address of the token being deposited
+ +
125 + + + + + +
   * @param _amount The amount of `_token` to deposit
+ +
126 + + + + + +
   */
+ +
127 + + + + + +
  function deposit(IERC20 _token, uint256 _amount) external;
+ +
128 + + + + + +

+                            
+                        
129 + + + + + +
  /**
+ +
130 + + + + + +
   * @notice Allows an user to withdraw deposited tokens
+ +
131 + + + + + +
   * @param _token The address of the token being withdrawn
+ +
132 + + + + + +
   * @param _amount The amount of `_token` to withdraw
+ +
133 + + + + + +
   */
+ +
134 + + + + + +
  function withdraw(IERC20 _token, uint256 _amount) external;
+ +
135 + + + + + +

+                            
+                        
136 + + + + + +
  /**
+ +
137 + + + + + +
   * @notice Allows a allowed module to transfer bonded tokens from one user to another
+ +
138 + + + + + +
   * @dev Only the virtual balances in the accounting extension are modified. The token contract
+ +
139 + + + + + +
   * is not called nor its balances modified.
+ +
140 + + + + + +
   * @param _requestId The id of the request handling the user's tokens
+ +
141 + + + + + +
   * @param _payer The address of the user paying the tokens
+ +
142 + + + + + +
   * @param _receiver The address of the user receiving the tokens
+ +
143 + + + + + +
   * @param _token The address of the token being transferred
+ +
144 + + + + + +
   * @param _amount The amount of `_token` being transferred
+ +
145 + + + + + +
   */
+ +
146 + + + + + +
  function pay(bytes32 _requestId, address _payer, address _receiver, IERC20 _token, uint256 _amount) external;
+ +
147 + + + + + +

+                            
+                        
148 + + + + + +
  /**
+ +
149 + + + + + +
   * @notice Allows a allowed module to bond a user's tokens for a request
+ +
150 + + + + + +
   * @param _bonder The address of the user to bond tokens for
+ +
151 + + + + + +
   * @param _requestId The id of the request the user is bonding for
+ +
152 + + + + + +
   * @param _token The address of the token being bonded
+ +
153 + + + + + +
   * @param _amount The amount of `_token` to bond
+ +
154 + + + + + +
   */
+ +
155 + + + + + +
  function bond(address _bonder, bytes32 _requestId, IERC20 _token, uint256 _amount) external;
+ +
156 + + + + + +

+                            
+                        
157 + + + + + +
  /**
+ +
158 + + + + + +
   * @notice Allows a valid module to bond a user's tokens for a request
+ +
159 + + + + + +
   * @param _bonder The address of the user to bond tokens for
+ +
160 + + + + + +
   * @param _requestId The id of the request the user is bonding for
+ +
161 + + + + + +
   * @param _token The address of the token being bonded
+ +
162 + + + + + +
   * @param _amount The amount of `_token` to bond
+ +
163 + + + + + +
   * @param _sender The address starting the propose call on the Oracle
+ +
164 + + + + + +
   */
+ +
165 + + + + + +
  function bond(address _bonder, bytes32 _requestId, IERC20 _token, uint256 _amount, address _sender) external;
+ +
166 + + + + + +

+                            
+                        
167 + + + + + +
  /**
+ +
168 + + + + + +
   * @notice Allows a valid module to release a user's tokens
+ +
169 + + + + + +
   * @param _bonder The address of the user to release tokens for
+ +
170 + + + + + +
   * @param _requestId The id of the request where the tokens were bonded
+ +
171 + + + + + +
   * @param _token The address of the token being released
+ +
172 + + + + + +
   * @param _amount The amount of `_token` to release
+ +
173 + + + + + +
   */
+ +
174 + + + + + +
  function release(address _bonder, bytes32 _requestId, IERC20 _token, uint256 _amount) external;
+ +
175 + + + + + +

+                            
+                        
176 + + + + + +
  /**
+ +
177 + + + + + +
   * @notice Allows a user to approve a module for bonding tokens
+ +
178 + + + + + +
   * @param _module The address of the module to be approved
+ +
179 + + + + + +
   */
+ +
180 + + + + + +
  function approveModule(address _module) external;
+ +
181 + + + + + +

+                            
+                        
182 + + + + + +
  /**
+ +
183 + + + + + +
   * @notice Allows a user to revoke a module's approval for bonding tokens
+ +
184 + + + + + +
   * @param _module The address of the module to be revoked
+ +
185 + + + + + +
   */
+ +
186 + + + + + +
  function revokeModule(address _module) external;
+ +
187 + + + + + +

+                            
+                        
188 + + + + + +
  /**
+ +
189 + + + + + +
   * @notice Returns a list of all modules a user has approved
+ +
190 + + + + + +
   * @param _user The address of the user
+ +
191 + + + + + +
   * @return _approvedModules The array of all modules approved by the user
+ +
192 + + + + + +
   */
+ +
193 + + + + + +
  function approvedModules(address _user) external view returns (address[] memory _approvedModules);
+ +
194 + + + + + +
}
+ +
195 + + + + + +

+                            
+                        
+
+
+ + + + + + + + + + +
+
+
+ + + + + + +
Lines covered: 0 / 0 (0.0%)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
1 + + + + + +
// SPDX-License-Identifier: MIT
+ +
2 + + + + + +
pragma solidity ^0.8.19;
+ +
3 + + + + + +

+                            
+                        
4 + + + + + +
import {IBondEscalationModule} from '../modules/dispute/IBondEscalationModule.sol';
+ +
5 + + + + + +
import {IAccountingExtension} from './IAccountingExtension.sol';
+ +
6 + + + + + +

+                            
+                        
7 + + + + + +
import {IOracle} from '@defi-wonderland/prophet-core/solidity/interfaces/IOracle.sol';
+ +
8 + + + + + +
import {IERC20} from '@openzeppelin/contracts/token/ERC20/IERC20.sol';
+ +
9 + + + + + +

+                            
+                        
10 + + + + + +
/**
+ +
11 + + + + + +
 * @title BondEscalationAccounting
+ +
12 + + + + + +
 * @notice Extension allowing users to deposit and pledge funds to be used for bond escalation
+ +
13 + + + + + +
 */
+ +
14 + + + + + +
interface IBondEscalationAccounting is IAccountingExtension {
+ +
15 + + + + + +
  /*///////////////////////////////////////////////////////////////
+ +
16 + + + + + +
                              EVENTS
+ +
17 + + + + + +
  //////////////////////////////////////////////////////////////*/
+ +
18 + + + + + +

+                            
+                        
19 + + + + + +
  /**
+ +
20 + + + + + +
   * @notice A user pledged tokens for one of the sides of a dispute
+ +
21 + + + + + +
   *
+ +
22 + + + + + +
   * @param _pledger          The user who pledged the tokens
+ +
23 + + + + + +
   * @param _requestId        The ID of the bond-escalated request
+ +
24 + + + + + +
   * @param _disputeId        The ID of the bond-escalated dispute
+ +
25 + + + + + +
   * @param _token            The address of the token being pledged
+ +
26 + + + + + +
   * @param _amount           The amount of `_token` pledged by the user
+ +
27 + + + + + +
   */
+ +
28 + + + + + +
  event Pledged(
+ +
29 + + + + + +
    address indexed _pledger, bytes32 indexed _requestId, bytes32 indexed _disputeId, IERC20 _token, uint256 _amount
+ +
30 + + + + + +
  );
+ +
31 + + + + + +

+                            
+                        
32 + + + + + +
  /**
+ +
33 + + + + + +
   * @notice The pledgers of the winning side of a dispute have been paid
+ +
34 + + + + + +
   *
+ +
35 + + + + + +
   * @param _requestId        The ID of the bond-escalated request
+ +
36 + + + + + +
   * @param _disputeId        The ID of the bond-escalated dispute
+ +
37 + + + + + +
   * @param _winningPledgers  The users who got paid for pledging for the winning side
+ +
38 + + + + + +
   * @param _token            The address of the token being paid out
+ +
39 + + + + + +
   * @param _amountPerPledger The amount of `_token` paid to each of the winning pledgers
+ +
40 + + + + + +
   */
+ +
41 + + + + + +
  event WinningPledgersPaid(
+ +
42 + + + + + +
    bytes32 indexed _requestId,
+ +
43 + + + + + +
    bytes32 indexed _disputeId,
+ +
44 + + + + + +
    address[] indexed _winningPledgers,
+ +
45 + + + + + +
    IERC20 _token,
+ +
46 + + + + + +
    uint256 _amountPerPledger
+ +
47 + + + + + +
  );
+ +
48 + + + + + +

+                            
+                        
49 + + + + + +
  /**
+ +
50 + + + + + +
   * @notice A bond escalation has been settled
+ +
51 + + + + + +
   *
+ +
52 + + + + + +
   * @param _requestId             The ID of the bond-escalated request
+ +
53 + + + + + +
   * @param _disputeId             The ID of the bond-escalated dispute
+ +
54 + + + + + +
   * @param _token                 The address of the token being paid out
+ +
55 + + + + + +
   * @param _amountPerPledger      The amount of `_token` to be paid for each winning pledgers
+ +
56 + + + + + +
   * @param _winningPledgersLength The number of winning pledgers
+ +
57 + + + + + +
   */
+ +
58 + + + + + +
  event BondEscalationSettled(
+ +
59 + + + + + +
    bytes32 _requestId, bytes32 _disputeId, IERC20 _token, uint256 _amountPerPledger, uint256 _winningPledgersLength
+ +
60 + + + + + +
  );
+ +
61 + + + + + +

+                            
+                        
62 + + + + + +
  /**
+ +
63 + + + + + +
   * @notice A pledge has been released back to the user
+ +
64 + + + + + +
   *
+ +
65 + + + + + +
   * @param _requestId        The ID of the bond-escalated request
+ +
66 + + + + + +
   * @param _disputeId        The ID of the bond-escalated dispute
+ +
67 + + + + + +
   * @param _pledger          The user who is getting their tokens released
+ +
68 + + + + + +
   * @param _token            The address of the token being released
+ +
69 + + + + + +
   * @param _amount           The amount of `_token` released
+ +
70 + + + + + +
   */
+ +
71 + + + + + +
  event PledgeReleased(
+ +
72 + + + + + +
    bytes32 indexed _requestId, bytes32 indexed _disputeId, address indexed _pledger, IERC20 _token, uint256 _amount
+ +
73 + + + + + +
  );
+ +
74 + + + + + +

+                            
+                        
75 + + + + + +
  /**
+ +
76 + + + + + +
   * @notice A user claimed their reward for pledging for the winning side of a dispute
+ +
77 + + + + + +
   *
+ +
78 + + + + + +
   * @param _requestId        The ID of the bond-escalated request
+ +
79 + + + + + +
   * @param _disputeId        The ID of the bond-escalated dispute
+ +
80 + + + + + +
   * @param _pledger          The user who claimed their reward
+ +
81 + + + + + +
   * @param _token            The address of the token being paid out
+ +
82 + + + + + +
   * @param _amount           The amount of `_token` paid to the pledger
+ +
83 + + + + + +
   */
+ +
84 + + + + + +
  event EscalationRewardClaimed(
+ +
85 + + + + + +
    bytes32 indexed _requestId, bytes32 indexed _disputeId, address indexed _pledger, IERC20 _token, uint256 _amount
+ +
86 + + + + + +
  );
+ +
87 + + + + + +

+                            
+                        
88 + + + + + +
  /*///////////////////////////////////////////////////////////////
+ +
89 + + + + + +
                              ERRORS
+ +
90 + + + + + +
  //////////////////////////////////////////////////////////////*/
+ +
91 + + + + + +

+                            
+                        
92 + + + + + +
  /**
+ +
93 + + + + + +
   * @notice Thrown when the user tries to claim their pledge for an escalation that was already claimed
+ +
94 + + + + + +
   */
+ +
95 + + + + + +
  error BondEscalationAccounting_AlreadyClaimed();
+ +
96 + + + + + +

+                            
+                        
97 + + + + + +
  /**
+ +
98 + + + + + +
   * @notice Thrown when the user tries to claim their pledge for an escalation that wasn't finished yet
+ +
99 + + + + + +
   */
+ +
100 + + + + + +
  error BondEscalationAccounting_NoEscalationResult();
+ +
101 + + + + + +

+                            
+                        
102 + + + + + +
  /**
+ +
103 + + + + + +
   * @notice Thrown when the user doesn't have enough funds to pledge
+ +
104 + + + + + +
   */
+ +
105 + + + + + +
  error BondEscalationAccounting_InsufficientFunds();
+ +
106 + + + + + +

+                            
+                        
107 + + + + + +
  /**
+ +
108 + + + + + +
   * @notice Thrown when trying to settle an already settled escalation
+ +
109 + + + + + +
   */
+ +
110 + + + + + +
  error BondEscalationAccounting_AlreadySettled();
+ +
111 + + + + + +

+                            
+                        
112 + + + + + +
  /**
+ +
113 + + + + + +
   * @notice Thrown when caller is not authorized
+ +
114 + + + + + +
   */
+ +
115 + + + + + +
  error BondEscalationAccounting_UnauthorizedCaller();
+ +
116 + + + + + +

+                            
+                        
117 + + + + + +
  /*///////////////////////////////////////////////////////////////
+ +
118 + + + + + +
                              STRUCTS
+ +
119 + + + + + +
  //////////////////////////////////////////////////////////////*/
+ +
120 + + + + + +

+                            
+                        
121 + + + + + +
  /**
+ +
122 + + + + + +
   * @notice Contains the data of the result of an escalation. Is used by users to claim their pledges
+ +
123 + + + + + +
   * @param requestId         The ID of the bond-escalated request
+ +
124 + + + + + +
   * @param token             The address of the token being paid out
+ +
125 + + + + + +
   * @param amountPerPledger  The amount of token paid to each of the winning pledgers
+ +
126 + + + + + +
   * @param bondEscalationModule The address of the bond escalation module that was used
+ +
127 + + + + + +
   */
+ +
128 + + + + + +
  struct EscalationResult {
+ +
129 + + + + + +
    bytes32 requestId;
+ +
130 + + + + + +
    IERC20 token;
+ +
131 + + + + + +
    uint256 amountPerPledger;
+ +
132 + + + + + +
    IBondEscalationModule bondEscalationModule;
+ +
133 + + + + + +
  }
+ +
134 + + + + + +

+                            
+                        
135 + + + + + +
  /*///////////////////////////////////////////////////////////////
+ +
136 + + + + + +
                              VARIABLES
+ +
137 + + + + + +
  //////////////////////////////////////////////////////////////*/
+ +
138 + + + + + +

+                            
+                        
139 + + + + + +
  /**
+ +
140 + + + + + +
   * @notice The amount pledged by the given pledger in the given dispute of the given request
+ +
141 + + + + + +
   *
+ +
142 + + + + + +
   * @param _disputeId         The ID of the bond-escalated dispute
+ +
143 + + + + + +
   * @param _token             Address of the token being pledged
+ +
144 + + + + + +
   * @return _amountPledged    The amount of pledged tokens
+ +
145 + + + + + +
   */
+ +
146 + + + + + +
  function pledges(bytes32 _disputeId, IERC20 _token) external returns (uint256 _amountPledged);
+ +
147 + + + + + +

+                            
+                        
148 + + + + + +
  /**
+ +
149 + + + + + +
   * @notice The result of the given dispute
+ +
150 + + + + + +
   *
+ +
151 + + + + + +
   * @param _disputeId             The ID of the bond-escalated dispute
+ +
152 + + + + + +
   * @return _requestId            The ID of the bond-escalated request
+ +
153 + + + + + +
   * @return _token                Address of the token being paid as a reward for winning the bond escalation
+ +
154 + + + + + +
   * @return _amountPerPledger     Amount of `_token` to be rewarded to each of the winning pledgers
+ +
155 + + + + + +
   * @return _bondEscalationModule The address of the bond escalation module that was used
+ +
156 + + + + + +
   */
+ +
157 + + + + + +
  function escalationResults(bytes32 _disputeId)
+ +
158 + + + + + +
    external
+ +
159 + + + + + +
    returns (bytes32 _requestId, IERC20 _token, uint256 _amountPerPledger, IBondEscalationModule _bondEscalationModule);
+ +
160 + + + + + +

+                            
+                        
161 + + + + + +
  /**
+ +
162 + + + + + +
   * @notice True if the given pledger has claimed their reward for the given dispute
+ +
163 + + + + + +
   *
+ +
164 + + + + + +
   * @param _requestId         The ID of the bond-escalated request
+ +
165 + + + + + +
   * @param _pledger           Address of the pledger
+ +
166 + + + + + +
   * @return _claimed          True if the pledger has claimed their reward
+ +
167 + + + + + +
   */
+ +
168 + + + + + +
  function pledgerClaimed(bytes32 _requestId, address _pledger) external returns (bool _claimed);
+ +
169 + + + + + +

+                            
+                        
170 + + + + + +
  /**
+ +
171 + + + + + +
   * @notice Checks whether an address is an authorized caller.
+ +
172 + + + + + +
   *
+ +
173 + + + + + +
   * @param _caller      The address to check
+ +
174 + + + + + +
   * @return _authorized True if the address is authorized, false otherwise
+ +
175 + + + + + +
   */
+ +
176 + + + + + +
  function authorizedCallers(address _caller) external returns (bool _authorized);
+ +
177 + + + + + +

+                            
+                        
178 + + + + + +
  /*///////////////////////////////////////////////////////////////
+ +
179 + + + + + +
                              LOGIC
+ +
180 + + + + + +
  //////////////////////////////////////////////////////////////*/
+ +
181 + + + + + +

+                            
+                        
182 + + + + + +
  /**
+ +
183 + + + + + +
   * @notice Pledges the given amount of token to the provided dispute id of the provided request id
+ +
184 + + + + + +
   *
+ +
185 + + + + + +
   * @dev This function must be called by an allowed module
+ +
186 + + + + + +
   *
+ +
187 + + + + + +
   * @param _pledger           Address of the pledger
+ +
188 + + + + + +
   * @param _request           The bond-escalated request
+ +
189 + + + + + +
   * @param _dispute           The bond-escalated dispute
+ +
190 + + + + + +
   * @param _token             Address of the token being paid as a reward for winning the bond escalation
+ +
191 + + + + + +
   * @param _amount            Amount of token to pledge
+ +
192 + + + + + +
   */
+ +
193 + + + + + +
  function pledge(
+ +
194 + + + + + +
    address _pledger,
+ +
195 + + + + + +
    IOracle.Request calldata _request,
+ +
196 + + + + + +
    IOracle.Dispute calldata _dispute,
+ +
197 + + + + + +
    IERC20 _token,
+ +
198 + + + + + +
    uint256 _amount
+ +
199 + + + + + +
  ) external;
+ +
200 + + + + + +

+                            
+                        
201 + + + + + +
  /**
+ +
202 + + + + + +
   * @notice Updates the accounting of the given dispute to reflect the result of the bond escalation
+ +
203 + + + + + +
   * @dev This function must be called by an allowed module
+ +
204 + + + + + +
   *
+ +
205 + + + + + +
   * @param _request                The bond-escalated request
+ +
206 + + + + + +
   * @param _dispute                The bond-escalated dispute
+ +
207 + + + + + +
   * @param _token                  Address of the token being paid as a reward for winning the bond escalation
+ +
208 + + + + + +
   * @param _amountPerPledger       Amount of `_token` to be rewarded to each of the winning pledgers
+ +
209 + + + + + +
   * @param _winningPledgersLength  Amount of pledges that won the dispute
+ +
210 + + + + + +
   */
+ +
211 + + + + + +
  function onSettleBondEscalation(
+ +
212 + + + + + +
    IOracle.Request calldata _request,
+ +
213 + + + + + +
    IOracle.Dispute calldata _dispute,
+ +
214 + + + + + +
    IERC20 _token,
+ +
215 + + + + + +
    uint256 _amountPerPledger,
+ +
216 + + + + + +
    uint256 _winningPledgersLength
+ +
217 + + + + + +
  ) external;
+ +
218 + + + + + +

+                            
+                        
219 + + + + + +
  /**
+ +
220 + + + + + +
   * @notice Releases a given amount of funds to the pledger
+ +
221 + + + + + +
   *
+ +
222 + + + + + +
   * @dev This function must be called by an allowed module
+ +
223 + + + + + +
   *
+ +
224 + + + + + +
   * @param _request           The bond-escalated request
+ +
225 + + + + + +
   * @param _dispute           The bond-escalated dispute
+ +
226 + + + + + +
   * @param _pledger           Address of the pledger
+ +
227 + + + + + +
   * @param _token             Address of the token to be released
+ +
228 + + + + + +
   * @param _amount            Amount of `_token` to be released to the pledger
+ +
229 + + + + + +
   */
+ +
230 + + + + + +
  function releasePledge(
+ +
231 + + + + + +
    IOracle.Request calldata _request,
+ +
232 + + + + + +
    IOracle.Dispute calldata _dispute,
+ +
233 + + + + + +
    address _pledger,
+ +
234 + + + + + +
    IERC20 _token,
+ +
235 + + + + + +
    uint256 _amount
+ +
236 + + + + + +
  ) external;
+ +
237 + + + + + +

+                            
+                        
238 + + + + + +
  /**
+ +
239 + + + + + +
   * @notice                 Claims the reward for the pledger the given dispute
+ +
240 + + + + + +
   * @param _disputeId       The ID of the bond-escalated dispute
+ +
241 + + + + + +
   * @param _pledger         Address of the pledger to claim the rewards
+ +
242 + + + + + +
   */
+ +
243 + + + + + +
  function claimEscalationReward(bytes32 _disputeId, address _pledger) external;
+ +
244 + + + + + +
}
+ +
245 + + + + + +

+                            
+                        
+
+
+ + + + + + + + + + +
+
+
+ + + + + + +
Lines covered: 0 / 0 (0.0%)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
1 + + + + + +
// SPDX-License-Identifier: MIT
+ +
2 + + + + + +
pragma solidity ^0.8.19;
+ +
3 + + + + + +

+                            
+                        
4 + + + + + +
import {IOracle} from '@defi-wonderland/prophet-core/solidity/interfaces/IOracle.sol';
+ +
5 + + + + + +
import {IDisputeModule} from '@defi-wonderland/prophet-core/solidity/interfaces/modules/dispute/IDisputeModule.sol';
+ +
6 + + + + + +
import {IERC20} from '@openzeppelin/contracts/token/ERC20/IERC20.sol';
+ +
7 + + + + + +

+                            
+                        
8 + + + + + +
import {IBondEscalationAccounting} from '../../extensions/IBondEscalationAccounting.sol';
+ +
9 + + + + + +

+                            
+                        
10 + + + + + +
/**
+ +
11 + + + + + +
 * @title BondEscalationModule
+ +
12 + + + + + +
 * @notice Module allowing users to have the first dispute of a request go through the bond escalation mechanism.
+ +
13 + + + + + +
 */
+ +
14 + + + + + +
interface IBondEscalationModule is IDisputeModule {
+ +
15 + + + + + +
  /*///////////////////////////////////////////////////////////////
+ +
16 + + + + + +
                              EVENTS
+ +
17 + + + + + +
  //////////////////////////////////////////////////////////////*/
+ +
18 + + + + + +

+                            
+                        
19 + + + + + +
  /**
+ +
20 + + + + + +
   * @notice A pledge has been made in favor of a dispute.
+ +
21 + + + + + +
   *
+ +
22 + + + + + +
   * @param _disputeId The id of the dispute the pledger is pledging in favor of.
+ +
23 + + + + + +
   * @param _pledger   The address of the pledger.
+ +
24 + + + + + +
   * @param _amount    The amount pledged.
+ +
25 + + + + + +
   */
+ +
26 + + + + + +
  event PledgedForDispute(bytes32 indexed _disputeId, address indexed _pledger, uint256 indexed _amount);
+ +
27 + + + + + +

+                            
+                        
28 + + + + + +
  /**
+ +
29 + + + + + +
   * @notice A pledge has been made against a dispute.
+ +
30 + + + + + +
   *
+ +
31 + + + + + +
   * @param _disputeId The id of the dispute the pledger is pledging against.
+ +
32 + + + + + +
   * @param _pledger   The address of the pledger.
+ +
33 + + + + + +
   * @param _amount    The amount pledged.
+ +
34 + + + + + +
   */
+ +
35 + + + + + +
  event PledgedAgainstDispute(bytes32 indexed _disputeId, address indexed _pledger, uint256 indexed _amount);
+ +
36 + + + + + +

+                            
+                        
37 + + + + + +
  /**
+ +
38 + + + + + +
   * @notice The status of the bond escalation mechanism has been updated.
+ +
39 + + + + + +
   *
+ +
40 + + + + + +
   * @param _requestId The id of the request associated with the bond escalation mechanism.
+ +
41 + + + + + +
   * @param _disputeId The id of the dispute going through the bond escalation mechanism.
+ +
42 + + + + + +
   * @param _status    The new status.
+ +
43 + + + + + +
   */
+ +
44 + + + + + +
  event BondEscalationStatusUpdated(
+ +
45 + + + + + +
    bytes32 indexed _requestId, bytes32 indexed _disputeId, BondEscalationStatus _status
+ +
46 + + + + + +
  );
+ +
47 + + + + + +

+                            
+                        
48 + + + + + +
  /*///////////////////////////////////////////////////////////////
+ +
49 + + + + + +
                              ERRORS
+ +
50 + + + + + +
  //////////////////////////////////////////////////////////////*/
+ +
51 + + + + + +

+                            
+                        
52 + + + + + +
  /**
+ +
53 + + + + + +
   * @notice Thrown when trying to escalate a dispute going through the bond escalation module before its deadline.
+ +
54 + + + + + +
   */
+ +
55 + + + + + +
  error BondEscalationModule_BondEscalationNotOver();
+ +
56 + + + + + +
  /**
+ +
57 + + + + + +
   * @notice Thrown when trying to pledge for a dispute that is not going through the bond escalation mechanism.
+ +
58 + + + + + +
   */
+ +
59 + + + + + +
  error BondEscalationModule_InvalidDispute();
+ +
60 + + + + + +
  /**
+ +
61 + + + + + +
   * @notice Thrown when the number of escalation pledges of a given dispute has reached its maximum.
+ +
62 + + + + + +
   */
+ +
63 + + + + + +
  error BondEscalationModule_MaxNumberOfEscalationsReached();
+ +
64 + + + + + +
  /**
+ +
65 + + + + + +
   * @notice Thrown when trying to settle a dispute that went through the bond escalation when it's not active.
+ +
66 + + + + + +
   */
+ +
67 + + + + + +
  error BondEscalationModule_BondEscalationCantBeSettled();
+ +
68 + + + + + +
  /**
+ +
69 + + + + + +
   * @notice Thrown when trying to settle a bond escalation process that is not tied.
+ +
70 + + + + + +
   */
+ +
71 + + + + + +
  error BondEscalationModule_ShouldBeEscalated();
+ +
72 + + + + + +
  /**
+ +
73 + + + + + +
   * @notice Thrown when trying to break a tie after the tying buffer has started.
+ +
74 + + + + + +
   */
+ +
75 + + + + + +
  error BondEscalationModule_CannotBreakTieDuringTyingBuffer();
+ +
76 + + + + + +
  /**
+ +
77 + + + + + +
   * @notice Thrown when the max number of escalations or the bond size is set to 0.
+ +
78 + + + + + +
   */
+ +
79 + + + + + +
  error BondEscalationModule_ZeroValue();
+ +
80 + + + + + +
  /**
+ +
81 + + + + + +
   * @notice Thrown when trying to pledge after the bond escalation deadline.
+ +
82 + + + + + +
   */
+ +
83 + + + + + +
  error BondEscalationModule_BondEscalationOver();
+ +
84 + + + + + +
  /**
+ +
85 + + + + + +
   * @notice Thrown when trying to escalate a dispute going through the bond escalation process that is not tied
+ +
86 + + + + + +
   *         or that is not active.
+ +
87 + + + + + +
   */
+ +
88 + + + + + +
  error BondEscalationModule_NotEscalatable();
+ +
89 + + + + + +
  /**
+ +
90 + + + + + +
   * @notice Thrown when trying to pledge for a dispute that does not exist
+ +
91 + + + + + +
   */
+ +
92 + + + + + +
  error BondEscalationModule_DisputeDoesNotExist();
+ +
93 + + + + + +
  /**
+ +
94 + + + + + +
   * @notice Thrown when trying to surpass the number of pledges of the other side by more than 1 in the bond escalation mechanism.
+ +
95 + + + + + +
   */
+ +
96 + + + + + +
  error BondEscalationModule_CanOnlySurpassByOnePledge();
+ +
97 + + + + + +
  /**
+ +
98 + + + + + +
   * @notice Thrown when trying to dispute a response after the dispute period expired.
+ +
99 + + + + + +
   */
+ +
100 + + + + + +
  error BondEscalationModule_DisputeWindowOver();
+ +
101 + + + + + +
  /**
+ +
102 + + + + + +
   * @notice Thrown when trying to set up a request with invalid bond size or maximum amount of escalations.
+ +
103 + + + + + +
   */
+ +
104 + + + + + +
  error BondEscalationModule_InvalidEscalationParameters();
+ +
105 + + + + + +

+                            
+                        
106 + + + + + +
  /*///////////////////////////////////////////////////////////////
+ +
107 + + + + + +
                              ENUMS
+ +
108 + + + + + +
  //////////////////////////////////////////////////////////////*/
+ +
109 + + + + + +

+                            
+                        
110 + + + + + +
  /**
+ +
111 + + + + + +
   * @notice Enum holding all the possible statuses of a dispute going through the bond escalation mechanism.
+ +
112 + + + + + +
   * @param None Dispute is not going through the bond escalation mechanism.
+ +
113 + + + + + +
   * @param Active Dispute is going through the bond escalation mechanism.
+ +
114 + + + + + +
   * @param Escalated Dispute is going through the bond escalation mechanism and has been escalated.
+ +
115 + + + + + +
   * @param DisputerLost An escalated dispute has been settled and the disputer lost.
+ +
116 + + + + + +
   * @param DisputerWon An escalated dispute has been settled and the disputer won.
+ +
117 + + + + + +
   */
+ +
118 + + + + + +
  enum BondEscalationStatus {
+ +
119 + + + + + +
    None,
+ +
120 + + + + + +
    Active,
+ +
121 + + + + + +
    Escalated,
+ +
122 + + + + + +
    DisputerLost,
+ +
123 + + + + + +
    DisputerWon
+ +
124 + + + + + +
  }
+ +
125 + + + + + +

+                            
+                        
126 + + + + + +
  /*///////////////////////////////////////////////////////////////
+ +
127 + + + + + +
                              STRUCTS
+ +
128 + + + + + +
  //////////////////////////////////////////////////////////////*/
+ +
129 + + + + + +

+                            
+                        
130 + + + + + +
  /**
+ +
131 + + + + + +
   * @notice Parameters of the request as stored in the module
+ +
132 + + + + + +
   *
+ +
133 + + + + + +
   * @param accountingExtension        Address of the accounting extension associated with the given request
+ +
134 + + + + + +
   * @param bondToken                  Address of the token associated with the given request
+ +
135 + + + + + +
   * @param bondSize                   Amount to bond to dispute or propose an answer for the given request
+ +
136 + + + + + +
   * @param maxNumberOfEscalations     Maximum allowed escalations or pledges for each side during the bond escalation process
+ +
137 + + + + + +
   * @param bondEscalationDeadline     Number of seconds after dispute creation required to
+ +
138 + + + + + +
   *                                       finish the bond escalation process when pledges are not tied.
+ +
139 + + + + + +
   * @param tyingBuffer                Number of seconds to extend the bond escalation process to allow the losing
+ +
140 + + + + + +
   *                                    party to tie if at the end of the initial deadline the pledges weren't tied.
+ +
141 + + + + + +
   * @param disputeWindow              Number of seconds disputers have to challenge the proposed response since its creation.
+ +
142 + + + + + +
   */
+ +
143 + + + + + +
  struct RequestParameters {
+ +
144 + + + + + +
    IBondEscalationAccounting accountingExtension;
+ +
145 + + + + + +
    IERC20 bondToken;
+ +
146 + + + + + +
    uint256 bondSize;
+ +
147 + + + + + +
    uint256 maxNumberOfEscalations;
+ +
148 + + + + + +
    uint256 bondEscalationDeadline;
+ +
149 + + + + + +
    uint256 tyingBuffer;
+ +
150 + + + + + +
    uint256 disputeWindow;
+ +
151 + + + + + +
  }
+ +
152 + + + + + +

+                            
+                        
153 + + + + + +
  /**
+ +
154 + + + + + +
   * @notice Data of a dispute going through the bond escalation.
+ +
155 + + + + + +
   *
+ +
156 + + + + + +
   * @param disputeId                       The id of the dispute being bond-escalated.
+ +
157 + + + + + +
   * @param status                          The status of the bond escalation.
+ +
158 + + + + + +
   * @param amountOfPledgesForDispute       The amount of pledges made in favor of the dispute.
+ +
159 + + + + + +
   * @param amountOfPledgesAgainstDispute   The amount of pledges made against the dispute.
+ +
160 + + + + + +
   */
+ +
161 + + + + + +
  struct BondEscalation {
+ +
162 + + + + + +
    bytes32 disputeId;
+ +
163 + + + + + +
    BondEscalationStatus status;
+ +
164 + + + + + +
    uint256 amountOfPledgesForDispute;
+ +
165 + + + + + +
    uint256 amountOfPledgesAgainstDispute;
+ +
166 + + + + + +
  }
+ +
167 + + + + + +

+                            
+                        
168 + + + + + +
  /*///////////////////////////////////////////////////////////////
+ +
169 + + + + + +
                              VARIABLES
+ +
170 + + + + + +
  //////////////////////////////////////////////////////////////*/
+ +
171 + + + + + +

+                            
+                        
172 + + + + + +
  /**
+ +
173 + + + + + +
   * @notice Returns the escalation data for a request.
+ +
174 + + + + + +
   * @param _requestId The id of the request to get its escalation data.
+ +
175 + + + + + +
   * @return _escalation The struct containing the escalation data.
+ +
176 + + + + + +
   */
+ +
177 + + + + + +
  function getEscalation(bytes32 _requestId) external view returns (BondEscalation memory _escalation);
+ +
178 + + + + + +

+                            
+                        
179 + + + + + +
  /**
+ +
180 + + + + + +
   * @notice Returns the decoded data for a request
+ +
181 + + + + + +
   * @param _data The encoded request parameters
+ +
182 + + + + + +
   * @return _params The struct containing the parameters for the request
+ +
183 + + + + + +
   */
+ +
184 + + + + + +
  function decodeRequestData(bytes calldata _data) external view returns (RequestParameters memory _params);
+ +
185 + + + + + +

+                            
+                        
186 + + + + + +
  /**
+ +
187 + + + + + +
   * @notice Returns the amount of pledges that a particular pledger has made for a given dispute.
+ +
188 + + + + + +
   * @param _requestId The id of the request to get the pledges for.
+ +
189 + + + + + +
   * @param _pledger The address of the pledger to get the pledges for.
+ +
190 + + + + + +
   * @return _numPledges The number of pledges made by the pledger for the dispute.
+ +
191 + + + + + +
   */
+ +
192 + + + + + +
  function pledgesForDispute(bytes32 _requestId, address _pledger) external view returns (uint256 _numPledges);
+ +
193 + + + + + +

+                            
+                        
194 + + + + + +
  /**
+ +
195 + + + + + +
   * @notice Returns the amount of pledges that a particular pledger has made against a given dispute.
+ +
196 + + + + + +
   * @param _requestId The id of the request to get the pledges for.
+ +
197 + + + + + +
   * @param _pledger The address of the pledger to get the pledges for.
+ +
198 + + + + + +
   * @return _numPledges The number of pledges made by the pledger against the dispute.
+ +
199 + + + + + +
   */
+ +
200 + + + + + +
  function pledgesAgainstDispute(bytes32 _requestId, address _pledger) external view returns (uint256 _numPledges);
+ +
201 + + + + + +

+                            
+                        
202 + + + + + +
  /*///////////////////////////////////////////////////////////////
+ +
203 + + + + + +
                              LOGIC
+ +
204 + + + + + +
  //////////////////////////////////////////////////////////////*/
+ +
205 + + + + + +

+                            
+                        
206 + + + + + +
  /**
+ +
207 + + + + + +
   * @notice Disputes a response
+ +
208 + + + + + +
   *
+ +
209 + + + + + +
   * @dev If this is the first dispute of the request and the bond escalation window is not over,
+ +
210 + + + + + +
   *      it will start the bond escalation process. This function must be called through the Oracle.
+ +
211 + + + + + +
   *
+ +
212 + + + + + +
   * @param _request The request data.
+ +
213 + + + + + +
   * @param _response The response being disputed.
+ +
214 + + + + + +
   * @param _dispute The dispute created by the oracle.
+ +
215 + + + + + +
   */
+ +
216 + + + + + +
  function disputeResponse(
+ +
217 + + + + + +
    IOracle.Request calldata _request,
+ +
218 + + + + + +
    IOracle.Response calldata _response,
+ +
219 + + + + + +
    IOracle.Dispute calldata _dispute
+ +
220 + + + + + +
  ) external;
+ +
221 + + + + + +

+                            
+                        
222 + + + + + +
  /**
+ +
223 + + + + + +
   * @notice Updates the status of a given disputeId and pays the proposer and disputer accordingly. If this
+ +
224 + + + + + +
   *         dispute has gone through the bond escalation mechanism, then it will pay the winning pledgers as well.
+ +
225 + + + + + +
   *
+ +
226 + + + + + +
   * @param _disputeId The ID of the dispute to update the status for.
+ +
227 + + + + + +
   * @param _request The request data.
+ +
228 + + + + + +
   * @param _response The disputed response.
+ +
229 + + + + + +
   * @param _dispute The dispute data.
+ +
230 + + + + + +
   */
+ +
231 + + + + + +
  function onDisputeStatusChange(
+ +
232 + + + + + +
    bytes32 _disputeId,
+ +
233 + + + + + +
    IOracle.Request calldata _request,
+ +
234 + + + + + +
    IOracle.Response calldata _response,
+ +
235 + + + + + +
    IOracle.Dispute calldata _dispute
+ +
236 + + + + + +
  ) external;
+ +
237 + + + + + +

+                            
+                        
238 + + + + + +
  /**
+ +
239 + + + + + +
   * @notice Bonds funds in favor of a given dispute during the bond escalation process.
+ +
240 + + + + + +
   *
+ +
241 + + + + + +
   * @param _request The request data.
+ +
242 + + + + + +
   * @param _dispute The dispute data.
+ +
243 + + + + + +
   *
+ +
244 + + + + + +
   * @dev If the bond escalation is not tied at the end of its deadline, a tying buffer is added
+ +
245 + + + + + +
   *      to avoid scenarios where one of the parties breaks the tie very last second.
+ +
246 + + + + + +
   *      During the tying buffer, the losing party can only tie, and once the escalation is tied
+ +
247 + + + + + +
   *      no further funds can be pledged.
+ +
248 + + + + + +
   */
+ +
249 + + + + + +
  function pledgeForDispute(IOracle.Request calldata _request, IOracle.Dispute calldata _dispute) external;
+ +
250 + + + + + +

+                            
+                        
251 + + + + + +
  /**
+ +
252 + + + + + +
   * @notice Pledges funds against a given disputeId during its bond escalation process.
+ +
253 + + + + + +
   *
+ +
254 + + + + + +
   * @param _request The request data.
+ +
255 + + + + + +
   * @param _dispute The dispute data.
+ +
256 + + + + + +
   *
+ +
257 + + + + + +
   * @dev Will revert if the disputeId is not going through the bond escalation process.
+ +
258 + + + + + +
   * @dev If the bond escalation is not tied at the end of its deadline, a tying buffer is added
+ +
259 + + + + + +
   *      to avoid scenarios where one of the parties breaks the tie very last second.
+ +
260 + + + + + +
   *      During the tying buffer, the losing party can only tie, and once the escalation is tied
+ +
261 + + + + + +
   *      no further funds can be pledged.
+ +
262 + + + + + +
   */
+ +
263 + + + + + +
  function pledgeAgainstDispute(IOracle.Request calldata _request, IOracle.Dispute calldata _dispute) external;
+ +
264 + + + + + +

+                            
+                        
265 + + + + + +
  /**
+ +
266 + + + + + +
   * @notice Settles the bond escalation process of a given requestId.
+ +
267 + + + + + +
   *
+ +
268 + + + + + +
   * @param _request The request data.
+ +
269 + + + + + +
   * @param _response The response data.
+ +
270 + + + + + +
   * @param _dispute The dispute data.
+ +
271 + + + + + +
   *
+ +
272 + + + + + +
   * @dev Can only be called if after the deadline + tyingBuffer window is over, the pledges weren't tied
+ +
273 + + + + + +
   */
+ +
274 + + + + + +
  function settleBondEscalation(
+ +
275 + + + + + +
    IOracle.Request calldata _request,
+ +
276 + + + + + +
    IOracle.Response calldata _response,
+ +
277 + + + + + +
    IOracle.Dispute calldata _dispute
+ +
278 + + + + + +
  ) external;
+ +
279 + + + + + +
}
+ +
280 + + + + + +

+                            
+                        
+
+
+ + + + + + + + + + +
+
+
+ + + + + + +
Lines covered: 0 / 0 (0.0%)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
1 + + + + + +
// SPDX-License-Identifier: MIT
+ +
2 + + + + + +
pragma solidity ^0.8.19;
+ +
3 + + + + + +

+                            
+                        
4 + + + + + +
import {IOracle} from '@defi-wonderland/prophet-core/solidity/interfaces/IOracle.sol';
+ +
5 + + + + + +
import {IResolutionModule} from
+ +
6 + + + + + +
  '@defi-wonderland/prophet-core/solidity/interfaces/modules/resolution/IResolutionModule.sol';
+ +
7 + + + + + +

+                            
+                        
8 + + + + + +
/*
+ +
9 + + + + + +
  * @title ArbitratorModule
+ +
10 + + + + + +
  * @notice Module allowing an external arbitrator contract to resolve a dispute.
+ +
11 + + + + + +
  */
+ +
12 + + + + + +
interface IArbitratorModule is IResolutionModule {
+ +
13 + + + + + +
  /*///////////////////////////////////////////////////////////////
+ +
14 + + + + + +
                              ERRORS
+ +
15 + + + + + +
  //////////////////////////////////////////////////////////////*/
+ +
16 + + + + + +

+                            
+                        
17 + + + + + +
  /**
+ +
18 + + + + + +
   * @notice Thrown when trying to resolve a dispute that is not escalated
+ +
19 + + + + + +
   */
+ +
20 + + + + + +
  error ArbitratorModule_InvalidDisputeId();
+ +
21 + + + + + +

+                            
+                        
22 + + + + + +
  /**
+ +
23 + + + + + +
   * @notice Thrown when the arbitrator address is the address zero
+ +
24 + + + + + +
   */
+ +
25 + + + + + +
  error ArbitratorModule_InvalidArbitrator();
+ +
26 + + + + + +

+                            
+                        
27 + + + + + +
  /**
+ +
28 + + + + + +
   * @notice Thrown when the arbitrator returns an invalid resolution status
+ +
29 + + + + + +
   */
+ +
30 + + + + + +
  error ArbitratorModule_InvalidResolutionStatus();
+ +
31 + + + + + +

+                            
+                        
32 + + + + + +
  /*///////////////////////////////////////////////////////////////
+ +
33 + + + + + +
                              ENUMS
+ +
34 + + + + + +
  //////////////////////////////////////////////////////////////*/
+ +
35 + + + + + +

+                            
+                        
36 + + + + + +
  /**
+ +
37 + + + + + +
   * @notice Available status of the arbitration process
+ +
38 + + + + + +
   * @param Unknown The arbitration process has not started (default)
+ +
39 + + + + + +
   * @param Active The arbitration process is active
+ +
40 + + + + + +
   * @param Resolved The The arbitration process is finished
+ +
41 + + + + + +
   */
+ +
42 + + + + + +
  enum ArbitrationStatus {
+ +
43 + + + + + +
    Unknown,
+ +
44 + + + + + +
    Active,
+ +
45 + + + + + +
    Resolved
+ +
46 + + + + + +
  }
+ +
47 + + + + + +

+                            
+                        
48 + + + + + +
  /*///////////////////////////////////////////////////////////////
+ +
49 + + + + + +
                              STRUCTS
+ +
50 + + + + + +
  //////////////////////////////////////////////////////////////*/
+ +
51 + + + + + +
  /**
+ +
52 + + + + + +
   * @notice Parameters of the request as stored in the module
+ +
53 + + + + + +
   * @param arbitrator The address of the arbitrator
+ +
54 + + + + + +
   */
+ +
55 + + + + + +
  struct RequestParameters {
+ +
56 + + + + + +
    address arbitrator;
+ +
57 + + + + + +
  }
+ +
58 + + + + + +

+                            
+                        
59 + + + + + +
  /*///////////////////////////////////////////////////////////////
+ +
60 + + + + + +
                              LOGIC
+ +
61 + + + + + +
  //////////////////////////////////////////////////////////////*/
+ +
62 + + + + + +

+                            
+                        
63 + + + + + +
  /**
+ +
64 + + + + + +
   * @notice Returns the decoded data for a request
+ +
65 + + + + + +
   *
+ +
66 + + + + + +
   * @param _data     The encoded request parameters
+ +
67 + + + + + +
   * @return _params  The struct containing the parameters for the request
+ +
68 + + + + + +
   */
+ +
69 + + + + + +
  function decodeRequestData(bytes calldata _data) external view returns (RequestParameters memory _params);
+ +
70 + + + + + +

+                            
+                        
71 + + + + + +
  /**
+ +
72 + + + + + +
   * @notice Returns the current arbitration status of a dispute
+ +
73 + + + + + +
   *
+ +
74 + + + + + +
   * @param _disputeId The ID of the dispute
+ +
75 + + + + + +
   * @return _disputeStatus The `ArbitrationStatus` of the dispute
+ +
76 + + + + + +
   */
+ +
77 + + + + + +
  function getStatus(bytes32 _disputeId) external view returns (ArbitrationStatus _disputeStatus);
+ +
78 + + + + + +

+                            
+                        
79 + + + + + +
  /**
+ +
80 + + + + + +
   * @notice Starts the arbitration process by calling `resolve` on the arbitrator and flags the dispute as Active
+ +
81 + + + + + +
   *
+ +
82 + + + + + +
   * @dev               Only callable by the Oracle
+ +
83 + + + + + +
   * @dev               Will revert if the arbitrator address is the address zero
+ +
84 + + + + + +
   * @param _disputeId  The ID of the dispute
+ +
85 + + + + + +
   * @param _request    The request
+ +
86 + + + + + +
   * @param _response   The disputed response
+ +
87 + + + + + +
   * @param _dispute    The dispute being sent to the resolution
+ +
88 + + + + + +
   */
+ +
89 + + + + + +
  function startResolution(
+ +
90 + + + + + +
    bytes32 _disputeId,
+ +
91 + + + + + +
    IOracle.Request calldata _request,
+ +
92 + + + + + +
    IOracle.Response calldata _response,
+ +
93 + + + + + +
    IOracle.Dispute calldata _dispute
+ +
94 + + + + + +
  ) external;
+ +
95 + + + + + +

+                            
+                        
96 + + + + + +
  /**
+ +
97 + + + + + +
   * @notice Resolves the dispute by getting the answer from the arbitrator and updating the dispute status
+ +
98 + + + + + +
   *
+ +
99 + + + + + +
   * @dev               Only callable by the Oracle
+ +
100 + + + + + +
   * @param _disputeId  The ID of the dispute
+ +
101 + + + + + +
   * @param _request    The request
+ +
102 + + + + + +
   * @param _response   The disputed response
+ +
103 + + + + + +
   * @param _dispute    The dispute that is being resolved
+ +
104 + + + + + +
   */
+ +
105 + + + + + +
  function resolveDispute(
+ +
106 + + + + + +
    bytes32 _disputeId,
+ +
107 + + + + + +
    IOracle.Request calldata _request,
+ +
108 + + + + + +
    IOracle.Response calldata _response,
+ +
109 + + + + + +
    IOracle.Dispute calldata _dispute
+ +
110 + + + + + +
  ) external;
+ +
111 + + + + + +
}
+ +
112 + + + + + +

+                            
+                        
+
+
+ + + + + + + + + + +
+
+
+ + + + + + +
Lines covered: 0 / 0 (0.0%)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
1 + + + + + +
// SPDX-License-Identifier: MIT
+ +
2 + + + + + +
pragma solidity ^0.8.19;
+ +
3 + + + + + +

+                            
+                        
4 + + + + + +
import {IOracle} from '@defi-wonderland/prophet-core/solidity/interfaces/IOracle.sol';
+ +
5 + + + + + +
import {IResponseModule} from '@defi-wonderland/prophet-core/solidity/interfaces/modules/response/IResponseModule.sol';
+ +
6 + + + + + +
import {IERC20} from '@openzeppelin/contracts/token/ERC20/IERC20.sol';
+ +
7 + + + + + +

+                            
+                        
8 + + + + + +
import {IAccountingExtension} from '../../extensions/IAccountingExtension.sol';
+ +
9 + + + + + +

+                            
+                        
10 + + + + + +
/*
+ +
11 + + + + + +
  * @title BondedResponseModule
+ +
12 + + + + + +
  * @notice Module allowing users to propose a response for a request by bonding tokens
+ +
13 + + + + + +
  */
+ +
14 + + + + + +
interface IBondedResponseModule is IResponseModule {
+ +
15 + + + + + +
  /*///////////////////////////////////////////////////////////////
+ +
16 + + + + + +
                              EVENTS
+ +
17 + + + + + +
  //////////////////////////////////////////////////////////////*/
+ +
18 + + + + + +
  /**
+ +
19 + + + + + +
   * @notice Emitted when a response is proposed
+ +
20 + + + + + +
   *
+ +
21 + + + + + +
   * @param _requestId The ID of the request that the response was proposed
+ +
22 + + + + + +
   * @param _response The proposed response
+ +
23 + + + + + +
   */
+ +
24 + + + + + +
  event ResponseProposed(bytes32 indexed _requestId, IOracle.Response _response);
+ +
25 + + + + + +

+                            
+                        
26 + + + + + +
  /**
+ +
27 + + + + + +
   * @notice Emitted when an uncalled response is released
+ +
28 + + + + + +
   *
+ +
29 + + + + + +
   * @param _requestId The ID of the request that the response was proposed to
+ +
30 + + + + + +
   * @param _responseId The ID of the response that was released
+ +
31 + + + + + +
   */
+ +
32 + + + + + +
  event UnutilizedResponseReleased(bytes32 indexed _requestId, bytes32 indexed _responseId);
+ +
33 + + + + + +

+                            
+                        
34 + + + + + +
  /*///////////////////////////////////////////////////////////////
+ +
35 + + + + + +
                              ERRORS
+ +
36 + + + + + +
  //////////////////////////////////////////////////////////////*/
+ +
37 + + + + + +

+                            
+                        
38 + + + + + +
  /**
+ +
39 + + + + + +
   * @notice Thrown when trying to finalize a request before the deadline
+ +
40 + + + + + +
   */
+ +
41 + + + + + +
  error BondedResponseModule_TooEarlyToFinalize();
+ +
42 + + + + + +

+                            
+                        
43 + + + + + +
  /**
+ +
44 + + + + + +
   * @notice Thrown when trying to propose a response after deadline
+ +
45 + + + + + +
   */
+ +
46 + + + + + +
  error BondedResponseModule_TooLateToPropose();
+ +
47 + + + + + +

+                            
+                        
48 + + + + + +
  /**
+ +
49 + + + + + +
   * @notice Thrown when trying to propose a response while an undisputed response is already proposed
+ +
50 + + + + + +
   */
+ +
51 + + + + + +
  error BondedResponseModule_AlreadyResponded();
+ +
52 + + + + + +

+                            
+                        
53 + + + + + +
  /**
+ +
54 + + + + + +
   * @notice Thrown when trying to release an uncalled response with an invalid request, response or dispute
+ +
55 + + + + + +
   */
+ +
56 + + + + + +
  error BondedResponseModule_InvalidReleaseParameters();
+ +
57 + + + + + +

+                            
+                        
58 + + + + + +
  /*///////////////////////////////////////////////////////////////
+ +
59 + + + + + +
                              STRUCTS
+ +
60 + + + + + +
  //////////////////////////////////////////////////////////////*/
+ +
61 + + + + + +

+                            
+                        
62 + + + + + +
  /**
+ +
63 + + + + + +
   * @notice Parameters of the request as stored in the module
+ +
64 + + + + + +
   *
+ +
65 + + + + + +
   * @param accountingExtension The accounting extension used to bond and release tokens
+ +
66 + + + + + +
   * @param bondToken The token used for bonds in the request
+ +
67 + + + + + +
   * @param bondSize The amount of `_bondToken` to bond to propose a response and dispute
+ +
68 + + + + + +
   * @param deadline The timestamp after which no responses can be proposed
+ +
69 + + + + + +
   * @param disputeWindow The time buffer required to finalize a request
+ +
70 + + + + + +
   */
+ +
71 + + + + + +
  struct RequestParameters {
+ +
72 + + + + + +
    IAccountingExtension accountingExtension;
+ +
73 + + + + + +
    IERC20 bondToken;
+ +
74 + + + + + +
    uint256 bondSize;
+ +
75 + + + + + +
    uint256 deadline;
+ +
76 + + + + + +
    uint256 disputeWindow;
+ +
77 + + + + + +
  }
+ +
78 + + + + + +

+                            
+                        
79 + + + + + +
  /*///////////////////////////////////////////////////////////////
+ +
80 + + + + + +
                              LOGIC
+ +
81 + + + + + +
  //////////////////////////////////////////////////////////////*/
+ +
82 + + + + + +

+                            
+                        
83 + + + + + +
  /**
+ +
84 + + + + + +
   * @notice Returns the decoded data for a request
+ +
85 + + + + + +
   *
+ +
86 + + + + + +
   * @param _data The encoded data
+ +
87 + + + + + +
   * @return _params The struct containing the parameters for the request
+ +
88 + + + + + +
   */
+ +
89 + + + + + +
  function decodeRequestData(bytes calldata _data) external pure returns (RequestParameters memory _params);
+ +
90 + + + + + +

+                            
+                        
91 + + + + + +
  /**
+ +
92 + + + + + +
   * @notice Proposes a response for a request, bonding the proposer's tokens
+ +
93 + + + + + +
   *
+ +
94 + + + + + +
   * @dev The user must have previously deposited tokens into the accounting extension
+ +
95 + + + + + +
   * @param _request The request to propose a response to
+ +
96 + + + + + +
   * @param _response The response being proposed
+ +
97 + + + + + +
   * @param _sender The address that initiated the transaction
+ +
98 + + + + + +
   */
+ +
99 + + + + + +
  function propose(IOracle.Request calldata _request, IOracle.Response calldata _response, address _sender) external;
+ +
100 + + + + + +

+                            
+                        
101 + + + + + +
  /**
+ +
102 + + + + + +
   * @notice Finalizes the request by releasing the bond of the proposer
+ +
103 + + + + + +
   *
+ +
104 + + + + + +
   * @param _request The request that is being finalized
+ +
105 + + + + + +
   * @param _response The final response
+ +
106 + + + + + +
   * @param _finalizer The user who triggered the finalization
+ +
107 + + + + + +
   */
+ +
108 + + + + + +
  function finalizeRequest(
+ +
109 + + + + + +
    IOracle.Request calldata _request,
+ +
110 + + + + + +
    IOracle.Response calldata _response,
+ +
111 + + + + + +
    address _finalizer
+ +
112 + + + + + +
  ) external;
+ +
113 + + + + + +

+                            
+                        
114 + + + + + +
  /**
+ +
115 + + + + + +
   * @notice Releases the proposer funds if the response is valid and it has not been used to finalize the request
+ +
116 + + + + + +
   *
+ +
117 + + + + + +
   * @param _request The finalized request
+ +
118 + + + + + +
   * @param _response The unutilized response
+ +
119 + + + + + +
   */
+ +
120 + + + + + +
  function releaseUnutilizedResponse(IOracle.Request calldata _request, IOracle.Response calldata _response) external;
+ +
121 + + + + + +
}
+ +
122 + + + + + +

+                            
+                        
+
+
+ + + + + + + + + + +
+
+
+ + + + + + +
Lines covered: 2 / 53 (3.8%)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
1 + + + + + +
// SPDX-License-Identifier: MIT
+ +
2 + + + + + +
// OpenZeppelin Contracts (last updated v4.9.0) (token/ERC20/ERC20.sol)
+ +
3 + + + + + +

+                            
+                        
4 + + + + + +
pragma solidity ^0.8.0;
+ +
5 + + + + + +

+                            
+                        
6 + + + + + +
import "./IERC20.sol";
+ +
7 + + + + + +
import "./extensions/IERC20Metadata.sol";
+ +
8 + + + + + +
import "../../utils/Context.sol";
+ +
9 + + + + + +

+                            
+                        
10 + + + + + +
/**
+ +
11 + + + + + +
 * @dev Implementation of the {IERC20} interface.
+ +
12 + + + + + +
 *
+ +
13 + + + + + +
 * This implementation is agnostic to the way tokens are created. This means
+ +
14 + + + + + +
 * that a supply mechanism has to be added in a derived contract using {_mint}.
+ +
15 + + + + + +
 * For a generic mechanism see {ERC20PresetMinterPauser}.
+ +
16 + + + + + +
 *
+ +
17 + + + + + +
 * TIP: For a detailed writeup see our guide
+ +
18 + + + + + +
 * https://forum.openzeppelin.com/t/how-to-implement-erc20-supply-mechanisms/226[How
+ +
19 + + + + + +
 * to implement supply mechanisms].
+ +
20 + + + + + +
 *
+ +
21 + + + + + +
 * The default value of {decimals} is 18. To change this, you should override
+ +
22 + + + + + +
 * this function so it returns a different value.
+ +
23 + + + + + +
 *
+ +
24 + + + + + +
 * We have followed general OpenZeppelin Contracts guidelines: functions revert
+ +
25 + + + + + +
 * instead returning `false` on failure. This behavior is nonetheless
+ +
26 + + + + + +
 * conventional and does not conflict with the expectations of ERC20
+ +
27 + + + + + +
 * applications.
+ +
28 + + + + + +
 *
+ +
29 + + + + + +
 * Additionally, an {Approval} event is emitted on calls to {transferFrom}.
+ +
30 + + + + + +
 * This allows applications to reconstruct the allowance for all accounts just
+ +
31 + + + + + +
 * by listening to said events. Other implementations of the EIP may not emit
+ +
32 + + + + + +
 * these events, as it isn't required by the specification.
+ +
33 + + + + + +
 *
+ +
34 + + + + + +
 * Finally, the non-standard {decreaseAllowance} and {increaseAllowance}
+ +
35 + + + + + +
 * functions have been added to mitigate the well-known issues around setting
+ +
36 + + + + + +
 * allowances. See {IERC20-approve}.
+ +
37 + + + + + +
 */
+ +
38 + + + + + +
contract ERC20 is Context, IERC20, IERC20Metadata {
+ +
39 + + + + + +
    mapping(address => uint256) private _balances;
+ +
40 + + + + + +

+                            
+                        
41 + + + + + +
    mapping(address => mapping(address => uint256)) private _allowances;
+ +
42 + + + + + +

+                            
+                        
43 + + + + + +
    uint256 private _totalSupply;
+ +
44 + + + + + +

+                            
+                        
45 + + + + + +
    string private _name;
+ +
46 + + + + + +
    string private _symbol;
+ +
47 + + + + + +

+                            
+                        
48 + + + + + +
    /**
+ +
49 + + + + + +
     * @dev Sets the values for {name} and {symbol}.
+ +
50 + + + + + +
     *
+ +
51 + + + + + +
     * All two of these values are immutable: they can only be set once during
+ +
52 + + + + + +
     * construction.
+ +
53 + + + + + +
     */
+ +
54 + + + + + +
    constructor(string memory name_, string memory symbol_) {
+ +
55 + +
+ +
+ + + +
        _name = name_;
+ +
56 + +
+ +
+ + + +
        _symbol = symbol_;
+ +
57 + + + + + +
    }
+ +
58 + + + + + +

+                            
+                        
59 + + + + + +
    /**
+ +
60 + + + + + +
     * @dev Returns the name of the token.
+ +
61 + + + + + +
     */
+ +
62 + + + + + +
    function name() public view virtual override returns (string memory) {
+ +
63 + + + + + +
        return _name;
+ +
64 + + + + + +
    }
+ +
65 + + + + + +

+                            
+                        
66 + + + + + +
    /**
+ +
67 + + + + + +
     * @dev Returns the symbol of the token, usually a shorter version of the
+ +
68 + + + + + +
     * name.
+ +
69 + + + + + +
     */
+ +
70 + + + + + +
    function symbol() public view virtual override returns (string memory) {
+ +
71 + + + + + +
        return _symbol;
+ +
72 + + + + + +
    }
+ +
73 + + + + + +

+                            
+                        
74 + + + + + +
    /**
+ +
75 + + + + + +
     * @dev Returns the number of decimals used to get its user representation.
+ +
76 + + + + + +
     * For example, if `decimals` equals `2`, a balance of `505` tokens should
+ +
77 + + + + + +
     * be displayed to a user as `5.05` (`505 / 10 ** 2`).
+ +
78 + + + + + +
     *
+ +
79 + + + + + +
     * Tokens usually opt for a value of 18, imitating the relationship between
+ +
80 + + + + + +
     * Ether and Wei. This is the default value returned by this function, unless
+ +
81 + + + + + +
     * it's overridden.
+ +
82 + + + + + +
     *
+ +
83 + + + + + +
     * NOTE: This information is only used for _display_ purposes: it in
+ +
84 + + + + + +
     * no way affects any of the arithmetic of the contract, including
+ +
85 + + + + + +
     * {IERC20-balanceOf} and {IERC20-transfer}.
+ +
86 + + + + + +
     */
+ +
87 + + + + + +
    function decimals() public view virtual override returns (uint8) {
+ +
88 + + + + + +
        return 18;
+ +
89 + + + + + +
    }
+ +
90 + + + + + +

+                            
+                        
91 + + + + + +
    /**
+ +
92 + + + + + +
     * @dev See {IERC20-totalSupply}.
+ +
93 + + + + + +
     */
+ +
94 + + + + + +
    function totalSupply() public view virtual override returns (uint256) {
+ +
95 + + + + + +
        return _totalSupply;
+ +
96 + + + + + +
    }
+ +
97 + + + + + +

+                            
+                        
98 + + + + + +
    /**
+ +
99 + + + + + +
     * @dev See {IERC20-balanceOf}.
+ +
100 + + + + + +
     */
+ +
101 + + + + + +
    function balanceOf(address account) public view virtual override returns (uint256) {
+ +
102 + + + + + +
        return _balances[account];
+ +
103 + + + + + +
    }
+ +
104 + + + + + +

+                            
+                        
105 + + + + + +
    /**
+ +
106 + + + + + +
     * @dev See {IERC20-transfer}.
+ +
107 + + + + + +
     *
+ +
108 + + + + + +
     * Requirements:
+ +
109 + + + + + +
     *
+ +
110 + + + + + +
     * - `to` cannot be the zero address.
+ +
111 + + + + + +
     * - the caller must have a balance of at least `amount`.
+ +
112 + + + + + +
     */
+ +
113 + + + + + +
    function transfer(address to, uint256 amount) public virtual override returns (bool) {
+ +
114 + + + + + +
        address owner = _msgSender();
+ +
115 + + + + + +
        _transfer(owner, to, amount);
+ +
116 + + + + + +
        return true;
+ +
117 + + + + + +
    }
+ +
118 + + + + + +

+                            
+                        
119 + + + + + +
    /**
+ +
120 + + + + + +
     * @dev See {IERC20-allowance}.
+ +
121 + + + + + +
     */
+ +
122 + + + + + +
    function allowance(address owner, address spender) public view virtual override returns (uint256) {
+ +
123 + + + + + +
        return _allowances[owner][spender];
+ +
124 + + + + + +
    }
+ +
125 + + + + + +

+                            
+                        
126 + + + + + +
    /**
+ +
127 + + + + + +
     * @dev See {IERC20-approve}.
+ +
128 + + + + + +
     *
+ +
129 + + + + + +
     * NOTE: If `amount` is the maximum `uint256`, the allowance is not updated on
+ +
130 + + + + + +
     * `transferFrom`. This is semantically equivalent to an infinite approval.
+ +
131 + + + + + +
     *
+ +
132 + + + + + +
     * Requirements:
+ +
133 + + + + + +
     *
+ +
134 + + + + + +
     * - `spender` cannot be the zero address.
+ +
135 + + + + + +
     */
+ +
136 + + + + + +
    function approve(address spender, uint256 amount) public virtual override returns (bool) {
+ +
137 + + + + + +
        address owner = _msgSender();
+ +
138 + + + + + +
        _approve(owner, spender, amount);
+ +
139 + + + + + +
        return true;
+ +
140 + + + + + +
    }
+ +
141 + + + + + +

+                            
+                        
142 + + + + + +
    /**
+ +
143 + + + + + +
     * @dev See {IERC20-transferFrom}.
+ +
144 + + + + + +
     *
+ +
145 + + + + + +
     * Emits an {Approval} event indicating the updated allowance. This is not
+ +
146 + + + + + +
     * required by the EIP. See the note at the beginning of {ERC20}.
+ +
147 + + + + + +
     *
+ +
148 + + + + + +
     * NOTE: Does not update the allowance if the current allowance
+ +
149 + + + + + +
     * is the maximum `uint256`.
+ +
150 + + + + + +
     *
+ +
151 + + + + + +
     * Requirements:
+ +
152 + + + + + +
     *
+ +
153 + + + + + +
     * - `from` and `to` cannot be the zero address.
+ +
154 + + + + + +
     * - `from` must have a balance of at least `amount`.
+ +
155 + + + + + +
     * - the caller must have allowance for ``from``'s tokens of at least
+ +
156 + + + + + +
     * `amount`.
+ +
157 + + + + + +
     */
+ +
158 + + + + + +
    function transferFrom(address from, address to, uint256 amount) public virtual override returns (bool) {
+ +
159 + + + + + +
        address spender = _msgSender();
+ +
160 + + + + + +
        _spendAllowance(from, spender, amount);
+ +
161 + + + + + +
        _transfer(from, to, amount);
+ +
162 + + + + + +
        return true;
+ +
163 + + + + + +
    }
+ +
164 + + + + + +

+                            
+                        
165 + + + + + +
    /**
+ +
166 + + + + + +
     * @dev Atomically increases the allowance granted to `spender` by the caller.
+ +
167 + + + + + +
     *
+ +
168 + + + + + +
     * This is an alternative to {approve} that can be used as a mitigation for
+ +
169 + + + + + +
     * problems described in {IERC20-approve}.
+ +
170 + + + + + +
     *
+ +
171 + + + + + +
     * Emits an {Approval} event indicating the updated allowance.
+ +
172 + + + + + +
     *
+ +
173 + + + + + +
     * Requirements:
+ +
174 + + + + + +
     *
+ +
175 + + + + + +
     * - `spender` cannot be the zero address.
+ +
176 + + + + + +
     */
+ +
177 + + + + + +
    function increaseAllowance(address spender, uint256 addedValue) public virtual returns (bool) {
+ +
178 + + + + + +
        address owner = _msgSender();
+ +
179 + + + + + +
        _approve(owner, spender, allowance(owner, spender) + addedValue);
+ +
180 + + + + + +
        return true;
+ +
181 + + + + + +
    }
+ +
182 + + + + + +

+                            
+                        
183 + + + + + +
    /**
+ +
184 + + + + + +
     * @dev Atomically decreases the allowance granted to `spender` by the caller.
+ +
185 + + + + + +
     *
+ +
186 + + + + + +
     * This is an alternative to {approve} that can be used as a mitigation for
+ +
187 + + + + + +
     * problems described in {IERC20-approve}.
+ +
188 + + + + + +
     *
+ +
189 + + + + + +
     * Emits an {Approval} event indicating the updated allowance.
+ +
190 + + + + + +
     *
+ +
191 + + + + + +
     * Requirements:
+ +
192 + + + + + +
     *
+ +
193 + + + + + +
     * - `spender` cannot be the zero address.
+ +
194 + + + + + +
     * - `spender` must have allowance for the caller of at least
+ +
195 + + + + + +
     * `subtractedValue`.
+ +
196 + + + + + +
     */
+ +
197 + + + + + +
    function decreaseAllowance(address spender, uint256 subtractedValue) public virtual returns (bool) {
+ +
198 + + + + + +
        address owner = _msgSender();
+ +
199 + + + + + +
        uint256 currentAllowance = allowance(owner, spender);
+ +
200 + + + + + +
        require(currentAllowance >= subtractedValue, "ERC20: decreased allowance below zero");
+ +
201 + + + + + +
        unchecked {
+ +
202 + + + + + +
            _approve(owner, spender, currentAllowance - subtractedValue);
+ +
203 + + + + + +
        }
+ +
204 + + + + + +

+                            
+                        
205 + + + + + +
        return true;
+ +
206 + + + + + +
    }
+ +
207 + + + + + +

+                            
+                        
208 + + + + + +
    /**
+ +
209 + + + + + +
     * @dev Moves `amount` of tokens from `from` to `to`.
+ +
210 + + + + + +
     *
+ +
211 + + + + + +
     * This internal function is equivalent to {transfer}, and can be used to
+ +
212 + + + + + +
     * e.g. implement automatic token fees, slashing mechanisms, etc.
+ +
213 + + + + + +
     *
+ +
214 + + + + + +
     * Emits a {Transfer} event.
+ +
215 + + + + + +
     *
+ +
216 + + + + + +
     * Requirements:
+ +
217 + + + + + +
     *
+ +
218 + + + + + +
     * - `from` cannot be the zero address.
+ +
219 + + + + + +
     * - `to` cannot be the zero address.
+ +
220 + + + + + +
     * - `from` must have a balance of at least `amount`.
+ +
221 + + + + + +
     */
+ +
222 + + + + + +
    function _transfer(address from, address to, uint256 amount) internal virtual {
+ +
223 + + + + + +
        require(from != address(0), "ERC20: transfer from the zero address");
+ +
224 + + + + + +
        require(to != address(0), "ERC20: transfer to the zero address");
+ +
225 + + + + + +

+                            
+                        
226 + + + + + +
        _beforeTokenTransfer(from, to, amount);
+ +
227 + + + + + +

+                            
+                        
228 + + + + + +
        uint256 fromBalance = _balances[from];
+ +
229 + + + + + +
        require(fromBalance >= amount, "ERC20: transfer amount exceeds balance");
+ +
230 + + + + + +
        unchecked {
+ +
231 + + + + + +
            _balances[from] = fromBalance - amount;
+ +
232 + + + + + +
            // Overflow not possible: the sum of all balances is capped by totalSupply, and the sum is preserved by
+ +
233 + + + + + +
            // decrementing then incrementing.
+ +
234 + + + + + +
            _balances[to] += amount;
+ +
235 + + + + + +
        }
+ +
236 + + + + + +

+                            
+                        
237 + + + + + +
        emit Transfer(from, to, amount);
+ +
238 + + + + + +

+                            
+                        
239 + + + + + +
        _afterTokenTransfer(from, to, amount);
+ +
240 + + + + + +
    }
+ +
241 + + + + + +

+                            
+                        
242 + + + + + +
    /** @dev Creates `amount` tokens and assigns them to `account`, increasing
+ +
243 + + + + + +
     * the total supply.
+ +
244 + + + + + +
     *
+ +
245 + + + + + +
     * Emits a {Transfer} event with `from` set to the zero address.
+ +
246 + + + + + +
     *
+ +
247 + + + + + +
     * Requirements:
+ +
248 + + + + + +
     *
+ +
249 + + + + + +
     * - `account` cannot be the zero address.
+ +
250 + + + + + +
     */
+ +
251 + + + + + +
    function _mint(address account, uint256 amount) internal virtual {
+ +
252 + + + + + +
        require(account != address(0), "ERC20: mint to the zero address");
+ +
253 + + + + + +

+                            
+                        
254 + + + + + +
        _beforeTokenTransfer(address(0), account, amount);
+ +
255 + + + + + +

+                            
+                        
256 + + + + + +
        _totalSupply += amount;
+ +
257 + + + + + +
        unchecked {
+ +
258 + + + + + +
            // Overflow not possible: balance + amount is at most totalSupply + amount, which is checked above.
+ +
259 + + + + + +
            _balances[account] += amount;
+ +
260 + + + + + +
        }
+ +
261 + + + + + +
        emit Transfer(address(0), account, amount);
+ +
262 + + + + + +

+                            
+                        
263 + + + + + +
        _afterTokenTransfer(address(0), account, amount);
+ +
264 + + + + + +
    }
+ +
265 + + + + + +

+                            
+                        
266 + + + + + +
    /**
+ +
267 + + + + + +
     * @dev Destroys `amount` tokens from `account`, reducing the
+ +
268 + + + + + +
     * total supply.
+ +
269 + + + + + +
     *
+ +
270 + + + + + +
     * Emits a {Transfer} event with `to` set to the zero address.
+ +
271 + + + + + +
     *
+ +
272 + + + + + +
     * Requirements:
+ +
273 + + + + + +
     *
+ +
274 + + + + + +
     * - `account` cannot be the zero address.
+ +
275 + + + + + +
     * - `account` must have at least `amount` tokens.
+ +
276 + + + + + +
     */
+ +
277 + + + + + +
    function _burn(address account, uint256 amount) internal virtual {
+ +
278 + + + + + +
        require(account != address(0), "ERC20: burn from the zero address");
+ +
279 + + + + + +

+                            
+                        
280 + + + + + +
        _beforeTokenTransfer(account, address(0), amount);
+ +
281 + + + + + +

+                            
+                        
282 + + + + + +
        uint256 accountBalance = _balances[account];
+ +
283 + + + + + +
        require(accountBalance >= amount, "ERC20: burn amount exceeds balance");
+ +
284 + + + + + +
        unchecked {
+ +
285 + + + + + +
            _balances[account] = accountBalance - amount;
+ +
286 + + + + + +
            // Overflow not possible: amount <= accountBalance <= totalSupply.
+ +
287 + + + + + +
            _totalSupply -= amount;
+ +
288 + + + + + +
        }
+ +
289 + + + + + +

+                            
+                        
290 + + + + + +
        emit Transfer(account, address(0), amount);
+ +
291 + + + + + +

+                            
+                        
292 + + + + + +
        _afterTokenTransfer(account, address(0), amount);
+ +
293 + + + + + +
    }
+ +
294 + + + + + +

+                            
+                        
295 + + + + + +
    /**
+ +
296 + + + + + +
     * @dev Sets `amount` as the allowance of `spender` over the `owner` s tokens.
+ +
297 + + + + + +
     *
+ +
298 + + + + + +
     * This internal function is equivalent to `approve`, and can be used to
+ +
299 + + + + + +
     * e.g. set automatic allowances for certain subsystems, etc.
+ +
300 + + + + + +
     *
+ +
301 + + + + + +
     * Emits an {Approval} event.
+ +
302 + + + + + +
     *
+ +
303 + + + + + +
     * Requirements:
+ +
304 + + + + + +
     *
+ +
305 + + + + + +
     * - `owner` cannot be the zero address.
+ +
306 + + + + + +
     * - `spender` cannot be the zero address.
+ +
307 + + + + + +
     */
+ +
308 + + + + + +
    function _approve(address owner, address spender, uint256 amount) internal virtual {
+ +
309 + + + + + +
        require(owner != address(0), "ERC20: approve from the zero address");
+ +
310 + + + + + +
        require(spender != address(0), "ERC20: approve to the zero address");
+ +
311 + + + + + +

+                            
+                        
312 + + + + + +
        _allowances[owner][spender] = amount;
+ +
313 + + + + + +
        emit Approval(owner, spender, amount);
+ +
314 + + + + + +
    }
+ +
315 + + + + + +

+                            
+                        
316 + + + + + +
    /**
+ +
317 + + + + + +
     * @dev Updates `owner` s allowance for `spender` based on spent `amount`.
+ +
318 + + + + + +
     *
+ +
319 + + + + + +
     * Does not update the allowance amount in case of infinite allowance.
+ +
320 + + + + + +
     * Revert if not enough allowance is available.
+ +
321 + + + + + +
     *
+ +
322 + + + + + +
     * Might emit an {Approval} event.
+ +
323 + + + + + +
     */
+ +
324 + + + + + +
    function _spendAllowance(address owner, address spender, uint256 amount) internal virtual {
+ +
325 + + + + + +
        uint256 currentAllowance = allowance(owner, spender);
+ +
326 + + + + + +
        if (currentAllowance != type(uint256).max) {
+ +
327 + + + + + +
            require(currentAllowance >= amount, "ERC20: insufficient allowance");
+ +
328 + + + + + +
            unchecked {
+ +
329 + + + + + +
                _approve(owner, spender, currentAllowance - amount);
+ +
330 + + + + + +
            }
+ +
331 + + + + + +
        }
+ +
332 + + + + + +
    }
+ +
333 + + + + + +

+                            
+                        
334 + + + + + +
    /**
+ +
335 + + + + + +
     * @dev Hook that is called before any transfer of tokens. This includes
+ +
336 + + + + + +
     * minting and burning.
+ +
337 + + + + + +
     *
+ +
338 + + + + + +
     * Calling conditions:
+ +
339 + + + + + +
     *
+ +
340 + + + + + +
     * - when `from` and `to` are both non-zero, `amount` of ``from``'s tokens
+ +
341 + + + + + +
     * will be transferred to `to`.
+ +
342 + + + + + +
     * - when `from` is zero, `amount` tokens will be minted for `to`.
+ +
343 + + + + + +
     * - when `to` is zero, `amount` of ``from``'s tokens will be burned.
+ +
344 + + + + + +
     * - `from` and `to` are never both zero.
+ +
345 + + + + + +
     *
+ +
346 + + + + + +
     * To learn more about hooks, head to xref:ROOT:extending-contracts.adoc#using-hooks[Using Hooks].
+ +
347 + + + + + +
     */
+ +
348 + + + + + +
    function _beforeTokenTransfer(address from, address to, uint256 amount) internal virtual {}
+ +
349 + + + + + +

+                            
+                        
350 + + + + + +
    /**
+ +
351 + + + + + +
     * @dev Hook that is called after any transfer of tokens. This includes
+ +
352 + + + + + +
     * minting and burning.
+ +
353 + + + + + +
     *
+ +
354 + + + + + +
     * Calling conditions:
+ +
355 + + + + + +
     *
+ +
356 + + + + + +
     * - when `from` and `to` are both non-zero, `amount` of ``from``'s tokens
+ +
357 + + + + + +
     * has been transferred to `to`.
+ +
358 + + + + + +
     * - when `from` is zero, `amount` tokens have been minted for `to`.
+ +
359 + + + + + +
     * - when `to` is zero, `amount` of ``from``'s tokens have been burned.
+ +
360 + + + + + +
     * - `from` and `to` are never both zero.
+ +
361 + + + + + +
     *
+ +
362 + + + + + +
     * To learn more about hooks, head to xref:ROOT:extending-contracts.adoc#using-hooks[Using Hooks].
+ +
363 + + + + + +
     */
+ +
364 + + + + + +
    function _afterTokenTransfer(address from, address to, uint256 amount) internal virtual {}
+ +
365 + + + + + +
}
+ +
366 + + + + + +

+                            
+                        
+
+
+ + + + + + + + + + +
+
+
+ + + + + + +
Lines covered: 0 / 0 (0.0%)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
1 + + + + + +
// SPDX-License-Identifier: MIT
+ +
2 + + + + + +
// OpenZeppelin Contracts (last updated v4.9.0) (token/ERC20/IERC20.sol)
+ +
3 + + + + + +

+                            
+                        
4 + + + + + +
pragma solidity ^0.8.0;
+ +
5 + + + + + +

+                            
+                        
6 + + + + + +
/**
+ +
7 + + + + + +
 * @dev Interface of the ERC20 standard as defined in the EIP.
+ +
8 + + + + + +
 */
+ +
9 + + + + + +
interface IERC20 {
+ +
10 + + + + + +
    /**
+ +
11 + + + + + +
     * @dev Emitted when `value` tokens are moved from one account (`from`) to
+ +
12 + + + + + +
     * another (`to`).
+ +
13 + + + + + +
     *
+ +
14 + + + + + +
     * Note that `value` may be zero.
+ +
15 + + + + + +
     */
+ +
16 + + + + + +
    event Transfer(address indexed from, address indexed to, uint256 value);
+ +
17 + + + + + +

+                            
+                        
18 + + + + + +
    /**
+ +
19 + + + + + +
     * @dev Emitted when the allowance of a `spender` for an `owner` is set by
+ +
20 + + + + + +
     * a call to {approve}. `value` is the new allowance.
+ +
21 + + + + + +
     */
+ +
22 + + + + + +
    event Approval(address indexed owner, address indexed spender, uint256 value);
+ +
23 + + + + + +

+                            
+                        
24 + + + + + +
    /**
+ +
25 + + + + + +
     * @dev Returns the amount of tokens in existence.
+ +
26 + + + + + +
     */
+ +
27 + + + + + +
    function totalSupply() external view returns (uint256);
+ +
28 + + + + + +

+                            
+                        
29 + + + + + +
    /**
+ +
30 + + + + + +
     * @dev Returns the amount of tokens owned by `account`.
+ +
31 + + + + + +
     */
+ +
32 + + + + + +
    function balanceOf(address account) external view returns (uint256);
+ +
33 + + + + + +

+                            
+                        
34 + + + + + +
    /**
+ +
35 + + + + + +
     * @dev Moves `amount` tokens from the caller's account to `to`.
+ +
36 + + + + + +
     *
+ +
37 + + + + + +
     * Returns a boolean value indicating whether the operation succeeded.
+ +
38 + + + + + +
     *
+ +
39 + + + + + +
     * Emits a {Transfer} event.
+ +
40 + + + + + +
     */
+ +
41 + + + + + +
    function transfer(address to, uint256 amount) external returns (bool);
+ +
42 + + + + + +

+                            
+                        
43 + + + + + +
    /**
+ +
44 + + + + + +
     * @dev Returns the remaining number of tokens that `spender` will be
+ +
45 + + + + + +
     * allowed to spend on behalf of `owner` through {transferFrom}. This is
+ +
46 + + + + + +
     * zero by default.
+ +
47 + + + + + +
     *
+ +
48 + + + + + +
     * This value changes when {approve} or {transferFrom} are called.
+ +
49 + + + + + +
     */
+ +
50 + + + + + +
    function allowance(address owner, address spender) external view returns (uint256);
+ +
51 + + + + + +

+                            
+                        
52 + + + + + +
    /**
+ +
53 + + + + + +
     * @dev Sets `amount` as the allowance of `spender` over the caller's tokens.
+ +
54 + + + + + +
     *
+ +
55 + + + + + +
     * Returns a boolean value indicating whether the operation succeeded.
+ +
56 + + + + + +
     *
+ +
57 + + + + + +
     * IMPORTANT: Beware that changing an allowance with this method brings the risk
+ +
58 + + + + + +
     * that someone may use both the old and the new allowance by unfortunate
+ +
59 + + + + + +
     * transaction ordering. One possible solution to mitigate this race
+ +
60 + + + + + +
     * condition is to first reduce the spender's allowance to 0 and set the
+ +
61 + + + + + +
     * desired value afterwards:
+ +
62 + + + + + +
     * https://github.com/ethereum/EIPs/issues/20#issuecomment-263524729
+ +
63 + + + + + +
     *
+ +
64 + + + + + +
     * Emits an {Approval} event.
+ +
65 + + + + + +
     */
+ +
66 + + + + + +
    function approve(address spender, uint256 amount) external returns (bool);
+ +
67 + + + + + +

+                            
+                        
68 + + + + + +
    /**
+ +
69 + + + + + +
     * @dev Moves `amount` tokens from `from` to `to` using the
+ +
70 + + + + + +
     * allowance mechanism. `amount` is then deducted from the caller's
+ +
71 + + + + + +
     * allowance.
+ +
72 + + + + + +
     *
+ +
73 + + + + + +
     * Returns a boolean value indicating whether the operation succeeded.
+ +
74 + + + + + +
     *
+ +
75 + + + + + +
     * Emits a {Transfer} event.
+ +
76 + + + + + +
     */
+ +
77 + + + + + +
    function transferFrom(address from, address to, uint256 amount) external returns (bool);
+ +
78 + + + + + +
}
+ +
79 + + + + + +

+                            
+                        
+
+
+ + + + + + + + + + +
+
+
+ + + + + + +
Lines covered: 0 / 0 (0.0%)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
1 + + + + + +
// SPDX-License-Identifier: MIT
+ +
2 + + + + + +
// OpenZeppelin Contracts v4.4.1 (token/ERC20/extensions/IERC20Metadata.sol)
+ +
3 + + + + + +

+                            
+                        
4 + + + + + +
pragma solidity ^0.8.0;
+ +
5 + + + + + +

+                            
+                        
6 + + + + + +
import "../IERC20.sol";
+ +
7 + + + + + +

+                            
+                        
8 + + + + + +
/**
+ +
9 + + + + + +
 * @dev Interface for the optional metadata functions from the ERC20 standard.
+ +
10 + + + + + +
 *
+ +
11 + + + + + +
 * _Available since v4.1._
+ +
12 + + + + + +
 */
+ +
13 + + + + + +
interface IERC20Metadata is IERC20 {
+ +
14 + + + + + +
    /**
+ +
15 + + + + + +
     * @dev Returns the name of the token.
+ +
16 + + + + + +
     */
+ +
17 + + + + + +
    function name() external view returns (string memory);
+ +
18 + + + + + +

+                            
+                        
19 + + + + + +
    /**
+ +
20 + + + + + +
     * @dev Returns the symbol of the token.
+ +
21 + + + + + +
     */
+ +
22 + + + + + +
    function symbol() external view returns (string memory);
+ +
23 + + + + + +

+                            
+                        
24 + + + + + +
    /**
+ +
25 + + + + + +
     * @dev Returns the decimals places of the token.
+ +
26 + + + + + +
     */
+ +
27 + + + + + +
    function decimals() external view returns (uint8);
+ +
28 + + + + + +
}
+ +
29 + + + + + +

+                            
+                        
+
+
+ + + + + + + + + + +
+
+
+ + + + + + +
Lines covered: 0 / 0 (0.0%)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
1 + + + + + +
// SPDX-License-Identifier: MIT
+ +
2 + + + + + +
// OpenZeppelin Contracts (last updated v4.9.4) (token/ERC20/extensions/IERC20Permit.sol)
+ +
3 + + + + + +

+                            
+                        
4 + + + + + +
pragma solidity ^0.8.0;
+ +
5 + + + + + +

+                            
+                        
6 + + + + + +
/**
+ +
7 + + + + + +
 * @dev Interface of the ERC20 Permit extension allowing approvals to be made via signatures, as defined in
+ +
8 + + + + + +
 * https://eips.ethereum.org/EIPS/eip-2612[EIP-2612].
+ +
9 + + + + + +
 *
+ +
10 + + + + + +
 * Adds the {permit} method, which can be used to change an account's ERC20 allowance (see {IERC20-allowance}) by
+ +
11 + + + + + +
 * presenting a message signed by the account. By not relying on {IERC20-approve}, the token holder account doesn't
+ +
12 + + + + + +
 * need to send a transaction, and thus is not required to hold Ether at all.
+ +
13 + + + + + +
 *
+ +
14 + + + + + +
 * ==== Security Considerations
+ +
15 + + + + + +
 *
+ +
16 + + + + + +
 * There are two important considerations concerning the use of `permit`. The first is that a valid permit signature
+ +
17 + + + + + +
 * expresses an allowance, and it should not be assumed to convey additional meaning. In particular, it should not be
+ +
18 + + + + + +
 * considered as an intention to spend the allowance in any specific way. The second is that because permits have
+ +
19 + + + + + +
 * built-in replay protection and can be submitted by anyone, they can be frontrun. A protocol that uses permits should
+ +
20 + + + + + +
 * take this into consideration and allow a `permit` call to fail. Combining these two aspects, a pattern that may be
+ +
21 + + + + + +
 * generally recommended is:
+ +
22 + + + + + +
 *
+ +
23 + + + + + +
 * ```solidity
+ +
24 + + + + + +
 * function doThingWithPermit(..., uint256 value, uint256 deadline, uint8 v, bytes32 r, bytes32 s) public {
+ +
25 + + + + + +
 *     try token.permit(msg.sender, address(this), value, deadline, v, r, s) {} catch {}
+ +
26 + + + + + +
 *     doThing(..., value);
+ +
27 + + + + + +
 * }
+ +
28 + + + + + +
 *
+ +
29 + + + + + +
 * function doThing(..., uint256 value) public {
+ +
30 + + + + + +
 *     token.safeTransferFrom(msg.sender, address(this), value);
+ +
31 + + + + + +
 *     ...
+ +
32 + + + + + +
 * }
+ +
33 + + + + + +
 * ```
+ +
34 + + + + + +
 *
+ +
35 + + + + + +
 * Observe that: 1) `msg.sender` is used as the owner, leaving no ambiguity as to the signer intent, and 2) the use of
+ +
36 + + + + + +
 * `try/catch` allows the permit to fail and makes the code tolerant to frontrunning. (See also
+ +
37 + + + + + +
 * {SafeERC20-safeTransferFrom}).
+ +
38 + + + + + +
 *
+ +
39 + + + + + +
 * Additionally, note that smart contract wallets (such as Argent or Safe) are not able to produce permit signatures, so
+ +
40 + + + + + +
 * contracts should have entry points that don't rely on permit.
+ +
41 + + + + + +
 */
+ +
42 + + + + + +
interface IERC20Permit {
+ +
43 + + + + + +
    /**
+ +
44 + + + + + +
     * @dev Sets `value` as the allowance of `spender` over ``owner``'s tokens,
+ +
45 + + + + + +
     * given ``owner``'s signed approval.
+ +
46 + + + + + +
     *
+ +
47 + + + + + +
     * IMPORTANT: The same issues {IERC20-approve} has related to transaction
+ +
48 + + + + + +
     * ordering also apply here.
+ +
49 + + + + + +
     *
+ +
50 + + + + + +
     * Emits an {Approval} event.
+ +
51 + + + + + +
     *
+ +
52 + + + + + +
     * Requirements:
+ +
53 + + + + + +
     *
+ +
54 + + + + + +
     * - `spender` cannot be the zero address.
+ +
55 + + + + + +
     * - `deadline` must be a timestamp in the future.
+ +
56 + + + + + +
     * - `v`, `r` and `s` must be a valid `secp256k1` signature from `owner`
+ +
57 + + + + + +
     * over the EIP712-formatted function arguments.
+ +
58 + + + + + +
     * - the signature must use ``owner``'s current nonce (see {nonces}).
+ +
59 + + + + + +
     *
+ +
60 + + + + + +
     * For more information on the signature format, see the
+ +
61 + + + + + +
     * https://eips.ethereum.org/EIPS/eip-2612#specification[relevant EIP
+ +
62 + + + + + +
     * section].
+ +
63 + + + + + +
     *
+ +
64 + + + + + +
     * CAUTION: See Security Considerations above.
+ +
65 + + + + + +
     */
+ +
66 + + + + + +
    function permit(
+ +
67 + + + + + +
        address owner,
+ +
68 + + + + + +
        address spender,
+ +
69 + + + + + +
        uint256 value,
+ +
70 + + + + + +
        uint256 deadline,
+ +
71 + + + + + +
        uint8 v,
+ +
72 + + + + + +
        bytes32 r,
+ +
73 + + + + + +
        bytes32 s
+ +
74 + + + + + +
    ) external;
+ +
75 + + + + + +

+                            
+                        
76 + + + + + +
    /**
+ +
77 + + + + + +
     * @dev Returns the current nonce for `owner`. This value must be
+ +
78 + + + + + +
     * included whenever a signature is generated for {permit}.
+ +
79 + + + + + +
     *
+ +
80 + + + + + +
     * Every successful call to {permit} increases ``owner``'s nonce by one. This
+ +
81 + + + + + +
     * prevents a signature from being used multiple times.
+ +
82 + + + + + +
     */
+ +
83 + + + + + +
    function nonces(address owner) external view returns (uint256);
+ +
84 + + + + + +

+                            
+                        
85 + + + + + +
    /**
+ +
86 + + + + + +
     * @dev Returns the domain separator used in the encoding of the signature for {permit}, as defined by {EIP712}.
+ +
87 + + + + + +
     */
+ +
88 + + + + + +
    // solhint-disable-next-line func-name-mixedcase
+ +
89 + + + + + +
    function DOMAIN_SEPARATOR() external view returns (bytes32);
+ +
90 + + + + + +
}
+ +
91 + + + + + +

+                            
+                        
+
+
+ + + + + + + + + + +
+
+
+ + + + + + +
Lines covered: 0 / 4 (0.0%)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
1 + + + + + +
// SPDX-License-Identifier: MIT
+ +
2 + + + + + +
// OpenZeppelin Contracts (last updated v4.9.3) (token/ERC20/utils/SafeERC20.sol)
+ +
3 + + + + + +

+                            
+                        
4 + + + + + +
pragma solidity ^0.8.0;
+ +
5 + + + + + +

+                            
+                        
6 + + + + + +
import "../IERC20.sol";
+ +
7 + + + + + +
import "../extensions/IERC20Permit.sol";
+ +
8 + + + + + +
import "../../../utils/Address.sol";
+ +
9 + + + + + +

+                            
+                        
10 + + + + + +
/**
+ +
11 + + + + + +
 * @title SafeERC20
+ +
12 + + + + + +
 * @dev Wrappers around ERC20 operations that throw on failure (when the token
+ +
13 + + + + + +
 * contract returns false). Tokens that return no value (and instead revert or
+ +
14 + + + + + +
 * throw on failure) are also supported, non-reverting calls are assumed to be
+ +
15 + + + + + +
 * successful.
+ +
16 + + + + + +
 * To use this library you can add a `using SafeERC20 for IERC20;` statement to your contract,
+ +
17 + + + + + +
 * which allows you to call the safe operations as `token.safeTransfer(...)`, etc.
+ +
18 + + + + + +
 */
+ +
19 + + + + + +
library SafeERC20 {
+ +
20 + + + + + +
    using Address for address;
+ +
21 + + + + + +

+                            
+                        
22 + + + + + +
    /**
+ +
23 + + + + + +
     * @dev Transfer `value` amount of `token` from the calling contract to `to`. If `token` returns no value,
+ +
24 + + + + + +
     * non-reverting calls are assumed to be successful.
+ +
25 + + + + + +
     */
+ +
26 + + + + + +
    function safeTransfer(IERC20 token, address to, uint256 value) internal {
+ +
27 + + + + + +
        _callOptionalReturn(token, abi.encodeWithSelector(token.transfer.selector, to, value));
+ +
28 + + + + + +
    }
+ +
29 + + + + + +

+                            
+                        
30 + + + + + +
    /**
+ +
31 + + + + + +
     * @dev Transfer `value` amount of `token` from `from` to `to`, spending the approval given by `from` to the
+ +
32 + + + + + +
     * calling contract. If `token` returns no value, non-reverting calls are assumed to be successful.
+ +
33 + + + + + +
     */
+ +
34 + + + + + +
    function safeTransferFrom(IERC20 token, address from, address to, uint256 value) internal {
+ +
35 + + + + + +
        _callOptionalReturn(token, abi.encodeWithSelector(token.transferFrom.selector, from, to, value));
+ +
36 + + + + + +
    }
+ +
37 + + + + + +

+                            
+                        
38 + + + + + +
    /**
+ +
39 + + + + + +
     * @dev Deprecated. This function has issues similar to the ones found in
+ +
40 + + + + + +
     * {IERC20-approve}, and its usage is discouraged.
+ +
41 + + + + + +
     *
+ +
42 + + + + + +
     * Whenever possible, use {safeIncreaseAllowance} and
+ +
43 + + + + + +
     * {safeDecreaseAllowance} instead.
+ +
44 + + + + + +
     */
+ +
45 + + + + + +
    function safeApprove(IERC20 token, address spender, uint256 value) internal {
+ +
46 + + + + + +
        // safeApprove should only be called when setting an initial allowance,
+ +
47 + + + + + +
        // or when resetting it to zero. To increase and decrease it, use
+ +
48 + + + + + +
        // 'safeIncreaseAllowance' and 'safeDecreaseAllowance'
+ +
49 + + + + + +
        require(
+ +
50 + + + + + +
            (value == 0) || (token.allowance(address(this), spender) == 0),
+ +
51 + + + + + +
            "SafeERC20: approve from non-zero to non-zero allowance"
+ +
52 + + + + + +
        );
+ +
53 + + + + + +
        _callOptionalReturn(token, abi.encodeWithSelector(token.approve.selector, spender, value));
+ +
54 + + + + + +
    }
+ +
55 + + + + + +

+                            
+                        
56 + + + + + +
    /**
+ +
57 + + + + + +
     * @dev Increase the calling contract's allowance toward `spender` by `value`. If `token` returns no value,
+ +
58 + + + + + +
     * non-reverting calls are assumed to be successful.
+ +
59 + + + + + +
     */
+ +
60 + + + + + +
    function safeIncreaseAllowance(IERC20 token, address spender, uint256 value) internal {
+ +
61 + + + + + +
        uint256 oldAllowance = token.allowance(address(this), spender);
+ +
62 + + + + + +
        _callOptionalReturn(token, abi.encodeWithSelector(token.approve.selector, spender, oldAllowance + value));
+ +
63 + + + + + +
    }
+ +
64 + + + + + +

+                            
+                        
65 + + + + + +
    /**
+ +
66 + + + + + +
     * @dev Decrease the calling contract's allowance toward `spender` by `value`. If `token` returns no value,
+ +
67 + + + + + +
     * non-reverting calls are assumed to be successful.
+ +
68 + + + + + +
     */
+ +
69 + + + + + +
    function safeDecreaseAllowance(IERC20 token, address spender, uint256 value) internal {
+ +
70 + + + + + +
        unchecked {
+ +
71 + + + + + +
            uint256 oldAllowance = token.allowance(address(this), spender);
+ +
72 + + + + + +
            require(oldAllowance >= value, "SafeERC20: decreased allowance below zero");
+ +
73 + + + + + +
            _callOptionalReturn(token, abi.encodeWithSelector(token.approve.selector, spender, oldAllowance - value));
+ +
74 + + + + + +
        }
+ +
75 + + + + + +
    }
+ +
76 + + + + + +

+                            
+                        
77 + + + + + +
    /**
+ +
78 + + + + + +
     * @dev Set the calling contract's allowance toward `spender` to `value`. If `token` returns no value,
+ +
79 + + + + + +
     * non-reverting calls are assumed to be successful. Meant to be used with tokens that require the approval
+ +
80 + + + + + +
     * to be set to zero before setting it to a non-zero value, such as USDT.
+ +
81 + + + + + +
     */
+ +
82 + + + + + +
    function forceApprove(IERC20 token, address spender, uint256 value) internal {
+ +
83 + + + + + +
        bytes memory approvalCall = abi.encodeWithSelector(token.approve.selector, spender, value);
+ +
84 + + + + + +

+                            
+                        
85 + + + + + +
        if (!_callOptionalReturnBool(token, approvalCall)) {
+ +
86 + + + + + +
            _callOptionalReturn(token, abi.encodeWithSelector(token.approve.selector, spender, 0));
+ +
87 + + + + + +
            _callOptionalReturn(token, approvalCall);
+ +
88 + + + + + +
        }
+ +
89 + + + + + +
    }
+ +
90 + + + + + +

+                            
+                        
91 + + + + + +
    /**
+ +
92 + + + + + +
     * @dev Use a ERC-2612 signature to set the `owner` approval toward `spender` on `token`.
+ +
93 + + + + + +
     * Revert on invalid signature.
+ +
94 + + + + + +
     */
+ +
95 + + + + + +
    function safePermit(
+ +
96 + + + + + +
        IERC20Permit token,
+ +
97 + + + + + +
        address owner,
+ +
98 + + + + + +
        address spender,
+ +
99 + + + + + +
        uint256 value,
+ +
100 + + + + + +
        uint256 deadline,
+ +
101 + + + + + +
        uint8 v,
+ +
102 + + + + + +
        bytes32 r,
+ +
103 + + + + + +
        bytes32 s
+ +
104 + + + + + +
    ) internal {
+ +
105 + + + + + +
        uint256 nonceBefore = token.nonces(owner);
+ +
106 + + + + + +
        token.permit(owner, spender, value, deadline, v, r, s);
+ +
107 + + + + + +
        uint256 nonceAfter = token.nonces(owner);
+ +
108 + + + + + +
        require(nonceAfter == nonceBefore + 1, "SafeERC20: permit did not succeed");
+ +
109 + + + + + +
    }
+ +
110 + + + + + +

+                            
+                        
111 + + + + + +
    /**
+ +
112 + + + + + +
     * @dev Imitates a Solidity high-level call (i.e. a regular function call to a contract), relaxing the requirement
+ +
113 + + + + + +
     * on the return value: the return value is optional (but if data is returned, it must not be false).
+ +
114 + + + + + +
     * @param token The token targeted by the call.
+ +
115 + + + + + +
     * @param data The call data (encoded using abi.encode or one of its variants).
+ +
116 + + + + + +
     */
+ +
117 + + + + + +
    function _callOptionalReturn(IERC20 token, bytes memory data) private {
+ +
118 + + + + + +
        // We need to perform a low level call here, to bypass Solidity's return data size checking mechanism, since
+ +
119 + + + + + +
        // we're implementing it ourselves. We use {Address-functionCall} to perform this call, which verifies that
+ +
120 + + + + + +
        // the target address contains contract code and also asserts for success in the low-level call.
+ +
121 + + + + + +

+                            
+                        
122 + + + + + +
        bytes memory returndata = address(token).functionCall(data, "SafeERC20: low-level call failed");
+ +
123 + + + + + +
        require(returndata.length == 0 || abi.decode(returndata, (bool)), "SafeERC20: ERC20 operation did not succeed");
+ +
124 + + + + + +
    }
+ +
125 + + + + + +

+                            
+                        
126 + + + + + +
    /**
+ +
127 + + + + + +
     * @dev Imitates a Solidity high-level call (i.e. a regular function call to a contract), relaxing the requirement
+ +
128 + + + + + +
     * on the return value: the return value is optional (but if data is returned, it must not be false).
+ +
129 + + + + + +
     * @param token The token targeted by the call.
+ +
130 + + + + + +
     * @param data The call data (encoded using abi.encode or one of its variants).
+ +
131 + + + + + +
     *
+ +
132 + + + + + +
     * This is a variant of {_callOptionalReturn} that silents catches all reverts and returns a bool instead.
+ +
133 + + + + + +
     */
+ +
134 + + + + + +
    function _callOptionalReturnBool(IERC20 token, bytes memory data) private returns (bool) {
+ +
135 + + + + + +
        // We need to perform a low level call here, to bypass Solidity's return data size checking mechanism, since
+ +
136 + + + + + +
        // we're implementing it ourselves. We cannot use {Address-functionCall} here since this should return false
+ +
137 + + + + + +
        // and not revert is the subcall reverts.
+ +
138 + + + + + +

+                            
+                        
139 + + + + + +
        (bool success, bytes memory returndata) = address(token).call(data);
+ +
140 + + + + + +
        return
+ +
141 + + + + + +
            success && (returndata.length == 0 || abi.decode(returndata, (bool))) && Address.isContract(address(token));
+ +
142 + + + + + +
    }
+ +
143 + + + + + +
}
+ +
144 + + + + + +

+                            
+                        
+
+
+ + + + + + + + + + +
+
+
+ + + + + + +
Lines covered: 0 / 18 (0.0%)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
1 + + + + + +
// SPDX-License-Identifier: MIT
+ +
2 + + + + + +
// OpenZeppelin Contracts (last updated v4.9.0) (utils/Address.sol)
+ +
3 + + + + + +

+                            
+                        
4 + + + + + +
pragma solidity ^0.8.1;
+ +
5 + + + + + +

+                            
+                        
6 + + + + + +
/**
+ +
7 + + + + + +
 * @dev Collection of functions related to the address type
+ +
8 + + + + + +
 */
+ +
9 + + + + + +
library Address {
+ +
10 + + + + + +
    /**
+ +
11 + + + + + +
     * @dev Returns true if `account` is a contract.
+ +
12 + + + + + +
     *
+ +
13 + + + + + +
     * [IMPORTANT]
+ +
14 + + + + + +
     * ====
+ +
15 + + + + + +
     * It is unsafe to assume that an address for which this function returns
+ +
16 + + + + + +
     * false is an externally-owned account (EOA) and not a contract.
+ +
17 + + + + + +
     *
+ +
18 + + + + + +
     * Among others, `isContract` will return false for the following
+ +
19 + + + + + +
     * types of addresses:
+ +
20 + + + + + +
     *
+ +
21 + + + + + +
     *  - an externally-owned account
+ +
22 + + + + + +
     *  - a contract in construction
+ +
23 + + + + + +
     *  - an address where a contract will be created
+ +
24 + + + + + +
     *  - an address where a contract lived, but was destroyed
+ +
25 + + + + + +
     *
+ +
26 + + + + + +
     * Furthermore, `isContract` will also return true if the target contract within
+ +
27 + + + + + +
     * the same transaction is already scheduled for destruction by `SELFDESTRUCT`,
+ +
28 + + + + + +
     * which only has an effect at the end of a transaction.
+ +
29 + + + + + +
     * ====
+ +
30 + + + + + +
     *
+ +
31 + + + + + +
     * [IMPORTANT]
+ +
32 + + + + + +
     * ====
+ +
33 + + + + + +
     * You shouldn't rely on `isContract` to protect against flash loan attacks!
+ +
34 + + + + + +
     *
+ +
35 + + + + + +
     * Preventing calls from contracts is highly discouraged. It breaks composability, breaks support for smart wallets
+ +
36 + + + + + +
     * like Gnosis Safe, and does not provide security since it can be circumvented by calling from a contract
+ +
37 + + + + + +
     * constructor.
+ +
38 + + + + + +
     * ====
+ +
39 + + + + + +
     */
+ +
40 + + + + + +
    function isContract(address account) internal view returns (bool) {
+ +
41 + + + + + +
        // This method relies on extcodesize/address.code.length, which returns 0
+ +
42 + + + + + +
        // for contracts in construction, since the code is only stored at the end
+ +
43 + + + + + +
        // of the constructor execution.
+ +
44 + + + + + +

+                            
+                        
45 + + + + + +
        return account.code.length > 0;
+ +
46 + + + + + +
    }
+ +
47 + + + + + +

+                            
+                        
48 + + + + + +
    /**
+ +
49 + + + + + +
     * @dev Replacement for Solidity's `transfer`: sends `amount` wei to
+ +
50 + + + + + +
     * `recipient`, forwarding all available gas and reverting on errors.
+ +
51 + + + + + +
     *
+ +
52 + + + + + +
     * https://eips.ethereum.org/EIPS/eip-1884[EIP1884] increases the gas cost
+ +
53 + + + + + +
     * of certain opcodes, possibly making contracts go over the 2300 gas limit
+ +
54 + + + + + +
     * imposed by `transfer`, making them unable to receive funds via
+ +
55 + + + + + +
     * `transfer`. {sendValue} removes this limitation.
+ +
56 + + + + + +
     *
+ +
57 + + + + + +
     * https://consensys.net/diligence/blog/2019/09/stop-using-soliditys-transfer-now/[Learn more].
+ +
58 + + + + + +
     *
+ +
59 + + + + + +
     * IMPORTANT: because control is transferred to `recipient`, care must be
+ +
60 + + + + + +
     * taken to not create reentrancy vulnerabilities. Consider using
+ +
61 + + + + + +
     * {ReentrancyGuard} or the
+ +
62 + + + + + +
     * https://solidity.readthedocs.io/en/v0.8.0/security-considerations.html#use-the-checks-effects-interactions-pattern[checks-effects-interactions pattern].
+ +
63 + + + + + +
     */
+ +
64 + + + + + +
    function sendValue(address payable recipient, uint256 amount) internal {
+ +
65 + + + + + +
        require(address(this).balance >= amount, "Address: insufficient balance");
+ +
66 + + + + + +

+                            
+                        
67 + + + + + +
        (bool success, ) = recipient.call{value: amount}("");
+ +
68 + + + + + +
        require(success, "Address: unable to send value, recipient may have reverted");
+ +
69 + + + + + +
    }
+ +
70 + + + + + +

+                            
+                        
71 + + + + + +
    /**
+ +
72 + + + + + +
     * @dev Performs a Solidity function call using a low level `call`. A
+ +
73 + + + + + +
     * plain `call` is an unsafe replacement for a function call: use this
+ +
74 + + + + + +
     * function instead.
+ +
75 + + + + + +
     *
+ +
76 + + + + + +
     * If `target` reverts with a revert reason, it is bubbled up by this
+ +
77 + + + + + +
     * function (like regular Solidity function calls).
+ +
78 + + + + + +
     *
+ +
79 + + + + + +
     * Returns the raw returned data. To convert to the expected return value,
+ +
80 + + + + + +
     * use https://solidity.readthedocs.io/en/latest/units-and-global-variables.html?highlight=abi.decode#abi-encoding-and-decoding-functions[`abi.decode`].
+ +
81 + + + + + +
     *
+ +
82 + + + + + +
     * Requirements:
+ +
83 + + + + + +
     *
+ +
84 + + + + + +
     * - `target` must be a contract.
+ +
85 + + + + + +
     * - calling `target` with `data` must not revert.
+ +
86 + + + + + +
     *
+ +
87 + + + + + +
     * _Available since v3.1._
+ +
88 + + + + + +
     */
+ +
89 + + + + + +
    function functionCall(address target, bytes memory data) internal returns (bytes memory) {
+ +
90 + + + + + +
        return functionCallWithValue(target, data, 0, "Address: low-level call failed");
+ +
91 + + + + + +
    }
+ +
92 + + + + + +

+                            
+                        
93 + + + + + +
    /**
+ +
94 + + + + + +
     * @dev Same as {xref-Address-functionCall-address-bytes-}[`functionCall`], but with
+ +
95 + + + + + +
     * `errorMessage` as a fallback revert reason when `target` reverts.
+ +
96 + + + + + +
     *
+ +
97 + + + + + +
     * _Available since v3.1._
+ +
98 + + + + + +
     */
+ +
99 + + + + + +
    function functionCall(
+ +
100 + + + + + +
        address target,
+ +
101 + + + + + +
        bytes memory data,
+ +
102 + + + + + +
        string memory errorMessage
+ +
103 + + + + + +
    ) internal returns (bytes memory) {
+ +
104 + + + + + +
        return functionCallWithValue(target, data, 0, errorMessage);
+ +
105 + + + + + +
    }
+ +
106 + + + + + +

+                            
+                        
107 + + + + + +
    /**
+ +
108 + + + + + +
     * @dev Same as {xref-Address-functionCall-address-bytes-}[`functionCall`],
+ +
109 + + + + + +
     * but also transferring `value` wei to `target`.
+ +
110 + + + + + +
     *
+ +
111 + + + + + +
     * Requirements:
+ +
112 + + + + + +
     *
+ +
113 + + + + + +
     * - the calling contract must have an ETH balance of at least `value`.
+ +
114 + + + + + +
     * - the called Solidity function must be `payable`.
+ +
115 + + + + + +
     *
+ +
116 + + + + + +
     * _Available since v3.1._
+ +
117 + + + + + +
     */
+ +
118 + + + + + +
    function functionCallWithValue(address target, bytes memory data, uint256 value) internal returns (bytes memory) {
+ +
119 + + + + + +
        return functionCallWithValue(target, data, value, "Address: low-level call with value failed");
+ +
120 + + + + + +
    }
+ +
121 + + + + + +

+                            
+                        
122 + + + + + +
    /**
+ +
123 + + + + + +
     * @dev Same as {xref-Address-functionCallWithValue-address-bytes-uint256-}[`functionCallWithValue`], but
+ +
124 + + + + + +
     * with `errorMessage` as a fallback revert reason when `target` reverts.
+ +
125 + + + + + +
     *
+ +
126 + + + + + +
     * _Available since v3.1._
+ +
127 + + + + + +
     */
+ +
128 + + + + + +
    function functionCallWithValue(
+ +
129 + + + + + +
        address target,
+ +
130 + + + + + +
        bytes memory data,
+ +
131 + + + + + +
        uint256 value,
+ +
132 + + + + + +
        string memory errorMessage
+ +
133 + + + + + +
    ) internal returns (bytes memory) {
+ +
134 + + + + + +
        require(address(this).balance >= value, "Address: insufficient balance for call");
+ +
135 + + + + + +
        (bool success, bytes memory returndata) = target.call{value: value}(data);
+ +
136 + + + + + +
        return verifyCallResultFromTarget(target, success, returndata, errorMessage);
+ +
137 + + + + + +
    }
+ +
138 + + + + + +

+                            
+                        
139 + + + + + +
    /**
+ +
140 + + + + + +
     * @dev Same as {xref-Address-functionCall-address-bytes-}[`functionCall`],
+ +
141 + + + + + +
     * but performing a static call.
+ +
142 + + + + + +
     *
+ +
143 + + + + + +
     * _Available since v3.3._
+ +
144 + + + + + +
     */
+ +
145 + + + + + +
    function functionStaticCall(address target, bytes memory data) internal view returns (bytes memory) {
+ +
146 + + + + + +
        return functionStaticCall(target, data, "Address: low-level static call failed");
+ +
147 + + + + + +
    }
+ +
148 + + + + + +

+                            
+                        
149 + + + + + +
    /**
+ +
150 + + + + + +
     * @dev Same as {xref-Address-functionCall-address-bytes-string-}[`functionCall`],
+ +
151 + + + + + +
     * but performing a static call.
+ +
152 + + + + + +
     *
+ +
153 + + + + + +
     * _Available since v3.3._
+ +
154 + + + + + +
     */
+ +
155 + + + + + +
    function functionStaticCall(
+ +
156 + + + + + +
        address target,
+ +
157 + + + + + +
        bytes memory data,
+ +
158 + + + + + +
        string memory errorMessage
+ +
159 + + + + + +
    ) internal view returns (bytes memory) {
+ +
160 + + + + + +
        (bool success, bytes memory returndata) = target.staticcall(data);
+ +
161 + + + + + +
        return verifyCallResultFromTarget(target, success, returndata, errorMessage);
+ +
162 + + + + + +
    }
+ +
163 + + + + + +

+                            
+                        
164 + + + + + +
    /**
+ +
165 + + + + + +
     * @dev Same as {xref-Address-functionCall-address-bytes-}[`functionCall`],
+ +
166 + + + + + +
     * but performing a delegate call.
+ +
167 + + + + + +
     *
+ +
168 + + + + + +
     * _Available since v3.4._
+ +
169 + + + + + +
     */
+ +
170 + + + + + +
    function functionDelegateCall(address target, bytes memory data) internal returns (bytes memory) {
+ +
171 + + + + + +
        return functionDelegateCall(target, data, "Address: low-level delegate call failed");
+ +
172 + + + + + +
    }
+ +
173 + + + + + +

+                            
+                        
174 + + + + + +
    /**
+ +
175 + + + + + +
     * @dev Same as {xref-Address-functionCall-address-bytes-string-}[`functionCall`],
+ +
176 + + + + + +
     * but performing a delegate call.
+ +
177 + + + + + +
     *
+ +
178 + + + + + +
     * _Available since v3.4._
+ +
179 + + + + + +
     */
+ +
180 + + + + + +
    function functionDelegateCall(
+ +
181 + + + + + +
        address target,
+ +
182 + + + + + +
        bytes memory data,
+ +
183 + + + + + +
        string memory errorMessage
+ +
184 + + + + + +
    ) internal returns (bytes memory) {
+ +
185 + + + + + +
        (bool success, bytes memory returndata) = target.delegatecall(data);
+ +
186 + + + + + +
        return verifyCallResultFromTarget(target, success, returndata, errorMessage);
+ +
187 + + + + + +
    }
+ +
188 + + + + + +

+                            
+                        
189 + + + + + +
    /**
+ +
190 + + + + + +
     * @dev Tool to verify that a low level call to smart-contract was successful, and revert (either by bubbling
+ +
191 + + + + + +
     * the revert reason or using the provided one) in case of unsuccessful call or if target was not a contract.
+ +
192 + + + + + +
     *
+ +
193 + + + + + +
     * _Available since v4.8._
+ +
194 + + + + + +
     */
+ +
195 + + + + + +
    function verifyCallResultFromTarget(
+ +
196 + + + + + +
        address target,
+ +
197 + + + + + +
        bool success,
+ +
198 + + + + + +
        bytes memory returndata,
+ +
199 + + + + + +
        string memory errorMessage
+ +
200 + + + + + +
    ) internal view returns (bytes memory) {
+ +
201 + + + + + +
        if (success) {
+ +
202 + + + + + +
            if (returndata.length == 0) {
+ +
203 + + + + + +
                // only check isContract if the call was successful and the return data is empty
+ +
204 + + + + + +
                // otherwise we already know that it was a contract
+ +
205 + + + + + +
                require(isContract(target), "Address: call to non-contract");
+ +
206 + + + + + +
            }
+ +
207 + + + + + +
            return returndata;
+ +
208 + + + + + +
        } else {
+ +
209 + + + + + +
            _revert(returndata, errorMessage);
+ +
210 + + + + + +
        }
+ +
211 + + + + + +
    }
+ +
212 + + + + + +

+                            
+                        
213 + + + + + +
    /**
+ +
214 + + + + + +
     * @dev Tool to verify that a low level call was successful, and revert if it wasn't, either by bubbling the
+ +
215 + + + + + +
     * revert reason or using the provided one.
+ +
216 + + + + + +
     *
+ +
217 + + + + + +
     * _Available since v4.3._
+ +
218 + + + + + +
     */
+ +
219 + + + + + +
    function verifyCallResult(
+ +
220 + + + + + +
        bool success,
+ +
221 + + + + + +
        bytes memory returndata,
+ +
222 + + + + + +
        string memory errorMessage
+ +
223 + + + + + +
    ) internal pure returns (bytes memory) {
+ +
224 + + + + + +
        if (success) {
+ +
225 + + + + + +
            return returndata;
+ +
226 + + + + + +
        } else {
+ +
227 + + + + + +
            _revert(returndata, errorMessage);
+ +
228 + + + + + +
        }
+ +
229 + + + + + +
    }
+ +
230 + + + + + +

+                            
+                        
231 + + + + + +
    function _revert(bytes memory returndata, string memory errorMessage) private pure {
+ +
232 + + + + + +
        // Look for revert reason and bubble it up if present
+ +
233 + + + + + +
        if (returndata.length > 0) {
+ +
234 + + + + + +
            // The easiest way to bubble the revert reason is using memory via assembly
+ +
235 + + + + + +
            /// @solidity memory-safe-assembly
+ +
236 + + + + + +
            assembly {
+ +
237 + + + + + +
                let returndata_size := mload(returndata)
+ +
238 + + + + + +
                revert(add(32, returndata), returndata_size)
+ +
239 + + + + + +
            }
+ +
240 + + + + + +
        } else {
+ +
241 + + + + + +
            revert(errorMessage);
+ +
242 + + + + + +
        }
+ +
243 + + + + + +
    }
+ +
244 + + + + + +
}
+ +
245 + + + + + +

+                            
+                        
+
+
+ + + + + + + + + + +
+
+
+ + + + + + +
Lines covered: 0 / 1 (0.0%)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
1 + + + + + +
// SPDX-License-Identifier: MIT
+ +
2 + + + + + +
// OpenZeppelin Contracts (last updated v4.9.4) (utils/Context.sol)
+ +
3 + + + + + +

+                            
+                        
4 + + + + + +
pragma solidity ^0.8.0;
+ +
5 + + + + + +

+                            
+                        
6 + + + + + +
/**
+ +
7 + + + + + +
 * @dev Provides information about the current execution context, including the
+ +
8 + + + + + +
 * sender of the transaction and its data. While these are generally available
+ +
9 + + + + + +
 * via msg.sender and msg.data, they should not be accessed in such a direct
+ +
10 + + + + + +
 * manner, since when dealing with meta-transactions the account sending and
+ +
11 + + + + + +
 * paying for execution may not be the actual sender (as far as an application
+ +
12 + + + + + +
 * is concerned).
+ +
13 + + + + + +
 *
+ +
14 + + + + + +
 * This contract is only required for intermediate, library-like contracts.
+ +
15 + + + + + +
 */
+ +
16 + + + + + +
abstract contract Context {
+ +
17 + + + + + +
    function _msgSender() internal view virtual returns (address) {
+ +
18 + + + + + +
        return msg.sender;
+ +
19 + + + + + +
    }
+ +
20 + + + + + +

+                            
+                        
21 + + + + + +
    function _msgData() internal view virtual returns (bytes calldata) {
+ +
22 + + + + + +
        return msg.data;
+ +
23 + + + + + +
    }
+ +
24 + + + + + +

+                            
+                        
25 + + + + + +
    function _contextSuffixLength() internal view virtual returns (uint256) {
+ +
26 + + + + + +
        return 0;
+ +
27 + + + + + +
    }
+ +
28 + + + + + +
}
+ +
29 + + + + + +

+                            
+                        
+
+
+ + + + + + + + + + +
+
+
+ + + + + + +
Lines covered: 27 / 45 (60.0%)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
1 + + + + + +
// SPDX-License-Identifier: MIT
+ +
2 + + + + + +
// OpenZeppelin Contracts (last updated v4.9.0) (utils/structs/EnumerableSet.sol)
+ +
3 + + + + + +
// This file was procedurally generated from scripts/generate/templates/EnumerableSet.js.
+ +
4 + + + + + +

+                            
+                        
5 + + + + + +
pragma solidity ^0.8.0;
+ +
6 + + + + + +

+                            
+                        
7 + + + + + +
/**
+ +
8 + + + + + +
 * @dev Library for managing
+ +
9 + + + + + +
 * https://en.wikipedia.org/wiki/Set_(abstract_data_type)[sets] of primitive
+ +
10 + + + + + +
 * types.
+ +
11 + + + + + +
 *
+ +
12 + + + + + +
 * Sets have the following properties:
+ +
13 + + + + + +
 *
+ +
14 + + + + + +
 * - Elements are added, removed, and checked for existence in constant time
+ +
15 + + + + + +
 * (O(1)).
+ +
16 + + + + + +
 * - Elements are enumerated in O(n). No guarantees are made on the ordering.
+ +
17 + + + + + +
 *
+ +
18 + + + + + +
 * ```solidity
+ +
19 + + + + + +
 * contract Example {
+ +
20 + + + + + +
 *     // Add the library methods
+ +
21 + + + + + +
 *     using EnumerableSet for EnumerableSet.AddressSet;
+ +
22 + + + + + +
 *
+ +
23 + + + + + +
 *     // Declare a set state variable
+ +
24 + + + + + +
 *     EnumerableSet.AddressSet private mySet;
+ +
25 + + + + + +
 * }
+ +
26 + + + + + +
 * ```
+ +
27 + + + + + +
 *
+ +
28 + + + + + +
 * As of v3.3.0, sets of type `bytes32` (`Bytes32Set`), `address` (`AddressSet`)
+ +
29 + + + + + +
 * and `uint256` (`UintSet`) are supported.
+ +
30 + + + + + +
 *
+ +
31 + + + + + +
 * [WARNING]
+ +
32 + + + + + +
 * ====
+ +
33 + + + + + +
 * Trying to delete such a structure from storage will likely result in data corruption, rendering the structure
+ +
34 + + + + + +
 * unusable.
+ +
35 + + + + + +
 * See https://github.com/ethereum/solidity/pull/11843[ethereum/solidity#11843] for more info.
+ +
36 + + + + + +
 *
+ +
37 + + + + + +
 * In order to clean an EnumerableSet, you can either remove all elements one by one or create a fresh instance using an
+ +
38 + + + + + +
 * array of EnumerableSet.
+ +
39 + + + + + +
 * ====
+ +
40 + + + + + +
 */
+ +
41 + + + + + +
library EnumerableSet {
+ +
42 + + + + + +
    // To implement this library for multiple types with as little code
+ +
43 + + + + + +
    // repetition as possible, we write it in terms of a generic Set type with
+ +
44 + + + + + +
    // bytes32 values.
+ +
45 + + + + + +
    // The Set implementation uses private functions, and user-facing
+ +
46 + + + + + +
    // implementations (such as AddressSet) are just wrappers around the
+ +
47 + + + + + +
    // underlying Set.
+ +
48 + + + + + +
    // This means that we can only create new EnumerableSets for types that fit
+ +
49 + + + + + +
    // in bytes32.
+ +
50 + + + + + +

+                            
+                        
51 + + + + + +
    struct Set {
+ +
52 + + + + + +
        // Storage of set values
+ +
53 + + + + + +
        bytes32[] _values;
+ +
54 + + + + + +
        // Position of the value in the `values` array, plus 1 because index 0
+ +
55 + + + + + +
        // means a value is not in the set.
+ +
56 + + + + + +
        mapping(bytes32 => uint256) _indexes;
+ +
57 + + + + + +
    }
+ +
58 + + + + + +

+                            
+                        
59 + + + + + +
    /**
+ +
60 + + + + + +
     * @dev Add a value to a set. O(1).
+ +
61 + + + + + +
     *
+ +
62 + + + + + +
     * Returns true if the value was added to the set, that is if it was not
+ +
63 + + + + + +
     * already present.
+ +
64 + + + + + +
     */
+ +
65 + +
+ +
+ +
+ +
+ +
    function _add(Set storage set, bytes32 value) private returns (bool) {
+ +
66 + + + + + +
        if (!_contains(set, value)) {
+ +
67 + +
+ +
+ + + +
            set._values.push(value);
+ +
68 + + + + + +
            // The value is stored at length-1, but we add 1 to all indexes
+ +
69 + + + + + +
            // and use 0 as a sentinel value
+ +
70 + +
+ +
+ + + +
            set._indexes[value] = set._values.length;
+ +
71 + +
+ +
+ + + +
            return true;
+ +
72 + + + + + +
        } else {
+ +
73 + +
+ +
+ +
+ +
+ +
            return false;
+ +
74 + + + + + +
        }
+ +
75 + + + + + +
    }
+ +
76 + + + + + +

+                            
+                        
77 + + + + + +
    /**
+ +
78 + + + + + +
     * @dev Removes a value from a set. O(1).
+ +
79 + + + + + +
     *
+ +
80 + + + + + +
     * Returns true if the value was removed from the set, that is if it was
+ +
81 + + + + + +
     * present.
+ +
82 + + + + + +
     */
+ +
83 + +
+ +
+ +
+ +
+ +
    function _remove(Set storage set, bytes32 value) private returns (bool) {
+ +
84 + + + + + +
        // We read and store the value's index to prevent multiple reads from the same storage slot
+ +
85 + +
+ +
+ +
+ +
+ +
        uint256 valueIndex = set._indexes[value];
+ +
86 + + + + + +

+                            
+                        
87 + +
+ +
+ +
+ +
+ +
        if (valueIndex != 0) {
+ +
88 + + + + + +
            // Equivalent to contains(set, value)
+ +
89 + + + + + +
            // To delete an element from the _values array in O(1), we swap the element to delete with the last one in
+ +
90 + + + + + +
            // the array, and then remove the last element (sometimes called as 'swap and pop').
+ +
91 + + + + + +
            // This modifies the order of the array, as noted in {at}.
+ +
92 + + + + + +

+                            
+                        
93 + +
+ +
+ + + +
            uint256 toDeleteIndex = valueIndex - 1;
+ +
94 + +
+ +
+ + + +
            uint256 lastIndex = set._values.length - 1;
+ +
95 + + + + + +

+                            
+                        
96 + +
+ +
+ + + +
            if (lastIndex != toDeleteIndex) {
+ +
97 + +
+ +
+ + + +
                bytes32 lastValue = set._values[lastIndex];
+ +
98 + + + + + +

+                            
+                        
99 + + + + + +
                // Move the last value to the index where the value to delete is
+ +
100 + +
+ +
+ + + +
                set._values[toDeleteIndex] = lastValue;
+ +
101 + + + + + +
                // Update the index for the moved value
+ +
102 + +
+ +
+ + + +
                set._indexes[lastValue] = valueIndex; // Replace lastValue's index to valueIndex
+ +
103 + + + + + +
            }
+ +
104 + + + + + +

+                            
+                        
105 + + + + + +
            // Delete the slot where the moved value was stored
+ +
106 + +
+ +
+ + + +
            set._values.pop();
+ +
107 + + + + + +

+                            
+                        
108 + + + + + +
            // Delete the index for the deleted slot
+ +
109 + +
+ +
+ + + +
            delete set._indexes[value];
+ +
110 + + + + + +

+                            
+                        
111 + +
+ +
+ + + +
            return true;
+ +
112 + + + + + +
        } else {
+ +
113 + +
+ +
+ +
+ +
+ +
            return false;
+ +
114 + + + + + +
        }
+ +
115 + + + + + +
    }
+ +
116 + + + + + +

+                            
+                        
117 + + + + + +
    /**
+ +
118 + + + + + +
     * @dev Returns true if the value is in the set. O(1).
+ +
119 + + + + + +
     */
+ +
120 + + + + + +
    function _contains(Set storage set, bytes32 value) private view returns (bool) {
+ +
121 + +
+ +
+ +
+ +
+ +
        return set._indexes[value] != 0;
+ +
122 + + + + + +
    }
+ +
123 + + + + + +

+                            
+                        
124 + + + + + +
    /**
+ +
125 + + + + + +
     * @dev Returns the number of values on the set. O(1).
+ +
126 + + + + + +
     */
+ +
127 + + + + + +
    function _length(Set storage set) private view returns (uint256) {
+ +
128 + + + + + +
        return set._values.length;
+ +
129 + + + + + +
    }
+ +
130 + + + + + +

+                            
+                        
131 + + + + + +
    /**
+ +
132 + + + + + +
     * @dev Returns the value stored at position `index` in the set. O(1).
+ +
133 + + + + + +
     *
+ +
134 + + + + + +
     * Note that there are no guarantees on the ordering of values inside the
+ +
135 + + + + + +
     * array, and it may change when more values are added or removed.
+ +
136 + + + + + +
     *
+ +
137 + + + + + +
     * Requirements:
+ +
138 + + + + + +
     *
+ +
139 + + + + + +
     * - `index` must be strictly less than {length}.
+ +
140 + + + + + +
     */
+ +
141 + + + + + +
    function _at(Set storage set, uint256 index) private view returns (bytes32) {
+ +
142 + + + + + +
        return set._values[index];
+ +
143 + + + + + +
    }
+ +
144 + + + + + +

+                            
+                        
145 + + + + + +
    /**
+ +
146 + + + + + +
     * @dev Return the entire set in an array
+ +
147 + + + + + +
     *
+ +
148 + + + + + +
     * WARNING: This operation will copy the entire storage to memory, which can be quite expensive. This is designed
+ +
149 + + + + + +
     * to mostly be used by view accessors that are queried without any gas fees. Developers should keep in mind that
+ +
150 + + + + + +
     * this function has an unbounded cost, and using it as part of a state-changing function may render the function
+ +
151 + + + + + +
     * uncallable if the set grows to a point where copying to memory consumes too much gas to fit in a block.
+ +
152 + + + + + +
     */
+ +
153 + + + + + +
    function _values(Set storage set) private view returns (bytes32[] memory) {
+ +
154 + + + + + +
        return set._values;
+ +
155 + + + + + +
    }
+ +
156 + + + + + +

+                            
+                        
157 + + + + + +
    // Bytes32Set
+ +
158 + + + + + +

+                            
+                        
159 + + + + + +
    struct Bytes32Set {
+ +
160 + + + + + +
        Set _inner;
+ +
161 + + + + + +
    }
+ +
162 + + + + + +

+                            
+                        
163 + + + + + +
    /**
+ +
164 + + + + + +
     * @dev Add a value to a set. O(1).
+ +
165 + + + + + +
     *
+ +
166 + + + + + +
     * Returns true if the value was added to the set, that is if it was not
+ +
167 + + + + + +
     * already present.
+ +
168 + + + + + +
     */
+ +
169 + +
+ +
+ +
+ +
+ +
    function add(Bytes32Set storage set, bytes32 value) internal returns (bool) {
+ +
170 + +
+ +
+ +
+ +
+ +
        return _add(set._inner, value);
+ +
171 + + + + + +
    }
+ +
172 + + + + + +

+                            
+                        
173 + + + + + +
    /**
+ +
174 + + + + + +
     * @dev Removes a value from a set. O(1).
+ +
175 + + + + + +
     *
+ +
176 + + + + + +
     * Returns true if the value was removed from the set, that is if it was
+ +
177 + + + + + +
     * present.
+ +
178 + + + + + +
     */
+ +
179 + +
+ +
+ +
+ +
+ +
    function remove(Bytes32Set storage set, bytes32 value) internal returns (bool) {
+ +
180 + +
+ +
+ +
+ +
+ +
        return _remove(set._inner, value);
+ +
181 + + + + + +
    }
+ +
182 + + + + + +

+                            
+                        
183 + + + + + +
    /**
+ +
184 + + + + + +
     * @dev Returns true if the value is in the set. O(1).
+ +
185 + + + + + +
     */
+ +
186 + + + + + +
    function contains(Bytes32Set storage set, bytes32 value) internal view returns (bool) {
+ +
187 + + + + + +
        return _contains(set._inner, value);
+ +
188 + + + + + +
    }
+ +
189 + + + + + +

+                            
+                        
190 + + + + + +
    /**
+ +
191 + + + + + +
     * @dev Returns the number of values in the set. O(1).
+ +
192 + + + + + +
     */
+ +
193 + + + + + +
    function length(Bytes32Set storage set) internal view returns (uint256) {
+ +
194 + + + + + +
        return _length(set._inner);
+ +
195 + + + + + +
    }
+ +
196 + + + + + +

+                            
+                        
197 + + + + + +
    /**
+ +
198 + + + + + +
     * @dev Returns the value stored at position `index` in the set. O(1).
+ +
199 + + + + + +
     *
+ +
200 + + + + + +
     * Note that there are no guarantees on the ordering of values inside the
+ +
201 + + + + + +
     * array, and it may change when more values are added or removed.
+ +
202 + + + + + +
     *
+ +
203 + + + + + +
     * Requirements:
+ +
204 + + + + + +
     *
+ +
205 + + + + + +
     * - `index` must be strictly less than {length}.
+ +
206 + + + + + +
     */
+ +
207 + + + + + +
    function at(Bytes32Set storage set, uint256 index) internal view returns (bytes32) {
+ +
208 + + + + + +
        return _at(set._inner, index);
+ +
209 + + + + + +
    }
+ +
210 + + + + + +

+                            
+                        
211 + + + + + +
    /**
+ +
212 + + + + + +
     * @dev Return the entire set in an array
+ +
213 + + + + + +
     *
+ +
214 + + + + + +
     * WARNING: This operation will copy the entire storage to memory, which can be quite expensive. This is designed
+ +
215 + + + + + +
     * to mostly be used by view accessors that are queried without any gas fees. Developers should keep in mind that
+ +
216 + + + + + +
     * this function has an unbounded cost, and using it as part of a state-changing function may render the function
+ +
217 + + + + + +
     * uncallable if the set grows to a point where copying to memory consumes too much gas to fit in a block.
+ +
218 + + + + + +
     */
+ +
219 + + + + + +
    function values(Bytes32Set storage set) internal view returns (bytes32[] memory) {
+ +
220 + + + + + +
        bytes32[] memory store = _values(set._inner);
+ +
221 + + + + + +
        bytes32[] memory result;
+ +
222 + + + + + +

+                            
+                        
223 + + + + + +
        /// @solidity memory-safe-assembly
+ +
224 + + + + + +
        assembly {
+ +
225 + + + + + +
            result := store
+ +
226 + + + + + +
        }
+ +
227 + + + + + +

+                            
+                        
228 + + + + + +
        return result;
+ +
229 + + + + + +
    }
+ +
230 + + + + + +

+                            
+                        
231 + + + + + +
    // AddressSet
+ +
232 + + + + + +

+                            
+                        
233 + + + + + +
    struct AddressSet {
+ +
234 + + + + + +
        Set _inner;
+ +
235 + + + + + +
    }
+ +
236 + + + + + +

+                            
+                        
237 + + + + + +
    /**
+ +
238 + + + + + +
     * @dev Add a value to a set. O(1).
+ +
239 + + + + + +
     *
+ +
240 + + + + + +
     * Returns true if the value was added to the set, that is if it was not
+ +
241 + + + + + +
     * already present.
+ +
242 + + + + + +
     */
+ +
243 + +
+ +
+ + + +
    function add(AddressSet storage set, address value) internal returns (bool) {
+ +
244 + +
+ +
+ + + +
        return _add(set._inner, bytes32(uint256(uint160(value))));
+ +
245 + + + + + +
    }
+ +
246 + + + + + +

+                            
+                        
247 + + + + + +
    /**
+ +
248 + + + + + +
     * @dev Removes a value from a set. O(1).
+ +
249 + + + + + +
     *
+ +
250 + + + + + +
     * Returns true if the value was removed from the set, that is if it was
+ +
251 + + + + + +
     * present.
+ +
252 + + + + + +
     */
+ +
253 + +
+ +
+ + + +
    function remove(AddressSet storage set, address value) internal returns (bool) {
+ +
254 + +
+ +
+ + + +
        return _remove(set._inner, bytes32(uint256(uint160(value))));
+ +
255 + + + + + +
    }
+ +
256 + + + + + +

+                            
+                        
257 + + + + + +
    /**
+ +
258 + + + + + +
     * @dev Returns true if the value is in the set. O(1).
+ +
259 + + + + + +
     */
+ +
260 + + + + + +
    function contains(AddressSet storage set, address value) internal view returns (bool) {
+ +
261 + + + + + +
        return _contains(set._inner, bytes32(uint256(uint160(value))));
+ +
262 + + + + + +
    }
+ +
263 + + + + + +

+                            
+                        
264 + + + + + +
    /**
+ +
265 + + + + + +
     * @dev Returns the number of values in the set. O(1).
+ +
266 + + + + + +
     */
+ +
267 + + + + + +
    function length(AddressSet storage set) internal view returns (uint256) {
+ +
268 + + + + + +
        return _length(set._inner);
+ +
269 + + + + + +
    }
+ +
270 + + + + + +

+                            
+                        
271 + + + + + +
    /**
+ +
272 + + + + + +
     * @dev Returns the value stored at position `index` in the set. O(1).
+ +
273 + + + + + +
     *
+ +
274 + + + + + +
     * Note that there are no guarantees on the ordering of values inside the
+ +
275 + + + + + +
     * array, and it may change when more values are added or removed.
+ +
276 + + + + + +
     *
+ +
277 + + + + + +
     * Requirements:
+ +
278 + + + + + +
     *
+ +
279 + + + + + +
     * - `index` must be strictly less than {length}.
+ +
280 + + + + + +
     */
+ +
281 + + + + + +
    function at(AddressSet storage set, uint256 index) internal view returns (address) {
+ +
282 + + + + + +
        return address(uint160(uint256(_at(set._inner, index))));
+ +
283 + + + + + +
    }
+ +
284 + + + + + +

+                            
+                        
285 + + + + + +
    /**
+ +
286 + + + + + +
     * @dev Return the entire set in an array
+ +
287 + + + + + +
     *
+ +
288 + + + + + +
     * WARNING: This operation will copy the entire storage to memory, which can be quite expensive. This is designed
+ +
289 + + + + + +
     * to mostly be used by view accessors that are queried without any gas fees. Developers should keep in mind that
+ +
290 + + + + + +
     * this function has an unbounded cost, and using it as part of a state-changing function may render the function
+ +
291 + + + + + +
     * uncallable if the set grows to a point where copying to memory consumes too much gas to fit in a block.
+ +
292 + + + + + +
     */
+ +
293 + + + + + +
    function values(AddressSet storage set) internal view returns (address[] memory) {
+ +
294 + + + + + +
        bytes32[] memory store = _values(set._inner);
+ +
295 + + + + + +
        address[] memory result;
+ +
296 + + + + + +

+                            
+                        
297 + + + + + +
        /// @solidity memory-safe-assembly
+ +
298 + + + + + +
        assembly {
+ +
299 + + + + + +
            result := store
+ +
300 + + + + + +
        }
+ +
301 + + + + + +

+                            
+                        
302 + + + + + +
        return result;
+ +
303 + + + + + +
    }
+ +
304 + + + + + +

+                            
+                        
305 + + + + + +
    // UintSet
+ +
306 + + + + + +

+                            
+                        
307 + + + + + +
    struct UintSet {
+ +
308 + + + + + +
        Set _inner;
+ +
309 + + + + + +
    }
+ +
310 + + + + + +

+                            
+                        
311 + + + + + +
    /**
+ +
312 + + + + + +
     * @dev Add a value to a set. O(1).
+ +
313 + + + + + +
     *
+ +
314 + + + + + +
     * Returns true if the value was added to the set, that is if it was not
+ +
315 + + + + + +
     * already present.
+ +
316 + + + + + +
     */
+ +
317 + + + + + +
    function add(UintSet storage set, uint256 value) internal returns (bool) {
+ +
318 + + + + + +
        return _add(set._inner, bytes32(value));
+ +
319 + + + + + +
    }
+ +
320 + + + + + +

+                            
+                        
321 + + + + + +
    /**
+ +
322 + + + + + +
     * @dev Removes a value from a set. O(1).
+ +
323 + + + + + +
     *
+ +
324 + + + + + +
     * Returns true if the value was removed from the set, that is if it was
+ +
325 + + + + + +
     * present.
+ +
326 + + + + + +
     */
+ +
327 + + + + + +
    function remove(UintSet storage set, uint256 value) internal returns (bool) {
+ +
328 + + + + + +
        return _remove(set._inner, bytes32(value));
+ +
329 + + + + + +
    }
+ +
330 + + + + + +

+                            
+                        
331 + + + + + +
    /**
+ +
332 + + + + + +
     * @dev Returns true if the value is in the set. O(1).
+ +
333 + + + + + +
     */
+ +
334 + + + + + +
    function contains(UintSet storage set, uint256 value) internal view returns (bool) {
+ +
335 + + + + + +
        return _contains(set._inner, bytes32(value));
+ +
336 + + + + + +
    }
+ +
337 + + + + + +

+                            
+                        
338 + + + + + +
    /**
+ +
339 + + + + + +
     * @dev Returns the number of values in the set. O(1).
+ +
340 + + + + + +
     */
+ +
341 + + + + + +
    function length(UintSet storage set) internal view returns (uint256) {
+ +
342 + + + + + +
        return _length(set._inner);
+ +
343 + + + + + +
    }
+ +
344 + + + + + +

+                            
+                        
345 + + + + + +
    /**
+ +
346 + + + + + +
     * @dev Returns the value stored at position `index` in the set. O(1).
+ +
347 + + + + + +
     *
+ +
348 + + + + + +
     * Note that there are no guarantees on the ordering of values inside the
+ +
349 + + + + + +
     * array, and it may change when more values are added or removed.
+ +
350 + + + + + +
     *
+ +
351 + + + + + +
     * Requirements:
+ +
352 + + + + + +
     *
+ +
353 + + + + + +
     * - `index` must be strictly less than {length}.
+ +
354 + + + + + +
     */
+ +
355 + + + + + +
    function at(UintSet storage set, uint256 index) internal view returns (uint256) {
+ +
356 + + + + + +
        return uint256(_at(set._inner, index));
+ +
357 + + + + + +
    }
+ +
358 + + + + + +

+                            
+                        
359 + + + + + +
    /**
+ +
360 + + + + + +
     * @dev Return the entire set in an array
+ +
361 + + + + + +
     *
+ +
362 + + + + + +
     * WARNING: This operation will copy the entire storage to memory, which can be quite expensive. This is designed
+ +
363 + + + + + +
     * to mostly be used by view accessors that are queried without any gas fees. Developers should keep in mind that
+ +
364 + + + + + +
     * this function has an unbounded cost, and using it as part of a state-changing function may render the function
+ +
365 + + + + + +
     * uncallable if the set grows to a point where copying to memory consumes too much gas to fit in a block.
+ +
366 + + + + + +
     */
+ +
367 + + + + + +
    function values(UintSet storage set) internal view returns (uint256[] memory) {
+ +
368 + + + + + +
        bytes32[] memory store = _values(set._inner);
+ +
369 + + + + + +
        uint256[] memory result;
+ +
370 + + + + + +

+                            
+                        
371 + + + + + +
        /// @solidity memory-safe-assembly
+ +
372 + + + + + +
        assembly {
+ +
373 + + + + + +
            result := store
+ +
374 + + + + + +
        }
+ +
375 + + + + + +

+                            
+                        
376 + + + + + +
        return result;
+ +
377 + + + + + +
    }
+ +
378 + + + + + +
}
+ +
379 + + + + + +

+                            
+                        
+
+
+ + + + + + + + + + +
+
+
+ + + + + + +
Lines covered: 0 / 5 (0.0%)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
1 + + + + + +
// SPDX-License-Identifier: AGPL-3.0-only
+ +
2 + + + + + +
pragma solidity >=0.8.0;
+ +
3 + + + + + +

+                            
+                        
4 + + + + + +
/// @notice Arithmetic library with operations for fixed-point numbers.
+ +
5 + + + + + +
/// @author Solmate (https://github.com/transmissions11/solmate/blob/main/src/utils/FixedPointMathLib.sol)
+ +
6 + + + + + +
/// @author Inspired by USM (https://github.com/usmfum/USM/blob/master/contracts/WadMath.sol)
+ +
7 + + + + + +
library FixedPointMathLib {
+ +
8 + + + + + +
    /*//////////////////////////////////////////////////////////////
+ +
9 + + + + + +
                    SIMPLIFIED FIXED POINT OPERATIONS
+ +
10 + + + + + +
    //////////////////////////////////////////////////////////////*/
+ +
11 + + + + + +

+                            
+                        
12 + + + + + +
    uint256 internal constant MAX_UINT256 = 2**256 - 1;
+ +
13 + + + + + +

+                            
+                        
14 + + + + + +
    uint256 internal constant WAD = 1e18; // The scalar of ETH and most ERC20s.
+ +
15 + + + + + +

+                            
+                        
16 + + + + + +
    function mulWadDown(uint256 x, uint256 y) internal pure returns (uint256) {
+ +
17 + + + + + +
        return mulDivDown(x, y, WAD); // Equivalent to (x * y) / WAD rounded down.
+ +
18 + + + + + +
    }
+ +
19 + + + + + +

+                            
+                        
20 + + + + + +
    function mulWadUp(uint256 x, uint256 y) internal pure returns (uint256) {
+ +
21 + + + + + +
        return mulDivUp(x, y, WAD); // Equivalent to (x * y) / WAD rounded up.
+ +
22 + + + + + +
    }
+ +
23 + + + + + +

+                            
+                        
24 + + + + + +
    function divWadDown(uint256 x, uint256 y) internal pure returns (uint256) {
+ +
25 + + + + + +
        return mulDivDown(x, WAD, y); // Equivalent to (x * WAD) / y rounded down.
+ +
26 + + + + + +
    }
+ +
27 + + + + + +

+                            
+                        
28 + + + + + +
    function divWadUp(uint256 x, uint256 y) internal pure returns (uint256) {
+ +
29 + + + + + +
        return mulDivUp(x, WAD, y); // Equivalent to (x * WAD) / y rounded up.
+ +
30 + + + + + +
    }
+ +
31 + + + + + +

+                            
+                        
32 + + + + + +
    /*//////////////////////////////////////////////////////////////
+ +
33 + + + + + +
                    LOW LEVEL FIXED POINT OPERATIONS
+ +
34 + + + + + +
    //////////////////////////////////////////////////////////////*/
+ +
35 + + + + + +

+                            
+                        
36 + + + + + +
    function mulDivDown(
+ +
37 + + + + + +
        uint256 x,
+ +
38 + + + + + +
        uint256 y,
+ +
39 + + + + + +
        uint256 denominator
+ +
40 + + + + + +
    ) internal pure returns (uint256 z) {
+ +
41 + + + + + +
        /// @solidity memory-safe-assembly
+ +
42 + + + + + +
        assembly {
+ +
43 + + + + + +
            // Equivalent to require(denominator != 0 && (y == 0 || x <= type(uint256).max / y))
+ +
44 + + + + + +
            if iszero(mul(denominator, iszero(mul(y, gt(x, div(MAX_UINT256, y)))))) {
+ +
45 + + + + + +
                revert(0, 0)
+ +
46 + + + + + +
            }
+ +
47 + + + + + +

+                            
+                        
48 + + + + + +
            // Divide x * y by the denominator.
+ +
49 + + + + + +
            z := div(mul(x, y), denominator)
+ +
50 + + + + + +
        }
+ +
51 + + + + + +
    }
+ +
52 + + + + + +

+                            
+                        
53 + + + + + +
    function mulDivUp(
+ +
54 + + + + + +
        uint256 x,
+ +
55 + + + + + +
        uint256 y,
+ +
56 + + + + + +
        uint256 denominator
+ +
57 + + + + + +
    ) internal pure returns (uint256 z) {
+ +
58 + + + + + +
        /// @solidity memory-safe-assembly
+ +
59 + + + + + +
        assembly {
+ +
60 + + + + + +
            // Equivalent to require(denominator != 0 && (y == 0 || x <= type(uint256).max / y))
+ +
61 + + + + + +
            if iszero(mul(denominator, iszero(mul(y, gt(x, div(MAX_UINT256, y)))))) {
+ +
62 + + + + + +
                revert(0, 0)
+ +
63 + + + + + +
            }
+ +
64 + + + + + +

+                            
+                        
65 + + + + + +
            // If x * y modulo the denominator is strictly greater than 0,
+ +
66 + + + + + +
            // 1 is added to round up the division of x * y by the denominator.
+ +
67 + + + + + +
            z := add(gt(mod(mul(x, y), denominator), 0), div(mul(x, y), denominator))
+ +
68 + + + + + +
        }
+ +
69 + + + + + +
    }
+ +
70 + + + + + +

+                            
+                        
71 + + + + + +
    function rpow(
+ +
72 + + + + + +
        uint256 x,
+ +
73 + + + + + +
        uint256 n,
+ +
74 + + + + + +
        uint256 scalar
+ +
75 + + + + + +
    ) internal pure returns (uint256 z) {
+ +
76 + + + + + +
        /// @solidity memory-safe-assembly
+ +
77 + + + + + +
        assembly {
+ +
78 + + + + + +
            switch x
+ +
79 + + + + + +
            case 0 {
+ +
80 + + + + + +
                switch n
+ +
81 + + + + + +
                case 0 {
+ +
82 + + + + + +
                    // 0 ** 0 = 1
+ +
83 + + + + + +
                    z := scalar
+ +
84 + + + + + +
                }
+ +
85 + + + + + +
                default {
+ +
86 + + + + + +
                    // 0 ** n = 0
+ +
87 + + + + + +
                    z := 0
+ +
88 + + + + + +
                }
+ +
89 + + + + + +
            }
+ +
90 + + + + + +
            default {
+ +
91 + + + + + +
                switch mod(n, 2)
+ +
92 + + + + + +
                case 0 {
+ +
93 + + + + + +
                    // If n is even, store scalar in z for now.
+ +
94 + + + + + +
                    z := scalar
+ +
95 + + + + + +
                }
+ +
96 + + + + + +
                default {
+ +
97 + + + + + +
                    // If n is odd, store x in z for now.
+ +
98 + + + + + +
                    z := x
+ +
99 + + + + + +
                }
+ +
100 + + + + + +

+                            
+                        
101 + + + + + +
                // Shifting right by 1 is like dividing by 2.
+ +
102 + + + + + +
                let half := shr(1, scalar)
+ +
103 + + + + + +

+                            
+                        
104 + + + + + +
                for {
+ +
105 + + + + + +
                    // Shift n right by 1 before looping to halve it.
+ +
106 + + + + + +
                    n := shr(1, n)
+ +
107 + + + + + +
                } n {
+ +
108 + + + + + +
                    // Shift n right by 1 each iteration to halve it.
+ +
109 + + + + + +
                    n := shr(1, n)
+ +
110 + + + + + +
                } {
+ +
111 + + + + + +
                    // Revert immediately if x ** 2 would overflow.
+ +
112 + + + + + +
                    // Equivalent to iszero(eq(div(xx, x), x)) here.
+ +
113 + + + + + +
                    if shr(128, x) {
+ +
114 + + + + + +
                        revert(0, 0)
+ +
115 + + + + + +
                    }
+ +
116 + + + + + +

+                            
+                        
117 + + + + + +
                    // Store x squared.
+ +
118 + + + + + +
                    let xx := mul(x, x)
+ +
119 + + + + + +

+                            
+                        
120 + + + + + +
                    // Round to the nearest number.
+ +
121 + + + + + +
                    let xxRound := add(xx, half)
+ +
122 + + + + + +

+                            
+                        
123 + + + + + +
                    // Revert if xx + half overflowed.
+ +
124 + + + + + +
                    if lt(xxRound, xx) {
+ +
125 + + + + + +
                        revert(0, 0)
+ +
126 + + + + + +
                    }
+ +
127 + + + + + +

+                            
+                        
128 + + + + + +
                    // Set x to scaled xxRound.
+ +
129 + + + + + +
                    x := div(xxRound, scalar)
+ +
130 + + + + + +

+                            
+                        
131 + + + + + +
                    // If n is even:
+ +
132 + + + + + +
                    if mod(n, 2) {
+ +
133 + + + + + +
                        // Compute z * x.
+ +
134 + + + + + +
                        let zx := mul(z, x)
+ +
135 + + + + + +

+                            
+                        
136 + + + + + +
                        // If z * x overflowed:
+ +
137 + + + + + +
                        if iszero(eq(div(zx, x), z)) {
+ +
138 + + + + + +
                            // Revert if x is non-zero.
+ +
139 + + + + + +
                            if iszero(iszero(x)) {
+ +
140 + + + + + +
                                revert(0, 0)
+ +
141 + + + + + +
                            }
+ +
142 + + + + + +
                        }
+ +
143 + + + + + +

+                            
+                        
144 + + + + + +
                        // Round to the nearest number.
+ +
145 + + + + + +
                        let zxRound := add(zx, half)
+ +
146 + + + + + +

+                            
+                        
147 + + + + + +
                        // Revert if zx + half overflowed.
+ +
148 + + + + + +
                        if lt(zxRound, zx) {
+ +
149 + + + + + +
                            revert(0, 0)
+ +
150 + + + + + +
                        }
+ +
151 + + + + + +

+                            
+                        
152 + + + + + +
                        // Return properly scaled zxRound.
+ +
153 + + + + + +
                        z := div(zxRound, scalar)
+ +
154 + + + + + +
                    }
+ +
155 + + + + + +
                }
+ +
156 + + + + + +
            }
+ +
157 + + + + + +
        }
+ +
158 + + + + + +
    }
+ +
159 + + + + + +

+                            
+                        
160 + + + + + +
    /*//////////////////////////////////////////////////////////////
+ +
161 + + + + + +
                        GENERAL NUMBER UTILITIES
+ +
162 + + + + + +
    //////////////////////////////////////////////////////////////*/
+ +
163 + + + + + +

+                            
+                        
164 + + + + + +
    function sqrt(uint256 x) internal pure returns (uint256 z) {
+ +
165 + + + + + +
        /// @solidity memory-safe-assembly
+ +
166 + + + + + +
        assembly {
+ +
167 + + + + + +
            let y := x // We start y at x, which will help us make our initial estimate.
+ +
168 + + + + + +

+                            
+                        
169 + + + + + +
            z := 181 // The "correct" value is 1, but this saves a multiplication later.
+ +
170 + + + + + +

+                            
+                        
171 + + + + + +
            // This segment is to get a reasonable initial estimate for the Babylonian method. With a bad
+ +
172 + + + + + +
            // start, the correct # of bits increases ~linearly each iteration instead of ~quadratically.
+ +
173 + + + + + +

+                            
+                        
174 + + + + + +
            // We check y >= 2^(k + 8) but shift right by k bits
+ +
175 + + + + + +
            // each branch to ensure that if x >= 256, then y >= 256.
+ +
176 + + + + + +
            if iszero(lt(y, 0x10000000000000000000000000000000000)) {
+ +
177 + + + + + +
                y := shr(128, y)
+ +
178 + + + + + +
                z := shl(64, z)
+ +
179 + + + + + +
            }
+ +
180 + + + + + +
            if iszero(lt(y, 0x1000000000000000000)) {
+ +
181 + + + + + +
                y := shr(64, y)
+ +
182 + + + + + +
                z := shl(32, z)
+ +
183 + + + + + +
            }
+ +
184 + + + + + +
            if iszero(lt(y, 0x10000000000)) {
+ +
185 + + + + + +
                y := shr(32, y)
+ +
186 + + + + + +
                z := shl(16, z)
+ +
187 + + + + + +
            }
+ +
188 + + + + + +
            if iszero(lt(y, 0x1000000)) {
+ +
189 + + + + + +
                y := shr(16, y)
+ +
190 + + + + + +
                z := shl(8, z)
+ +
191 + + + + + +
            }
+ +
192 + + + + + +

+                            
+                        
193 + + + + + +
            // Goal was to get z*z*y within a small factor of x. More iterations could
+ +
194 + + + + + +
            // get y in a tighter range. Currently, we will have y in [256, 256*2^16).
+ +
195 + + + + + +
            // We ensured y >= 256 so that the relative difference between y and y+1 is small.
+ +
196 + + + + + +
            // That's not possible if x < 256 but we can just verify those cases exhaustively.
+ +
197 + + + + + +

+                            
+                        
198 + + + + + +
            // Now, z*z*y <= x < z*z*(y+1), and y <= 2^(16+8), and either y >= 256, or x < 256.
+ +
199 + + + + + +
            // Correctness can be checked exhaustively for x < 256, so we assume y >= 256.
+ +
200 + + + + + +
            // Then z*sqrt(y) is within sqrt(257)/sqrt(256) of sqrt(x), or about 20bps.
+ +
201 + + + + + +

+                            
+                        
202 + + + + + +
            // For s in the range [1/256, 256], the estimate f(s) = (181/1024) * (s+1) is in the range
+ +
203 + + + + + +
            // (1/2.84 * sqrt(s), 2.84 * sqrt(s)), with largest error when s = 1 and when s = 256 or 1/256.
+ +
204 + + + + + +

+                            
+                        
205 + + + + + +
            // Since y is in [256, 256*2^16), let a = y/65536, so that a is in [1/256, 256). Then we can estimate
+ +
206 + + + + + +
            // sqrt(y) using sqrt(65536) * 181/1024 * (a + 1) = 181/4 * (y + 65536)/65536 = 181 * (y + 65536)/2^18.
+ +
207 + + + + + +

+                            
+                        
208 + + + + + +
            // There is no overflow risk here since y < 2^136 after the first branch above.
+ +
209 + + + + + +
            z := shr(18, mul(z, add(y, 65536))) // A mul() is saved from starting z at 181.
+ +
210 + + + + + +

+                            
+                        
211 + + + + + +
            // Given the worst case multiplicative error of 2.84 above, 7 iterations should be enough.
+ +
212 + + + + + +
            z := shr(1, add(z, div(x, z)))
+ +
213 + + + + + +
            z := shr(1, add(z, div(x, z)))
+ +
214 + + + + + +
            z := shr(1, add(z, div(x, z)))
+ +
215 + + + + + +
            z := shr(1, add(z, div(x, z)))
+ +
216 + + + + + +
            z := shr(1, add(z, div(x, z)))
+ +
217 + + + + + +
            z := shr(1, add(z, div(x, z)))
+ +
218 + + + + + +
            z := shr(1, add(z, div(x, z)))
+ +
219 + + + + + +

+                            
+                        
220 + + + + + +
            // If x+1 is a perfect square, the Babylonian method cycles between
+ +
221 + + + + + +
            // floor(sqrt(x)) and ceil(sqrt(x)). This statement ensures we return floor.
+ +
222 + + + + + +
            // See: https://en.wikipedia.org/wiki/Integer_square_root#Using_only_integer_division
+ +
223 + + + + + +
            // Since the ceil is rare, we save gas on the assignment and repeat division in the rare case.
+ +
224 + + + + + +
            // If you don't care whether the floor or ceil square root is returned, you can remove this statement.
+ +
225 + + + + + +
            z := sub(z, lt(div(x, z), z))
+ +
226 + + + + + +
        }
+ +
227 + + + + + +
    }
+ +
228 + + + + + +

+                            
+                        
229 + + + + + +
    function unsafeMod(uint256 x, uint256 y) internal pure returns (uint256 z) {
+ +
230 + + + + + +
        /// @solidity memory-safe-assembly
+ +
231 + + + + + +
        assembly {
+ +
232 + + + + + +
            // Mod x by y. Note this will return
+ +
233 + + + + + +
            // 0 instead of reverting if y is zero.
+ +
234 + + + + + +
            z := mod(x, y)
+ +
235 + + + + + +
        }
+ +
236 + + + + + +
    }
+ +
237 + + + + + +

+                            
+                        
238 + + + + + +
    function unsafeDiv(uint256 x, uint256 y) internal pure returns (uint256 r) {
+ +
239 + + + + + +
        /// @solidity memory-safe-assembly
+ +
240 + + + + + +
        assembly {
+ +
241 + + + + + +
            // Divide x by y. Note this will return
+ +
242 + + + + + +
            // 0 instead of reverting if y is zero.
+ +
243 + + + + + +
            r := div(x, y)
+ +
244 + + + + + +
        }
+ +
245 + + + + + +
    }
+ +
246 + + + + + +

+                            
+                        
247 + + + + + +
    function unsafeDivUp(uint256 x, uint256 y) internal pure returns (uint256 z) {
+ +
248 + + + + + +
        /// @solidity memory-safe-assembly
+ +
249 + + + + + +
        assembly {
+ +
250 + + + + + +
            // Add 1 to x * y if x % y > 0. Note this will
+ +
251 + + + + + +
            // return 0 instead of reverting if y is zero.
+ +
252 + + + + + +
            z := add(gt(mod(x, y), 0), div(x, y))
+ +
253 + + + + + +
        }
+ +
254 + + + + + +
    }
+ +
255 + + + + + +
}
+ +
256 + + + + + +

+                            
+                        
+
+
+ + + + + + + + + + +
+
+
+ + + + + + +
Lines covered: 13 / 19 (68.4%)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
1 + + + + + +
// SPDX-License-Identifier: GPL-3.0
+ +
2 + + + + + +
pragma solidity 0.8.26;
+ +
3 + + + + + +

+                            
+                        
4 + + + + + +
import {IArbitrable} from 'interfaces/IArbitrable.sol';
+ +
5 + + + + + +

+                            
+                        
6 + + + + + +
/**
+ +
7 + + + + + +
 * @title Arbitrable
+ +
8 + + + + + +
 * @notice Arbitrable contract for The Graph to manage arbitrator and council
+ +
9 + + + + + +
 */
+ +
10 + + + + + +
contract Arbitrable is IArbitrable {
+ +
11 + + + + + +
  address private _arbitrator;
+ +
12 + + + + + +
  address private _council;
+ +
13 + + + + + +
  address private _pendingCouncil;
+ +
14 + + + + + +

+                            
+                        
15 + + + + + +
  /**
+ +
16 + + + + + +
   * @notice Checks that the caller is The Graph's Council
+ +
17 + + + + + +
   */
+ +
18 + + + + + +
  modifier onlyCouncil() {
+ +
19 + +
+ +
+ + + +
    if (msg.sender != _council) revert Arbitrable_OnlyCouncil();
+ +
20 + + + + + +
    _;
+ +
21 + + + + + +
  }
+ +
22 + + + + + +

+                            
+                        
23 + + + + + +
  /**
+ +
24 + + + + + +
   * @notice Checks that the caller is the pending The Graph's Council
+ +
25 + + + + + +
   */
+ +
26 + + + + + +
  modifier onlyPendingCouncil() {
+ +
27 + + + +
+ +
+ +
    if (msg.sender != _pendingCouncil) revert Arbitrable_OnlyPendingCouncil();
+ +
28 + + + + + +
    _;
+ +
29 + + + + + +
  }
+ +
30 + + + + + +

+                            
+                        
31 + + + + + +
  /**
+ +
32 + + + + + +
   * @notice Constructor
+ +
33 + + + + + +
   * @param __arbitrator The address of The Graph's Arbitrator
+ +
34 + + + + + +
   * @param __council The address of The Graph's Council
+ +
35 + + + + + +
   */
+ +
36 + + + + + +
  constructor(address __arbitrator, address __council) {
+ +
37 + +
+ +
+ + + +
    _setArbitrator(__arbitrator);
+ +
38 + +
+ +
+ + + +
    _setCouncil(__council);
+ +
39 + + + + + +
  }
+ +
40 + + + + + +

+                            
+                        
41 + + + + + +
  /// @inheritdoc IArbitrable
+ +
42 + + + + + +
  function arbitrator() public view returns (address __arbitrator) {
+ +
43 + + + + + +
    __arbitrator = _arbitrator;
+ +
44 + + + + + +
  }
+ +
45 + + + + + +

+                            
+                        
46 + + + + + +
  /// @inheritdoc IArbitrable
+ +
47 + + + + + +
  function council() public view returns (address __council) {
+ +
48 + + + + + +
    __council = _council;
+ +
49 + + + + + +
  }
+ +
50 + + + + + +

+                            
+                        
51 + + + + + +
  /// @inheritdoc IArbitrable
+ +
52 + + + + + +
  function pendingCouncil() public view returns (address __pendingCouncil) {
+ +
53 + + + + + +
    __pendingCouncil = _pendingCouncil;
+ +
54 + + + + + +
  }
+ +
55 + + + + + +

+                            
+                        
56 + + + + + +
  /// @inheritdoc IArbitrable
+ +
57 + + + + + +
  function validateArbitrator(address _caller) public view {
+ +
58 + +
+ +
+ +
+ +
+ +
    if (_caller != _arbitrator) revert Arbitrable_OnlyArbitrator();
+ +
59 + + + + + +
  }
+ +
60 + + + + + +

+                            
+                        
61 + + + + + +
  /// @inheritdoc IArbitrable
+ +
62 + + + + + +
  function setArbitrator(address __arbitrator) external onlyCouncil {
+ +
63 + +
+ +
+ + + +
    _setArbitrator(__arbitrator);
+ +
64 + + + + + +
  }
+ +
65 + + + + + +

+                            
+                        
66 + + + + + +
  /// @inheritdoc IArbitrable
+ +
67 + + + + + +
  function setPendingCouncil(address __pendingCouncil) external onlyCouncil {
+ +
68 + +
+ +
+ + + +
    _setPendingCouncil(__pendingCouncil);
+ +
69 + + + + + +
  }
+ +
70 + + + + + +

+                            
+                        
71 + + + + + +
  /// @inheritdoc IArbitrable
+ +
72 + + + + + +
  function confirmCouncil() external onlyPendingCouncil {
+ +
73 + + + + + +
    _setCouncil(_pendingCouncil);
+ +
74 + + + + + +
    delete _pendingCouncil;
+ +
75 + + + + + +
  }
+ +
76 + + + + + +

+                            
+                        
77 + + + + + +
  /**
+ +
78 + + + + + +
   * @notice Sets the address of The Graph's Arbitrator
+ +
79 + + + + + +
   * @param __arbitrator The address of The Graph's Arbitrator
+ +
80 + + + + + +
   */
+ +
81 + + + + + +
  function _setArbitrator(address __arbitrator) private {
+ +
82 + +
+ +
+ + + +
    _arbitrator = __arbitrator;
+ +
83 + +
+ +
+ + + +
    emit SetArbitrator(__arbitrator);
+ +
84 + + + + + +
  }
+ +
85 + + + + + +

+                            
+                        
86 + + + + + +
  /**
+ +
87 + + + + + +
   * @notice Sets the address of The Graph's Council
+ +
88 + + + + + +
   * @param __council The address of The Graph's Council
+ +
89 + + + + + +
   */
+ +
90 + + + + + +
  function _setCouncil(address __council) private {
+ +
91 + +
+ +
+ + + +
    _council = __council;
+ +
92 + +
+ +
+ + + +
    emit SetCouncil(__council);
+ +
93 + + + + + +
  }
+ +
94 + + + + + +

+                            
+                        
95 + + + + + +
  /**
+ +
96 + + + + + +
   * @notice Sets the address of the pending The Graph's Council
+ +
97 + + + + + +
   * @param __pendingCouncil The address of the pending The Graph's Council
+ +
98 + + + + + +
   */
+ +
99 + + + + + +
  function _setPendingCouncil(address __pendingCouncil) private {
+ +
100 + +
+ +
+ + + +
    _pendingCouncil = __pendingCouncil;
+ +
101 + +
+ +
+ + + +
    emit SetPendingCouncil(__pendingCouncil);
+ +
102 + + + + + +
  }
+ +
103 + + + + + +
}
+ +
104 + + + + + +

+                            
+                        
+
+
+ + + + + + + + + + +
+
+
+ + + + + + +
Lines covered: 3 / 27 (11.1%)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
1 + + + + + +
// SPDX-License-Identifier: GPL-3.0
+ +
2 + + + + + +
pragma solidity 0.8.26;
+ +
3 + + + + + +

+                            
+                        
4 + + + + + +
import {ValidatorLib} from '@defi-wonderland/prophet-core/solidity/libraries/ValidatorLib.sol';
+ +
5 + + + + + +
import {IArbitrator} from '@defi-wonderland/prophet-modules/solidity/interfaces/IArbitrator.sol';
+ +
6 + + + + + +

+                            
+                        
7 + + + + + +
import {IArbitrable, IArbitratorModule, ICouncilArbitrator, IOracle} from 'interfaces/ICouncilArbitrator.sol';
+ +
8 + + + + + +

+                            
+                        
9 + + + + + +
/**
+ +
10 + + + + + +
 * @title CouncilArbitrator
+ +
11 + + + + + +
 * @notice Resolves disputes by arbitration by The Graph
+ +
12 + + + + + +
 */
+ +
13 + + + + + +
contract CouncilArbitrator is ICouncilArbitrator {
+ +
14 + + + + + +
  using ValidatorLib for IOracle.Dispute;
+ +
15 + + + + + +

+                            
+                        
16 + + + + + +
  /// @inheritdoc ICouncilArbitrator
+ +
17 + + + + + +
  IOracle public immutable ORACLE;
+ +
18 + + + + + +
  /// @inheritdoc ICouncilArbitrator
+ +
19 + + + + + +
  IArbitratorModule public immutable ARBITRATOR_MODULE;
+ +
20 + + + + + +
  /// @inheritdoc ICouncilArbitrator
+ +
21 + + + + + +
  IArbitrable public immutable ARBITRABLE;
+ +
22 + + + + + +

+                            
+                        
23 + + + + + +
  /// @inheritdoc ICouncilArbitrator
+ +
24 + + + + + +
  mapping(bytes32 _disputeId => ResolutionParameters _resolutionParams) public resolutions;
+ +
25 + + + + + +
  /// @inheritdoc IArbitrator
+ +
26 + + + + + +
  mapping(bytes32 _disputeId => IOracle.DisputeStatus _status) public getAnswer;
+ +
27 + + + + + +

+                            
+                        
28 + + + + + +
  /**
+ +
29 + + + + + +
   * @notice Checks that the caller is the Arbitrator Module
+ +
30 + + + + + +
   */
+ +
31 + + + + + +
  modifier onlyArbitratorModule() {
+ +
32 + + + + + +
    if (msg.sender != address(ARBITRATOR_MODULE)) revert CouncilArbitrator_OnlyArbitratorModule();
+ +
33 + + + + + +
    _;
+ +
34 + + + + + +
  }
+ +
35 + + + + + +

+                            
+                        
36 + + + + + +
  /**
+ +
37 + + + + + +
   * @notice Constructor
+ +
38 + + + + + +
   * @param _arbitratorModule The address of the Arbitrator Module
+ +
39 + + + + + +
   * @param _arbitrable The address of the Arbitrable contract
+ +
40 + + + + + +
   */
+ +
41 + + + + + +
  constructor(IArbitratorModule _arbitratorModule, IArbitrable _arbitrable) {
+ +
42 + +
+ +
+ + + +
    ORACLE = _arbitratorModule.ORACLE();
+ +
43 + +
+ +
+ + + +
    ARBITRATOR_MODULE = _arbitratorModule;
+ +
44 + +
+ +
+ + + +
    ARBITRABLE = _arbitrable;
+ +
45 + + + + + +
  }
+ +
46 + + + + + +

+                            
+                        
47 + + + + + +
  /// @inheritdoc IArbitrator
+ +
48 + + + + + +
  function resolve(
+ +
49 + + + + + +
    IOracle.Request calldata _request,
+ +
50 + + + + + +
    IOracle.Response calldata _response,
+ +
51 + + + + + +
    IOracle.Dispute calldata _dispute
+ +
52 + + + + + +
  ) external onlyArbitratorModule returns (bytes memory /* _data */ ) {
+ +
53 + + + + + +
    bytes32 _disputeId = _dispute._getId();
+ +
54 + + + + + +

+                            
+                        
55 + + + + + +
    resolutions[_disputeId] = ResolutionParameters(_request, _response, _dispute);
+ +
56 + + + + + +

+                            
+                        
57 + + + + + +
    emit ResolutionStarted(_disputeId, _request, _response, _dispute);
+ +
58 + + + + + +
  }
+ +
59 + + + + + +

+                            
+                        
60 + + + + + +
  /// @inheritdoc ICouncilArbitrator
+ +
61 + + + + + +
  function arbitrateDispute(bytes32 _disputeId, IOracle.DisputeStatus _award) external {
+ +
62 + + + + + +
    ARBITRABLE.validateArbitrator(msg.sender);
+ +
63 + + + + + +

+                            
+                        
64 + + + + + +
    ResolutionParameters memory _resolutionParams = resolutions[_disputeId];
+ +
65 + + + + + +

+                            
+                        
66 + + + + + +
    if (_resolutionParams.dispute.disputer == address(0)) revert CouncilArbitrator_InvalidDispute();
+ +
67 + + + + + +
    if (_award <= IOracle.DisputeStatus.Escalated) revert CouncilArbitrator_InvalidAward();
+ +
68 + + + + + +
    if (getAnswer[_disputeId] != IOracle.DisputeStatus.None) revert CouncilArbitrator_DisputeAlreadyArbitrated();
+ +
69 + + + + + +

+                            
+                        
70 + + + + + +
    getAnswer[_disputeId] = _award;
+ +
71 + + + + + +

+                            
+                        
72 + + + + + +
    ORACLE.resolveDispute(_resolutionParams.request, _resolutionParams.response, _resolutionParams.dispute);
+ +
73 + + + + + +

+                            
+                        
74 + + + + + +
    // If the request was not finalized, finalize it
+ +
75 + + + + + +
    if (ORACLE.finalizedAt(_resolutionParams.dispute.requestId) == 0) {
+ +
76 + + + + + +
      // If the dispute was lost, finalize with response
+ +
77 + + + + + +
      if (_award != IOracle.DisputeStatus.Lost) {
+ +
78 + + + + + +
        _resolutionParams.response.requestId = 0;
+ +
79 + + + + + +
      }
+ +
80 + + + + + +
      ORACLE.finalize(_resolutionParams.request, _resolutionParams.response);
+ +
81 + + + + + +
    }
+ +
82 + + + + + +

+                            
+                        
83 + + + + + +
    emit DisputeArbitrated(_disputeId, _award);
+ +
84 + + + + + +
  }
+ +
85 + + + + + +

+                            
+                        
86 + + + + + +
  /// @inheritdoc ICouncilArbitrator
+ +
87 + + + + + +
  function getResolution(bytes32 _disputeId) external view returns (ResolutionParameters memory _resolutionParams) {
+ +
88 + + + + + +
    _resolutionParams = resolutions[_disputeId];
+ +
89 + + + + + +
  }
+ +
90 + + + + + +
}
+ +
91 + + + + + +

+                            
+                        
+
+
+ + + + + + + + + + +
+
+
+ + + + + + +
Lines covered: 8 / 28 (28.6%)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
1 + + + + + +
// SPDX-License-Identifier: GPL-3.0
+ +
2 + + + + + +
pragma solidity 0.8.26;
+ +
3 + + + + + +

+                            
+                        
4 + + + + + +
import {IModule, Module} from '@defi-wonderland/prophet-core/solidity/contracts/Module.sol';
+ +
5 + + + + + +

+                            
+                        
6 + + + + + +
import {EnumerableSet} from '@openzeppelin/contracts/utils/structs/EnumerableSet.sol';
+ +
7 + + + + + +

+                            
+                        
8 + + + + + +
import {
+ +
9 + + + + + +
  IArbitrable,
+ +
10 + + + + + +
  IEBOFinalityModule,
+ +
11 + + + + + +
  IEBORequestCreator,
+ +
12 + + + + + +
  IEBORequestModule,
+ +
13 + + + + + +
  IOracle
+ +
14 + + + + + +
} from 'interfaces/IEBOFinalityModule.sol';
+ +
15 + + + + + +

+                            
+                        
16 + + + + + +
/**
+ +
17 + + + + + +
 * @title EBOFinalityModule
+ +
18 + + + + + +
 * @notice Module allowing users to index data into the subgraph
+ +
19 + + + + + +
 * as a result of a request being finalized
+ +
20 + + + + + +
 */
+ +
21 + + + + + +
contract EBOFinalityModule is Module, IEBOFinalityModule {
+ +
22 + + + + + +
  using EnumerableSet for EnumerableSet.AddressSet;
+ +
23 + + + + + +

+                            
+                        
24 + + + + + +
  /// @inheritdoc IEBOFinalityModule
+ +
25 + + + + + +
  IArbitrable public immutable ARBITRABLE;
+ +
26 + + + + + +

+                            
+                        
27 + + + + + +
  /**
+ +
28 + + + + + +
   * @notice The set of EBORequestCreators allowed
+ +
29 + + + + + +
   */
+ +
30 + + + + + +
  EnumerableSet.AddressSet internal _eboRequestCreatorsAllowed;
+ +
31 + + + + + +

+                            
+                        
32 + + + + + +
  /**
+ +
33 + + + + + +
   * @notice Constructor
+ +
34 + + + + + +
   * @param _oracle The address of the Oracle
+ +
35 + + + + + +
   * @param _eboRequestCreator The address of the EBORequestCreator
+ +
36 + + + + + +
   * @param _arbitrable The address of the Arbitrable contract
+ +
37 + + + + + +
   */
+ +
38 + + + + + +
  constructor(IOracle _oracle, IEBORequestCreator _eboRequestCreator, IArbitrable _arbitrable) Module(_oracle) {
+ +
39 + +
+ +
+ + + +
    _addEBORequestCreator(_eboRequestCreator);
+ +
40 + +
+ +
+ + + +
    ARBITRABLE = _arbitrable;
+ +
41 + + + + + +
  }
+ +
42 + + + + + +

+                            
+                        
43 + + + + + +
  /// @inheritdoc IEBOFinalityModule
+ +
44 + + + + + +
  function finalizeRequest(
+ +
45 + + + + + +
    IOracle.Request calldata _request,
+ +
46 + + + + + +
    IOracle.Response calldata _response,
+ +
47 + + + + + +
    address _finalizer
+ +
48 + + + + + +
  ) external override(Module, IEBOFinalityModule) onlyOracle {
+ +
49 + + + + + +
    if (!_eboRequestCreatorsAllowed.contains(address(_request.requester))) revert EBOFinalityModule_InvalidRequester();
+ +
50 + + + + + +

+                            
+                        
51 + + + + + +
    if (_response.requestId != 0) {
+ +
52 + + + + + +
      IEBORequestModule.RequestParameters memory _requestParams = decodeRequestData(_request.requestModuleData);
+ +
53 + + + + + +
      uint256 _block = decodeResponseData(_response.response);
+ +
54 + + + + + +

+                            
+                        
55 + + + + + +
      emit NewEpoch(_requestParams.epoch, _requestParams.chainId, _block);
+ +
56 + + + + + +
    }
+ +
57 + + + + + +

+                            
+                        
58 + + + + + +
    emit RequestFinalized(_response.requestId, _response, _finalizer);
+ +
59 + + + + + +
  }
+ +
60 + + + + + +

+                            
+                        
61 + + + + + +
  /// @inheritdoc IEBOFinalityModule
+ +
62 + + + + + +
  function amendEpoch(uint256 _epoch, string[] calldata _chainIds, uint256[] calldata _blockNumbers) external {
+ +
63 + + + + + +
    ARBITRABLE.validateArbitrator(msg.sender);
+ +
64 + + + + + +

+                            
+                        
65 + + + + + +
    uint256 _length = _chainIds.length;
+ +
66 + + + + + +
    if (_length != _blockNumbers.length) revert EBOFinalityModule_LengthMismatch();
+ +
67 + + + + + +

+                            
+                        
68 + + + + + +
    for (uint256 _i; _i < _length; ++_i) {
+ +
69 + + + + + +
      emit AmendEpoch(_epoch, _chainIds[_i], _blockNumbers[_i]);
+ +
70 + + + + + +
    }
+ +
71 + + + + + +
  }
+ +
72 + + + + + +

+                            
+                        
73 + + + + + +
  /// @inheritdoc IEBOFinalityModule
+ +
74 + + + + + +
  function addEBORequestCreator(IEBORequestCreator _eboRequestCreator) external {
+ +
75 + +
+ +
+ + + +
    ARBITRABLE.validateArbitrator(msg.sender);
+ +
76 + +
+ +
+ + + +
    _addEBORequestCreator(_eboRequestCreator);
+ +
77 + + + + + +
  }
+ +
78 + + + + + +

+                            
+                        
79 + + + + + +
  /// @inheritdoc IEBOFinalityModule
+ +
80 + + + + + +
  function removeEBORequestCreator(IEBORequestCreator _eboRequestCreator) external {
+ +
81 + +
+ +
+ +
+ +
+ +
    ARBITRABLE.validateArbitrator(msg.sender);
+ +
82 + +
+ +
+ + + +
    if (_eboRequestCreatorsAllowed.remove(address(_eboRequestCreator))) {
+ +
83 + + + + + +
      emit RemoveEBORequestCreator(_eboRequestCreator);
+ +
84 + + + + + +
    }
+ +
85 + + + + + +
  }
+ +
86 + + + + + +

+                            
+                        
87 + + + + + +
  /// @inheritdoc IEBOFinalityModule
+ +
88 + + + + + +
  function decodeRequestData(bytes calldata _data)
+ +
89 + + + + + +
    public
+ +
90 + + + + + +
    pure
+ +
91 + + + + + +
    returns (IEBORequestModule.RequestParameters memory _params)
+ +
92 + + + + + +
  {
+ +
93 + + + + + +
    _params = abi.decode(_data, (IEBORequestModule.RequestParameters));
+ +
94 + + + + + +
  }
+ +
95 + + + + + +

+                            
+                        
96 + + + + + +
  /// @inheritdoc IEBOFinalityModule
+ +
97 + + + + + +
  function decodeResponseData(bytes calldata _data) public pure returns (uint256 _block) {
+ +
98 + + + + + +
    _block = abi.decode(_data, (uint256));
+ +
99 + + + + + +
  }
+ +
100 + + + + + +

+                            
+                        
101 + + + + + +
  /// @inheritdoc IEBOFinalityModule
+ +
102 + + + + + +
  function getAllowedEBORequestCreators() external view returns (address[] memory _eboRequestCreators) {
+ +
103 + + + + + +
    _eboRequestCreators = _eboRequestCreatorsAllowed.values();
+ +
104 + + + + + +
  }
+ +
105 + + + + + +

+                            
+                        
106 + + + + + +
  /// @inheritdoc IModule
+ +
107 + + + + + +
  function moduleName() external pure returns (string memory _moduleName) {
+ +
108 + + + + + +
    _moduleName = 'EBOFinalityModule';
+ +
109 + + + + + +
  }
+ +
110 + + + + + +

+                            
+                        
111 + + + + + +
  /**
+ +
112 + + + + + +
   * @notice Adds the address of the EBORequestCreator
+ +
113 + + + + + +
   * @param _eboRequestCreator The address of the EBORequestCreator
+ +
114 + + + + + +
   */
+ +
115 + + + + + +
  function _addEBORequestCreator(IEBORequestCreator _eboRequestCreator) private {
+ +
116 + +
+ +
+ + + +
    if (_eboRequestCreatorsAllowed.add(address(_eboRequestCreator))) {
+ +
117 + +
+ +
+ + + +
      emit AddEBORequestCreator(_eboRequestCreator);
+ +
118 + + + + + +
    }
+ +
119 + + + + + +
  }
+ +
120 + + + + + +
}
+ +
121 + + + + + +

+                            
+                        
+
+
+ + + + + + + + + + +
+
+
+ + + + + + +
Lines covered: 49 / 67 (73.1%)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
1 + + + + + +
// SPDX-License-Identifier: GPL-3.0
+ +
2 + + + + + +
pragma solidity 0.8.26;
+ +
3 + + + + + +

+                            
+                        
4 + + + + + +
import {EnumerableSet} from '@openzeppelin/contracts/utils/structs/EnumerableSet.sol';
+ +
5 + + + + + +

+                            
+                        
6 + + + + + +
import {
+ +
7 + + + + + +
  IArbitrable,
+ +
8 + + + + + +
  IArbitratorModule,
+ +
9 + + + + + +
  IBondEscalationModule,
+ +
10 + + + + + +
  IBondedResponseModule,
+ +
11 + + + + + +
  IEBORequestCreator,
+ +
12 + + + + + +
  IEBORequestModule,
+ +
13 + + + + + +
  IEpochManager,
+ +
14 + + + + + +
  IOracle
+ +
15 + + + + + +
} from 'interfaces/IEBORequestCreator.sol';
+ +
16 + + + + + +

+                            
+                        
17 + + + + + +
contract EBORequestCreator is IEBORequestCreator {
+ +
18 + + + + + +
  using EnumerableSet for EnumerableSet.Bytes32Set;
+ +
19 + + + + + +

+                            
+                        
20 + + + + + +
  /// @inheritdoc IEBORequestCreator
+ +
21 + + + +
+ +
+ +
  IOracle public immutable ORACLE;
+ +
22 + + + + + +

+                            
+                        
23 + + + + + +
  /// @inheritdoc IEBORequestCreator
+ +
24 + + + +
+ +
+ +
  IArbitrable public immutable ARBITRABLE;
+ +
25 + + + + + +

+                            
+                        
26 + + + + + +
  /// @inheritdoc IEBORequestCreator
+ +
27 + + + +
+ +
+ +
  uint256 public immutable START_EPOCH;
+ +
28 + + + + + +

+                            
+                        
29 + + + + + +
  /// @inheritdoc IEBORequestCreator
+ +
30 + + + +
+ +
+ +
  IEpochManager public epochManager;
+ +
31 + + + + + +

+                            
+                        
32 + + + + + +
  /// @inheritdoc IEBORequestCreator
+ +
33 + + + + + +
  IOracle.Request public requestData;
+ +
34 + + + + + +

+                            
+                        
35 + + + + + +
  /// @inheritdoc IEBORequestCreator
+ +
36 + + + +
+ +
+ +
  mapping(string _chainId => mapping(uint256 _epoch => bytes32 _requestId)) public requestIdPerChainAndEpoch;
+ +
37 + + + + + +

+                            
+                        
38 + + + + + +
  /**
+ +
39 + + + + + +
   * @notice The set of chain ids allowed
+ +
40 + + + + + +
   */
+ +
41 + + + + + +
  EnumerableSet.Bytes32Set internal _chainIdsAllowed;
+ +
42 + + + + + +

+                            
+                        
43 + + + + + +
  constructor(
+ +
44 + + + + + +
    IOracle _oracle,
+ +
45 + + + + + +
    IEpochManager _epochManager,
+ +
46 + + + + + +
    IArbitrable _arbitrable,
+ +
47 + + + + + +
    IOracle.Request memory _requestData
+ +
48 + + + + + +
  ) {
+ +
49 + +
+ +
+ + + +
    if (_requestData.nonce != 0) revert EBORequestCreator_InvalidNonce();
+ +
50 + + + + + +

+                            
+                        
51 + +
+ +
+ + + +
    ARBITRABLE = _arbitrable;
+ +
52 + + + + + +

+                            
+                        
53 + +
+ +
+ + + +
    ORACLE = _oracle;
+ +
54 + +
+ +
+ + + +
    _setEpochManager(_epochManager);
+ +
55 + + + + + +

+                            
+                        
56 + +
+ +
+ + + +
    _requestData.requester = address(this);
+ +
57 + +
+ +
+ + + +
    requestData = _requestData;
+ +
58 + + + + + +

+                            
+                        
59 + +
+ +
+ + + +
    START_EPOCH = epochManager.currentEpoch();
+ +
60 + + + + + +
  }
+ +
61 + + + + + +

+                            
+                        
62 + + + + + +
  /// @inheritdoc IEBORequestCreator
+ +
63 + + + + + +
  function createRequest(uint256 _epoch, string calldata _chainId) external {
+ +
64 + + + +
+ +
+ +
    if (_epoch > epochManager.currentEpoch() || START_EPOCH > _epoch) revert EBORequestCreator_InvalidEpoch();
+ +
65 + + + + + +

+                            
+                        
66 + + + + + +
    bytes32 _encodedChainId = _encodeChainId(_chainId);
+ +
67 + + + + + +
    if (!_chainIdsAllowed.contains(_encodedChainId)) revert EBORequestCreator_ChainNotAdded();
+ +
68 + + + + + +

+                            
+                        
69 + + + + + +
    IOracle.Request memory _requestData = requestData;
+ +
70 + + + + + +

+                            
+                        
71 + + + + + +
    IEBORequestModule.RequestParameters memory _requestModuleData =
+ +
72 + + + + + +
      IEBORequestModule(_requestData.requestModule).decodeRequestData(_requestData.requestModuleData);
+ +
73 + + + + + +

+                            
+                        
74 + + + + + +
    _requestModuleData.epoch = _epoch;
+ +
75 + + + + + +

+                            
+                        
76 + + + + + +
    bytes32 _requestId = requestIdPerChainAndEpoch[_chainId][_epoch];
+ +
77 + + + + + +

+                            
+                        
78 + + + + + +
    if (
+ +
79 + + + + + +
      _requestId != bytes32(0)
+ +
80 + + + + + +
        && (ORACLE.finalizedAt(_requestId) == 0 || ORACLE.finalizedResponseId(_requestId) != bytes32(0))
+ +
81 + + + + + +
    ) revert EBORequestCreator_RequestAlreadyCreated();
+ +
82 + + + + + +

+                            
+                        
83 + + + + + +
    _requestModuleData.chainId = _chainId;
+ +
84 + + + + + +

+                            
+                        
85 + + + + + +
    _requestData.requestModuleData = abi.encode(_requestModuleData);
+ +
86 + + + + + +

+                            
+                        
87 + + + + + +
    _requestId = ORACLE.createRequest(_requestData, bytes32(0));
+ +
88 + + + + + +

+                            
+                        
89 + + + + + +
    requestIdPerChainAndEpoch[_chainId][_epoch] = _requestId;
+ +
90 + + + + + +

+                            
+                        
91 + + + + + +
    emit RequestCreated(_requestId, _requestData, _epoch, _chainId);
+ +
92 + + + + + +
  }
+ +
93 + + + + + +

+                            
+                        
94 + + + + + +
  /// @inheritdoc IEBORequestCreator
+ +
95 + + + + + +
  function addChain(string calldata _chainId) external {
+ +
96 + +
+ +
+ +
+ +
+ +
    ARBITRABLE.validateArbitrator(msg.sender);
+ +
97 + +
+ +
+ +
+ +
+ +
    bytes32 _encodedChainId = _encodeChainId(_chainId);
+ +
98 + +
+ +
+ +
+ +
+ +
    if (!_chainIdsAllowed.add(_encodedChainId)) {
+ +
99 + + + +
+ +
+ +
      revert EBORequestCreator_ChainAlreadyAdded();
+ +
100 + + + + + +
    }
+ +
101 + + + + + +

+                            
+                        
102 + +
+ +
+ + + +
    emit ChainAdded(_chainId);
+ +
103 + + + + + +
  }
+ +
104 + + + + + +

+                            
+                        
105 + + + + + +
  /// @inheritdoc IEBORequestCreator
+ +
106 + + + + + +
  function removeChain(string calldata _chainId) external {
+ +
107 + +
+ +
+ +
+ +
+ +
    ARBITRABLE.validateArbitrator(msg.sender);
+ +
108 + +
+ +
+ +
+ +
+ +
    bytes32 _encodedChainId = _encodeChainId(_chainId);
+ +
109 + +
+ +
+ +
+ +
+ +
    if (!_chainIdsAllowed.remove(_encodedChainId)) {
+ +
110 + + + +
+ +
+ +
      revert EBORequestCreator_ChainNotAdded();
+ +
111 + + + + + +
    }
+ +
112 + + + + + +

+                            
+                        
113 + +
+ +
+ + + +
    emit ChainRemoved(_chainId);
+ +
114 + + + + + +
  }
+ +
115 + + + + + +

+                            
+                        
116 + + + + + +
  /// @inheritdoc IEBORequestCreator
+ +
117 + + + + + +
  function setRequestModuleData(
+ +
118 + + + + + +
    address _requestModule,
+ +
119 + + + + + +
    IEBORequestModule.RequestParameters calldata _requestModuleData
+ +
120 + + + + + +
  ) external {
+ +
121 + +
+ +
+ +
+ +
+ +
    ARBITRABLE.validateArbitrator(msg.sender);
+ +
122 + +
+ +
+ + + +
    requestData.requestModule = _requestModule;
+ +
123 + +
+ +
+ + + +
    requestData.requestModuleData = abi.encode(_requestModuleData);
+ +
124 + + + + + +

+                            
+                        
125 + +
+ +
+ + + +
    emit RequestModuleDataSet(_requestModule, _requestModuleData);
+ +
126 + + + + + +
  }
+ +
127 + + + + + +

+                            
+                        
128 + + + + + +
  /// @inheritdoc IEBORequestCreator
+ +
129 + + + + + +
  function setResponseModuleData(
+ +
130 + + + + + +
    address _responseModule,
+ +
131 + + + + + +
    IBondedResponseModule.RequestParameters calldata _responseModuleData
+ +
132 + + + + + +
  ) external {
+ +
133 + +
+ +
+ +
+ +
+ +
    ARBITRABLE.validateArbitrator(msg.sender);
+ +
134 + +
+ +
+ + + +
    requestData.responseModule = _responseModule;
+ +
135 + +
+ +
+ + + +
    requestData.responseModuleData = abi.encode(_responseModuleData);
+ +
136 + + + + + +

+                            
+                        
137 + +
+ +
+ + + +
    emit ResponseModuleDataSet(_responseModule, _responseModuleData);
+ +
138 + + + + + +
  }
+ +
139 + + + + + +

+                            
+                        
140 + + + + + +
  /// @inheritdoc IEBORequestCreator
+ +
141 + + + + + +
  function setDisputeModuleData(
+ +
142 + + + + + +
    address _disputeModule,
+ +
143 + + + + + +
    IBondEscalationModule.RequestParameters calldata _disputeModuleData
+ +
144 + + + + + +
  ) external {
+ +
145 + +
+ +
+ +
+ +
+ +
    ARBITRABLE.validateArbitrator(msg.sender);
+ +
146 + +
+ +
+ + + +
    requestData.disputeModule = _disputeModule;
+ +
147 + +
+ +
+ + + +
    requestData.disputeModuleData = abi.encode(_disputeModuleData);
+ +
148 + + + + + +

+                            
+                        
149 + +
+ +
+ + + +
    emit DisputeModuleDataSet(_disputeModule, _disputeModuleData);
+ +
150 + + + + + +
  }
+ +
151 + + + + + +

+                            
+                        
152 + + + + + +
  /// @inheritdoc IEBORequestCreator
+ +
153 + + + + + +
  function setResolutionModuleData(
+ +
154 + + + + + +
    address _resolutionModule,
+ +
155 + + + + + +
    IArbitratorModule.RequestParameters calldata _resolutionModuleData
+ +
156 + + + + + +
  ) external {
+ +
157 + +
+ +
+ +
+ +
+ +
    ARBITRABLE.validateArbitrator(msg.sender);
+ +
158 + +
+ +
+ + + +
    requestData.resolutionModule = _resolutionModule;
+ +
159 + +
+ +
+ + + +
    requestData.resolutionModuleData = abi.encode(_resolutionModuleData);
+ +
160 + + + + + +

+                            
+                        
161 + +
+ +
+ + + +
    emit ResolutionModuleDataSet(_resolutionModule, _resolutionModuleData);
+ +
162 + + + + + +
  }
+ +
163 + + + + + +

+                            
+                        
164 + + + + + +
  /// @inheritdoc IEBORequestCreator
+ +
165 + + + + + +
  function setFinalityModuleData(address _finalityModule) external {
+ +
166 + +
+ +
+ +
+ +
+ +
    ARBITRABLE.validateArbitrator(msg.sender);
+ +
167 + +
+ +
+ + + +
    requestData.finalityModule = _finalityModule;
+ +
168 + + + + + +

+                            
+                        
169 + +
+ +
+ + + +
    emit FinalityModuleDataSet(_finalityModule, new bytes(0));
+ +
170 + + + + + +
  }
+ +
171 + + + + + +

+                            
+                        
172 + + + + + +
  /// @inheritdoc IEBORequestCreator
+ +
173 + + + + + +
  function setEpochManager(IEpochManager _epochManager) external {
+ +
174 + +
+ +
+ +
+ +
+ +
    ARBITRABLE.validateArbitrator(msg.sender);
+ +
175 + +
+ +
+ + + +
    _setEpochManager(_epochManager);
+ +
176 + + + + + +
  }
+ +
177 + + + + + +

+                            
+                        
178 + + + + + +
  /// @inheritdoc IEBORequestCreator
+ +
179 + + + + + +
  function getRequestData() external view returns (IOracle.Request memory _requestData) {
+ +
180 + + + +
+ +
+ +
    _requestData = requestData;
+ +
181 + + + + + +
  }
+ +
182 + + + + + +

+                            
+                        
183 + + + + + +
  /// @inheritdoc IEBORequestCreator
+ +
184 + + + + + +
  function getAllowedChainIds() external view returns (bytes32[] memory _chainIds) {
+ +
185 + + + + + +
    _chainIds = _chainIdsAllowed.values();
+ +
186 + + + + + +
  }
+ +
187 + + + + + +

+                            
+                        
188 + + + + + +
  /**
+ +
189 + + + + + +
   * @notice Set the epoch manager
+ +
190 + + + + + +
   * @param _epochManager The epoch manager
+ +
191 + + + + + +
   */
+ +
192 + + + + + +
  function _setEpochManager(IEpochManager _epochManager) internal {
+ +
193 + +
+ +
+ + + +
    epochManager = _epochManager;
+ +
194 + + + + + +

+                            
+                        
195 + +
+ +
+ + + +
    emit EpochManagerSet(_epochManager);
+ +
196 + + + + + +
  }
+ +
197 + + + + + +

+                            
+                        
198 + + + + + +
  /**
+ +
199 + + + + + +
   * @notice Encodes the chain id
+ +
200 + + + + + +
   * @dev The chain id is hashed to have a enumerable set to avoid duplicates
+ +
201 + + + + + +
   */
+ +
202 + +
+ +
+ +
+ +
+ +
  function _encodeChainId(string calldata _chainId) internal pure returns (bytes32 _encodedChainId) {
+ +
203 + +
+ +
+ +
+ +
+ +
    _encodedChainId = keccak256(abi.encodePacked(_chainId));
+ +
204 + + + + + +
  }
+ +
205 + + + + + +
}
+ +
206 + + + + + +

+                            
+                        
+
+
+ + + + + + + + + + +
+
+
+ + + + + + +
Lines covered: 9 / 19 (47.4%)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
1 + + + + + +
// SPDX-License-Identifier: GPL-3.0
+ +
2 + + + + + +
pragma solidity 0.8.26;
+ +
3 + + + + + +

+                            
+                        
4 + + + + + +
import {IModule, Module} from '@defi-wonderland/prophet-core/solidity/contracts/Module.sol';
+ +
5 + + + + + +

+                            
+                        
6 + + + + + +
import {EnumerableSet} from '@openzeppelin/contracts/utils/structs/EnumerableSet.sol';
+ +
7 + + + + + +

+                            
+                        
8 + + + + + +
import {IArbitrable, IEBORequestCreator, IEBORequestModule, IOracle} from 'interfaces/IEBORequestModule.sol';
+ +
9 + + + + + +

+                            
+                        
10 + + + + + +
/**
+ +
11 + + + + + +
 * @title EBORequestModule
+ +
12 + + + + + +
 * @notice Module allowing users to create a request for RPC data for a specific epoch
+ +
13 + + + + + +
 */
+ +
14 + + + + + +
contract EBORequestModule is Module, IEBORequestModule {
+ +
15 + + + + + +
  using EnumerableSet for EnumerableSet.AddressSet;
+ +
16 + + + + + +

+                            
+                        
17 + + + + + +
  /// @inheritdoc IEBORequestModule
+ +
18 + + + + + +
  IArbitrable public immutable ARBITRABLE;
+ +
19 + + + + + +

+                            
+                        
20 + + + + + +
  /**
+ +
21 + + + + + +
   * @notice The set of EBORequestCreators allowed
+ +
22 + + + + + +
   */
+ +
23 + + + + + +
  EnumerableSet.AddressSet internal _eboRequestCreatorsAllowed;
+ +
24 + + + + + +

+                            
+                        
25 + + + + + +
  /**
+ +
26 + + + + + +
   * @notice Constructor
+ +
27 + + + + + +
   * @param _oracle The address of the Oracle
+ +
28 + + + + + +
   * @param _eboRequestCreator The address of the EBORequestCreator
+ +
29 + + + + + +
   * @param _arbitrable The address of the Arbitrable contract
+ +
30 + + + + + +
   */
+ +
31 + + + + + +
  constructor(IOracle _oracle, IEBORequestCreator _eboRequestCreator, IArbitrable _arbitrable) Module(_oracle) {
+ +
32 + +
+ +
+ + + +
    _addEBORequestCreator(_eboRequestCreator);
+ +
33 + +
+ +
+ + + +
    ARBITRABLE = _arbitrable;
+ +
34 + + + + + +
  }
+ +
35 + + + + + +

+                            
+                        
36 + + + + + +
  /// @inheritdoc IEBORequestModule
+ +
37 + + + + + +
  function createRequest(
+ +
38 + + + + + +
    bytes32, /* _requestId */
+ +
39 + + + + + +
    bytes calldata, /* _data */
+ +
40 + + + + + +
    address _requester
+ +
41 + + + + + +
  ) external view onlyOracle {
+ +
42 + + + + + +
    if (!_eboRequestCreatorsAllowed.contains(_requester)) revert EBORequestModule_InvalidRequester();
+ +
43 + + + + + +
  }
+ +
44 + + + + + +

+                            
+                        
45 + + + + + +
  /// @inheritdoc IEBORequestModule
+ +
46 + + + + + +
  function addEBORequestCreator(IEBORequestCreator _eboRequestCreator) external {
+ +
47 + +
+ +
+ +
+ +
+ +
    ARBITRABLE.validateArbitrator(msg.sender);
+ +
48 + +
+ +
+ + + +
    _addEBORequestCreator(_eboRequestCreator);
+ +
49 + + + + + +
  }
+ +
50 + + + + + +

+                            
+                        
51 + + + + + +
  /// @inheritdoc IEBORequestModule
+ +
52 + + + + + +
  function removeEBORequestCreator(IEBORequestCreator _eboRequestCreator) external {
+ +
53 + +
+ +
+ +
+ +
+ +
    ARBITRABLE.validateArbitrator(msg.sender);
+ +
54 + +
+ +
+ + + +
    if (_eboRequestCreatorsAllowed.remove(address(_eboRequestCreator))) {
+ +
55 + +
+ +
+ + + +
      emit RemoveEBORequestCreator(_eboRequestCreator);
+ +
56 + + + + + +
    }
+ +
57 + + + + + +
  }
+ +
58 + + + + + +

+                            
+                        
59 + + + + + +
  /// @inheritdoc IEBORequestModule
+ +
60 + + + + + +
  function getAllowedEBORequestCreators() external view returns (address[] memory _eboRequestCreators) {
+ +
61 + + + + + +
    _eboRequestCreators = _eboRequestCreatorsAllowed.values();
+ +
62 + + + + + +
  }
+ +
63 + + + + + +

+                            
+                        
64 + + + + + +
  /// @inheritdoc IEBORequestModule
+ +
65 + + + + + +
  function decodeRequestData(bytes calldata _data) public pure returns (RequestParameters memory _params) {
+ +
66 + + + + + +
    _params = abi.decode(_data, (RequestParameters));
+ +
67 + + + + + +
  }
+ +
68 + + + + + +

+                            
+                        
69 + + + + + +
  /// @inheritdoc IModule
+ +
70 + + + + + +
  function validateParameters(bytes calldata _encodedParameters)
+ +
71 + + + + + +
    external
+ +
72 + + + + + +
    pure
+ +
73 + + + + + +
    override(IModule, Module)
+ +
74 + + + + + +
    returns (bool _valid)
+ +
75 + + + + + +
  {
+ +
76 + + + + + +
    RequestParameters memory _params = decodeRequestData(_encodedParameters);
+ +
77 + + + + + +
    _valid =
+ +
78 + + + + + +
      _params.epoch != 0 && bytes(_params.chainId).length != 0 && address(_params.accountingExtension) != address(0);
+ +
79 + + + + + +
  }
+ +
80 + + + + + +

+                            
+                        
81 + + + + + +
  /// @inheritdoc IModule
+ +
82 + + + + + +
  function moduleName() external pure returns (string memory _moduleName) {
+ +
83 + + + + + +
    _moduleName = 'EBORequestModule';
+ +
84 + + + + + +
  }
+ +
85 + + + + + +

+                            
+                        
86 + + + + + +
  /**
+ +
87 + + + + + +
   * @notice Adds the address of the EBORequestCreator
+ +
88 + + + + + +
   * @param _eboRequestCreator The address of the EBORequestCreator
+ +
89 + + + + + +
   */
+ +
90 + + + + + +
  function _addEBORequestCreator(IEBORequestCreator _eboRequestCreator) private {
+ +
91 + +
+ +
+ + + +
    if (_eboRequestCreatorsAllowed.add(address(_eboRequestCreator))) {
+ +
92 + +
+ +
+ + + +
      emit AddEBORequestCreator(_eboRequestCreator);
+ +
93 + + + + + +
    }
+ +
94 + + + + + +
  }
+ +
95 + + + + + +
}
+ +
96 + + + + + +

+                            
+                        
+
+
+ + + + + + + + + + +
+
+
+ + + + + + +
Lines covered: 13 / 141 (9.2%)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
1 + + + + + +
// SPDX-License-Identifier: GPL-3.0
+ +
2 + + + + + +
pragma solidity 0.8.26;
+ +
3 + + + + + +

+                            
+                        
4 + + + + + +
import {SafeERC20} from '@openzeppelin/contracts/token/ERC20/utils/SafeERC20.sol';
+ +
5 + + + + + +
import {EnumerableSet} from '@openzeppelin/contracts/utils/structs/EnumerableSet.sol';
+ +
6 + + + + + +

+                            
+                        
7 + + + + + +
import {
+ +
8 + + + + + +
  IArbitrable,
+ +
9 + + + + + +
  IBondEscalationModule,
+ +
10 + + + + + +
  IERC20,
+ +
11 + + + + + +
  IHorizonAccountingExtension,
+ +
12 + + + + + +
  IHorizonStaking,
+ +
13 + + + + + +
  IOracle
+ +
14 + + + + + +
} from 'interfaces/IHorizonAccountingExtension.sol';
+ +
15 + + + + + +

+                            
+                        
16 + + + + + +
import {Validator} from '@defi-wonderland/prophet-core/solidity/contracts/Validator.sol';
+ +
17 + + + + + +

+                            
+                        
18 + + + + + +
contract HorizonAccountingExtension is Validator, IHorizonAccountingExtension {
+ +
19 + + + + + +
  using EnumerableSet for EnumerableSet.AddressSet;
+ +
20 + + + + + +
  using SafeERC20 for IERC20;
+ +
21 + + + + + +

+                            
+                        
22 + + + + + +
  /// @inheritdoc IHorizonAccountingExtension
+ +
23 + + + + + +
  IHorizonStaking public immutable HORIZON_STAKING;
+ +
24 + + + + + +

+                            
+                        
25 + + + + + +
  /// @inheritdoc IHorizonAccountingExtension
+ +
26 + + + + + +
  IERC20 public immutable GRT;
+ +
27 + + + + + +

+                            
+                        
28 + + + + + +
  /// @inheritdoc IHorizonAccountingExtension
+ +
29 + + + + + +
  IArbitrable public immutable ARBITRABLE;
+ +
30 + + + + + +

+                            
+                        
31 + + + + + +
  /// @inheritdoc IHorizonAccountingExtension
+ +
32 + + + + + +
  uint64 public immutable MIN_THAWING_PERIOD;
+ +
33 + + + + + +

+                            
+                        
34 + + + + + +
  /// @inheritdoc IHorizonAccountingExtension
+ +
35 + + + + + +
  uint32 public constant MAX_USERS_TO_SLASH = 1;
+ +
36 + + + + + +

+                            
+                        
37 + + + + + +
  /// @inheritdoc IHorizonAccountingExtension
+ +
38 + + + + + +
  uint32 public constant MAX_VERIFIER_CUT = 1_000_000;
+ +
39 + + + + + +

+                            
+                        
40 + + + + + +
  /// @inheritdoc IHorizonAccountingExtension
+ +
41 + + + + + +
  uint128 public maxUsersToCheck;
+ +
42 + + + + + +

+                            
+                        
43 + + + + + +
  /// @inheritdoc IHorizonAccountingExtension
+ +
44 + + + + + +
  mapping(address _user => uint256 _bonded) public totalBonded;
+ +
45 + + + + + +

+                            
+                        
46 + + + + + +
  /// @inheritdoc IHorizonAccountingExtension
+ +
47 + + + + + +
  mapping(address _bonder => mapping(bytes32 _requestId => uint256 _amount)) public bondedForRequest;
+ +
48 + + + + + +

+                            
+                        
49 + + + + + +
  /// @inheritdoc IHorizonAccountingExtension
+ +
50 + + + + + +
  mapping(bytes32 _disputeId => uint256 _amount) public pledges;
+ +
51 + + + + + +

+                            
+                        
52 + + + + + +
  /// @inheritdoc IHorizonAccountingExtension
+ +
53 + + + + + +
  mapping(bytes32 _disputeId => EscalationResult _result) public escalationResults;
+ +
54 + + + + + +

+                            
+                        
55 + + + + + +
  /// @inheritdoc IHorizonAccountingExtension
+ +
56 + + + + + +
  mapping(bytes32 _requestId => mapping(address _pledger => bool _claimed)) public pledgerClaimed;
+ +
57 + + + + + +

+                            
+                        
58 + + + + + +
  /// @inheritdoc IHorizonAccountingExtension
+ +
59 + + + + + +
  mapping(address _caller => bool _authorized) public authorizedCallers;
+ +
60 + + + + + +

+                            
+                        
61 + + + + + +
  /// @inheritdoc IHorizonAccountingExtension
+ +
62 + + + + + +
  mapping(bytes32 _disputeId => uint256 _balance) public disputeBalance;
+ +
63 + + + + + +

+                            
+                        
64 + + + + + +
  /**
+ +
65 + + + + + +
   * @notice Storing which modules have the users approved to bond their tokens.
+ +
66 + + + + + +
   */
+ +
67 + + + + + +
  mapping(address _bonder => EnumerableSet.AddressSet _modules) internal _approvals;
+ +
68 + + + + + +

+                            
+                        
69 + + + + + +
  /**
+ +
70 + + + + + +
   * @notice Storing the users that have pledged for a dispute.
+ +
71 + + + + + +
   */
+ +
72 + + + + + +
  mapping(bytes32 _disputeId => EnumerableSet.AddressSet _pledger) internal _pledgers;
+ +
73 + + + + + +

+                            
+                        
74 + + + + + +
  /**
+ +
75 + + + + + +
   * @notice Constructor
+ +
76 + + + + + +
   * @param _horizonStaking The address of the Oracle
+ +
77 + + + + + +
   * @param _oracle The address of the Oracle
+ +
78 + + + + + +
   * @param _grt The address of the GRT token
+ +
79 + + + + + +
   * @param _minThawingPeriod The minimum thawing period for the staking
+ +
80 + + + + + +
   * @param _maxUsersToCheck The maximum number of users to check
+ +
81 + + + + + +
   * @param _authorizedCallers The addresses of the authorized callers
+ +
82 + + + + + +
   */
+ +
83 + + + + + +
  constructor(
+ +
84 + + + + + +
    IHorizonStaking _horizonStaking,
+ +
85 + + + + + +
    IOracle _oracle,
+ +
86 + + + + + +
    IERC20 _grt,
+ +
87 + + + + + +
    IArbitrable _arbitrable,
+ +
88 + + + + + +
    uint64 _minThawingPeriod,
+ +
89 + + + + + +
    uint128 _maxUsersToCheck,
+ +
90 + + + + + +
    address[] memory _authorizedCallers
+ +
91 + + + + + +
  ) Validator(_oracle) {
+ +
92 + +
+ +
+ + + +
    HORIZON_STAKING = _horizonStaking;
+ +
93 + +
+ +
+ + + +
    GRT = _grt;
+ +
94 + +
+ +
+ + + +
    ARBITRABLE = _arbitrable;
+ +
95 + +
+ +
+ + + +
    MIN_THAWING_PERIOD = _minThawingPeriod;
+ +
96 + +
+ +
+ + + +
    _setMaxUsersToCheck(_maxUsersToCheck);
+ +
97 + + + + + +

+                            
+                        
98 + + + + + +
    // Set the authorized callers
+ +
99 + +
+ +
+ + + +
    for (uint256 _i; _i < _authorizedCallers.length; ++_i) {
+ +
100 + +
+ +
+ + + +
      authorizedCallers[_authorizedCallers[_i]] = true;
+ +
101 + + + + + +
    }
+ +
102 + + + + + +
  }
+ +
103 + + + + + +

+                            
+                        
104 + + + + + +
  /**
+ +
105 + + + + + +
   * @notice Checks that the caller is an authorized caller.
+ +
106 + + + + + +
   */
+ +
107 + + + + + +
  modifier onlyAuthorizedCaller() {
+ +
108 + + + + + +
    if (!authorizedCallers[msg.sender]) revert HorizonAccountingExtension_UnauthorizedCaller();
+ +
109 + + + + + +
    _;
+ +
110 + + + + + +
  }
+ +
111 + + + + + +

+                            
+                        
112 + + + + + +
  /**
+ +
113 + + + + + +
   * @notice Checks that the caller is an allowed module used in the request.
+ +
114 + + + + + +
   * @param _requestId The request ID.
+ +
115 + + + + + +
   */
+ +
116 + + + + + +
  modifier onlyAllowedModule(bytes32 _requestId) {
+ +
117 + + + + + +
    if (!ORACLE.allowedModule(_requestId, msg.sender)) revert HorizonAccountingExtension_UnauthorizedModule();
+ +
118 + + + + + +
    _;
+ +
119 + + + + + +
  }
+ +
120 + + + + + +

+                            
+                        
121 + + + + + +
  /**
+ +
122 + + + + + +
   * @notice Checks if the user is either the requester or a proposer, or a disputer.
+ +
123 + + + + + +
   * @param _requestId The request ID.
+ +
124 + + + + + +
   * @param _user The address to check.
+ +
125 + + + + + +
   */
+ +
126 + + + + + +
  modifier onlyParticipant(bytes32 _requestId, address _user) {
+ +
127 + + + + + +
    if (!ORACLE.isParticipant(_requestId, _user)) revert HorizonAccountingExtension_UnauthorizedUser();
+ +
128 + + + + + +
    _;
+ +
129 + + + + + +
  }
+ +
130 + + + + + +

+                            
+                        
131 + + + + + +
  /// @inheritdoc IHorizonAccountingExtension
+ +
132 + + + + + +
  function approveModule(address _module) external {
+ +
133 + +
+ +
+ + + +
    _approvals[msg.sender].add(_module);
+ +
134 + + + + + +
  }
+ +
135 + + + + + +

+                            
+                        
136 + + + + + +
  /// @inheritdoc IHorizonAccountingExtension
+ +
137 + + + + + +
  function revokeModule(address _module) external {
+ +
138 + +
+ +
+ + + +
    _approvals[msg.sender].remove(_module);
+ +
139 + + + + + +
  }
+ +
140 + + + + + +

+                            
+                        
141 + + + + + +
  /// @inheritdoc IHorizonAccountingExtension
+ +
142 + + + + + +
  function pledge(
+ +
143 + + + + + +
    address _pledger,
+ +
144 + + + + + +
    IOracle.Request calldata _request,
+ +
145 + + + + + +
    IOracle.Dispute calldata _dispute,
+ +
146 + + + + + +
    IERC20, /* _token */
+ +
147 + + + + + +
    uint256 _amount
+ +
148 + + + + + +
  ) external onlyAuthorizedCaller {
+ +
149 + + + + + +
    bytes32 _requestId = _getId(_request);
+ +
150 + + + + + +
    bytes32 _disputeId = _validateDispute(_request, _dispute);
+ +
151 + + + + + +

+                            
+                        
152 + + + + + +
    if (!ORACLE.allowedModule(_requestId, msg.sender)) revert HorizonAccountingExtension_UnauthorizedModule();
+ +
153 + + + + + +

+                            
+                        
154 + + + + + +
    pledges[_disputeId] += _amount;
+ +
155 + + + + + +

+                            
+                        
156 + + + + + +
    _pledgers[_disputeId].add(_pledger);
+ +
157 + + + + + +

+                            
+                        
158 + + + + + +
    _bond(_pledger, _amount);
+ +
159 + + + + + +

+                            
+                        
160 + + + + + +
    emit Pledged({_pledger: _pledger, _requestId: _requestId, _disputeId: _disputeId, _amount: _amount});
+ +
161 + + + + + +
  }
+ +
162 + + + + + +

+                            
+                        
163 + + + + + +
  /// @inheritdoc IHorizonAccountingExtension
+ +
164 + + + + + +
  function onSettleBondEscalation(
+ +
165 + + + + + +
    IOracle.Request calldata _request,
+ +
166 + + + + + +
    IOracle.Dispute calldata _dispute,
+ +
167 + + + + + +
    IERC20, /* _token */
+ +
168 + + + + + +
    uint256 _amountPerPledger,
+ +
169 + + + + + +
    uint256 _winningPledgersLength
+ +
170 + + + + + +
  ) external onlyAuthorizedCaller {
+ +
171 + + + + + +
    bytes32 _requestId = _getId(_request);
+ +
172 + + + + + +
    bytes32 _disputeId = _validateDispute(_request, _dispute);
+ +
173 + + + + + +

+                            
+                        
174 + + + + + +
    if (!ORACLE.allowedModule(_requestId, msg.sender)) revert HorizonAccountingExtension_UnauthorizedModule();
+ +
175 + + + + + +

+                            
+                        
176 + + + + + +
    if (_amountPerPledger * _winningPledgersLength > pledges[_disputeId]) {
+ +
177 + + + + + +
      revert HorizonAccountingExtension_InsufficientFunds();
+ +
178 + + + + + +
    }
+ +
179 + + + + + +

+                            
+                        
180 + + + + + +
    if (escalationResults[_disputeId].requestId != bytes32(0)) {
+ +
181 + + + + + +
      revert HorizonAccountingExtension_AlreadySettled();
+ +
182 + + + + + +
    }
+ +
183 + + + + + +

+                            
+                        
184 + + + + + +
    IBondEscalationModule _bondEscalationModule = IBondEscalationModule(msg.sender);
+ +
185 + + + + + +

+                            
+                        
186 + + + + + +
    escalationResults[_disputeId] = EscalationResult({
+ +
187 + + + + + +
      requestId: _requestId,
+ +
188 + + + + + +
      amountPerPledger: _amountPerPledger,
+ +
189 + + + + + +
      bondSize: _bondEscalationModule.decodeRequestData(_request.disputeModuleData).bondSize,
+ +
190 + + + + + +
      bondEscalationModule: _bondEscalationModule
+ +
191 + + + + + +
    });
+ +
192 + + + + + +

+                            
+                        
193 + + + + + +
    emit BondEscalationSettled({
+ +
194 + + + + + +
      _requestId: _requestId,
+ +
195 + + + + + +
      _disputeId: _disputeId,
+ +
196 + + + + + +
      _amountPerPledger: _amountPerPledger,
+ +
197 + + + + + +
      _winningPledgersLength: _winningPledgersLength
+ +
198 + + + + + +
    });
+ +
199 + + + + + +
  }
+ +
200 + + + + + +

+                            
+                        
201 + + + + + +
  /// @inheritdoc IHorizonAccountingExtension
+ +
202 + + + + + +
  function claimEscalationReward(bytes32 _disputeId, address _pledger) external {
+ +
203 + + + + + +
    EscalationResult memory _result = escalationResults[_disputeId];
+ +
204 + + + + + +
    if (_result.requestId == bytes32(0)) revert HorizonAccountingExtension_NoEscalationResult();
+ +
205 + + + + + +
    bytes32 _requestId = _result.requestId;
+ +
206 + + + + + +
    if (pledgerClaimed[_requestId][_pledger]) revert HorizonAccountingExtension_AlreadyClaimed();
+ +
207 + + + + + +

+                            
+                        
208 + + + + + +
    IOracle.DisputeStatus _status = ORACLE.disputeStatus(_disputeId);
+ +
209 + + + + + +
    uint256 _amountPerPledger = _result.amountPerPledger;
+ +
210 + + + + + +
    uint256 _numberOfPledges;
+ +
211 + + + + + +
    uint256 _pledgeAmount;
+ +
212 + + + + + +
    uint256 _claimAmount;
+ +
213 + + + + + +
    uint256 _rewardAmount;
+ +
214 + + + + + +

+                            
+                        
215 + + + + + +
    if (_status == IOracle.DisputeStatus.NoResolution) {
+ +
216 + + + + + +
      _numberOfPledges = _result.bondEscalationModule.pledgesForDispute(_requestId, _pledger)
+ +
217 + + + + + +
        + _result.bondEscalationModule.pledgesAgainstDispute(_requestId, _pledger);
+ +
218 + + + + + +

+                            
+                        
219 + + + + + +
      // If no resolution, pledge amount and claim amount are the same
+ +
220 + + + + + +
      _pledgeAmount = _result.bondSize * _numberOfPledges;
+ +
221 + + + + + +
      _claimAmount = _amountPerPledger * _numberOfPledges;
+ +
222 + + + + + +
    } else {
+ +
223 + + + + + +
      _numberOfPledges = _status == IOracle.DisputeStatus.Won
+ +
224 + + + + + +
        ? _result.bondEscalationModule.pledgesForDispute(_requestId, _pledger)
+ +
225 + + + + + +
        : _result.bondEscalationModule.pledgesAgainstDispute(_requestId, _pledger);
+ +
226 + + + + + +

+                            
+                        
227 + + + + + +
      _pledgeAmount = _result.bondSize * _numberOfPledges;
+ +
228 + + + + + +
      _claimAmount = _amountPerPledger * _numberOfPledges;
+ +
229 + + + + + +
      _rewardAmount = _claimAmount - _pledgeAmount;
+ +
230 + + + + + +

+                            
+                        
231 + + + + + +
      _rewardAmount = _claimAmount - _pledgeAmount;
+ +
232 + + + + + +

+                            
+                        
233 + + + + + +
      // Check the balance in the contract
+ +
234 + + + + + +
      // If not enough balance, slash some users to get enough balance
+ +
235 + + + + + +
      // TODO: How many iterations should we do?
+ +
236 + + + + + +
      while (disputeBalance[_disputeId] < _rewardAmount) {
+ +
237 + + + + + +
        _slash(_disputeId, MAX_USERS_TO_SLASH, maxUsersToCheck, _result, _status);
+ +
238 + + + + + +
      }
+ +
239 + + + + + +

+                            
+                        
240 + + + + + +
      unchecked {
+ +
241 + + + + + +
        disputeBalance[_disputeId] -= _rewardAmount;
+ +
242 + + + + + +
      }
+ +
243 + + + + + +
      // Send the user the amount they won by participating in the dispute
+ +
244 + + + + + +
      GRT.safeTransfer(_pledger, _rewardAmount);
+ +
245 + + + + + +
    }
+ +
246 + + + + + +

+                            
+                        
247 + + + + + +
    // Release the winning pledges to the user
+ +
248 + + + + + +
    _unbond(_pledger, _pledgeAmount);
+ +
249 + + + + + +

+                            
+                        
250 + + + + + +
    pledgerClaimed[_requestId][_pledger] = true;
+ +
251 + + + + + +

+                            
+                        
252 + + + + + +
    pledges[_disputeId] -= _claimAmount;
+ +
253 + + + + + +

+                            
+                        
254 + + + + + +
    if (pledges[_disputeId] == 0) {
+ +
255 + + + + + +
      delete _pledgers[_disputeId];
+ +
256 + + + + + +
    }
+ +
257 + + + + + +

+                            
+                        
258 + + + + + +
    emit EscalationRewardClaimed({
+ +
259 + + + + + +
      _requestId: _requestId,
+ +
260 + + + + + +
      _disputeId: _disputeId,
+ +
261 + + + + + +
      _pledger: _pledger,
+ +
262 + + + + + +
      _reward: _rewardAmount,
+ +
263 + + + + + +
      _released: _pledgeAmount
+ +
264 + + + + + +
    });
+ +
265 + + + + + +
  }
+ +
266 + + + + + +

+                            
+                        
267 + + + + + +
  /// @inheritdoc IHorizonAccountingExtension
+ +
268 + + + + + +
  function pay(
+ +
269 + + + + + +
    bytes32 _requestId,
+ +
270 + + + + + +
    address _payer,
+ +
271 + + + + + +
    address _receiver,
+ +
272 + + + + + +
    IERC20, /* _token */
+ +
273 + + + + + +
    uint256 _amount
+ +
274 + + + + + +
  ) external onlyAllowedModule(_requestId) onlyParticipant(_requestId, _payer) onlyParticipant(_requestId, _receiver) {
+ +
275 + + + + + +
    // Discount the payer bondedForRequest
+ +
276 + + + + + +
    bondedForRequest[_payer][_requestId] -= _amount;
+ +
277 + + + + + +

+                            
+                        
278 + + + + + +
    // Discout the payer totalBonded
+ +
279 + + + + + +
    _unbond(_payer, _amount);
+ +
280 + + + + + +

+                            
+                        
281 + + + + + +
    // Slash a payer to pay the receiver
+ +
282 + + + + + +
    HORIZON_STAKING.slash(_payer, _amount, _amount, _receiver);
+ +
283 + + + + + +

+                            
+                        
284 + + + + + +
    emit Paid({_requestId: _requestId, _beneficiary: _receiver, _payer: _payer, _amount: _amount});
+ +
285 + + + + + +
  }
+ +
286 + + + + + +

+                            
+                        
287 + + + + + +
  /// @inheritdoc IHorizonAccountingExtension
+ +
288 + + + + + +
  function bond(
+ +
289 + + + + + +
    address _bonder,
+ +
290 + + + + + +
    bytes32 _requestId,
+ +
291 + + + + + +
    IERC20, /* _token */
+ +
292 + + + + + +
    uint256 _amount
+ +
293 + + + + + +
  ) external onlyAllowedModule(_requestId) onlyParticipant(_requestId, _bonder) {
+ +
294 + + + + + +
    if (!_approvals[_bonder].contains(msg.sender)) revert HorizonAccountingExtension_NotAllowed();
+ +
295 + + + + + +

+                            
+                        
296 + + + + + +
    bondedForRequest[_bonder][_requestId] += _amount;
+ +
297 + + + + + +

+                            
+                        
298 + + + + + +
    _bond(_bonder, _amount);
+ +
299 + + + + + +

+                            
+                        
300 + + + + + +
    emit Bonded(_requestId, _bonder, _amount);
+ +
301 + + + + + +
  }
+ +
302 + + + + + +

+                            
+                        
303 + + + + + +
  /// @inheritdoc IHorizonAccountingExtension
+ +
304 + + + + + +
  function bond(
+ +
305 + + + + + +
    address _bonder,
+ +
306 + + + + + +
    bytes32 _requestId,
+ +
307 + + + + + +
    IERC20, /* _token */
+ +
308 + + + + + +
    uint256 _amount,
+ +
309 + + + + + +
    address _sender
+ +
310 + + + + + +
  ) external onlyAllowedModule(_requestId) onlyParticipant(_requestId, _bonder) {
+ +
311 + + + + + +
    bool _moduleApproved = _approvals[_bonder].contains(msg.sender);
+ +
312 + + + + + +
    bool _senderApproved = _approvals[_bonder].contains(_sender);
+ +
313 + + + + + +

+                            
+                        
314 + + + + + +
    if (!(_moduleApproved && _senderApproved)) {
+ +
315 + + + + + +
      revert HorizonAccountingExtension_NotAllowed();
+ +
316 + + + + + +
    }
+ +
317 + + + + + +

+                            
+                        
318 + + + + + +
    bondedForRequest[_bonder][_requestId] += _amount;
+ +
319 + + + + + +

+                            
+                        
320 + + + + + +
    _bond(_bonder, _amount);
+ +
321 + + + + + +

+                            
+                        
322 + + + + + +
    emit Bonded(_requestId, _bonder, _amount);
+ +
323 + + + + + +
  }
+ +
324 + + + + + +

+                            
+                        
325 + + + + + +
  /// @inheritdoc IHorizonAccountingExtension
+ +
326 + + + + + +
  function release(
+ +
327 + + + + + +
    address _bonder,
+ +
328 + + + + + +
    bytes32 _requestId,
+ +
329 + + + + + +
    IERC20, /* _token */
+ +
330 + + + + + +
    uint256 _amount
+ +
331 + + + + + +
  ) external onlyAllowedModule(_requestId) onlyParticipant(_requestId, _bonder) {
+ +
332 + + + + + +
    // Release the bond amount for the request for the user
+ +
333 + + + + + +
    bondedForRequest[_bonder][_requestId] -= _amount;
+ +
334 + + + + + +

+                            
+                        
335 + + + + + +
    _unbond(_bonder, _amount);
+ +
336 + + + + + +

+                            
+                        
337 + + + + + +
    emit Released(_requestId, _bonder, _amount);
+ +
338 + + + + + +
  }
+ +
339 + + + + + +

+                            
+                        
340 + + + + + +
  /// @inheritdoc IHorizonAccountingExtension
+ +
341 + + + + + +
  function slash(bytes32 _disputeId, uint256 _usersToSlash, uint256 _maxUsersToCheck) external {
+ +
342 + + + + + +
    EscalationResult memory _result = escalationResults[_disputeId];
+ +
343 + + + + + +

+                            
+                        
344 + + + + + +
    if (_result.requestId == bytes32(0)) revert HorizonAccountingExtension_NoEscalationResult();
+ +
345 + + + + + +

+                            
+                        
346 + + + + + +
    IOracle.DisputeStatus _status = ORACLE.disputeStatus(_disputeId);
+ +
347 + + + + + +

+                            
+                        
348 + + + + + +
    _slash(_disputeId, _usersToSlash, _maxUsersToCheck, _result, _status);
+ +
349 + + + + + +
  }
+ +
350 + + + + + +

+                            
+                        
351 + + + + + +
  /// @inheritdoc IHorizonAccountingExtension
+ +
352 + + + + + +
  function getEscalationResult(bytes32 _disputeId) external view returns (EscalationResult memory _escalationResult) {
+ +
353 + + + + + +
    _escalationResult = escalationResults[_disputeId];
+ +
354 + + + + + +
  }
+ +
355 + + + + + +

+                            
+                        
356 + + + + + +
  /// @inheritdoc IHorizonAccountingExtension
+ +
357 + + + + + +
  function approvedModules(address _user) external view returns (address[] memory _approvedModules) {
+ +
358 + + + + + +
    _approvedModules = _approvals[_user].values();
+ +
359 + + + + + +
  }
+ +
360 + + + + + +

+                            
+                        
361 + + + + + +
  /// @inheritdoc IHorizonAccountingExtension
+ +
362 + + + + + +
  function setMaxUsersToCheck(uint128 _maxUsersToCheck) external {
+ +
363 + +
+ +
+ +
+ +
+ +
    ARBITRABLE.validateArbitrator(msg.sender);
+ +
364 + +
+ +
+ + + +
    _setMaxUsersToCheck(_maxUsersToCheck);
+ +
365 + + + + + +
  }
+ +
366 + + + + + +

+                            
+                        
367 + + + + + +
  /**
+ +
368 + + + + + +
   * @notice Set the maximum number of users to check.
+ +
369 + + + + + +
   * @param _maxUsersToCheck The maximum number of users to check.
+ +
370 + + + + + +
   */
+ +
371 + + + + + +
  function _setMaxUsersToCheck(uint128 _maxUsersToCheck) internal {
+ +
372 + +
+ +
+ + + +
    maxUsersToCheck = _maxUsersToCheck;
+ +
373 + + + + + +

+                            
+                        
374 + +
+ +
+ + + +
    emit MaxUsersToCheckSet(_maxUsersToCheck);
+ +
375 + + + + + +
  }
+ +
376 + + + + + +

+                            
+                        
377 + + + + + +
  /**
+ +
378 + + + + + +
   * @notice Slash the users that have pledged for a dispute.
+ +
379 + + + + + +
   * @param _disputeId The dispute id.
+ +
380 + + + + + +
   * @param _usersToSlash The number of users to slash.
+ +
381 + + + + + +
   * @param _maxUsersToCheck The maximum number of users to check.
+ +
382 + + + + + +
   * @param _result The escalation result.
+ +
383 + + + + + +
   * @param _status The dispute status.
+ +
384 + + + + + +
   */
+ +
385 + + + + + +
  function _slash(
+ +
386 + + + + + +
    bytes32 _disputeId,
+ +
387 + + + + + +
    uint256 _usersToSlash,
+ +
388 + + + + + +
    uint256 _maxUsersToCheck,
+ +
389 + + + + + +
    EscalationResult memory _result,
+ +
390 + + + + + +
    IOracle.DisputeStatus _status
+ +
391 + + + + + +
  ) internal returns (uint256 _slashedAmount) {
+ +
392 + + + + + +
    EnumerableSet.AddressSet storage _users = _pledgers[_disputeId];
+ +
393 + + + + + +

+                            
+                        
394 + + + + + +
    uint256 _slashedUsers;
+ +
395 + + + + + +
    address _user;
+ +
396 + + + + + +
    uint256 _slashAmount;
+ +
397 + + + + + +

+                            
+                        
398 + + + + + +
    uint256 _length = _users.length();
+ +
399 + + + + + +

+                            
+                        
400 + + + + + +
    _maxUsersToCheck = _maxUsersToCheck > _length ? _length : _maxUsersToCheck;
+ +
401 + + + + + +

+                            
+                        
402 + + + + + +
    for (uint256 _i; _i < _maxUsersToCheck && _slashedUsers < _usersToSlash; ++_i) {
+ +
403 + + + + + +
      _user = _users.at(0);
+ +
404 + + + + + +

+                            
+                        
405 + + + + + +
      // Check if the user is actually slashable
+ +
406 + + + + + +
      _slashAmount = _calculateSlashAmount(_user, _result, _status);
+ +
407 + + + + + +
      if (_slashAmount > 0) {
+ +
408 + + + + + +
        // Slash the user
+ +
409 + + + + + +
        HORIZON_STAKING.slash(_user, _slashAmount, _slashAmount, address(this));
+ +
410 + + + + + +
        // TODO: What if `MIN_THAWING_PERIOD` has passed, all provision tokens have been thawed
+ +
411 + + + + + +
        //       and slashing is skipped or reverts (bricking `claimEscalationReward()`)?
+ +
412 + + + + + +

+                            
+                        
413 + + + + + +
        _unbond(_user, _slashAmount);
+ +
414 + + + + + +

+                            
+                        
415 + + + + + +
        _slashedAmount += _slashAmount;
+ +
416 + + + + + +

+                            
+                        
417 + + + + + +
        ++_slashedUsers;
+ +
418 + + + + + +
      }
+ +
419 + + + + + +

+                            
+                        
420 + + + + + +
      // Remove the user from the list of users
+ +
421 + + + + + +
      _users.remove(_user);
+ +
422 + + + + + +
    }
+ +
423 + + + + + +

+                            
+                        
424 + + + + + +
    disputeBalance[_disputeId] += _slashedAmount;
+ +
425 + + + + + +
  }
+ +
426 + + + + + +

+                            
+                        
427 + + + + + +
  /**
+ +
428 + + + + + +
   * @notice Calculate the amount to slash for a user.
+ +
429 + + + + + +
   * @param _pledger The address of the user.
+ +
430 + + + + + +
   * @param _result The escalation result.
+ +
431 + + + + + +
   * @param _status The dispute status.
+ +
432 + + + + + +
   */
+ +
433 + + + + + +
  function _calculateSlashAmount(
+ +
434 + + + + + +
    address _pledger,
+ +
435 + + + + + +
    EscalationResult memory _result,
+ +
436 + + + + + +
    IOracle.DisputeStatus _status
+ +
437 + + + + + +
  ) internal view returns (uint256 _slashAmount) {
+ +
438 + + + + + +
    bytes32 _requestId = _result.requestId;
+ +
439 + + + + + +

+                            
+                        
440 + + + + + +
    uint256 _numberOfPledges;
+ +
441 + + + + + +

+                            
+                        
442 + + + + + +
    // If Won slash the against pledges, if Lost slash the for pledges
+ +
443 + + + + + +
    if (_status != IOracle.DisputeStatus.NoResolution) {
+ +
444 + + + + + +
      _numberOfPledges = _status == IOracle.DisputeStatus.Won
+ +
445 + + + + + +
        ? _result.bondEscalationModule.pledgesAgainstDispute(_requestId, _pledger)
+ +
446 + + + + + +
        : _result.bondEscalationModule.pledgesForDispute(_requestId, _pledger);
+ +
447 + + + + + +
    }
+ +
448 + + + + + +

+                            
+                        
449 + + + + + +
    _slashAmount = _result.bondSize * _numberOfPledges;
+ +
450 + + + + + +
  }
+ +
451 + + + + + +

+                            
+                        
452 + + + + + +
  /**
+ +
453 + + + + + +
   * @notice Bonds the tokens of the user.
+ +
454 + + + + + +
   * @param _bonder The address of the user.
+ +
455 + + + + + +
   * @param _amount The amount of tokens to bond.
+ +
456 + + + + + +
   */
+ +
457 + + + + + +
  function _bond(address _bonder, uint256 _amount) internal {
+ +
458 + + + + + +
    IHorizonStaking.Provision memory _provisionData = HORIZON_STAKING.getProvision(_bonder, address(this));
+ +
459 + + + + + +

+                            
+                        
460 + + + + + +
    if (_provisionData.maxVerifierCut != MAX_VERIFIER_CUT) revert HorizonAccountingExtension_InvalidMaxVerifierCut();
+ +
461 + + + + + +
    if (_provisionData.thawingPeriod < MIN_THAWING_PERIOD) revert HorizonAccountingExtension_InvalidThawingPeriod();
+ +
462 + + + + + +

+                            
+                        
463 + + + + + +
    uint256 _availableTokens = _provisionData.tokens - _provisionData.tokensThawing;
+ +
464 + + + + + +
    if (_amount > _availableTokens) revert HorizonAccountingExtension_InsufficientTokens();
+ +
465 + + + + + +

+                            
+                        
466 + + + + + +
    totalBonded[_bonder] += _amount;
+ +
467 + + + + + +

+                            
+                        
468 + + + + + +
    if (totalBonded[_bonder] > _provisionData.tokens) {
+ +
469 + + + + + +
      revert HorizonAccountingExtension_InsufficientBondedTokens();
+ +
470 + + + + + +
    }
+ +
471 + + + + + +
  }
+ +
472 + + + + + +

+                            
+                        
473 + + + + + +
  /**
+ +
474 + + + + + +
   * @notice Unbonds the tokens of the user.
+ +
475 + + + + + +
   * @param _bonder The address of the user.
+ +
476 + + + + + +
   * @param _amount The amount of tokens to unbond.
+ +
477 + + + + + +
   */
+ +
478 + + + + + +
  function _unbond(address _bonder, uint256 _amount) internal {
+ +
479 + + + + + +
    if (_amount > totalBonded[_bonder]) revert HorizonAccountingExtension_InsufficientBondedTokens();
+ +
480 + + + + + +
    totalBonded[_bonder] -= _amount;
+ +
481 + + + + + +
  }
+ +
482 + + + + + +
}
+ +
483 + + + + + +

+                            
+                        
+
+
+ + + + + + + + + + +
+
+
+ + + + + + +
Lines covered: 0 / 0 (0.0%)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
1 + + + + + +
// SPDX-License-Identifier: GPL-3.0
+ +
2 + + + + + +
pragma solidity 0.8.26;
+ +
3 + + + + + +

+                            
+                        
4 + + + + + +
/**
+ +
5 + + + + + +
 * @title Arbitrable
+ +
6 + + + + + +
 * @notice Makes a contract subject to arbitration by The Graph
+ +
7 + + + + + +
 */
+ +
8 + + + + + +
interface IArbitrable {
+ +
9 + + + + + +
  /*///////////////////////////////////////////////////////////////
+ +
10 + + + + + +
                              EVENTS
+ +
11 + + + + + +
  //////////////////////////////////////////////////////////////*/
+ +
12 + + + + + +

+                            
+                        
13 + + + + + +
  /**
+ +
14 + + + + + +
   * @notice Emitted when The Graph's Arbitrator is set
+ +
15 + + + + + +
   * @param _arbitrator The address of The Graph's Arbitrator
+ +
16 + + + + + +
   */
+ +
17 + + + + + +
  event SetArbitrator(address indexed _arbitrator);
+ +
18 + + + + + +

+                            
+                        
19 + + + + + +
  /**
+ +
20 + + + + + +
   * @notice Emitted when The Graph's Council is set
+ +
21 + + + + + +
   * @param _council The address of The Graph's Council
+ +
22 + + + + + +
   */
+ +
23 + + + + + +
  event SetCouncil(address indexed _council);
+ +
24 + + + + + +

+                            
+                        
25 + + + + + +
  /**
+ +
26 + + + + + +
   * @notice Emitted when the pending The Graph's Council is set
+ +
27 + + + + + +
   * @param _pendingCouncil The address of the pending The Graph's Council
+ +
28 + + + + + +
   */
+ +
29 + + + + + +
  event SetPendingCouncil(address indexed _pendingCouncil);
+ +
30 + + + + + +

+                            
+                        
31 + + + + + +
  /*///////////////////////////////////////////////////////////////
+ +
32 + + + + + +
                              ERRORS
+ +
33 + + + + + +
  //////////////////////////////////////////////////////////////*/
+ +
34 + + + + + +

+                            
+                        
35 + + + + + +
  /**
+ +
36 + + + + + +
   * @notice Thrown when the caller is not The Graph's Arbitrator
+ +
37 + + + + + +
   */
+ +
38 + + + + + +
  error Arbitrable_OnlyArbitrator();
+ +
39 + + + + + +

+                            
+                        
40 + + + + + +
  /**
+ +
41 + + + + + +
   * @notice Thrown when the caller is not The Graph's Council
+ +
42 + + + + + +
   */
+ +
43 + + + + + +
  error Arbitrable_OnlyCouncil();
+ +
44 + + + + + +

+                            
+                        
45 + + + + + +
  /**
+ +
46 + + + + + +
   * @notice Thrown when the caller is not the pending The Graph's Council
+ +
47 + + + + + +
   */
+ +
48 + + + + + +
  error Arbitrable_OnlyPendingCouncil();
+ +
49 + + + + + +

+                            
+                        
50 + + + + + +
  /*///////////////////////////////////////////////////////////////
+ +
51 + + + + + +
                              VARIABLES
+ +
52 + + + + + +
  //////////////////////////////////////////////////////////////*/
+ +
53 + + + + + +

+                            
+                        
54 + + + + + +
  /**
+ +
55 + + + + + +
   * @notice Returns the address of The Graph's Arbitrator
+ +
56 + + + + + +
   * @return __arbitrator The address of The Graph's Arbitrator
+ +
57 + + + + + +
   */
+ +
58 + + + + + +
  function arbitrator() external view returns (address __arbitrator);
+ +
59 + + + + + +

+                            
+                        
60 + + + + + +
  /**
+ +
61 + + + + + +
   * @notice Returns the address of The Graph's Council
+ +
62 + + + + + +
   * @return __council The address of The Graph's Council
+ +
63 + + + + + +
   */
+ +
64 + + + + + +
  function council() external view returns (address __council);
+ +
65 + + + + + +

+                            
+                        
66 + + + + + +
  /**
+ +
67 + + + + + +
   * @notice Returns the address of the pending The Graph's Council
+ +
68 + + + + + +
   * @return __pendingCouncil The address of the pending The Graph's Council
+ +
69 + + + + + +
   */
+ +
70 + + + + + +
  function pendingCouncil() external view returns (address __pendingCouncil);
+ +
71 + + + + + +

+                            
+                        
72 + + + + + +
  /**
+ +
73 + + + + + +
   * @notice Checks that the caller is The Graph's Arbitrator
+ +
74 + + + + + +
   */
+ +
75 + + + + + +
  function validateArbitrator(address _caller) external view;
+ +
76 + + + + + +

+                            
+                        
77 + + + + + +
  /*///////////////////////////////////////////////////////////////
+ +
78 + + + + + +
                              LOGIC
+ +
79 + + + + + +
  //////////////////////////////////////////////////////////////*/
+ +
80 + + + + + +

+                            
+                        
81 + + + + + +
  /**
+ +
82 + + + + + +
   * @notice Changes the address of The Graph's Arbitrator
+ +
83 + + + + + +
   * @dev Callable only by The Graph's Council
+ +
84 + + + + + +
   * @param _arbitrator The address of The Graph's Arbitrator
+ +
85 + + + + + +
   */
+ +
86 + + + + + +
  function setArbitrator(address _arbitrator) external;
+ +
87 + + + + + +

+                            
+                        
88 + + + + + +
  /**
+ +
89 + + + + + +
   * @notice Sets the address of the pending The Graph's Council
+ +
90 + + + + + +
   * @dev Callable only by The Graph's Council
+ +
91 + + + + + +
   * @param _pendingCouncil The address of the pending The Graph's Council
+ +
92 + + + + + +
   */
+ +
93 + + + + + +
  function setPendingCouncil(address _pendingCouncil) external;
+ +
94 + + + + + +

+                            
+                        
95 + + + + + +
  /**
+ +
96 + + + + + +
   * @notice Changes the address of The Graph's Council to the pending one
+ +
97 + + + + + +
   * @dev Callable only by the pending The Graph's Council
+ +
98 + + + + + +
   */
+ +
99 + + + + + +
  function confirmCouncil() external;
+ +
100 + + + + + +
}
+ +
101 + + + + + +

+                            
+                        
+
+
+ + + + + + + + + + +
+
+
+ + + + + + +
Lines covered: 0 / 0 (0.0%)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
1 + + + + + +
// SPDX-License-Identifier: GPL-3.0
+ +
2 + + + + + +
pragma solidity 0.8.26;
+ +
3 + + + + + +

+                            
+                        
4 + + + + + +
import {IOracle} from '@defi-wonderland/prophet-core/solidity/interfaces/IOracle.sol';
+ +
5 + + + + + +
import {IArbitrator} from '@defi-wonderland/prophet-modules/solidity/interfaces/IArbitrator.sol';
+ +
6 + + + + + +
import {IArbitratorModule} from
+ +
7 + + + + + +
  '@defi-wonderland/prophet-modules/solidity/interfaces/modules/resolution/IArbitratorModule.sol';
+ +
8 + + + + + +

+                            
+                        
9 + + + + + +
import {IArbitrable} from 'interfaces/IArbitrable.sol';
+ +
10 + + + + + +

+                            
+                        
11 + + + + + +
/**
+ +
12 + + + + + +
 * @title CouncilArbitrator
+ +
13 + + + + + +
 * @notice Resolves disputes by arbitration by The Graph
+ +
14 + + + + + +
 */
+ +
15 + + + + + +
interface ICouncilArbitrator is IArbitrator {
+ +
16 + + + + + +
  /*///////////////////////////////////////////////////////////////
+ +
17 + + + + + +
                              STRUCTS
+ +
18 + + + + + +
  //////////////////////////////////////////////////////////////*/
+ +
19 + + + + + +

+                            
+                        
20 + + + + + +
  /**
+ +
21 + + + + + +
   * @notice Parameters of the resolution as stored in the contract
+ +
22 + + + + + +
   * @param request The request data
+ +
23 + + + + + +
   * @param response The response data
+ +
24 + + + + + +
   * @param dispute The dispute data
+ +
25 + + + + + +
   */
+ +
26 + + + + + +
  struct ResolutionParameters {
+ +
27 + + + + + +
    IOracle.Request request;
+ +
28 + + + + + +
    IOracle.Response response;
+ +
29 + + + + + +
    IOracle.Dispute dispute;
+ +
30 + + + + + +
  }
+ +
31 + + + + + +

+                            
+                        
32 + + + + + +
  /*///////////////////////////////////////////////////////////////
+ +
33 + + + + + +
                              EVENTS
+ +
34 + + + + + +
  //////////////////////////////////////////////////////////////*/
+ +
35 + + + + + +

+                            
+                        
36 + + + + + +
  /**
+ +
37 + + + + + +
   * @notice Emitted when a resolution is started by the Arbitrator Module
+ +
38 + + + + + +
   * @param _disputeId The ID of the dispute that the resolution was started for
+ +
39 + + + + + +
   * @param _request The request data
+ +
40 + + + + + +
   * @param _response The response data
+ +
41 + + + + + +
   * @param _dispute The dispute data
+ +
42 + + + + + +
   */
+ +
43 + + + + + +
  event ResolutionStarted(
+ +
44 + + + + + +
    bytes32 indexed _disputeId, IOracle.Request _request, IOracle.Response _response, IOracle.Dispute _dispute
+ +
45 + + + + + +
  );
+ +
46 + + + + + +

+                            
+                        
47 + + + + + +
  /**
+ +
48 + + + + + +
   * @notice Emitted when a dispute is arbitrated by The Graph's Arbitrator
+ +
49 + + + + + +
   * @param _disputeId The ID of the dispute that was arbitrated
+ +
50 + + + + + +
   * @param _award The final result of the resolution
+ +
51 + + + + + +
   */
+ +
52 + + + + + +
  event DisputeArbitrated(bytes32 indexed _disputeId, IOracle.DisputeStatus _award);
+ +
53 + + + + + +

+                            
+                        
54 + + + + + +
  /*///////////////////////////////////////////////////////////////
+ +
55 + + + + + +
                              ERRORS
+ +
56 + + + + + +
  //////////////////////////////////////////////////////////////*/
+ +
57 + + + + + +

+                            
+                        
58 + + + + + +
  /**
+ +
59 + + + + + +
   * @notice Thrown when the caller is not the Arbitrator Module
+ +
60 + + + + + +
   */
+ +
61 + + + + + +
  error CouncilArbitrator_OnlyArbitratorModule();
+ +
62 + + + + + +

+                            
+                        
63 + + + + + +
  /**
+ +
64 + + + + + +
   * @notice Thrown when trying to arbitrate a dispute with no pending resolution
+ +
65 + + + + + +
   */
+ +
66 + + + + + +
  error CouncilArbitrator_InvalidDispute();
+ +
67 + + + + + +

+                            
+                        
68 + + + + + +
  /**
+ +
69 + + + + + +
   * @notice Thrown when trying to arbitrate a dispute with an invalid award
+ +
70 + + + + + +
   */
+ +
71 + + + + + +
  error CouncilArbitrator_InvalidAward();
+ +
72 + + + + + +

+                            
+                        
73 + + + + + +
  /**
+ +
74 + + + + + +
   * @notice Thrown when trying to arbitrate a dispute that is already arbitrated
+ +
75 + + + + + +
   */
+ +
76 + + + + + +
  error CouncilArbitrator_DisputeAlreadyArbitrated();
+ +
77 + + + + + +

+                            
+                        
78 + + + + + +
  /*///////////////////////////////////////////////////////////////
+ +
79 + + + + + +
                              VARIABLES
+ +
80 + + + + + +
  //////////////////////////////////////////////////////////////*/
+ +
81 + + + + + +

+                            
+                        
82 + + + + + +
  /**
+ +
83 + + + + + +
   * @notice Returns the address of the Oracle
+ +
84 + + + + + +
   * @return _oracle The address of the Oracle
+ +
85 + + + + + +
   */
+ +
86 + + + + + +
  function ORACLE() external view returns (IOracle _oracle);
+ +
87 + + + + + +

+                            
+                        
88 + + + + + +
  /**
+ +
89 + + + + + +
   * @notice Returns the address of the Arbitrator Module
+ +
90 + + + + + +
   * @return _arbitratorModule The address of the Arbitrator Module
+ +
91 + + + + + +
   */
+ +
92 + + + + + +
  function ARBITRATOR_MODULE() external view returns (IArbitratorModule _arbitratorModule);
+ +
93 + + + + + +

+                            
+                        
94 + + + + + +
  /**
+ +
95 + + + + + +
   * @notice Returns the address of the arbitrable contract
+ +
96 + + + + + +
   * @return _ARBITRABLE The address of the arbitrable contract
+ +
97 + + + + + +
   */
+ +
98 + + + + + +
  function ARBITRABLE() external view returns (IArbitrable _ARBITRABLE);
+ +
99 + + + + + +

+                            
+                        
100 + + + + + +
  /**
+ +
101 + + + + + +
   * @notice Returns the resolution data for a dispute
+ +
102 + + + + + +
   * @param _disputeId The ID of the dispute
+ +
103 + + + + + +
   * @return _request The request data
+ +
104 + + + + + +
   * @return _response The response data
+ +
105 + + + + + +
   * @return _dispute The dispute data
+ +
106 + + + + + +
   */
+ +
107 + + + + + +
  function resolutions(bytes32 _disputeId)
+ +
108 + + + + + +
    external
+ +
109 + + + + + +
    view
+ +
110 + + + + + +
    returns (IOracle.Request memory _request, IOracle.Response memory _response, IOracle.Dispute memory _dispute);
+ +
111 + + + + + +

+                            
+                        
112 + + + + + +
  /**
+ +
113 + + + + + +
   * @notice Returns the resolution parameters for a dispute
+ +
114 + + + + + +
   * @param _disputeId The ID of the dispute
+ +
115 + + + + + +
   * @return _resolutionParams The resolution parameters
+ +
116 + + + + + +
   */
+ +
117 + + + + + +
  function getResolution(bytes32 _disputeId) external view returns (ResolutionParameters memory _resolutionParams);
+ +
118 + + + + + +

+                            
+                        
119 + + + + + +
  /*///////////////////////////////////////////////////////////////
+ +
120 + + + + + +
                              LOGIC
+ +
121 + + + + + +
  //////////////////////////////////////////////////////////////*/
+ +
122 + + + + + +

+                            
+                        
123 + + + + + +
  /**
+ +
124 + + + + + +
   * @notice Publishes the arbitration award, resolves a dispute and, if applicable, finalizes a request
+ +
125 + + + + + +
   * @dev Callable only by The Graph's Arbitrator
+ +
126 + + + + + +
   * @param _disputeId The ID of the dispute
+ +
127 + + + + + +
   * @param _award The result of the resolution for the dispute
+ +
128 + + + + + +
   */
+ +
129 + + + + + +
  function arbitrateDispute(bytes32 _disputeId, IOracle.DisputeStatus _award) external;
+ +
130 + + + + + +
}
+ +
131 + + + + + +

+                            
+                        
+
+
+ + + + + + + + + + +
+
+
+ + + + + + +
Lines covered: 0 / 0 (0.0%)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
1 + + + + + +
// SPDX-License-Identifier: GPL-3.0
+ +
2 + + + + + +
pragma solidity 0.8.26;
+ +
3 + + + + + +

+                            
+                        
4 + + + + + +
import {IOracle} from '@defi-wonderland/prophet-core/solidity/interfaces/IOracle.sol';
+ +
5 + + + + + +
import {IFinalityModule} from '@defi-wonderland/prophet-core/solidity/interfaces/modules/finality/IFinalityModule.sol';
+ +
6 + + + + + +

+                            
+                        
7 + + + + + +
import {IArbitrable} from 'interfaces/IArbitrable.sol';
+ +
8 + + + + + +
import {IEBORequestCreator} from 'interfaces/IEBORequestCreator.sol';
+ +
9 + + + + + +
import {IEBORequestModule} from 'interfaces/IEBORequestModule.sol';
+ +
10 + + + + + +

+                            
+                        
11 + + + + + +
/**
+ +
12 + + + + + +
 * @title EBOFinalityModule
+ +
13 + + + + + +
 * @notice Module allowing users to index data into the subgraph
+ +
14 + + + + + +
 * as a result of a request being finalized
+ +
15 + + + + + +
 */
+ +
16 + + + + + +
interface IEBOFinalityModule is IFinalityModule {
+ +
17 + + + + + +
  /*///////////////////////////////////////////////////////////////
+ +
18 + + + + + +
                              EVENTS
+ +
19 + + + + + +
  //////////////////////////////////////////////////////////////*/
+ +
20 + + + + + +

+                            
+                        
21 + + + + + +
  /**
+ +
22 + + + + + +
   * @notice Emitted when the block number has been resolved for a particular epoch-chainId pair
+ +
23 + + + + + +
   * @param _epoch The new epoch
+ +
24 + + + + + +
   * @param _chainId The chain ID
+ +
25 + + + + + +
   * @param _blockNumber The block number for the epoch-chainId pair
+ +
26 + + + + + +
   */
+ +
27 + + + + + +
  event NewEpoch(uint256 indexed _epoch, string indexed _chainId, uint256 _blockNumber);
+ +
28 + + + + + +

+                            
+                        
29 + + + + + +
  /**
+ +
30 + + + + + +
   * @notice Emitted when a block number is amended
+ +
31 + + + + + +
   * @param _epoch The epoch to amend
+ +
32 + + + + + +
   * @param _chainId The chain ID to amend
+ +
33 + + + + + +
   * @param _blockNumber The amended block number
+ +
34 + + + + + +
   */
+ +
35 + + + + + +
  event AmendEpoch(uint256 indexed _epoch, string indexed _chainId, uint256 _blockNumber);
+ +
36 + + + + + +

+                            
+                        
37 + + + + + +
  /**
+ +
38 + + + + + +
   * @notice Emitted when the EBORequestCreator is added
+ +
39 + + + + + +
   * @param _eboRequestCreator The address of the EBORequestCreator
+ +
40 + + + + + +
   */
+ +
41 + + + + + +
  event AddEBORequestCreator(IEBORequestCreator indexed _eboRequestCreator);
+ +
42 + + + + + +

+                            
+                        
43 + + + + + +
  /**
+ +
44 + + + + + +
   * @notice Emitted when an EBORequestCreator is removed
+ +
45 + + + + + +
   * @param _eboRequestCreator The address of the EBORequestCreator
+ +
46 + + + + + +
   */
+ +
47 + + + + + +
  event RemoveEBORequestCreator(IEBORequestCreator indexed _eboRequestCreator);
+ +
48 + + + + + +

+                            
+                        
49 + + + + + +
  /*///////////////////////////////////////////////////////////////
+ +
50 + + + + + +
                              ERRORS
+ +
51 + + + + + +
  //////////////////////////////////////////////////////////////*/
+ +
52 + + + + + +

+                            
+                        
53 + + + + + +
  /**
+ +
54 + + + + + +
   * @notice Thrown when the requester is not the EBORequestCreator
+ +
55 + + + + + +
   */
+ +
56 + + + + + +
  error EBOFinalityModule_InvalidRequester();
+ +
57 + + + + + +

+                            
+                        
58 + + + + + +
  /**
+ +
59 + + + + + +
   * @notice Thrown when the lengths of chain IDs and block numbers do not match
+ +
60 + + + + + +
   */
+ +
61 + + + + + +
  error EBOFinalityModule_LengthMismatch();
+ +
62 + + + + + +

+                            
+                        
63 + + + + + +
  /*///////////////////////////////////////////////////////////////
+ +
64 + + + + + +
                              VARIABLES
+ +
65 + + + + + +
  //////////////////////////////////////////////////////////////*/
+ +
66 + + + + + +

+                            
+                        
67 + + + + + +
  /**
+ +
68 + + + + + +
   * @notice Returns the address of the arbitrable contract
+ +
69 + + + + + +
   * @return _ARBITRABLE The address of the arbitrable contract
+ +
70 + + + + + +
   */
+ +
71 + + + + + +
  function ARBITRABLE() external view returns (IArbitrable _ARBITRABLE);
+ +
72 + + + + + +

+                            
+                        
73 + + + + + +
  /**
+ +
74 + + + + + +
   * @notice Returns the EBORequestCreators allowed
+ +
75 + + + + + +
   * @return _eboRequestCreators The EBORequestCreators allowed
+ +
76 + + + + + +
   */
+ +
77 + + + + + +
  function getAllowedEBORequestCreators() external view returns (address[] memory _eboRequestCreators);
+ +
78 + + + + + +

+                            
+                        
79 + + + + + +
  /*///////////////////////////////////////////////////////////////
+ +
80 + + + + + +
                              LOGIC
+ +
81 + + + + + +
  //////////////////////////////////////////////////////////////*/
+ +
82 + + + + + +

+                            
+                        
83 + + + + + +
  /**
+ +
84 + + + + + +
   * @notice Finalizes the request by publishing the response
+ +
85 + + + + + +
   * @dev Callable only by the Oracle
+ +
86 + + + + + +
   * @param _request The request being finalized
+ +
87 + + + + + +
   * @param _response The final response
+ +
88 + + + + + +
   * @param _finalizer The address that initiated the finalization
+ +
89 + + + + + +
   */
+ +
90 + + + + + +
  function finalizeRequest(
+ +
91 + + + + + +
    IOracle.Request calldata _request,
+ +
92 + + + + + +
    IOracle.Response calldata _response,
+ +
93 + + + + + +
    address _finalizer
+ +
94 + + + + + +
  ) external;
+ +
95 + + + + + +

+                            
+                        
96 + + + + + +
  /**
+ +
97 + + + + + +
   * @notice Allows to amend data in case of an error or an emergency
+ +
98 + + + + + +
   * @dev Callable only by The Graph's Arbitrator
+ +
99 + + + + + +
   * @param _epoch The epoch to amend
+ +
100 + + + + + +
   * @param _chainIds The chain IDs to amend
+ +
101 + + + + + +
   * @param _blockNumbers The amended block numbers
+ +
102 + + + + + +
   */
+ +
103 + + + + + +
  function amendEpoch(uint256 _epoch, string[] calldata _chainIds, uint256[] calldata _blockNumbers) external;
+ +
104 + + + + + +

+                            
+                        
105 + + + + + +
  /**
+ +
106 + + + + + +
   * @notice Adds the address of the EBORequestCreator
+ +
107 + + + + + +
   * @dev Callable only by The Graph's Arbitrator
+ +
108 + + + + + +
   * @param _eboRequestCreator The address of the EBORequestCreator
+ +
109 + + + + + +
   */
+ +
110 + + + + + +
  function addEBORequestCreator(IEBORequestCreator _eboRequestCreator) external;
+ +
111 + + + + + +

+                            
+                        
112 + + + + + +
  /**
+ +
113 + + + + + +
   * @notice Removes the address of the EBORequestCreator
+ +
114 + + + + + +
   * @dev Callable only by The Graph's Arbitrator
+ +
115 + + + + + +
   * @param _eboRequestCreator The address of the EBORequestCreator
+ +
116 + + + + + +
   */
+ +
117 + + + + + +
  function removeEBORequestCreator(IEBORequestCreator _eboRequestCreator) external;
+ +
118 + + + + + +

+                            
+                        
119 + + + + + +
  /**
+ +
120 + + + + + +
   * @notice Decodes the request data
+ +
121 + + + + + +
   * @param _data The request data
+ +
122 + + + + + +
   * @return _params The decoded request data
+ +
123 + + + + + +
   */
+ +
124 + + + + + +
  function decodeRequestData(bytes calldata _data)
+ +
125 + + + + + +
    external
+ +
126 + + + + + +
    pure
+ +
127 + + + + + +
    returns (IEBORequestModule.RequestParameters memory _params);
+ +
128 + + + + + +

+                            
+                        
129 + + + + + +
  /**
+ +
130 + + + + + +
   * @notice Decodes the response data
+ +
131 + + + + + +
   * @param _data The response data
+ +
132 + + + + + +
   * @return _block The decoded response data which is the block number
+ +
133 + + + + + +
   */
+ +
134 + + + + + +
  function decodeResponseData(bytes calldata _data) external pure returns (uint256 _block);
+ +
135 + + + + + +
}
+ +
136 + + + + + +

+                            
+                        
+
+
+ + + + + + + + + + +
+
+
+ + + + + + +
Lines covered: 0 / 0 (0.0%)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
1 + + + + + +
// SPDX-License-Identifier: GPL-3.0
+ +
2 + + + + + +
pragma solidity 0.8.26;
+ +
3 + + + + + +

+                            
+                        
4 + + + + + +
import {IOracle} from '@defi-wonderland/prophet-core/solidity/interfaces/IOracle.sol';
+ +
5 + + + + + +
import {IBondEscalationModule} from
+ +
6 + + + + + +
  '@defi-wonderland/prophet-modules/solidity/interfaces/modules/dispute/IBondEscalationModule.sol';
+ +
7 + + + + + +
import {IArbitratorModule} from
+ +
8 + + + + + +
  '@defi-wonderland/prophet-modules/solidity/interfaces/modules/resolution/IArbitratorModule.sol';
+ +
9 + + + + + +
import {IBondedResponseModule} from
+ +
10 + + + + + +
  '@defi-wonderland/prophet-modules/solidity/interfaces/modules/response/IBondedResponseModule.sol';
+ +
11 + + + + + +
import {IEpochManager} from 'interfaces/external/IEpochManager.sol';
+ +
12 + + + + + +

+                            
+                        
13 + + + + + +
import {IArbitrable} from 'interfaces/IArbitrable.sol';
+ +
14 + + + + + +
import {IEBORequestModule} from 'interfaces/IEBORequestModule.sol';
+ +
15 + + + + + +

+                            
+                        
16 + + + + + +
interface IEBORequestCreator {
+ +
17 + + + + + +
  /*///////////////////////////////////////////////////////////////
+ +
18 + + + + + +
                            EVENTS
+ +
19 + + + + + +
  //////////////////////////////////////////////////////////////*/
+ +
20 + + + + + +

+                            
+                        
21 + + + + + +
  /**
+ +
22 + + + + + +
   * @notice Emitted when a request is created
+ +
23 + + + + + +
   * @param _requestId The id of the request
+ +
24 + + + + + +
   * @param _request The request created
+ +
25 + + + + + +
   * @param _epoch The epoch of the request
+ +
26 + + + + + +
   * @param _chainId The chain id of the request
+ +
27 + + + + + +
   */
+ +
28 + + + + + +
  event RequestCreated(
+ +
29 + + + + + +
    bytes32 indexed _requestId, IOracle.Request _request, uint256 indexed _epoch, string indexed _chainId
+ +
30 + + + + + +
  );
+ +
31 + + + + + +

+                            
+                        
32 + + + + + +
  /**
+ +
33 + + + + + +
   * @notice Emitted when a chain is added
+ +
34 + + + + + +
   * @param _chainId The chain id added
+ +
35 + + + + + +
   */
+ +
36 + + + + + +
  event ChainAdded(string indexed _chainId);
+ +
37 + + + + + +

+                            
+                        
38 + + + + + +
  /**
+ +
39 + + + + + +
   * @notice Emitted when a chain is removed
+ +
40 + + + + + +
   * @param _chainId The chain id removed
+ +
41 + + + + + +
   */
+ +
42 + + + + + +
  event ChainRemoved(string indexed _chainId);
+ +
43 + + + + + +

+                            
+                        
44 + + + + + +
  /**
+ +
45 + + + + + +
   * @notice Emitted when the request data module is set
+ +
46 + + + + + +
   * @param _requestModule The request module
+ +
47 + + + + + +
   * @param _requestModuleData The request module data
+ +
48 + + + + + +
   */
+ +
49 + + + + + +
  event RequestModuleDataSet(address indexed _requestModule, IEBORequestModule.RequestParameters _requestModuleData);
+ +
50 + + + + + +

+                            
+                        
51 + + + + + +
  /**
+ +
52 + + + + + +
   * @notice Emitted when the response data module is set
+ +
53 + + + + + +
   * @param _responseModule The response module
+ +
54 + + + + + +
   * @param _responseModuleData The response module data
+ +
55 + + + + + +
   */
+ +
56 + + + + + +
  event ResponseModuleDataSet(
+ +
57 + + + + + +
    address indexed _responseModule, IBondedResponseModule.RequestParameters _responseModuleData
+ +
58 + + + + + +
  );
+ +
59 + + + + + +

+                            
+                        
60 + + + + + +
  /**
+ +
61 + + + + + +
   * @notice Emitted when the dispute data module is set
+ +
62 + + + + + +
   * @param _disputeModule The dispute module
+ +
63 + + + + + +
   * @param _disputeModuleData The dispute module data
+ +
64 + + + + + +
   */
+ +
65 + + + + + +
  event DisputeModuleDataSet(
+ +
66 + + + + + +
    address indexed _disputeModule, IBondEscalationModule.RequestParameters _disputeModuleData
+ +
67 + + + + + +
  );
+ +
68 + + + + + +

+                            
+                        
69 + + + + + +
  /**
+ +
70 + + + + + +
   * @notice Emitted when the resolution data module is set
+ +
71 + + + + + +
   * @param _resolutionModule The resolution module
+ +
72 + + + + + +
   * @param _resolutionModuleData The resolution module data
+ +
73 + + + + + +
   */
+ +
74 + + + + + +
  event ResolutionModuleDataSet(
+ +
75 + + + + + +
    address indexed _resolutionModule, IArbitratorModule.RequestParameters _resolutionModuleData
+ +
76 + + + + + +
  );
+ +
77 + + + + + +

+                            
+                        
78 + + + + + +
  /**
+ +
79 + + + + + +
   * @notice Emitted when the finality data module is set
+ +
80 + + + + + +
   * @param _finalityModule The finality module
+ +
81 + + + + + +
   * @param _finalityModuleData The finality module data
+ +
82 + + + + + +
   */
+ +
83 + + + + + +
  event FinalityModuleDataSet(address indexed _finalityModule, bytes _finalityModuleData);
+ +
84 + + + + + +

+                            
+                        
85 + + + + + +
  /**
+ +
86 + + + + + +
   * @notice Emitted when the epoch manager is set
+ +
87 + + + + + +
   * @param _epochManager The epoch manager
+ +
88 + + + + + +
   */
+ +
89 + + + + + +
  event EpochManagerSet(IEpochManager indexed _epochManager);
+ +
90 + + + + + +

+                            
+                        
91 + + + + + +
  /*///////////////////////////////////////////////////////////////
+ +
92 + + + + + +
                            ERRORS
+ +
93 + + + + + +
  //////////////////////////////////////////////////////////////*/
+ +
94 + + + + + +

+                            
+                        
95 + + + + + +
  /**
+ +
96 + + + + + +
   * @notice Thrown when the nonce is not zero
+ +
97 + + + + + +
   */
+ +
98 + + + + + +
  error EBORequestCreator_InvalidNonce();
+ +
99 + + + + + +
  /**
+ +
100 + + + + + +
   * @notice Thrown when the chain is already added
+ +
101 + + + + + +
   */
+ +
102 + + + + + +
  error EBORequestCreator_ChainAlreadyAdded();
+ +
103 + + + + + +

+                            
+                        
104 + + + + + +
  /**
+ +
105 + + + + + +
   * @notice Thrown when the request is already created
+ +
106 + + + + + +
   */
+ +
107 + + + + + +
  error EBORequestCreator_RequestAlreadyCreated();
+ +
108 + + + + + +

+                            
+                        
109 + + + + + +
  /**
+ +
110 + + + + + +
   * @notice Thrown when the chain is not added
+ +
111 + + + + + +
   */
+ +
112 + + + + + +
  error EBORequestCreator_ChainNotAdded();
+ +
113 + + + + + +

+                            
+                        
114 + + + + + +
  /**
+ +
115 + + + + + +
   * @notice Thrown when the epoch is not valid
+ +
116 + + + + + +
   */
+ +
117 + + + + + +
  error EBORequestCreator_InvalidEpoch();
+ +
118 + + + + + +

+                            
+                        
119 + + + + + +
  /*///////////////////////////////////////////////////////////////
+ +
120 + + + + + +
                            VARIABLES
+ +
121 + + + + + +
  //////////////////////////////////////////////////////////////*/
+ +
122 + + + + + +

+                            
+                        
123 + + + + + +
  /**
+ +
124 + + + + + +
   * @notice The oracle contract
+ +
125 + + + + + +
   * @return _ORACLE The oracle contract
+ +
126 + + + + + +
   */
+ +
127 + + + + + +
  function ORACLE() external view returns (IOracle _ORACLE);
+ +
128 + + + + + +

+                            
+                        
129 + + + + + +
  /**
+ +
130 + + + + + +
   * @notice The first valid epoch to create requests
+ +
131 + + + + + +
   * @return _START_EPOCH The start epoch
+ +
132 + + + + + +
   */
+ +
133 + + + + + +
  function START_EPOCH() external view returns (uint256 _START_EPOCH);
+ +
134 + + + + + +

+                            
+                        
135 + + + + + +
  /**
+ +
136 + + + + + +
   * @notice Returns the address of the arbitrable contract
+ +
137 + + + + + +
   * @return _ARBITRABLE The address of the arbitrable contract
+ +
138 + + + + + +
   */
+ +
139 + + + + + +
  function ARBITRABLE() external view returns (IArbitrable _ARBITRABLE);
+ +
140 + + + + + +

+                            
+                        
141 + + + + + +
  /**
+ +
142 + + + + + +
   * @notice The epoch manager contract
+ +
143 + + + + + +
   * @return _epochManager The epoch manager contract
+ +
144 + + + + + +
   */
+ +
145 + + + + + +
  function epochManager() external view returns (IEpochManager _epochManager);
+ +
146 + + + + + +

+                            
+                        
147 + + + + + +
  /**
+ +
148 + + + + + +
   * @notice The request data
+ +
149 + + + + + +
   * @return _nonce The nonce
+ +
150 + + + + + +
   * @return _requester The requester address
+ +
151 + + + + + +
   * @return _requestModule The request module address
+ +
152 + + + + + +
   * @return _responseModule The response module address
+ +
153 + + + + + +
   * @return _disputeModule The dispute module address
+ +
154 + + + + + +
   * @return _resolutionModule The resolution module address
+ +
155 + + + + + +
   * @return _finalityModule The finality module address
+ +
156 + + + + + +
   * @return _requestModuleData The request module data
+ +
157 + + + + + +
   * @return _responseModuleData The response module data
+ +
158 + + + + + +
   * @return _disputeModuleData The dispute module data
+ +
159 + + + + + +
   * @return _resolutionModuleData The resolution module data
+ +
160 + + + + + +
   * @return _finalityModuleData The finality module data
+ +
161 + + + + + +
   */
+ +
162 + + + + + +
  function requestData()
+ +
163 + + + + + +
    external
+ +
164 + + + + + +
    view
+ +
165 + + + + + +
    returns (
+ +
166 + + + + + +
      uint96 _nonce,
+ +
167 + + + + + +
      address _requester,
+ +
168 + + + + + +
      address _requestModule,
+ +
169 + + + + + +
      address _responseModule,
+ +
170 + + + + + +
      address _disputeModule,
+ +
171 + + + + + +
      address _resolutionModule,
+ +
172 + + + + + +
      address _finalityModule,
+ +
173 + + + + + +
      bytes memory _requestModuleData,
+ +
174 + + + + + +
      bytes memory _responseModuleData,
+ +
175 + + + + + +
      bytes memory _disputeModuleData,
+ +
176 + + + + + +
      bytes memory _resolutionModuleData,
+ +
177 + + + + + +
      bytes memory _finalityModuleData
+ +
178 + + + + + +
    );
+ +
179 + + + + + +

+                            
+                        
180 + + + + + +
  /**
+ +
181 + + + + + +
   * @notice The request data
+ +
182 + + + + + +
   * @return _requestData The request data
+ +
183 + + + + + +
   */
+ +
184 + + + + + +
  function getRequestData() external view returns (IOracle.Request memory _requestData);
+ +
185 + + + + + +

+                            
+                        
186 + + + + + +
  /**
+ +
187 + + + + + +
   * @notice The request id per chain and epoch
+ +
188 + + + + + +
   * @param _chainId The chain id
+ +
189 + + + + + +
   * @param _epoch The epoch
+ +
190 + + + + + +
   * @return _requestId The request id
+ +
191 + + + + + +
   */
+ +
192 + + + + + +
  function requestIdPerChainAndEpoch(
+ +
193 + + + + + +
    string calldata _chainId,
+ +
194 + + + + + +
    uint256 _epoch
+ +
195 + + + + + +
  ) external view returns (bytes32 _requestId);
+ +
196 + + + + + +

+                            
+                        
197 + + + + + +
  /**
+ +
198 + + + + + +
   * @notice Returns the allowed chain ids
+ +
199 + + + + + +
   * @return _chainIds The allowed chain ids
+ +
200 + + + + + +
   */
+ +
201 + + + + + +
  function getAllowedChainIds() external view returns (bytes32[] memory _chainIds);
+ +
202 + + + + + +

+                            
+                        
203 + + + + + +
  /*///////////////////////////////////////////////////////////////
+ +
204 + + + + + +
                            LOGIC
+ +
205 + + + + + +
  //////////////////////////////////////////////////////////////*/
+ +
206 + + + + + +

+                            
+                        
207 + + + + + +
  /**
+ +
208 + + + + + +
   * @notice Create request
+ +
209 + + + + + +
   * @param _epoch The epoch of the request
+ +
210 + + + + + +
   * @param _chainId The chain id to update
+ +
211 + + + + + +
   */
+ +
212 + + + + + +
  function createRequest(uint256 _epoch, string calldata _chainId) external;
+ +
213 + + + + + +

+                            
+                        
214 + + + + + +
  /**
+ +
215 + + + + + +
   * @notice Add a chain to the allowed chains which can be updated
+ +
216 + + + + + +
   * @param _chainId The chain id to add
+ +
217 + + + + + +
   */
+ +
218 + + + + + +
  function addChain(string calldata _chainId) external;
+ +
219 + + + + + +

+                            
+                        
220 + + + + + +
  /**
+ +
221 + + + + + +
   * @notice Remove a chain from the allowed chains which can be updated
+ +
222 + + + + + +
   * @param _chainId The chain id to remove
+ +
223 + + + + + +
   */
+ +
224 + + + + + +
  function removeChain(string calldata _chainId) external;
+ +
225 + + + + + +

+                            
+                        
226 + + + + + +
  /**
+ +
227 + + + + + +
   * @notice Set the request data module
+ +
228 + + + + + +
   * @param _requestModule The request module
+ +
229 + + + + + +
   * @param _requestModuleData The request module data
+ +
230 + + + + + +
   */
+ +
231 + + + + + +
  function setRequestModuleData(
+ +
232 + + + + + +
    address _requestModule,
+ +
233 + + + + + +
    IEBORequestModule.RequestParameters calldata _requestModuleData
+ +
234 + + + + + +
  ) external;
+ +
235 + + + + + +

+                            
+                        
236 + + + + + +
  /**
+ +
237 + + + + + +
   * @notice Set the response data module
+ +
238 + + + + + +
   * @param _responseModule The response module
+ +
239 + + + + + +
   * @param _responseModuleData The response module data
+ +
240 + + + + + +
   */
+ +
241 + + + + + +
  function setResponseModuleData(
+ +
242 + + + + + +
    address _responseModule,
+ +
243 + + + + + +
    IBondedResponseModule.RequestParameters calldata _responseModuleData
+ +
244 + + + + + +
  ) external;
+ +
245 + + + + + +

+                            
+                        
246 + + + + + +
  /**
+ +
247 + + + + + +
   * @notice Set the dispute data module
+ +
248 + + + + + +
   * @param _disputeModule The dispute module
+ +
249 + + + + + +
   * @param _disputeModuleData The dispute module data
+ +
250 + + + + + +
   */
+ +
251 + + + + + +
  function setDisputeModuleData(
+ +
252 + + + + + +
    address _disputeModule,
+ +
253 + + + + + +
    IBondEscalationModule.RequestParameters calldata _disputeModuleData
+ +
254 + + + + + +
  ) external;
+ +
255 + + + + + +

+                            
+                        
256 + + + + + +
  /**
+ +
257 + + + + + +
   * @notice Set the resolution data module
+ +
258 + + + + + +
   * @param _resolutionModule The resolution module
+ +
259 + + + + + +
   * @param _resolutionModuleData The resolution module data
+ +
260 + + + + + +
   */
+ +
261 + + + + + +
  function setResolutionModuleData(
+ +
262 + + + + + +
    address _resolutionModule,
+ +
263 + + + + + +
    IArbitratorModule.RequestParameters calldata _resolutionModuleData
+ +
264 + + + + + +
  ) external;
+ +
265 + + + + + +

+                            
+                        
266 + + + + + +
  /**
+ +
267 + + + + + +
   * @notice Set the finality data module
+ +
268 + + + + + +
   * @param _finalityModule The finality module
+ +
269 + + + + + +
   */
+ +
270 + + + + + +
  function setFinalityModuleData(address _finalityModule) external;
+ +
271 + + + + + +

+                            
+                        
272 + + + + + +
  /**
+ +
273 + + + + + +
   * @notice Set the epoch manager
+ +
274 + + + + + +
   * @param _epochManager The epoch manager
+ +
275 + + + + + +
   */
+ +
276 + + + + + +
  function setEpochManager(IEpochManager _epochManager) external;
+ +
277 + + + + + +
}
+ +
278 + + + + + +

+                            
+                        
+
+
+ + + + + + + + + + +
+
+
+ + + + + + +
Lines covered: 0 / 0 (0.0%)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
1 + + + + + +
// SPDX-License-Identifier: GPL-3.0
+ +
2 + + + + + +
pragma solidity 0.8.26;
+ +
3 + + + + + +

+                            
+                        
4 + + + + + +
import {IOracle} from '@defi-wonderland/prophet-core/solidity/interfaces/IOracle.sol';
+ +
5 + + + + + +
import {IRequestModule} from '@defi-wonderland/prophet-core/solidity/interfaces/modules/request/IRequestModule.sol';
+ +
6 + + + + + +
import {IAccountingExtension} from
+ +
7 + + + + + +
  '@defi-wonderland/prophet-modules/solidity/interfaces/extensions/IAccountingExtension.sol';
+ +
8 + + + + + +

+                            
+                        
9 + + + + + +
import {IArbitrable} from 'interfaces/IArbitrable.sol';
+ +
10 + + + + + +
import {IEBORequestCreator} from 'interfaces/IEBORequestCreator.sol';
+ +
11 + + + + + +

+                            
+                        
12 + + + + + +
/**
+ +
13 + + + + + +
 * @title EBORequestModule
+ +
14 + + + + + +
 * @notice Module allowing users to create a request for RPC data for a specific epoch
+ +
15 + + + + + +
 */
+ +
16 + + + + + +
interface IEBORequestModule is IRequestModule {
+ +
17 + + + + + +
  /*///////////////////////////////////////////////////////////////
+ +
18 + + + + + +
                              STRUCTS
+ +
19 + + + + + +
  //////////////////////////////////////////////////////////////*/
+ +
20 + + + + + +

+                            
+                        
21 + + + + + +
  /**
+ +
22 + + + + + +
   * @notice Parameters of the request as stored in the module
+ +
23 + + + + + +
   * @param epoch The epoch for which the data is requested
+ +
24 + + + + + +
   * @param chainId The chain ID for which the data is requested
+ +
25 + + + + + +
   * @param accountingExtension The address of the AccountingExtension
+ +
26 + + + + + +
   * @param paymentAmount The amount of payment for the request
+ +
27 + + + + + +
   */
+ +
28 + + + + + +
  struct RequestParameters {
+ +
29 + + + + + +
    uint256 epoch;
+ +
30 + + + + + +
    string chainId;
+ +
31 + + + + + +
    IAccountingExtension accountingExtension;
+ +
32 + + + + + +
    uint256 paymentAmount;
+ +
33 + + + + + +
  }
+ +
34 + + + + + +

+                            
+                        
35 + + + + + +
  /*///////////////////////////////////////////////////////////////
+ +
36 + + + + + +
                              EVENTS
+ +
37 + + + + + +
  //////////////////////////////////////////////////////////////*/
+ +
38 + + + + + +

+                            
+                        
39 + + + + + +
  /**
+ +
40 + + + + + +
   * @notice Emitted when the EBORequestCreator is added
+ +
41 + + + + + +
   * @param _eboRequestCreator The address of the EBORequestCreator
+ +
42 + + + + + +
   */
+ +
43 + + + + + +
  event AddEBORequestCreator(IEBORequestCreator indexed _eboRequestCreator);
+ +
44 + + + + + +

+                            
+                        
45 + + + + + +
  /**
+ +
46 + + + + + +
   * @notice Emitted when an EBORequestCreator is removed
+ +
47 + + + + + +
   * @param _eboRequestCreator The address of the EBORequestCreator
+ +
48 + + + + + +
   */
+ +
49 + + + + + +
  event RemoveEBORequestCreator(IEBORequestCreator indexed _eboRequestCreator);
+ +
50 + + + + + +

+                            
+                        
51 + + + + + +
  /*///////////////////////////////////////////////////////////////
+ +
52 + + + + + +
                              ERRORS
+ +
53 + + + + + +
  //////////////////////////////////////////////////////////////*/
+ +
54 + + + + + +

+                            
+                        
55 + + + + + +
  /**
+ +
56 + + + + + +
   * @notice Thrown when the requester is not the EBORequestCreator
+ +
57 + + + + + +
   */
+ +
58 + + + + + +
  error EBORequestModule_InvalidRequester();
+ +
59 + + + + + +

+                            
+                        
60 + + + + + +
  /*///////////////////////////////////////////////////////////////
+ +
61 + + + + + +
                              VARIABLES
+ +
62 + + + + + +
  //////////////////////////////////////////////////////////////*/
+ +
63 + + + + + +

+                            
+                        
64 + + + + + +
  /**
+ +
65 + + + + + +
   * @notice Returns the address of the arbitrable contract
+ +
66 + + + + + +
   * @return _ARBITRABLE The address of the arbitrable contract
+ +
67 + + + + + +
   */
+ +
68 + + + + + +
  function ARBITRABLE() external view returns (IArbitrable _ARBITRABLE);
+ +
69 + + + + + +

+                            
+                        
70 + + + + + +
  /**
+ +
71 + + + + + +
   * @notice Returns the EBORequestCreators allowed
+ +
72 + + + + + +
   * @return _eboRequestCreators The EBORequestCreators allowed
+ +
73 + + + + + +
   */
+ +
74 + + + + + +
  function getAllowedEBORequestCreators() external view returns (address[] memory _eboRequestCreators);
+ +
75 + + + + + +

+                            
+                        
76 + + + + + +
  /*///////////////////////////////////////////////////////////////
+ +
77 + + + + + +
                              LOGIC
+ +
78 + + + + + +
  //////////////////////////////////////////////////////////////*/
+ +
79 + + + + + +

+                            
+                        
80 + + + + + +
  /**
+ +
81 + + + + + +
   * @notice Executes pre-request logic, bonding the requester's funds
+ +
82 + + + + + +
   * @dev Callable only by the Oracle
+ +
83 + + + + + +
   * @param _requestId The ID of the request
+ +
84 + + + + + +
   * @param _data The data of the request
+ +
85 + + + + + +
   * @param _requester The address of the requester
+ +
86 + + + + + +
   */
+ +
87 + + + + + +
  function createRequest(bytes32 _requestId, bytes calldata _data, address _requester) external;
+ +
88 + + + + + +

+                            
+                        
89 + + + + + +
  /**
+ +
90 + + + + + +
   * @notice Adds the address of the EBORequestCreator
+ +
91 + + + + + +
   * @dev Callable only by The Graph's Arbitrator
+ +
92 + + + + + +
   * @param _eboRequestCreator The address of the EBORequestCreator
+ +
93 + + + + + +
   */
+ +
94 + + + + + +
  function addEBORequestCreator(IEBORequestCreator _eboRequestCreator) external;
+ +
95 + + + + + +

+                            
+                        
96 + + + + + +
  /**
+ +
97 + + + + + +
   * @notice Removes an EBORequestCreator
+ +
98 + + + + + +
   * @dev Callable only by The Graph's Arbitrator
+ +
99 + + + + + +
   * @param _eboRequestCreator The address of the EBORequestCreator
+ +
100 + + + + + +
   */
+ +
101 + + + + + +
  function removeEBORequestCreator(IEBORequestCreator _eboRequestCreator) external;
+ +
102 + + + + + +

+                            
+                        
103 + + + + + +
  /**
+ +
104 + + + + + +
   * @notice Determines how to decode the inputted request data
+ +
105 + + + + + +
   * @param _data The encoded request parameters
+ +
106 + + + + + +
   * @return _params The struct containing the parameters for the request
+ +
107 + + + + + +
   */
+ +
108 + + + + + +
  function decodeRequestData(bytes calldata _data) external pure returns (RequestParameters memory _params);
+ +
109 + + + + + +
}
+ +
110 + + + + + +

+                            
+                        
+
+
+ + + + + + + + + + +
+
+
+ + + + + + +
Lines covered: 0 / 0 (0.0%)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
1 + + + + + +
// SPDX-License-Identifier: GPL-3.0
+ +
2 + + + + + +
pragma solidity 0.8.26;
+ +
3 + + + + + +

+                            
+                        
4 + + + + + +
import {IOracle} from '@defi-wonderland/prophet-core/solidity/interfaces/IOracle.sol';
+ +
5 + + + + + +
import {IValidator} from '@defi-wonderland/prophet-core/solidity/interfaces/IValidator.sol';
+ +
6 + + + + + +
import {IBondEscalationModule} from
+ +
7 + + + + + +
  '@defi-wonderland/prophet-modules/solidity/interfaces/modules/dispute/IBondEscalationModule.sol';
+ +
8 + + + + + +
import {IERC20} from '@openzeppelin/contracts/token/ERC20/IERC20.sol';
+ +
9 + + + + + +
import {IHorizonStaking} from 'interfaces/external/IHorizonStaking.sol';
+ +
10 + + + + + +

+                            
+                        
11 + + + + + +
import {IArbitrable} from 'interfaces/IArbitrable.sol';
+ +
12 + + + + + +

+                            
+                        
13 + + + + + +
interface IHorizonAccountingExtension is IValidator {
+ +
14 + + + + + +
  /*///////////////////////////////////////////////////////////////
+ +
15 + + + + + +
                              EVENTS
+ +
16 + + + + + +
  //////////////////////////////////////////////////////////////*/
+ +
17 + + + + + +

+                            
+                        
18 + + + + + +
  /**
+ +
19 + + + + + +
   * @notice A payment between users has been made
+ +
20 + + + + + +
   * @param _requestId    The ID of the request
+ +
21 + + + + + +
   * @param _beneficiary  The user receiving the tokens
+ +
22 + + + + + +
   * @param _payer        The user who is getting its tokens transferred
+ +
23 + + + + + +
   * @param _amount       The amount of GRT transferred
+ +
24 + + + + + +
   */
+ +
25 + + + + + +
  event Paid(bytes32 indexed _requestId, address indexed _beneficiary, address indexed _payer, uint256 _amount);
+ +
26 + + + + + +

+                            
+                        
27 + + + + + +
  /**
+ +
28 + + + + + +
   * @notice User's funds have been bonded
+ +
29 + + + + + +
   * @param _requestId    The ID of the request
+ +
30 + + + + + +
   * @param _bonder       The user who is getting its tokens bonded
+ +
31 + + + + + +
   * @param _amount       The amount of GRT bonded
+ +
32 + + + + + +
   */
+ +
33 + + + + + +
  event Bonded(bytes32 indexed _requestId, address indexed _bonder, uint256 _amount);
+ +
34 + + + + + +

+                            
+                        
35 + + + + + +
  /**
+ +
36 + + + + + +
   * @notice User's funds have been released
+ +
37 + + + + + +
   * @param _requestId    The ID of the request
+ +
38 + + + + + +
   * @param _beneficiary  The user who is getting its tokens released
+ +
39 + + + + + +
   * @param _amount       The amount of GRT released
+ +
40 + + + + + +
   */
+ +
41 + + + + + +
  event Released(bytes32 indexed _requestId, address indexed _beneficiary, uint256 _amount);
+ +
42 + + + + + +

+                            
+                        
43 + + + + + +
  /**
+ +
44 + + + + + +
   * @notice A user pledged tokens for one of the sides of a dispute
+ +
45 + + + + + +
   *
+ +
46 + + + + + +
   * @param _pledger          The user who pledged the tokens
+ +
47 + + + + + +
   * @param _requestId        The ID of the bond-escalated request
+ +
48 + + + + + +
   * @param _disputeId        The ID of the bond-escalated dispute
+ +
49 + + + + + +
   * @param _amount           The amount of GRT pledged by the user
+ +
50 + + + + + +
   */
+ +
51 + + + + + +
  event Pledged(address indexed _pledger, bytes32 indexed _requestId, bytes32 indexed _disputeId, uint256 _amount);
+ +
52 + + + + + +

+                            
+                        
53 + + + + + +
  /**
+ +
54 + + + + + +
   * @notice The pledgers of the winning side of a dispute have been paid
+ +
55 + + + + + +
   *
+ +
56 + + + + + +
   * @param _requestId        The ID of the bond-escalated request
+ +
57 + + + + + +
   * @param _disputeId        The ID of the bond-escalated dispute
+ +
58 + + + + + +
   * @param _winningPledgers  The users who got paid for pledging for the winning side
+ +
59 + + + + + +
   * @param _amountPerPledger The amount of GRT paid to each of the winning pledgers
+ +
60 + + + + + +
   */
+ +
61 + + + + + +
  event WinningPledgersPaid(
+ +
62 + + + + + +
    bytes32 indexed _requestId,
+ +
63 + + + + + +
    bytes32 indexed _disputeId,
+ +
64 + + + + + +
    address[] indexed _winningPledgers,
+ +
65 + + + + + +
    uint256 _amountPerPledger
+ +
66 + + + + + +
  );
+ +
67 + + + + + +

+                            
+                        
68 + + + + + +
  /**
+ +
69 + + + + + +
   * @notice A bond escalation has been settled
+ +
70 + + + + + +
   *
+ +
71 + + + + + +
   * @param _requestId             The ID of the bond-escalated request
+ +
72 + + + + + +
   * @param _disputeId             The ID of the bond-escalated dispute
+ +
73 + + + + + +
   * @param _amountPerPledger      The amount of GRT to be paid for each winning pledgers
+ +
74 + + + + + +
   * @param _winningPledgersLength The number of winning pledgers
+ +
75 + + + + + +
   */
+ +
76 + + + + + +
  event BondEscalationSettled(
+ +
77 + + + + + +
    bytes32 _requestId, bytes32 _disputeId, uint256 _amountPerPledger, uint256 _winningPledgersLength
+ +
78 + + + + + +
  );
+ +
79 + + + + + +

+                            
+                        
80 + + + + + +
  /**
+ +
81 + + + + + +
   * @notice A user claimed their reward for pledging for the winning side of a dispute
+ +
82 + + + + + +
   *
+ +
83 + + + + + +
   * @param _requestId        The ID of the bond-escalated request
+ +
84 + + + + + +
   * @param _disputeId        The ID of the bond-escalated dispute
+ +
85 + + + + + +
   * @param _pledger          The user who claimed their reward
+ +
86 + + + + + +
   * @param _reward           The amount of GRT the user claimed
+ +
87 + + + + + +
   * @param _released         The amount of GRT released to the user
+ +
88 + + + + + +
   */
+ +
89 + + + + + +
  event EscalationRewardClaimed(
+ +
90 + + + + + +
    bytes32 indexed _requestId, bytes32 indexed _disputeId, address indexed _pledger, uint256 _reward, uint256 _released
+ +
91 + + + + + +
  );
+ +
92 + + + + + +

+                            
+                        
93 + + + + + +
  /**
+ +
94 + + + + + +
   * @notice Emitted when max users to check is set
+ +
95 + + + + + +
   *
+ +
96 + + + + + +
   * @param _maxUsersToCheck   The new value of max users to check
+ +
97 + + + + + +
   */
+ +
98 + + + + + +
  event MaxUsersToCheckSet(uint256 _maxUsersToCheck);
+ +
99 + + + + + +

+                            
+                        
100 + + + + + +
  /*///////////////////////////////////////////////////////////////
+ +
101 + + + + + +
                              ERRORS
+ +
102 + + + + + +
  //////////////////////////////////////////////////////////////*/
+ +
103 + + + + + +

+                            
+                        
104 + + + + + +
  /**
+ +
105 + + + + + +
   * @notice Thrown when depositing tokens with a fee on transfer
+ +
106 + + + + + +
   */
+ +
107 + + + + + +
  error HorizonAccountingExtension_FeeOnTransferToken();
+ +
108 + + + + + +

+                            
+                        
109 + + + + + +
  /**
+ +
110 + + + + + +
   * @notice Thrown when the module bonding user tokens hasn't been approved by the user.
+ +
111 + + + + + +
   */
+ +
112 + + + + + +
  error HorizonAccountingExtension_NotAllowed();
+ +
113 + + + + + +

+                            
+                        
114 + + + + + +
  /**
+ +
115 + + + + + +
   * @notice Thrown when an `onlyAllowedModule` function is called by something
+ +
116 + + + + + +
   * else than a module being used in the corresponding request
+ +
117 + + + + + +
   */
+ +
118 + + + + + +
  error HorizonAccountingExtension_UnauthorizedModule();
+ +
119 + + + + + +

+                            
+                        
120 + + + + + +
  /**
+ +
121 + + + + + +
   * @notice Thrown when an `onlyParticipant` function is called with an address
+ +
122 + + + + + +
   * that is not part of the request.
+ +
123 + + + + + +
   */
+ +
124 + + + + + +
  error HorizonAccountingExtension_UnauthorizedUser();
+ +
125 + + + + + +

+                            
+                        
126 + + + + + +
  /**
+ +
127 + + + + + +
   * @notice Thrown when the thawing period is invalid
+ +
128 + + + + + +
   */
+ +
129 + + + + + +
  error HorizonAccountingExtension_InvalidThawingPeriod();
+ +
130 + + + + + +

+                            
+                        
131 + + + + + +
  /**
+ +
132 + + + + + +
   * @notice Thrown when the user has insufficient tokens
+ +
133 + + + + + +
   */
+ +
134 + + + + + +
  error HorizonAccountingExtension_InsufficientTokens();
+ +
135 + + + + + +

+                            
+                        
136 + + + + + +
  /**
+ +
137 + + + + + +
   * @notice Thrown when the user has insufficient bonded tokens
+ +
138 + + + + + +
   */
+ +
139 + + + + + +
  error HorizonAccountingExtension_InsufficientBondedTokens();
+ +
140 + + + + + +

+                            
+                        
141 + + + + + +
  /**
+ +
142 + + + + + +
   * @notice Thrown when the user tries to claim their pledge for an escalation that was already claimed
+ +
143 + + + + + +
   */
+ +
144 + + + + + +
  error HorizonAccountingExtension_AlreadyClaimed();
+ +
145 + + + + + +

+                            
+                        
146 + + + + + +
  /**
+ +
147 + + + + + +
   * @notice Thrown when the user tries to claim their pledge for an escalation that wasn't finished yet
+ +
148 + + + + + +
   */
+ +
149 + + + + + +
  error HorizonAccountingExtension_NoEscalationResult();
+ +
150 + + + + + +

+                            
+                        
151 + + + + + +
  /**
+ +
152 + + + + + +
   * @notice Thrown when the user doesn't have enough funds to pledge
+ +
153 + + + + + +
   */
+ +
154 + + + + + +
  error HorizonAccountingExtension_InsufficientFunds();
+ +
155 + + + + + +

+                            
+                        
156 + + + + + +
  /**
+ +
157 + + + + + +
   * @notice Thrown when trying to settle an already settled escalation
+ +
158 + + + + + +
   */
+ +
159 + + + + + +
  error HorizonAccountingExtension_AlreadySettled();
+ +
160 + + + + + +

+                            
+                        
161 + + + + + +
  /**
+ +
162 + + + + + +
   * @notice Thrown when the max verifier cut is invalid
+ +
163 + + + + + +
   */
+ +
164 + + + + + +
  error HorizonAccountingExtension_InvalidMaxVerifierCut();
+ +
165 + + + + + +

+                            
+                        
166 + + + + + +
  /**
+ +
167 + + + + + +
   * @notice Thrown when caller is not authorized
+ +
168 + + + + + +
   */
+ +
169 + + + + + +
  error HorizonAccountingExtension_UnauthorizedCaller();
+ +
170 + + + + + +

+                            
+                        
171 + + + + + +
  /*///////////////////////////////////////////////////////////////
+ +
172 + + + + + +
                              STRUCTS
+ +
173 + + + + + +
  //////////////////////////////////////////////////////////////*/
+ +
174 + + + + + +

+                            
+                        
175 + + + + + +
  /**
+ +
176 + + + + + +
   * @notice Contains the data of the result of an escalation. Is used by users to claim their pledges
+ +
177 + + + + + +
   * @param requestId         The ID of the bond-escalated request
+ +
178 + + + + + +
   * @param amountPerPledger  The amount of token paid to each of the winning pledgers
+ +
179 + + + + + +
   * @param bondSize             The size of the bond required for bond escalation
+ +
180 + + + + + +
   * @param bondEscalationModule The address of the bond escalation module that was used
+ +
181 + + + + + +
   */
+ +
182 + + + + + +
  struct EscalationResult {
+ +
183 + + + + + +
    bytes32 requestId;
+ +
184 + + + + + +
    uint256 amountPerPledger;
+ +
185 + + + + + +
    uint256 bondSize;
+ +
186 + + + + + +
    IBondEscalationModule bondEscalationModule;
+ +
187 + + + + + +
  }
+ +
188 + + + + + +

+                            
+                        
189 + + + + + +
  /*///////////////////////////////////////////////////////////////
+ +
190 + + + + + +
                              VARIABLES
+ +
191 + + + + + +
  //////////////////////////////////////////////////////////////*/
+ +
192 + + + + + +

+                            
+                        
193 + + + + + +
  /**
+ +
194 + + + + + +
   * @notice The Horizon Staking contract
+ +
195 + + + + + +
   * @return _horizonStaking The Horizon Staking contract
+ +
196 + + + + + +
   */
+ +
197 + + + + + +
  function HORIZON_STAKING() external view returns (IHorizonStaking _horizonStaking);
+ +
198 + + + + + +

+                            
+                        
199 + + + + + +
  /**
+ +
200 + + + + + +
   * @notice The GRT token
+ +
201 + + + + + +
   * @return _GRT The GRT token
+ +
202 + + + + + +
   */
+ +
203 + + + + + +
  function GRT() external view returns (IERC20 _GRT);
+ +
204 + + + + + +

+                            
+                        
205 + + + + + +
  /**
+ +
206 + + + + + +
   * @notice The Arbitrable contract
+ +
207 + + + + + +
   * @return _arbitrable The Arbitrable contract
+ +
208 + + + + + +
   */
+ +
209 + + + + + +
  function ARBITRABLE() external view returns (IArbitrable _arbitrable);
+ +
210 + + + + + +

+                            
+                        
211 + + + + + +
  /**
+ +
212 + + + + + +
   * @notice The minimum thawing period
+ +
213 + + + + + +
   * @return _MIN_THAWING_PERIOD The minimum thawing period
+ +
214 + + + + + +
   */
+ +
215 + + + + + +
  function MIN_THAWING_PERIOD() external view returns (uint64 _MIN_THAWING_PERIOD);
+ +
216 + + + + + +

+                            
+                        
217 + + + + + +
  /**
+ +
218 + + + + + +
   * @notice The maximum verifier cut
+ +
219 + + + + + +
   * @return _MAX_VERIFIER_CUT The maximum verifier cut
+ +
220 + + + + + +
   */
+ +
221 + + + + + +
  function MAX_VERIFIER_CUT() external view returns (uint32 _MAX_VERIFIER_CUT);
+ +
222 + + + + + +

+                            
+                        
223 + + + + + +
  /**
+ +
224 + + + + + +
   * @notice The max number of users to slash
+ +
225 + + + + + +
   * @return _MAX_USERS_TO_SLASH The number of users to slash
+ +
226 + + + + + +
   */
+ +
227 + + + + + +
  function MAX_USERS_TO_SLASH() external view returns (uint32 _MAX_USERS_TO_SLASH);
+ +
228 + + + + + +

+                            
+                        
229 + + + + + +
  /**
+ +
230 + + + + + +
   * @notice The maximum users to check
+ +
231 + + + + + +
   * @return _maxUsersToCheck The maximum users to check
+ +
232 + + + + + +
   */
+ +
233 + + + + + +
  function maxUsersToCheck() external view returns (uint128 _maxUsersToCheck);
+ +
234 + + + + + +

+                            
+                        
235 + + + + + +
  /**
+ +
236 + + + + + +
   * @notice The total bonded tokens for a user
+ +
237 + + + + + +
   * @param _user The user address
+ +
238 + + + + + +
   * @return _totalBonded The total bonded tokens for a user
+ +
239 + + + + + +
   */
+ +
240 + + + + + +
  function totalBonded(address _user) external view returns (uint256 _totalBonded);
+ +
241 + + + + + +

+                            
+                        
242 + + + + + +
  /**
+ +
243 + + + + + +
   * @notice The bound amount of tokens for a user in a request
+ +
244 + + + + + +
   * @param _user The user address
+ +
245 + + + + + +
   * @param _requestId The ID of the request
+ +
246 + + + + + +
   * @return _amount The amount of tokens bonded
+ +
247 + + + + + +
   */
+ +
248 + + + + + +
  function bondedForRequest(address _user, bytes32 _requestId) external view returns (uint256 _amount);
+ +
249 + + + + + +

+                            
+                        
250 + + + + + +
  /**
+ +
251 + + + + + +
   * @notice The total pledged tokens for a user
+ +
252 + + + + + +
   * @param _disputeId The ID of the dispute
+ +
253 + + + + + +
   * @return _amount The total pledged tokens for a user
+ +
254 + + + + + +
   */
+ +
255 + + + + + +
  function pledges(bytes32 _disputeId) external view returns (uint256 _amount);
+ +
256 + + + + + +

+                            
+                        
257 + + + + + +
  /**
+ +
258 + + + + + +
   * @notice The escalation result of a dispute
+ +
259 + + + + + +
   * @param _disputeId The ID of the dispute
+ +
260 + + + + + +
   * @return _requestId The ID of the request
+ +
261 + + + + + +
   * @return _amountPerPledger The amount of token paid to each of the winning pledgers
+ +
262 + + + + + +
   * @return _bondSize             The size of the bond required for bond escalation
+ +
263 + + + + + +
   * @return _bondEscalationModule The address of the bond escalation module that was used
+ +
264 + + + + + +
   */
+ +
265 + + + + + +
  function escalationResults(bytes32 _disputeId)
+ +
266 + + + + + +
    external
+ +
267 + + + + + +
    view
+ +
268 + + + + + +
    returns (
+ +
269 + + + + + +
      bytes32 _requestId,
+ +
270 + + + + + +
      uint256 _amountPerPledger,
+ +
271 + + + + + +
      uint256 _bondSize,
+ +
272 + + + + + +
      IBondEscalationModule _bondEscalationModule
+ +
273 + + + + + +
    );
+ +
274 + + + + + +

+                            
+                        
275 + + + + + +
  /**
+ +
276 + + + + + +
   * @notice The escalation result of a dispute
+ +
277 + + + + + +
   * @param _disputeId The ID of the dispute
+ +
278 + + + + + +
   * @return _escalationResult The escalation result
+ +
279 + + + + + +
   */
+ +
280 + + + + + +
  function getEscalationResult(bytes32 _disputeId) external view returns (EscalationResult memory _escalationResult);
+ +
281 + + + + + +

+                            
+                        
282 + + + + + +
  /**
+ +
283 + + + + + +
   * @notice The claim status of a user for a pledge
+ +
284 + + + + + +
   * @param _requestId The ID of the request
+ +
285 + + + + + +
   * @param _pledger The user address
+ +
286 + + + + + +
   * @return _claimed True if the user claimed their pledge
+ +
287 + + + + + +
   */
+ +
288 + + + + + +
  function pledgerClaimed(bytes32 _requestId, address _pledger) external view returns (bool _claimed);
+ +
289 + + + + + +

+                            
+                        
290 + + + + + +
  /**
+ +
291 + + + + + +
   * @notice Checks whether an address is an authorized caller
+ +
292 + + + + + +
   *
+ +
293 + + + + + +
   * @param _caller      The address to check
+ +
294 + + + + + +
   * @return _authorized True if the address is authorized, false otherwise
+ +
295 + + + + + +
   */
+ +
296 + + + + + +
  function authorizedCallers(address _caller) external returns (bool _authorized);
+ +
297 + + + + + +

+                            
+                        
298 + + + + + +
  /**
+ +
299 + + + + + +
   * @notice Returns the approved modules for bonding tokens
+ +
300 + + + + + +
   * @param _user The address of the user
+ +
301 + + + + + +
   * @return _approvedModules The approved modules for bonding tokens
+ +
302 + + + + + +
   */
+ +
303 + + + + + +
  function approvedModules(address _user) external view returns (address[] memory _approvedModules);
+ +
304 + + + + + +

+                            
+                        
305 + + + + + +
  /**
+ +
306 + + + + + +
   * @notice Returns the available balance to claim for a specific dispute
+ +
307 + + + + + +
   *
+ +
308 + + + + + +
   * @param _disputeId The id of the dispute to get the balance
+ +
309 + + + + + +
   * @return _balance  The balance of the dispute
+ +
310 + + + + + +
   */
+ +
311 + + + + + +
  function disputeBalance(bytes32 _disputeId) external returns (uint256 _balance);
+ +
312 + + + + + +

+                            
+                        
313 + + + + + +
  /*///////////////////////////////////////////////////////////////
+ +
314 + + + + + +
                              LOGIC
+ +
315 + + + + + +
  //////////////////////////////////////////////////////////////*/
+ +
316 + + + + + +

+                            
+                        
317 + + + + + +
  /**
+ +
318 + + + + + +
   * @notice Allows a user to approve a module for bonding tokens
+ +
319 + + + + + +
   * @param _module The address of the module to be approved
+ +
320 + + + + + +
   */
+ +
321 + + + + + +
  function approveModule(address _module) external;
+ +
322 + + + + + +

+                            
+                        
323 + + + + + +
  /**
+ +
324 + + + + + +
   * @notice Allows a user to revoke a module's approval for bonding tokens
+ +
325 + + + + + +
   * @param _module The address of the module to be revoked
+ +
326 + + + + + +
   */
+ +
327 + + + + + +
  function revokeModule(address _module) external;
+ +
328 + + + + + +

+                            
+                        
329 + + + + + +
  /**
+ +
330 + + + + + +
   * @notice Pledges the given amount of token to the provided dispute ID of the provided request ID
+ +
331 + + + + + +
   * @param _pledger Address of the pledger
+ +
332 + + + + + +
   * @param _request The bond-escalated request
+ +
333 + + + + + +
   * @param _dispute The bond-escalated dispute
+ +
334 + + + + + +
   * @param _token Address of the token being paid as a reward for winning the bond escalation
+ +
335 + + + + + +
   * @param _amount Amount of GRT to pledge
+ +
336 + + + + + +
   */
+ +
337 + + + + + +
  function pledge(
+ +
338 + + + + + +
    address _pledger,
+ +
339 + + + + + +
    IOracle.Request calldata _request,
+ +
340 + + + + + +
    IOracle.Dispute calldata _dispute,
+ +
341 + + + + + +
    IERC20 _token,
+ +
342 + + + + + +
    uint256 _amount
+ +
343 + + + + + +
  ) external;
+ +
344 + + + + + +

+                            
+                        
345 + + + + + +
  /**
+ +
346 + + + + + +
   *
+ +
347 + + + + + +
   * @notice Updates the accounting of the given dispute to reflect the result of the bond escalation
+ +
348 + + + + + +
   * @param _request The bond-escalated request
+ +
349 + + + + + +
   * @param _dispute The bond-escalated dispute
+ +
350 + + + + + +
   * @param _token Address of the token being paid as a reward for winning the bond escalation
+ +
351 + + + + + +
   * @param _amountPerPledger Amount of GRT to be rewarded to each of the winning pledgers
+ +
352 + + + + + +
   * @param _winningPledgersLength Amount of pledges that won the dispute
+ +
353 + + + + + +
   */
+ +
354 + + + + + +
  function onSettleBondEscalation(
+ +
355 + + + + + +
    IOracle.Request calldata _request,
+ +
356 + + + + + +
    IOracle.Dispute calldata _dispute,
+ +
357 + + + + + +
    IERC20 _token,
+ +
358 + + + + + +
    uint256 _amountPerPledger,
+ +
359 + + + + + +
    uint256 _winningPledgersLength
+ +
360 + + + + + +
  ) external;
+ +
361 + + + + + +

+                            
+                        
362 + + + + + +
  /**
+ +
363 + + + + + +
   * @notice Claims the reward for the pledger the given dispute
+ +
364 + + + + + +
   * @dev After the established thawing period the losing pledgers can withdraw their stake from Horizon.
+ +
365 + + + + + +
   *    Rewards should be claimed before that period ends to ensure that funds are available.
+ +
366 + + + + + +
   * @param _disputeId The ID of the bond-escalated dispute
+ +
367 + + + + + +
   * @param _pledger Address of the pledger to claim the rewards
+ +
368 + + + + + +
   */
+ +
369 + + + + + +
  function claimEscalationReward(bytes32 _disputeId, address _pledger) external;
+ +
370 + + + + + +

+                            
+                        
371 + + + + + +
  /**
+ +
372 + + + + + +
   * @notice Allows a allowed module to transfer bonded tokens from one user to another
+ +
373 + + + + + +
   * @param _requestId The ID of the request handling the user's tokens
+ +
374 + + + + + +
   * @param _payer The address of the user paying the tokens
+ +
375 + + + + + +
   * @param _receiver The address of the user receiving the tokens
+ +
376 + + + + + +
   * @param _token The address of the token being transferred
+ +
377 + + + + + +
   * @param _amount The amount of GRT being transferred
+ +
378 + + + + + +
   */
+ +
379 + + + + + +
  function pay(bytes32 _requestId, address _payer, address _receiver, IERC20 _token, uint256 _amount) external;
+ +
380 + + + + + +

+                            
+                        
381 + + + + + +
  /**
+ +
382 + + + + + +
   * @notice Allows an allowed module to bond a user's tokens for a request
+ +
383 + + + + + +
   * @param _bonder The address of the user to bond tokens for
+ +
384 + + + + + +
   * @param _requestId The ID of the request the user is bonding for
+ +
385 + + + + + +
   * @param _token The address of the token being bonded
+ +
386 + + + + + +
   * @param _amount The amount of GRT to bond
+ +
387 + + + + + +
   */
+ +
388 + + + + + +
  function bond(address _bonder, bytes32 _requestId, IERC20 _token, uint256 _amount) external;
+ +
389 + + + + + +

+                            
+                        
390 + + + + + +
  /**
+ +
391 + + + + + +
   * @notice Allows a valid module to bond a user's tokens for a request
+ +
392 + + + + + +
   * @param _bonder The address of the user to bond tokens for
+ +
393 + + + + + +
   * @param _requestId The ID of the request the user is bonding for
+ +
394 + + + + + +
   * @param _token The address of the token being bonded
+ +
395 + + + + + +
   * @param _amount The amount of GRT to bond
+ +
396 + + + + + +
   * @param _sender The address starting the propose call on the Oracle
+ +
397 + + + + + +
   */
+ +
398 + + + + + +
  function bond(address _bonder, bytes32 _requestId, IERC20 _token, uint256 _amount, address _sender) external;
+ +
399 + + + + + +

+                            
+                        
400 + + + + + +
  /**
+ +
401 + + + + + +
   * @notice Allows a valid module to release a user's tokens
+ +
402 + + + + + +
   * @param _bonder The address of the user to release tokens for
+ +
403 + + + + + +
   * @param _requestId The ID of the request where the tokens were bonded
+ +
404 + + + + + +
   * @param _token The address of the token being released
+ +
405 + + + + + +
   * @param _amount The amount of GRT to release
+ +
406 + + + + + +
   */
+ +
407 + + + + + +
  function release(address _bonder, bytes32 _requestId, IERC20 _token, uint256 _amount) external;
+ +
408 + + + + + +

+                            
+                        
409 + + + + + +
  /**
+ +
410 + + + + + +
   * @notice Allows a anyone to slash a number of users for a dispute
+ +
411 + + + + + +
   * @dev After the established thawing period the losing pledgers can withdraw their stake from Horizon.
+ +
412 + + + + + +
   *    Users should be slashed before that period ends to ensure that funds are available.
+ +
413 + + + + + +
   * @param _disputeId The ID of the dispute
+ +
414 + + + + + +
   * @param _usersToSlash The number of users to slash
+ +
415 + + + + + +
   * @param _maxUsersToCheck The maximum number of users to check before finishing the slashing
+ +
416 + + + + + +
   */
+ +
417 + + + + + +
  function slash(bytes32 _disputeId, uint256 _usersToSlash, uint256 _maxUsersToCheck) external;
+ +
418 + + + + + +

+                            
+                        
419 + + + + + +
  /**
+ +
420 + + + + + +
   * @notice Sets the maximum users to check
+ +
421 + + + + + +
   * @param _maxUsersToCheck The new value of max users to check
+ +
422 + + + + + +
   */
+ +
423 + + + + + +
  function setMaxUsersToCheck(uint128 _maxUsersToCheck) external;
+ +
424 + + + + + +
}
+ +
425 + + + + + +

+                            
+                        
+
+
+ + + + + + + + + + +
+
+
+ + + + + + +
Lines covered: 0 / 0 (0.0%)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
1 + + + + + +
// SPDX-License-Identifier: GPL-3.0
+ +
2 + + + + + +
pragma solidity 0.8.26;
+ +
3 + + + + + +

+                            
+                        
4 + + + + + +
interface IEpochManager {
+ +
5 + + + + + +
  /*///////////////////////////////////////////////////////////////
+ +
6 + + + + + +
                              FUNCTIONS
+ +
7 + + + + + +
  //////////////////////////////////////////////////////////////*/
+ +
8 + + + + + +

+                            
+                        
9 + + + + + +
  function currentEpoch() external view returns (uint256 _currentEpoch);
+ +
10 + + + + + +
}
+ +
11 + + + + + +

+                            
+                        
+
+
+ + + + + + + + + + +
+
+
+ + + + + + +
Lines covered: 0 / 0 (0.0%)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
1 + + + + + +
// SPDX-License-Identifier: GPL-3.0
+ +
2 + + + + + +
pragma solidity 0.8.26;
+ +
3 + + + + + +

+                            
+                        
4 + + + + + +
interface IHorizonStaking {
+ +
5 + + + + + +
  /**
+ +
6 + + + + + +
   * @notice Gets the details of a provision.
+ +
7 + + + + + +
   * @param serviceProvider The address of the service provider.
+ +
8 + + + + + +
   * @param verifier The address of the verifier.
+ +
9 + + + + + +
   * @return The provision details.
+ +
10 + + + + + +
   */
+ +
11 + + + + + +
  function getProvision(address serviceProvider, address verifier) external view returns (Provision memory);
+ +
12 + + + + + +

+                            
+                        
13 + + + + + +
  /**
+ +
14 + + + + + +
   * @notice Deposit tokens on the staking contract.
+ +
15 + + + + + +
   * @dev Pulls tokens from the caller.
+ +
16 + + + + + +
   *
+ +
17 + + + + + +
   * Requirements:
+ +
18 + + + + + +
   * - `_tokens` cannot be zero.
+ +
19 + + + + + +
   * - Caller must have previously approved this contract to pull tokens from their balance.
+ +
20 + + + + + +
   *
+ +
21 + + + + + +
   * Emits a {StakeDeposited} event.
+ +
22 + + + + + +
   *
+ +
23 + + + + + +
   * @param tokens Amount of tokens to stake
+ +
24 + + + + + +
   */
+ +
25 + + + + + +
  function stake(uint256 tokens) external;
+ +
26 + + + + + +

+                            
+                        
27 + + + + + +
  /**
+ +
28 + + + + + +
   * @notice Provision stake to a verifier. The tokens will be locked with a thawing period
+ +
29 + + + + + +
   * and will be slashable by the verifier. This is the main mechanism to provision stake to a data
+ +
30 + + + + + +
   * service, where the data service is the verifier.
+ +
31 + + + + + +
   * This function can be called by the service provider or by an operator authorized by the provider
+ +
32 + + + + + +
   * for this specific verifier.
+ +
33 + + + + + +
   * @dev Requirements:
+ +
34 + + + + + +
   * - `tokens` cannot be zero and must be over the data service minimum required.
+ +
35 + + + + + +
   * - Provision parameters must be within the range allowed by the verifier (`maxVerifierCut` and `thawingPeriod`)
+ +
36 + + + + + +
   * - The `serviceProvider` must have enough idle stake to cover the tokens to provision.
+ +
37 + + + + + +
   *
+ +
38 + + + + + +
   * Emits a {ProvisionCreated} event.
+ +
39 + + + + + +
   *
+ +
40 + + + + + +
   * @param serviceProvider The service provider address
+ +
41 + + + + + +
   * @param verifier The verifier address for which the tokens are provisioned (who will be able to slash the tokens)
+ +
42 + + + + + +
   * @param tokens The amount of tokens that will be locked and slashable
+ +
43 + + + + + +
   * @param maxVerifierCut The maximum cut, expressed in PPM, that a verifier can transfer instead of burning when slashing
+ +
44 + + + + + +
   * @param thawingPeriod The period in seconds that the tokens will be thawing before they can be removed from the provision
+ +
45 + + + + + +
   */
+ +
46 + + + + + +
  function provision(
+ +
47 + + + + + +
    address serviceProvider,
+ +
48 + + + + + +
    address verifier,
+ +
49 + + + + + +
    uint256 tokens,
+ +
50 + + + + + +
    uint32 maxVerifierCut,
+ +
51 + + + + + +
    uint64 thawingPeriod
+ +
52 + + + + + +
  ) external;
+ +
53 + + + + + +

+                            
+                        
54 + + + + + +
  /**
+ +
55 + + + + + +
   * @notice Adds tokens from the service provider's idle stake to a provision
+ +
56 + + + + + +
   * @dev
+ +
57 + + + + + +
   *
+ +
58 + + + + + +
   * Requirements:
+ +
59 + + + + + +
   * - The `serviceProvider` must have previously provisioned stake to `verifier`.
+ +
60 + + + + + +
   * - `tokens` cannot be zero.
+ +
61 + + + + + +
   * - The `serviceProvider` must have enough idle stake to cover the tokens to add.
+ +
62 + + + + + +
   *
+ +
63 + + + + + +
   * Emits a {ProvisionIncreased} event.
+ +
64 + + + + + +
   *
+ +
65 + + + + + +
   * @param serviceProvider The service provider address
+ +
66 + + + + + +
   * @param verifier The verifier address
+ +
67 + + + + + +
   * @param tokens The amount of tokens to add to the provision
+ +
68 + + + + + +
   */
+ +
69 + + + + + +
  function addToProvision(address serviceProvider, address verifier, uint256 tokens) external;
+ +
70 + + + + + +

+                            
+                        
71 + + + + + +
  struct Provision {
+ +
72 + + + + + +
    // Service provider tokens in the provision (does not include delegated tokens)
+ +
73 + + + + + +
    uint256 tokens;
+ +
74 + + + + + +
    // Service provider tokens that are being thawed (and will stop being slashable soon)
+ +
75 + + + + + +
    uint256 tokensThawing;
+ +
76 + + + + + +
    // Shares representing the thawing tokens
+ +
77 + + + + + +
    uint256 sharesThawing;
+ +
78 + + + + + +
    // Max amount that can be taken by the verifier when slashing, expressed in parts-per-million of the amount slashed
+ +
79 + + + + + +
    uint32 maxVerifierCut;
+ +
80 + + + + + +
    // Time, in seconds, tokens must thaw before being withdrawn
+ +
81 + + + + + +
    uint64 thawingPeriod;
+ +
82 + + + + + +
    // Timestamp when the provision was created
+ +
83 + + + + + +
    uint64 createdAt;
+ +
84 + + + + + +
    // Pending value for `maxVerifierCut`. Verifier needs to accept it before it becomes active.
+ +
85 + + + + + +
    uint32 maxVerifierCutPending;
+ +
86 + + + + + +
    // Pending value for `thawingPeriod`. Verifier needs to accept it before it becomes active.
+ +
87 + + + + + +
    uint64 thawingPeriodPending;
+ +
88 + + + + + +
  }
+ +
89 + + + + + +

+                            
+                        
90 + + + + + +
  /**
+ +
91 + + + + + +
   * @notice Start thawing tokens to remove them from a provision.
+ +
92 + + + + + +
   * This function can be called by the service provider or by an operator authorized by the provider
+ +
93 + + + + + +
   * for this specific verifier.
+ +
94 + + + + + +
   *
+ +
95 + + + + + +
   * Note that removing tokens from a provision is a two step process:
+ +
96 + + + + + +
   * - First the tokens are thawed using this function.
+ +
97 + + + + + +
   * - Then after the thawing period, the tokens are removed from the provision using {deprovision}
+ +
98 + + + + + +
   *   or {reprovision}.
+ +
99 + + + + + +
   *
+ +
100 + + + + + +
   * @dev Requirements:
+ +
101 + + + + + +
   * - The provision must have enough tokens available to thaw.
+ +
102 + + + + + +
   * - `tokens` cannot be zero.
+ +
103 + + + + + +
   *
+ +
104 + + + + + +
   * Emits {ProvisionThawed} and {ThawRequestCreated} events.
+ +
105 + + + + + +
   *
+ +
106 + + + + + +
   * @param serviceProvider The service provider address
+ +
107 + + + + + +
   * @param verifier The verifier address for which the tokens are provisioned
+ +
108 + + + + + +
   * @param tokens The amount of tokens to thaw
+ +
109 + + + + + +
   * @return The ID of the thaw request
+ +
110 + + + + + +
   */
+ +
111 + + + + + +
  function thaw(address serviceProvider, address verifier, uint256 tokens) external returns (bytes32);
+ +
112 + + + + + +

+                            
+                        
113 + + + + + +
  /**
+ +
114 + + + + + +
   * @notice Slash a service provider. This can only be called by a verifier to which
+ +
115 + + + + + +
   * the provider has provisioned stake, and up to the amount of tokens they have provisioned.
+ +
116 + + + + + +
   * If the service provider's stake is not enough, the associated delegation pool might be slashed
+ +
117 + + + + + +
   * depending on the value of the global delegation slashing flag.
+ +
118 + + + + + +
   *
+ +
119 + + + + + +
   * Part of the slashed tokens are sent to the `verifierDestination` as a reward.
+ +
120 + + + + + +
   *
+ +
121 + + + + + +
   * @dev Requirements:
+ +
122 + + + + + +
   * - `tokens` must be less than or equal to the amount of tokens provisioned by the service provider.
+ +
123 + + + + + +
   * - `tokensVerifier` must be less than the provision's tokens times the provision's maximum verifier cut.
+ +
124 + + + + + +
   *
+ +
125 + + + + + +
   * Emits a {ProvisionSlashed} and {VerifierTokensSent} events.
+ +
126 + + + + + +
   * Emits a {DelegationSlashed} or {DelegationSlashingSkipped} event depending on the global delegation slashing
+ +
127 + + + + + +
   * flag.
+ +
128 + + + + + +
   *
+ +
129 + + + + + +
   * @param serviceProvider The service provider to slash
+ +
130 + + + + + +
   * @param tokens The amount of tokens to slash
+ +
131 + + + + + +
   * @param tokensVerifier The amount of tokens to transfer instead of burning
+ +
132 + + + + + +
   * @param verifierDestination The address to transfer the verifier cut to
+ +
133 + + + + + +
   */
+ +
134 + + + + + +
  function slash(address serviceProvider, uint256 tokens, uint256 tokensVerifier, address verifierDestination) external;
+ +
135 + + + + + +
}
+ +
136 + + + + + +

+                            
+                        
+
+
+ + + + + + + + + + +
+
+
+ + + + + + +
Lines covered: 1 / 1 (100.0%)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
1 + + + + + +
// SPDX-License-Identifier: MIT
+ +
2 + + + + + +
pragma solidity 0.8.26;
+ +
3 + + + + + +

+                            
+                        
4 + + + + + +
import {PropertyParent} from './properties/PropertyParent.t.sol';
+ +
5 + + + + + +

+                            
+                        
6 + +
+ +
+ +
+ +
+ +
contract FuzzTest is PropertyParent {
+ +
7 + + + + + +
  function test_debug() public {
+ +
8 + + + + + +
    assert(true);
+ +
9 + + + + + +
  }
+ +
10 + + + + + +
}
+ +
11 + + + + + +

+                            
+                        
+
+
+ + + + + + + + + + +
+
+
+ + + + + + +
Lines covered: 57 / 58 (98.3%)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
1 + + + + + +
// SPDX-License-Identifier: MIT
+ +
2 + + + + + +
pragma solidity 0.8.26;
+ +
3 + + + + + +

+                            
+                        
4 + + + + + +
import {ValidatorLib} from '@defi-wonderland/prophet-core/solidity/libraries/ValidatorLib.sol';
+ +
5 + + + + + +

+                            
+                        
6 + + + + + +
import {
+ +
7 + + + + + +
  BondEscalationModule,
+ +
8 + + + + + +
  IBondEscalationModule
+ +
9 + + + + + +
} from '@defi-wonderland/prophet-modules/solidity/contracts/modules/dispute/BondEscalationModule.sol';
+ +
10 + + + + + +

+                            
+                        
11 + + + + + +
import {
+ +
12 + + + + + +
  ArbitratorModule,
+ +
13 + + + + + +
  IArbitratorModule
+ +
14 + + + + + +
} from '@defi-wonderland/prophet-modules/solidity/contracts/modules/resolution/ArbitratorModule.sol';
+ +
15 + + + + + +
import {
+ +
16 + + + + + +
  BondedResponseModule,
+ +
17 + + + + + +
  IBondedResponseModule
+ +
18 + + + + + +
} from '@defi-wonderland/prophet-modules/solidity/contracts/modules/response/BondedResponseModule.sol';
+ +
19 + + + + + +
import {IArbitrator} from '@defi-wonderland/prophet-modules/solidity/interfaces/IArbitrator.sol';
+ +
20 + + + + + +
import {IAccountingExtension} from
+ +
21 + + + + + +
  '@defi-wonderland/prophet-modules/solidity/interfaces/extensions/IAccountingExtension.sol';
+ +
22 + + + + + +
import {IBondEscalationAccounting} from
+ +
23 + + + + + +
  '@defi-wonderland/prophet-modules/solidity/interfaces/extensions/IBondEscalationAccounting.sol';
+ +
24 + + + + + +

+                            
+                        
25 + + + + + +
import {IArbitrable, IArbitratorModule, ICouncilArbitrator, IOracle} from 'interfaces/ICouncilArbitrator.sol';
+ +
26 + + + + + +

+                            
+                        
27 + + + + + +
import {Utils} from './helpers/Utils.t.sol';
+ +
28 + + + + + +

+                            
+                        
29 + + + + + +
import {IEBOFinalityModule} from 'interfaces/IEBOFinalityModule.sol';
+ +
30 + + + + + +
import {IEBORequestModule} from 'interfaces/IEBORequestModule.sol';
+ +
31 + + + + + +

+                            
+                        
32 + + + + + +
import {IEpochManager} from 'interfaces/external/IEpochManager.sol';
+ +
33 + + + + + +
import {IHorizonStaking} from 'interfaces/external/IHorizonStaking.sol';
+ +
34 + + + + + +

+                            
+                        
35 + + + + + +
import {FuzzERC20, IERC20} from './helpers/FuzzERC20.sol';
+ +
36 + + + + + +

+                            
+                        
37 + + + + + +
import {IOracle, Oracle} from '@defi-wonderland/prophet-core/solidity/contracts/Oracle.sol';
+ +
38 + + + + + +

+                            
+                        
39 + + + + + +
import {BondEscalationModule} from
+ +
40 + + + + + +
  '@defi-wonderland/prophet-modules/solidity/contracts/modules/dispute/BondEscalationModule.sol';
+ +
41 + + + + + +
import {BondedResponseModule} from
+ +
42 + + + + + +
  '@defi-wonderland/prophet-modules/solidity/contracts/modules/response/BondedResponseModule.sol';
+ +
43 + + + + + +

+                            
+                        
44 + + + + + +
import {Arbitrable} from 'contracts/Arbitrable.sol';
+ +
45 + + + + + +
import {CouncilArbitrator} from 'contracts/CouncilArbitrator.sol';
+ +
46 + + + + + +
import {EBOFinalityModule} from 'contracts/EBOFinalityModule.sol';
+ +
47 + + + + + +
import {EBORequestCreator, IEBORequestCreator} from 'contracts/EBORequestCreator.sol';
+ +
48 + + + + + +
import {EBORequestModule} from 'contracts/EBORequestModule.sol';
+ +
49 + + + + + +

+                            
+                        
50 + + + + + +
import {HorizonAccountingExtension} from 'contracts/HorizonAccountingExtension.sol';
+ +
51 + + + + + +

+                            
+                        
52 + + + + + +
import {MockEpochManager} from './helpers/MockEpochManager.t.sol';
+ +
53 + + + + + +
import {MockHorizonStaking} from './helpers/MockHorizonStaking.t.sol';
+ +
54 + + + + + +

+                            
+                        
55 + + + + + +
contract Setup is Utils {
+ +
56 + + + + + +
  // Core contracts
+ +
57 + + + + + +
  Oracle internal oracle;
+ +
58 + + + + + +
  EBORequestCreator internal eboRequestCreator;
+ +
59 + + + + + +
  EBORequestModule internal eboRequestModule;
+ +
60 + + + + + +
  BondedResponseModule internal bondedResponseModule;
+ +
61 + + + + + +
  BondEscalationModule internal bondEscalationModule;
+ +
62 + + + + + +
  CouncilArbitrator internal councilArbitrator;
+ +
63 + + + + + +
  EBOFinalityModule internal eboFinalityModule;
+ +
64 + + + + + +
  Arbitrable internal arbitrable;
+ +
65 + + + + + +
  HorizonAccountingExtension internal horizonAccountingExtension;
+ +
66 + + + + + +
  ArbitratorModule internal arbitratorModule;
+ +
67 + + + + + +

+                            
+                        
68 + + + + + +
  // External contracts (mocked)
+ +
69 + + + + + +
  IHorizonStaking internal horizonStaking;
+ +
70 + + + + + +
  IERC20 internal GRT;
+ +
71 + + + + + +
  IEpochManager internal epochManager;
+ +
72 + + + + + +

+                            
+                        
73 + + + + + +
  // Constants
+ +
74 + +
+ +
+ +
+ +
+ +
  uint256 internal constant START_EPOCH = 1000;
+ +
75 + +
+ +
+ + + +
  uint64 internal constant MIN_THAWING_PERIOD = 1 days;
+ +
76 + +
+ +
+ + + +
  uint128 internal constant INITIAL_MAX_USERS_TO_CHECK = 10;
+ +
77 + + + + + +
  uint32 internal constant MAX_VERIFIER_CUT = 1_000_000;
+ +
78 + + + + + +

+                            
+                        
79 + + + + + +
  uint256 internal constant PAYMENT_AMOUNT = 0 ether;
+ +
80 + + + + + +

+                            
+                        
81 + +
+ +
+ + + +
  uint256 internal constant RESPONSE_BOND_SIZE = 0.5 ether;
+ +
82 + +
+ +
+ + + +
  uint256 internal constant RESPONSE_DEADLINE = 5 days;
+ +
83 + +
+ +
+ + + +
  uint256 internal constant RESPONSE_DISPUTE_WINDOW = 1 weeks;
+ +
84 + + + + + +

+                            
+                        
85 + +
+ +
+ + + +
  uint256 internal constant DISPUTE_BOND_SIZE = 0.3 ether;
+ +
86 + +
+ +
+ + + +
  uint256 internal constant MAX_NB_ESCALATION = 2;
+ +
87 + +
+ +
+ + + +
  uint256 internal constant DISPUTE_DEADLINE = 10 days;
+ +
88 + +
+ +
+ + + +
  uint256 internal constant TYING_BUFFER = 3 days;
+ +
89 + +
+ +
+ + + +
  uint256 internal constant DISPUTE_DISPUTE_WINDOW = 2 weeks;
+ +
90 + + + + + +

+                            
+                        
91 + + + + + +
  constructor() {
+ +
92 + + + + + +
    // Deploy mock contracts
+ +
93 + +
+ +
+ + + +
    GRT = IERC20(address(new FuzzERC20()));
+ +
94 + +
+ +
+ + + +
    epochManager = IEpochManager(address(new MockEpochManager(START_EPOCH)));
+ +
95 + +
+ +
+ + + +
    horizonStaking = IHorizonStaking(address(new MockHorizonStaking(GRT)));
+ +
96 + + + + + +

+                            
+                        
97 + + + + + +
    // Deploy core contracts
+ +
98 + +
+ +
+ + + +
    arbitrable = new Arbitrable(
+ +
99 + +
+ +
+ + + +
      address(this), // Initial arbitrator
+ +
100 + +
+ +
+ + + +
      address(this) // Initial council
+ +
101 + + + + + +
    );
+ +
102 + + + + + +

+                            
+                        
103 + +
+ +
+ + + +
    oracle = new Oracle();
+ +
104 + + + + + +

+                            
+                        
105 + +
+ +
+ + + +
    eboRequestModule = new EBORequestModule(
+ +
106 + + + + + +
      oracle,
+ +
107 + + + + + +
      EBORequestCreator(address(0)), //eboRequestCreator will be set after creation
+ +
108 + +
+ +
+ + + +
      arbitrable
+ +
109 + + + + + +
    );
+ +
110 + + + + + +

+                            
+                        
111 + +
+ +
+ + + +
    bondedResponseModule = new BondedResponseModule(oracle);
+ +
112 + + + + + +

+                            
+                        
113 + +
+ +
+ + + +
    bondEscalationModule = new BondEscalationModule(oracle);
+ +
114 + + + + + +

+                            
+                        
115 + +
+ +
+ + + +
    arbitratorModule = new ArbitratorModule(oracle);
+ +
116 + + + + + +

+                            
+                        
117 + +
+ +
+ + + +
    councilArbitrator = new CouncilArbitrator(arbitratorModule, arbitrable);
+ +
118 + + + + + +

+                            
+                        
119 + +
+ +
+ + + +
    eboFinalityModule = new EBOFinalityModule(
+ +
120 + +
+ +
+ + + +
      oracle,
+ +
121 + + + + + +
      EBORequestCreator(address(0)), // Will be set after creation
+ +
122 + +
+ +
+ + + +
      arbitrable
+ +
123 + + + + + +
    );
+ +
124 + + + + + +

+                            
+                        
125 + + + + + +
    // Set up accounting extension
+ +
126 + +
+ +
+ + + +
    address[] memory authorizedCallers = new address[](1);
+ +
127 + +
+ +
+ + + +
    authorizedCallers[0] = address(bondEscalationModule);
+ +
128 + + + + + +

+                            
+                        
129 + +
+ +
+ + + +
    horizonAccountingExtension = new HorizonAccountingExtension(
+ +
130 + +
+ +
+ + + +
      horizonStaking, oracle, GRT, arbitrable, MIN_THAWING_PERIOD, INITIAL_MAX_USERS_TO_CHECK, authorizedCallers
+ +
131 + + + + + +
    );
+ +
132 + + + + + +

+                            
+                        
133 + + + + + +
    // Create EBO request creator with initial parameters
+ +
134 + + + + + +
    IOracle.Request memory initialRequest = IOracle.Request({
+ +
135 + +
+ +
+ + + +
      requestModule: address(eboRequestModule),
+ +
136 + +
+ +
+ + + +
      responseModule: address(bondedResponseModule),
+ +
137 + +
+ +
+ + + +
      disputeModule: address(bondEscalationModule),
+ +
138 + +
+ +
+ + + +
      resolutionModule: address(arbitratorModule),
+ +
139 + +
+ +
+ + + +
      finalityModule: address(eboFinalityModule),
+ +
140 + + + + + +
      requester: address(0), // Will be set to eboRequestCreator's address
+ +
141 + + + + + +
      requestModuleData: '',
+ +
142 + + + + + +
      responseModuleData: '',
+ +
143 + + + + + +
      disputeModuleData: '',
+ +
144 + + + + + +
      resolutionModuleData: '',
+ +
145 + + + + + +
      finalityModuleData: '',
+ +
146 + + + + + +
      nonce: 0
+ +
147 + + + + + +
    });
+ +
148 + + + + + +

+                            
+                        
149 + +
+ +
+ + + +
    eboRequestCreator = new EBORequestCreator(oracle, epochManager, arbitrable, initialRequest);
+ +
150 + + + + + +

+                            
+                        
151 + + + + + +
    // Initialize modules with eboRequestCreator
+ +
152 + +
+ +
+ + + +
    eboRequestModule.addEBORequestCreator(eboRequestCreator);
+ +
153 + +
+ +
+ + + +
    eboFinalityModule.addEBORequestCreator(eboRequestCreator);
+ +
154 + + + + + +

+                            
+                        
155 + + + + + +
    // Set up module permissions
+ +
156 + +
+ +
+ + + +
    horizonAccountingExtension.approveModule(address(bondedResponseModule));
+ +
157 + +
+ +
+ + + +
    horizonAccountingExtension.approveModule(address(bondEscalationModule));
+ +
158 + + + + + +

+                            
+                        
159 + + + + + +
    // Set up initial chain IDs
+ +
160 + +
+ +
+ + + +
    eboRequestCreator.addChain('mainnet');
+ +
161 + +
+ +
+ + + +
    eboRequestCreator.addChain('optimism');
+ +
162 + +
+ +
+ + + +
    eboRequestCreator.addChain('arbitrum');
+ +
163 + + + + + +

+                            
+                        
164 + + + + + +
    // Set up initial module parameters
+ +
165 + +
+ +
+ + + +
    _setupModuleParameters();
+ +
166 + + + + + +
  }
+ +
167 + + + + + +

+                            
+                        
168 + + + + + +
  function _setupModuleParameters() internal {
+ +
169 + + + + + +
    // Set up request module parameters
+ +
170 + +
+ +
+ + + +
    IEBORequestModule.RequestParameters memory requestParams = IEBORequestModule.RequestParameters({
+ +
171 + + + + + +
      epoch: START_EPOCH,
+ +
172 + + + + + +
      chainId: 'mainnet',
+ +
173 + +
+ +
+ + + +
      accountingExtension: IAccountingExtension(address(horizonAccountingExtension)),
+ +
174 + + + + + +
      paymentAmount: PAYMENT_AMOUNT
+ +
175 + + + + + +
    });
+ +
176 + +
+ +
+ + + +
    eboRequestCreator.setRequestModuleData(address(eboRequestModule), requestParams);
+ +
177 + + + + + +

+                            
+                        
178 + + + + + +
    // Set up response module parameters
+ +
179 + + + + + +
    IBondedResponseModule.RequestParameters memory responseParams = IBondedResponseModule.RequestParameters({
+ +
180 + +
+ +
+ + + +
      accountingExtension: IAccountingExtension(address(horizonAccountingExtension)),
+ +
181 + +
+ +
+ + + +
      bondToken: GRT,
+ +
182 + + + + + +
      bondSize: RESPONSE_BOND_SIZE,
+ +
183 + + + + + +
      deadline: RESPONSE_DEADLINE,
+ +
184 + + + + + +
      disputeWindow: RESPONSE_DISPUTE_WINDOW
+ +
185 + + + + + +
    });
+ +
186 + +
+ +
+ + + +
    eboRequestCreator.setResponseModuleData(address(bondedResponseModule), responseParams);
+ +
187 + + + + + +

+                            
+                        
188 + + + + + +
    // Set up dispute module parameters
+ +
189 + + + + + +
    IBondEscalationModule.RequestParameters memory disputeParams = IBondEscalationModule.RequestParameters({
+ +
190 + +
+ +
+ + + +
      accountingExtension: IBondEscalationAccounting(address(horizonAccountingExtension)),
+ +
191 + +
+ +
+ + + +
      bondToken: GRT,
+ +
192 + + + + + +
      bondSize: DISPUTE_BOND_SIZE,
+ +
193 + + + + + +
      maxNumberOfEscalations: MAX_NB_ESCALATION,
+ +
194 + + + + + +
      bondEscalationDeadline: DISPUTE_DEADLINE,
+ +
195 + + + + + +
      tyingBuffer: TYING_BUFFER,
+ +
196 + + + + + +
      disputeWindow: DISPUTE_DISPUTE_WINDOW
+ +
197 + + + + + +
    });
+ +
198 + +
+ +
+ + + +
    eboRequestCreator.setDisputeModuleData(address(bondEscalationModule), disputeParams);
+ +
199 + + + + + +

+                            
+                        
200 + + + + + +
    // Set up resolution module parameters
+ +
201 + + + + + +
    IArbitratorModule.RequestParameters memory resolutionParams =
+ +
202 + +
+ +
+ + + +
      IArbitratorModule.RequestParameters({arbitrator: address(councilArbitrator)});
+ +
203 + +
+ +
+ + + +
    eboRequestCreator.setResolutionModuleData(address(arbitratorModule), resolutionParams);
+ +
204 + + + + + +

+                            
+                        
205 + + + + + +
    // Set finality module
+ +
206 + +
+ +
+ + + +
    eboRequestCreator.setFinalityModuleData(address(eboFinalityModule));
+ +
207 + + + + + +
  }
+ +
208 + + + + + +
}
+ +
209 + + + + + +

+                            
+                        
+
+
+ + + + + + + + + + +
+
+
+ + + + + + +
Lines covered: 7 / 20 (35.0%)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
1 + + + + + +
// SPDX-License-Identifier: MIT
+ +
2 + + + + + +
pragma solidity 0.8.26;
+ +
3 + + + + + +

+                            
+                        
4 + + + + + +
import /*{} from*/ '../Setup.t.sol';
+ +
5 + + + + + +
import {Actors} from '../helpers/Actors.t.sol';
+ +
6 + + + + + +

+                            
+                        
7 + + + + + +
// Base handler with tracking logic
+ +
8 + + + + + +
contract BaseHandler is Setup, Actors {
+ +
9 + + + + + +
  // Track all created request IDs
+ +
10 + + + + + +
  bytes32[] internal _ghost_requests;
+ +
11 + + + + + +

+                            
+                        
12 + + + + + +
  // Track request details
+ +
13 + + + + + +
  mapping(bytes32 => IOracle.Request) internal _ghost_requestData;
+ +
14 + + + + + +

+                            
+                        
15 + + + + + +
  // Track responses for requests
+ +
16 + + + + + +
  mapping(bytes32 => bytes32) internal _ghost_activeResponses; // requestId => responseId
+ +
17 + + + + + +
  mapping(bytes32 => IOracle.Response) internal _ghost_responseData;
+ +
18 + + + + + +
  mapping(bytes32 => bool) internal _ghost_finalizedResponses;
+ +
19 + + + + + +

+                            
+                        
20 + + + + + +
  // Track disputes
+ +
21 + + + + + +
  mapping(bytes32 => bytes32[]) internal _ghost_disputes; // requestId => disputeIds
+ +
22 + + + + + +
  mapping(bytes32 => IOracle.Dispute) internal _ghost_disputeData;
+ +
23 + + + + + +
  mapping(bytes32 => IOracle.DisputeStatus) internal _ghost_disputeStatuses;
+ +
24 + + + + + +

+                            
+                        
25 + + + + + +
  // Track which requests came from EBORequestCreator
+ +
26 + + + + + +
  mapping(bytes32 => bool) internal _ghost_validRequests;
+ +
27 + + + + + +

+                            
+                        
28 + + + + + +
  // Track chain IDs used per epoch to prevent duplicates
+ +
29 + + + + + +
  mapping(uint256 => mapping(string => bool)) internal _ghost_epochChainIds;
+ +
30 + + + + + +

+                            
+                        
31 + + + + + +
  // Track bonds and pledges
+ +
32 + + + + + +
  mapping(address => mapping(bytes32 => uint256)) internal _ghost_bonds;
+ +
33 + + + + + +
  mapping(address => mapping(bytes32 => uint256)) internal _ghost_pledgesFor;
+ +
34 + + + + + +
  mapping(address => mapping(bytes32 => uint256)) internal _ghost_pledgesAgainst;
+ +
35 + + + + + +

+                            
+                        
36 + + + + + +
  // Helper functions
+ +
37 + + + +
+ +
+ +
  function _boundEpoch(uint256 _epoch) internal view returns (uint256) {
+ +
38 + + + +
+ +
+ +
    return bound(_epoch, START_EPOCH, START_EPOCH + 1000);
+ +
39 + + + + + +
  }
+ +
40 + + + + + +

+                            
+                        
41 + + + + + +
  function _boundAmount(uint256 _amount) internal pure returns (uint256) {
+ +
42 + + + + + +
    return bound(_amount, 1, 1_000_000e18);
+ +
43 + + + + + +
  }
+ +
44 + + + + + +

+                            
+                        
45 + + + + + +
  function _boundBlockNumber(uint256 _blockNumber) internal view returns (uint256) {
+ +
46 + + + + + +
    return bound(_blockNumber, block.number - 1000, block.number);
+ +
47 + + + + + +
  }
+ +
48 + + + + + +

+                            
+                        
49 + +
+ +
+ +
+ +
+ +
  function _generateChainId(uint256 _seed) internal pure returns (string memory) {
+ +
50 + +
+ +
+ +
+ +
+ +
    string[3] memory chains = ['mainnet', 'optimism', 'arbitrum'];
+ +
51 + +
+ +
+ +
+ +
+ +
    return chains[_seed % 3];
+ +
52 + + + + + +
  }
+ +
53 + + + + + +

+                            
+                        
54 + +
+ +
+ + + +
  function _getRandomRequest(uint256 _seed) internal view returns (bytes32) {
+ +
55 + +
+ +
+ + + +
    if (_ghost_requests.length == 0) return bytes32(0);
+ +
56 + + + + + +
    return _ghost_requests[_seed % _ghost_requests.length];
+ +
57 + + + + + +
  }
+ +
58 + + + + + +

+                            
+                        
59 + + + + + +
  function _getRandomActiveResponse(bytes32 _requestId) internal view returns (IOracle.Response memory) {
+ +
60 + + + + + +
    bytes32 responseId = _ghost_activeResponses[_requestId];
+ +
61 + + + + + +
    return _ghost_responseData[responseId];
+ +
62 + + + + + +
  }
+ +
63 + + + + + +

+                            
+                        
64 + + + + + +
  function _getRandomDispute(bytes32 _requestId, uint256 _seed) internal view returns (IOracle.Dispute memory) {
+ +
65 + + + + + +
    bytes32[] storage disputes = _ghost_disputes[_requestId];
+ +
66 + + + + + +
    if (disputes.length == 0) {
+ +
67 + + + + + +
      return IOracle.Dispute(address(0), address(0), bytes32(0), 0);
+ +
68 + + + + + +
    }
+ +
69 + + + + + +
    bytes32 disputeId = disputes[_seed % disputes.length];
+ +
70 + + + + + +
    return _ghost_disputeData[disputeId];
+ +
71 + + + + + +
  }
+ +
72 + + + + + +

+                            
+                        
73 + + + + + +
  // Events to track state changes
+ +
74 + + + + + +
  event RequestCreated(bytes32 indexed requestId, uint256 epoch, string chainId);
+ +
75 + + + + + +
  event ResponseProposed(bytes32 indexed requestId, bytes32 indexed responseId);
+ +
76 + + + + + +
  event DisputeCreated(bytes32 indexed requestId, bytes32 indexed responseId, bytes32 indexed disputeId);
+ +
77 + + + + + +
  event ResponseFinalized(bytes32 indexed requestId, bytes32 indexed responseId);
+ +
78 + + + + + +
  event DisputeResolved(bytes32 indexed disputeId, IOracle.DisputeStatus status);
+ +
79 + + + + + +
}
+ +
80 + + + + + +

+                            
+                        
+
+
+ + + + + + + + + + +
+
+
+ + + + + + +
Lines covered: 7 / 8 (87.5%)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
1 + + + + + +
// SPDX-License-Identifier: MIT
+ +
2 + + + + + +
pragma solidity 0.8.26;
+ +
3 + + + + + +

+                            
+                        
4 + + + + + +
import {BaseHandler} from './BaseHandler.t.sol';
+ +
5 + + + + + +

+                            
+                        
6 + + + + + +
contract HandlerArbitrable is BaseHandler {
+ +
7 + + + + + +
  function handleValidateArbitrator(uint256 _actorSeed) external {
+ +
8 + + + +
+ +
+ +
    address caller = _pickActor(_actorSeed);
+ +
9 + + + +
+ +
+ +
    arbitrable.validateArbitrator(caller);
+ +
10 + + + + + +
  }
+ +
11 + + + + + +

+                            
+                        
12 + + + + + +
  function handleSetArbitrator(uint256 _actorSeed) external {
+ +
13 + +
+ +
+ + + +
    address newArbitrator = _pickActor(_actorSeed);
+ +
14 + +
+ +
+ + + +
    arbitrable.setArbitrator(newArbitrator);
+ +
15 + + + + + +
  }
+ +
16 + + + + + +

+                            
+                        
17 + + + + + +
  function handleSetPendingCouncil(uint256 _actorSeed) external {
+ +
18 + +
+ +
+ + + +
    address pendingCouncil = _pickActor(_actorSeed);
+ +
19 + +
+ +
+ + + +
    arbitrable.setPendingCouncil(pendingCouncil);
+ +
20 + + + + + +
  }
+ +
21 + + + + + +

+                            
+                        
22 + + + + + +
  function handleConfirmCouncil() external {
+ +
23 + + + +
+ +
+ +
    arbitrable.confirmCouncil();
+ +
24 + + + + + +
  }
+ +
25 + + + + + +
}
+ +
26 + + + + + +

+                            
+                        
+
+
+ + + + + + + + + + +
+
+
+ + + + + + +
Lines covered: 10 / 49 (20.4%)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
1 + + + + + +
// SPDX-License-Identifier: MIT
+ +
2 + + + + + +
pragma solidity 0.8.26;
+ +
3 + + + + + +

+                            
+                        
4 + + + + + +
import {BaseHandler, IOracle} from './BaseHandler.t.sol';
+ +
5 + + + + + +

+                            
+                        
6 + + + + + +
contract HandlerBondEscalationModule is BaseHandler {
+ +
7 + + + + + +
  function handleDisputeResponseBondEscalationModule(uint256 _requestSeed, uint256 _actorSeed) external {
+ +
8 + +
+ +
+ + + +
    bytes32 requestId = _getRandomRequest(_requestSeed);
+ +
9 + +
+ +
+ + + +
    if (requestId == bytes32(0) || !_ghost_validRequests[requestId]) return;
+ +
10 + + + + + +

+                            
+                        
11 + + + + + +
    bytes32 responseId = _ghost_activeResponses[requestId];
+ +
12 + + + + + +
    if (responseId == bytes32(0)) return;
+ +
13 + + + + + +

+                            
+                        
14 + + + + + +
    IOracle.Response memory response = _ghost_responseData[responseId];
+ +
15 + + + + + +
    if (_ghost_finalizedResponses[responseId]) return;
+ +
16 + + + + + +

+                            
+                        
17 + + + + + +
    // Create dispute data
+ +
18 + + + + + +
    address disputer = _pickActor(_actorSeed);
+ +
19 + + + + + +
    uint256 bond = _boundAmount(1e18);
+ +
20 + + + + + +

+                            
+                        
21 + + + + + +
    IOracle.Dispute memory dispute =
+ +
22 + + + + + +
      IOracle.Dispute({disputer: disputer, proposer: msg.sender, responseId: responseId, requestId: requestId});
+ +
23 + + + + + +

+                            
+                        
24 + + + + + +
    // Submit dispute
+ +
25 + + + + + +
    bondEscalationModule.disputeResponse(_ghost_requestData[requestId], response, dispute);
+ +
26 + + + + + +

+                            
+                        
27 + + + + + +
    // Track dispute
+ +
28 + + + + + +
    bytes32 disputeId = keccak256(abi.encode(dispute));
+ +
29 + + + + + +
    _ghost_disputes[requestId].push(disputeId);
+ +
30 + + + + + +
    _ghost_disputeData[disputeId] = dispute;
+ +
31 + + + + + +
    _ghost_bonds[disputer][requestId] = bond;
+ +
32 + + + + + +
    _ghost_disputeStatuses[disputeId] = IOracle.DisputeStatus.Escalated;
+ +
33 + + + + + +

+                            
+                        
34 + + + + + +
    emit DisputeCreated(requestId, responseId, disputeId);
+ +
35 + + + + + +
  }
+ +
36 + + + + + +

+                            
+                        
37 + + + + + +
  function handleOnDisputeStatusChange(uint256 _requestSeed, uint256 _disputeIndex) external {
+ +
38 + +
+ +
+ + + +
    bytes32 requestId = _getRandomRequest(_requestSeed);
+ +
39 + +
+ +
+ + + +
    if (requestId == bytes32(0)) return;
+ +
40 + + + + + +

+                            
+                        
41 + + + + + +
    IOracle.Dispute memory dispute = _getRandomDispute(requestId, _disputeIndex);
+ +
42 + + + + + +
    if (dispute.requestId == bytes32(0)) return;
+ +
43 + + + + + +

+                            
+                        
44 + + + + + +
    bytes32 disputeId = keccak256(abi.encode(dispute));
+ +
45 + + + + + +
    bondEscalationModule.onDisputeStatusChange(
+ +
46 + + + + + +
      disputeId, _ghost_requestData[requestId], _ghost_responseData[dispute.responseId], dispute
+ +
47 + + + + + +
    );
+ +
48 + + + + + +
  }
+ +
49 + + + + + +

+                            
+                        
50 + + + + + +
  function handlePledgeForDispute(uint256 _requestSeed, uint256 _disputeIndex, uint256 _actorSeed) external {
+ +
51 + +
+ +
+ + + +
    bytes32 requestId = _getRandomRequest(_requestSeed);
+ +
52 + +
+ +
+ + + +
    if (requestId == bytes32(0)) return;
+ +
53 + + + + + +

+                            
+                        
54 + + + + + +
    IOracle.Dispute memory dispute = _getRandomDispute(requestId, _disputeIndex);
+ +
55 + + + + + +
    if (dispute.requestId == bytes32(0)) return;
+ +
56 + + + + + +

+                            
+                        
57 + + + + + +
    if (_ghost_disputeStatuses[keccak256(abi.encode(dispute))] != IOracle.DisputeStatus.Escalated) return;
+ +
58 + + + + + +

+                            
+                        
59 + + + + + +
    address pledger = _pickActor(_actorSeed);
+ +
60 + + + + + +
    bondEscalationModule.pledgeForDispute(_ghost_requestData[requestId], dispute);
+ +
61 + + + + + +

+                            
+                        
62 + + + + + +
    bytes32 disputeId = keccak256(abi.encode(dispute));
+ +
63 + + + + + +
    _ghost_pledgesFor[pledger][disputeId] += _boundAmount(1e18);
+ +
64 + + + + + +
  }
+ +
65 + + + + + +

+                            
+                        
66 + + + + + +
  function handlePledgeAgainstDispute(uint256 _requestSeed, uint256 _disputeIndex, uint256 _actorSeed) external {
+ +
67 + +
+ +
+ + + +
    bytes32 requestId = _getRandomRequest(_requestSeed);
+ +
68 + +
+ +
+ + + +
    if (requestId == bytes32(0)) return;
+ +
69 + + + + + +

+                            
+                        
70 + + + + + +
    IOracle.Dispute memory dispute = _getRandomDispute(requestId, _disputeIndex);
+ +
71 + + + + + +
    if (dispute.requestId == bytes32(0)) return;
+ +
72 + + + + + +

+                            
+                        
73 + + + + + +
    if (_ghost_disputeStatuses[keccak256(abi.encode(dispute))] != IOracle.DisputeStatus.Escalated) return;
+ +
74 + + + + + +

+                            
+                        
75 + + + + + +
    address pledger = _pickActor(_actorSeed);
+ +
76 + + + + + +
    bondEscalationModule.pledgeAgainstDispute(_ghost_requestData[requestId], dispute);
+ +
77 + + + + + +

+                            
+                        
78 + + + + + +
    bytes32 disputeId = keccak256(abi.encode(dispute));
+ +
79 + + + + + +
    _ghost_pledgesAgainst[pledger][disputeId] += _boundAmount(1e18);
+ +
80 + + + + + +
  }
+ +
81 + + + + + +

+                            
+                        
82 + + + + + +
  function handleSettleBondEscalation(uint256 _requestSeed, uint256 _disputeIndex) external {
+ +
83 + +
+ +
+ + + +
    bytes32 requestId = _getRandomRequest(_requestSeed);
+ +
84 + +
+ +
+ + + +
    if (requestId == bytes32(0)) return;
+ +
85 + + + + + +

+                            
+                        
86 + + + + + +
    IOracle.Dispute memory dispute = _getRandomDispute(requestId, _disputeIndex);
+ +
87 + + + + + +
    if (dispute.requestId == bytes32(0)) return;
+ +
88 + + + + + +

+                            
+                        
89 + + + + + +
    IOracle.Response memory response = _ghost_responseData[dispute.responseId];
+ +
90 + + + + + +
    bondEscalationModule.settleBondEscalation(_ghost_requestData[requestId], response, dispute);
+ +
91 + + + + + +
  }
+ +
92 + + + + + +
}
+ +
93 + + + + + +

+                            
+                        
+
+
+ + + + + + + + + + +
+
+
+ + + + + + +
Lines covered: 6 / 28 (21.4%)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
1 + + + + + +
// SPDX-License-Identifier: MIT
+ +
2 + + + + + +
pragma solidity 0.8.26;
+ +
3 + + + + + +

+                            
+                        
4 + + + + + +
import {BaseHandler, IOracle} from './BaseHandler.t.sol';
+ +
5 + + + + + +

+                            
+                        
6 + + + + + +
contract HandlerBondedResponseModule is BaseHandler {
+ +
7 + + + + + +
  function handlePropose(uint256 _requestSeed, uint256 _blockNumber, uint256 _actorSeed) external {
+ +
8 + +
+ +
+ + + +
    bytes32 requestId = _getRandomRequest(_requestSeed);
+ +
9 + +
+ +
+ + + +
    if (requestId == bytes32(0) || !_ghost_validRequests[requestId]) return;
+ +
10 + + + + + +
    if (_ghost_activeResponses[requestId] != bytes32(0)) return; // Only one active response at a time
+ +
11 + + + + + +

+                            
+                        
12 + + + + + +
    // Create response data
+ +
13 + + + + + +
    address proposer = _pickActor(_actorSeed);
+ +
14 + + + + + +
    _blockNumber = _boundBlockNumber(_blockNumber);
+ +
15 + + + + + +

+                            
+                        
16 + + + + + +
    IOracle.Request memory request = _ghost_requestData[requestId];
+ +
17 + + + + + +
    IOracle.Response memory response =
+ +
18 + + + + + +
      IOracle.Response({requestId: requestId, response: abi.encode(_blockNumber), proposer: proposer});
+ +
19 + + + + + +

+                            
+                        
20 + + + + + +
    // Submit response
+ +
21 + + + + + +
    bondedResponseModule.propose(request, response, proposer);
+ +
22 + + + + + +

+                            
+                        
23 + + + + + +
    // Track response
+ +
24 + + + + + +
    bytes32 responseId = keccak256(abi.encode(response));
+ +
25 + + + + + +
    _ghost_activeResponses[requestId] = responseId;
+ +
26 + + + + + +
    _ghost_responseData[responseId] = response;
+ +
27 + + + + + +

+                            
+                        
28 + + + + + +
    emit ResponseProposed(requestId, responseId);
+ +
29 + + + + + +
  }
+ +
30 + + + + + +

+                            
+                        
31 + + + + + +
  function handleFinalizeRequestResponseModule(uint256 _requestSeed) external {
+ +
32 + +
+ +
+ + + +
    bytes32 requestId = _getRandomRequest(_requestSeed);
+ +
33 + +
+ +
+ + + +
    if (requestId == bytes32(0) || !_ghost_validRequests[requestId]) return;
+ +
34 + + + + + +

+                            
+                        
35 + + + + + +
    bytes32 responseId = _ghost_activeResponses[requestId];
+ +
36 + + + + + +
    if (responseId == bytes32(0)) return;
+ +
37 + + + + + +

+                            
+                        
38 + + + + + +
    IOracle.Response memory response = _ghost_responseData[responseId];
+ +
39 + + + + + +
    if (_ghost_finalizedResponses[responseId]) return;
+ +
40 + + + + + +

+                            
+                        
41 + + + + + +
    bondedResponseModule.finalizeRequest(_ghost_requestData[requestId], response, response.proposer);
+ +
42 + + + + + +

+                            
+                        
43 + + + + + +
    _ghost_finalizedResponses[responseId] = true;
+ +
44 + + + + + +
    emit ResponseFinalized(requestId, responseId);
+ +
45 + + + + + +
  }
+ +
46 + + + + + +

+                            
+                        
47 + + + + + +
  function handleReleaseUnutilizedResponse(uint256 _requestSeed) external {
+ +
48 + +
+ +
+ + + +
    bytes32 requestId = _getRandomRequest(_requestSeed);
+ +
49 + +
+ +
+ + + +
    if (requestId == bytes32(0)) return;
+ +
50 + + + + + +

+                            
+                        
51 + + + + + +
    IOracle.Response memory response = _getRandomActiveResponse(requestId);
+ +
52 + + + + + +
    if (response.requestId == bytes32(0)) return;
+ +
53 + + + + + +

+                            
+                        
54 + + + + + +
    bondedResponseModule.releaseUnutilizedResponse(_ghost_requestData[requestId], response);
+ +
55 + + + + + +
  }
+ +
56 + + + + + +
}
+ +
57 + + + + + +

+                            
+                        
+
+
+ + + + + + + + + + +
+
+
+ + + + + + +
Lines covered: 4 / 17 (23.5%)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
1 + + + + + +
// SPDX-License-Identifier: MIT
+ +
2 + + + + + +
pragma solidity 0.8.26;
+ +
3 + + + + + +

+                            
+                        
4 + + + + + +
import {BaseHandler, IOracle} from './BaseHandler.t.sol';
+ +
5 + + + + + +

+                            
+                        
6 + + + + + +
contract HandlerCouncilArbitrator is BaseHandler {
+ +
7 + + + + + +
  function handleResolve(uint256 _requestSeed, uint256 _disputeIndex) external {
+ +
8 + +
+ +
+ + + +
    bytes32 requestId = _getRandomRequest(_requestSeed);
+ +
9 + +
+ +
+ + + +
    if (requestId == bytes32(0)) return;
+ +
10 + + + + + +

+                            
+                        
11 + + + + + +
    IOracle.Dispute memory dispute = _getRandomDispute(requestId, _disputeIndex);
+ +
12 + + + + + +
    if (dispute.requestId == bytes32(0)) return;
+ +
13 + + + + + +

+                            
+                        
14 + + + + + +
    IOracle.Response memory response = _ghost_responseData[dispute.responseId];
+ +
15 + + + + + +
    councilArbitrator.resolve(_ghost_requestData[requestId], response, dispute);
+ +
16 + + + + + +
  }
+ +
17 + + + + + +

+                            
+                        
18 + + + + + +
  function handleArbitrateDispute(uint256 _requestSeed, uint256 _disputeIndex, uint256 _statusSeed) external {
+ +
19 + +
+ +
+ + + +
    bytes32 requestId = _getRandomRequest(_requestSeed);
+ +
20 + +
+ +
+ + + +
    if (requestId == bytes32(0)) return;
+ +
21 + + + + + +

+                            
+                        
22 + + + + + +
    IOracle.Dispute memory dispute = _getRandomDispute(requestId, _disputeIndex);
+ +
23 + + + + + +
    if (dispute.requestId == bytes32(0)) return;
+ +
24 + + + + + +

+                            
+                        
25 + + + + + +
    bytes32 disputeId = keccak256(abi.encode(dispute));
+ +
26 + + + + + +

+                            
+                        
27 + + + + + +
    // Generate a valid dispute status (NoResolution, Won, Lost)
+ +
28 + + + + + +
    IOracle.DisputeStatus status = IOracle.DisputeStatus(
+ +
29 + + + + + +
      bound(_statusSeed, uint8(IOracle.DisputeStatus.NoResolution), uint8(IOracle.DisputeStatus.Lost))
+ +
30 + + + + + +
    );
+ +
31 + + + + + +

+                            
+                        
32 + + + + + +
    councilArbitrator.arbitrateDispute(disputeId, status);
+ +
33 + + + + + +
    _ghost_disputeStatuses[disputeId] = status;
+ +
34 + + + + + +

+                            
+                        
35 + + + + + +
    emit DisputeResolved(disputeId, status);
+ +
36 + + + + + +
  }
+ +
37 + + + + + +
}
+ +
38 + + + + + +

+                            
+                        
+
+
+ + + + + + + + + + +
+
+
+ + + + + + +
Lines covered: 7 / 19 (36.8%)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
1 + + + + + +
// SPDX-License-Identifier: MIT
+ +
2 + + + + + +
pragma solidity 0.8.26;
+ +
3 + + + + + +

+                            
+                        
4 + + + + + +
import {BaseHandler, IEBORequestCreator, IOracle} from './BaseHandler.t.sol';
+ +
5 + + + + + +

+                            
+                        
6 + + + + + +
contract HandlerEBOFinalityModule is BaseHandler {
+ +
7 + + + + + +
  function handleFinalizeRequestFinalityModule(uint256 _requestSeed) external {
+ +
8 + +
+ +
+ + + +
    bytes32 requestId = _getRandomRequest(_requestSeed);
+ +
9 + +
+ +
+ + + +
    if (requestId == bytes32(0) || !_ghost_validRequests[requestId]) return;
+ +
10 + + + + + +

+                            
+                        
11 + + + + + +
    bytes32 responseId = _ghost_activeResponses[requestId];
+ +
12 + + + + + +
    if (responseId == bytes32(0)) return;
+ +
13 + + + + + +

+                            
+                        
14 + + + + + +
    IOracle.Response memory response = _ghost_responseData[responseId];
+ +
15 + + + + + +
    eboFinalityModule.finalizeRequest(_ghost_requestData[requestId], response, response.proposer);
+ +
16 + + + + + +
  }
+ +
17 + + + + + +

+                            
+                        
18 + + + + + +
  function handleAmendEpoch(
+ +
19 + + + + + +
    uint256 _epoch,
+ +
20 + + + + + +
    uint256[] calldata _chainIdSeeds,
+ +
21 + + + + + +
    uint256[] calldata _blockNumbers
+ +
22 + + + + + +
  ) external {
+ +
23 + +
+ +
+ + + +
    if (_chainIdSeeds.length != _blockNumbers.length) return;
+ +
24 + + + + + +

+                            
+                        
25 + + + + + +
    _epoch = _boundEpoch(_epoch);
+ +
26 + + + + + +
    string[] memory chainIds = new string[](_chainIdSeeds.length);
+ +
27 + + + + + +
    uint256[] memory blockNums = new uint256[](_blockNumbers.length);
+ +
28 + + + + + +

+                            
+                        
29 + + + + + +
    for (uint256 i = 0; i < _chainIdSeeds.length; i++) {
+ +
30 + + + + + +
      chainIds[i] = _generateChainId(_chainIdSeeds[i]);
+ +
31 + + + + + +
      blockNums[i] = _boundBlockNumber(_blockNumbers[i]);
+ +
32 + + + + + +
    }
+ +
33 + + + + + +

+                            
+                        
34 + + + + + +
    eboFinalityModule.amendEpoch(_epoch, chainIds, blockNums);
+ +
35 + + + + + +
  }
+ +
36 + + + + + +

+                            
+                        
37 + + + + + +
  function handleAddEBORequestCreatorFinalityModule(uint256 _actorSeed) external {
+ +
38 + +
+ +
+ + + +
    address creator = _pickActor(_actorSeed);
+ +
39 + +
+ +
+ + + +
    eboFinalityModule.addEBORequestCreator(IEBORequestCreator(creator));
+ +
40 + + + + + +
  }
+ +
41 + + + + + +

+                            
+                        
42 + + + + + +
  function handleRemoveEBORequestCreatorFinalityModule(uint256 _actorSeed) external {
+ +
43 + +
+ +
+ +
+ +
+ +
    address creator = _pickActor(_actorSeed);
+ +
44 + +
+ +
+ +
+ +
+ +
    eboFinalityModule.removeEBORequestCreator(IEBORequestCreator(creator));
+ +
45 + + + + + +
  }
+ +
46 + + + + + +
}
+ +
47 + + + + + +

+                            
+                        
+
+
+ + + + + + + + + + +
+
+
+ + + + + + +
Lines covered: 20 / 28 (71.4%)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
1 + + + + + +
// SPDX-License-Identifier: MIT
+ +
2 + + + + + +
pragma solidity 0.8.26;
+ +
3 + + + + + +

+                            
+                        
4 + + + + + +
import {
+ +
5 + + + + + +
  BaseHandler,
+ +
6 + + + + + +
  IArbitratorModule,
+ +
7 + + + + + +
  IBondEscalationModule,
+ +
8 + + + + + +
  IBondedResponseModule,
+ +
9 + + + + + +
  IEBORequestModule,
+ +
10 + + + + + +
  IEpochManager,
+ +
11 + + + + + +
  IOracle
+ +
12 + + + + + +
} from './BaseHandler.t.sol';
+ +
13 + + + + + +

+                            
+                        
14 + + + + + +
contract HandlerEBORequestCreator is BaseHandler {
+ +
15 + + + + + +
  function handleCreateRequest(uint256 _epoch, uint256 _chainIdSeed) external {
+ +
16 + + + +
+ +
+ +
    _epoch = _boundEpoch(_epoch);
+ +
17 + + + +
+ +
+ +
    string memory chainId = _generateChainId(_chainIdSeed);
+ +
18 + + + + + +

+                            
+                        
19 + + + + + +
    // Prevent duplicate chainId for same epoch
+ +
20 + + + +
+ +
+ +
    if (_ghost_epochChainIds[_epoch][chainId]) return;
+ +
21 + + + + + +

+                            
+                        
22 + + + + + +
    // Create request via EBORequestCreator
+ +
23 + + + +
+ +
+ +
    eboRequestCreator.createRequest(_epoch, chainId);
+ +
24 + + + + + +

+                            
+                        
25 + + + + + +
    // Get current request data
+ +
26 + + + + + +
    IOracle.Request memory requestData = eboRequestCreator.getRequestData();
+ +
27 + + + + + +

+                            
+                        
28 + + + + + +
    // Calculate request ID using same logic as Oracle
+ +
29 + + + + + +
    bytes32 requestId = keccak256(abi.encode(requestData));
+ +
30 + + + + + +

+                            
+                        
31 + + + + + +
    // Track the request
+ +
32 + + + + + +
    _ghost_requests.push(requestId);
+ +
33 + + + + + +
    _ghost_requestData[requestId] = requestData;
+ +
34 + + + + + +
    _ghost_validRequests[requestId] = true;
+ +
35 + + + + + +
    _ghost_epochChainIds[_epoch][chainId] = true;
+ +
36 + + + + + +

+                            
+                        
37 + + + + + +
    emit RequestCreated(requestId, _epoch, chainId);
+ +
38 + + + + + +
  }
+ +
39 + + + + + +

+                            
+                        
40 + + + + + +
  function handleAddChain(uint256 _chainIdSeed) external {
+ +
41 + + + +
+ +
+ +
    string memory chainId = _generateChainId(_chainIdSeed);
+ +
42 + + + +
+ +
+ +
    eboRequestCreator.addChain(chainId);
+ +
43 + + + + + +
  }
+ +
44 + + + + + +

+                            
+                        
45 + + + + + +
  function handleRemoveChain(uint256 _chainIdSeed) external {
+ +
46 + +
+ +
+ +
+ +
+ +
    string memory chainId = _generateChainId(_chainIdSeed);
+ +
47 + +
+ +
+ +
+ +
+ +
    eboRequestCreator.removeChain(chainId);
+ +
48 + + + + + +
  }
+ +
49 + + + + + +

+                            
+                        
50 + + + + + +
  function handleSetRequestModuleData(
+ +
51 + + + + + +
    uint256 _actorSeed,
+ +
52 + + + + + +
    IEBORequestModule.RequestParameters calldata _params
+ +
53 + + + + + +
  ) external {
+ +
54 + +
+ +
+ +
+ +
+ +
    address module = _pickActor(_actorSeed);
+ +
55 + +
+ +
+ +
+ +
+ +
    eboRequestCreator.setRequestModuleData(module, _params);
+ +
56 + + + + + +
  }
+ +
57 + + + + + +

+                            
+                        
58 + + + + + +
  function handleSetResponseModuleData(
+ +
59 + + + + + +
    uint256 _actorSeed,
+ +
60 + + + + + +
    IBondedResponseModule.RequestParameters calldata _params
+ +
61 + + + + + +
  ) external {
+ +
62 + +
+ +
+ +
+ +
+ +
    address module = _pickActor(_actorSeed);
+ +
63 + +
+ +
+ +
+ +
+ +
    eboRequestCreator.setResponseModuleData(module, _params);
+ +
64 + + + + + +
  }
+ +
65 + + + + + +

+                            
+                        
66 + + + + + +
  function handleSetDisputeModuleData(
+ +
67 + + + + + +
    uint256 _actorSeed,
+ +
68 + + + + + +
    IBondEscalationModule.RequestParameters calldata _params
+ +
69 + + + + + +
  ) external {
+ +
70 + +
+ +
+ +
+ +
+ +
    address module = _pickActor(_actorSeed);
+ +
71 + +
+ +
+ +
+ +
+ +
    eboRequestCreator.setDisputeModuleData(module, _params);
+ +
72 + + + + + +
  }
+ +
73 + + + + + +

+                            
+                        
74 + + + + + +
  function handleSetResolutionModuleData(
+ +
75 + + + + + +
    uint256 _actorSeed,
+ +
76 + + + + + +
    IArbitratorModule.RequestParameters calldata _params
+ +
77 + + + + + +
  ) external {
+ +
78 + +
+ +
+ +
+ +
+ +
    address module = _pickActor(_actorSeed);
+ +
79 + +
+ +
+ +
+ +
+ +
    eboRequestCreator.setResolutionModuleData(module, _params);
+ +
80 + + + + + +
  }
+ +
81 + + + + + +

+                            
+                        
82 + + + + + +
  function handleSetFinalityModuleData(uint256 _actorSeed) external {
+ +
83 + +
+ +
+ +
+ +
+ +
    address module = _pickActor(_actorSeed);
+ +
84 + +
+ +
+ +
+ +
+ +
    eboRequestCreator.setFinalityModuleData(module);
+ +
85 + + + + + +
  }
+ +
86 + + + + + +

+                            
+                        
87 + + + + + +
  function handleSetEpochManager(uint256 _actorSeed) external {
+ +
88 + +
+ +
+ +
+ +
+ +
    address manager = _pickActor(_actorSeed);
+ +
89 + +
+ +
+ +
+ +
+ +
    eboRequestCreator.setEpochManager(IEpochManager(manager));
+ +
90 + + + + + +
  }
+ +
91 + + + + + +
}
+ +
92 + + + + + +

+                            
+                        
+
+
+ + + + + + + + + + +
+
+
+ + + + + + +
Lines covered: 4 / 5 (80.0%)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
1 + + + + + +
// SPDX-License-Identifier: MIT
+ +
2 + + + + + +
pragma solidity 0.8.26;
+ +
3 + + + + + +

+                            
+                        
4 + + + + + +
import {BaseHandler, IEBORequestCreator} from './BaseHandler.t.sol';
+ +
5 + + + + + +

+                            
+                        
6 + + + + + +
contract HandlerEBORequestModule is BaseHandler {
+ +
7 + + + + + +
  function handleAddEBORequestCreatorRequestModule(uint256 _actorSeed) external {
+ +
8 + +
+ +
+ +
+ +
+ +
    address creator = _pickActor(_actorSeed);
+ +
9 + +
+ +
+ +
+ +
+ +
    eboRequestModule.addEBORequestCreator(IEBORequestCreator(creator));
+ +
10 + + + + + +
  }
+ +
11 + + + + + +

+                            
+                        
12 + + + + + +
  function handleRemoveEBORequestCreatorRequestModule(uint256 _actorSeed) external {
+ +
13 + +
+ +
+ +
+ +
+ +
    address creator = _pickActor(_actorSeed);
+ +
14 + +
+ +
+ +
+ +
+ +
    eboRequestModule.removeEBORequestCreator(IEBORequestCreator(creator));
+ +
15 + + + + + +
  }
+ +
16 + + + + + +
}
+ +
17 + + + + + +

+                            
+                        
+
+
+ + + + + + + + + + +
+
+
+ + + + + + +
Lines covered: 26 / 58 (44.8%)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
1 + + + + + +
// SPDX-License-Identifier: MIT
+ +
2 + + + + + +
pragma solidity 0.8.26;
+ +
3 + + + + + +

+                            
+                        
4 + + + + + +
import {BaseHandler, IOracle} from './BaseHandler.t.sol';
+ +
5 + + + + + +

+                            
+                        
6 + + + + + +
contract HandlerHorizonAccountingExtension is BaseHandler {
+ +
7 + + + + + +
  function handleApproveModule(uint256 _actorSeed) external {
+ +
8 + +
+ +
+ + + +
    address module = _pickActor(_actorSeed);
+ +
9 + +
+ +
+ + + +
    horizonAccountingExtension.approveModule(module);
+ +
10 + + + + + +
  }
+ +
11 + + + + + +

+                            
+                        
12 + + + + + +
  function handleRevokeModule(uint256 _actorSeed) external {
+ +
13 + +
+ +
+ + + +
    address module = _pickActor(_actorSeed);
+ +
14 + +
+ +
+ + + +
    horizonAccountingExtension.revokeModule(module);
+ +
15 + + + + + +
  }
+ +
16 + + + + + +

+                            
+                        
17 + + + + + +
  function handlePledge(uint256 _pledgerSeed, uint256 _requestSeed, uint256 _disputeIndex, uint256 _amount) external {
+ +
18 + +
+ +
+ + + +
    address pledger = _pickActor(_pledgerSeed);
+ +
19 + +
+ +
+ + + +
    bytes32 requestId = _getRandomRequest(_requestSeed);
+ +
20 + +
+ +
+ + + +
    if (requestId == bytes32(0)) return;
+ +
21 + + + + + +

+                            
+                        
22 + + + + + +
    IOracle.Dispute memory dispute = _getRandomDispute(requestId, _disputeIndex);
+ +
23 + + + + + +
    if (dispute.requestId == bytes32(0)) return;
+ +
24 + + + + + +

+                            
+                        
25 + + + + + +
    _amount = _boundAmount(_amount);
+ +
26 + + + + + +
    horizonAccountingExtension.pledge(pledger, _ghost_requestData[requestId], dispute, GRT, _amount);
+ +
27 + + + + + +
  }
+ +
28 + + + + + +

+                            
+                        
29 + + + + + +
  function handleOnSettleBondEscalation(
+ +
30 + + + + + +
    uint256 _requestSeed,
+ +
31 + + + + + +
    uint256 _disputeIndex,
+ +
32 + + + + + +
    uint256 _amountPerPledger,
+ +
33 + + + + + +
    uint256 _winningPledgersLength
+ +
34 + + + + + +
  ) external {
+ +
35 + +
+ +
+ + + +
    bytes32 requestId = _getRandomRequest(_requestSeed);
+ +
36 + +
+ +
+ + + +
    if (requestId == bytes32(0)) return;
+ +
37 + + + + + +

+                            
+                        
38 + + + + + +
    IOracle.Dispute memory dispute = _getRandomDispute(requestId, _disputeIndex);
+ +
39 + + + + + +
    if (dispute.requestId == bytes32(0)) return;
+ +
40 + + + + + +

+                            
+                        
41 + + + + + +
    _amountPerPledger = _boundAmount(_amountPerPledger);
+ +
42 + + + + + +
    horizonAccountingExtension.onSettleBondEscalation(
+ +
43 + + + + + +
      _ghost_requestData[requestId], dispute, GRT, _amountPerPledger, _winningPledgersLength
+ +
44 + + + + + +
    );
+ +
45 + + + + + +
  }
+ +
46 + + + + + +

+                            
+                        
47 + + + + + +
  function handleClaimEscalationReward(uint256 _requestSeed, uint256 _disputeIndex, uint256 _actorSeed) external {
+ +
48 + +
+ +
+ + + +
    bytes32 requestId = _getRandomRequest(_requestSeed);
+ +
49 + +
+ +
+ + + +
    if (requestId == bytes32(0)) return;
+ +
50 + + + + + +

+                            
+                        
51 + + + + + +
    IOracle.Dispute memory dispute = _getRandomDispute(requestId, _disputeIndex);
+ +
52 + + + + + +
    if (dispute.requestId == bytes32(0)) return;
+ +
53 + + + + + +

+                            
+                        
54 + + + + + +
    address pledger = _pickActor(_actorSeed);
+ +
55 + + + + + +
    bytes32 disputeId = keccak256(abi.encode(dispute));
+ +
56 + + + + + +

+                            
+                        
57 + + + + + +
    horizonAccountingExtension.claimEscalationReward(disputeId, pledger);
+ +
58 + + + + + +
  }
+ +
59 + + + + + +

+                            
+                        
60 + + + + + +
  function handlePay(uint256 _requestSeed, uint256 _payerSeed, uint256 _receiverSeed, uint256 _amount) external {
+ +
61 + +
+ +
+ + + +
    bytes32 requestId = _getRandomRequest(_requestSeed);
+ +
62 + +
+ +
+ + + +
    if (requestId == bytes32(0)) return;
+ +
63 + + + + + +

+                            
+                        
64 + + + + + +
    address payer = _pickActor(_payerSeed);
+ +
65 + + + + + +
    address receiver = _pickActor(_receiverSeed);
+ +
66 + + + + + +
    _amount = _boundAmount(_amount);
+ +
67 + + + + + +

+                            
+                        
68 + + + + + +
    horizonAccountingExtension.pay(requestId, payer, receiver, GRT, _amount);
+ +
69 + + + + + +
  }
+ +
70 + + + + + +

+                            
+                        
71 + + + + + +
  function handleBond(uint256 _bonderSeed, uint256 _requestSeed, uint256 _amount) external {
+ +
72 + +
+ +
+ + + +
    address bonder = _pickActor(_bonderSeed);
+ +
73 + +
+ +
+ + + +
    bytes32 requestId = _getRandomRequest(_requestSeed);
+ +
74 + +
+ +
+ + + +
    if (requestId == bytes32(0)) return;
+ +
75 + + + + + +

+                            
+                        
76 + + + + + +
    _amount = _boundAmount(_amount);
+ +
77 + + + + + +
    horizonAccountingExtension.bond(bonder, requestId, GRT, _amount);
+ +
78 + + + + + +
  }
+ +
79 + + + + + +

+                            
+                        
80 + + + + + +
  function handleBondWithSender(
+ +
81 + + + + + +
    uint256 _bonderSeed,
+ +
82 + + + + + +
    uint256 _requestSeed,
+ +
83 + + + + + +
    uint256 _amount,
+ +
84 + + + + + +
    uint256 _senderSeed
+ +
85 + + + + + +
  ) external {
+ +
86 + +
+ +
+ + + +
    address bonder = _pickActor(_bonderSeed);
+ +
87 + +
+ +
+ + + +
    bytes32 requestId = _getRandomRequest(_requestSeed);
+ +
88 + +
+ +
+ + + +
    if (requestId == bytes32(0)) return;
+ +
89 + + + + + +

+                            
+                        
90 + + + + + +
    _amount = _boundAmount(_amount);
+ +
91 + + + + + +
    address sender = _pickActor(_senderSeed);
+ +
92 + + + + + +

+                            
+                        
93 + + + + + +
    horizonAccountingExtension.bond(bonder, requestId, GRT, _amount, sender);
+ +
94 + + + + + +
  }
+ +
95 + + + + + +

+                            
+                        
96 + + + + + +
  function handleRelease(uint256 _bonderSeed, uint256 _requestSeed, uint256 _amount) external {
+ +
97 + +
+ +
+ + + +
    address bonder = _pickActor(_bonderSeed);
+ +
98 + +
+ +
+ + + +
    bytes32 requestId = _getRandomRequest(_requestSeed);
+ +
99 + +
+ +
+ + + +
    if (requestId == bytes32(0)) return;
+ +
100 + + + + + +

+                            
+                        
101 + + + + + +
    _amount = _boundAmount(_amount);
+ +
102 + + + + + +
    horizonAccountingExtension.release(bonder, requestId, GRT, _amount);
+ +
103 + + + + + +
  }
+ +
104 + + + + + +

+                            
+                        
105 + + + + + +
  function handleSlash(
+ +
106 + + + + + +
    uint256 _requestSeed,
+ +
107 + + + + + +
    uint256 _disputeIndex,
+ +
108 + + + + + +
    uint256 _usersToSlash,
+ +
109 + + + + + +
    uint256 _maxUsersToCheck
+ +
110 + + + + + +
  ) external {
+ +
111 + +
+ +
+ + + +
    bytes32 requestId = _getRandomRequest(_requestSeed);
+ +
112 + +
+ +
+ + + +
    if (requestId == bytes32(0)) return;
+ +
113 + + + + + +

+                            
+                        
114 + + + + + +
    IOracle.Dispute memory dispute = _getRandomDispute(requestId, _disputeIndex);
+ +
115 + + + + + +
    if (dispute.requestId == bytes32(0)) return;
+ +
116 + + + + + +

+                            
+                        
117 + + + + + +
    bytes32 disputeId = keccak256(abi.encode(dispute));
+ +
118 + + + + + +
    _usersToSlash = bound(_usersToSlash, 1, 10);
+ +
119 + + + + + +
    _maxUsersToCheck = bound(_maxUsersToCheck, _usersToSlash, 20);
+ +
120 + + + + + +

+                            
+                        
121 + + + + + +
    horizonAccountingExtension.slash(disputeId, _usersToSlash, _maxUsersToCheck);
+ +
122 + + + + + +
  }
+ +
123 + + + + + +

+                            
+                        
124 + + + + + +
  function handleSetMaxUsersToCheck(uint256 _maxUsers) external {
+ +
125 + +
+ +
+ +
+ +
+ +
    _maxUsers = bound(_maxUsers, 1, 100);
+ +
126 + +
+ +
+ +
+ +
+ +
    horizonAccountingExtension.setMaxUsersToCheck(uint128(_maxUsers));
+ +
127 + + + + + +
  }
+ +
128 + + + + + +
}
+ +
129 + + + + + +

+                            
+                        
+
+
+ + + + + + + + + + +
+
+
+ + + + + + +
Lines covered: 22 / 80 (27.5%)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
1 + + + + + +
// SPDX-License-Identifier: MIT
+ +
2 + + + + + +
pragma solidity 0.8.26;
+ +
3 + + + + + +

+                            
+                        
4 + + + + + +
import {BaseHandler, IOracle} from './BaseHandler.t.sol';
+ +
5 + + + + + +

+                            
+                        
6 + + + + + +
contract HandlerOracle is BaseHandler {
+ +
7 + +
+ +
+ + + +
  function handleCreateRequest(uint256 _requestSeed, bytes32 _previousId) external returns (bytes32) {
+ +
8 + +
+ +
+ + + +
    bytes32 requestId = _getRandomRequest(_requestSeed);
+ +
9 + +
+ +
+ + + +
    if (requestId == bytes32(0)) return bytes32(0);
+ +
10 + + + + + +

+                            
+                        
11 + + + + + +
    return oracle.createRequest(_ghost_requestData[requestId], _previousId);
+ +
12 + + + + + +
  }
+ +
13 + + + + + +

+                            
+                        
14 + + + + + +
  function handleCreateRequests(
+ +
15 + + + + + +
    uint256[] calldata _requestSeeds,
+ +
16 + + + + + +
    bytes32[] calldata _previousIds
+ +
17 + +
+ +
+ + + +
  ) external returns (bytes32[] memory) {
+ +
18 + +
+ +
+ + + +
    if (_requestSeeds.length != _previousIds.length) {
+ +
19 + +
+ +
+ + + +
      return new bytes32[](0);
+ +
20 + + + + + +
    }
+ +
21 + + + + + +

+                            
+                        
22 + + + + + +
    IOracle.Request[] memory requests = new IOracle.Request[](_requestSeeds.length);
+ +
23 + + + + + +
    for (uint256 i = 0; i < _requestSeeds.length; i++) {
+ +
24 + + + + + +
      bytes32 requestId = _getRandomRequest(_requestSeeds[i]);
+ +
25 + + + + + +
      if (requestId == bytes32(0)) return new bytes32[](0);
+ +
26 + + + + + +
      requests[i] = _ghost_requestData[requestId];
+ +
27 + + + + + +
    }
+ +
28 + + + + + +

+                            
+                        
29 + + + + + +
    return oracle.createRequests(requests, _previousIds);
+ +
30 + + + + + +
  }
+ +
31 + + + + + +

+                            
+                        
32 + + + + + +
  function handleProposeResponse(
+ +
33 + + + + + +
    uint256 _requestSeed,
+ +
34 + + + + + +
    uint256 _blockNumber,
+ +
35 + + + + + +
    uint256 _actorSeed
+ +
36 + +
+ +
+ + + +
  ) external returns (bytes32) {
+ +
37 + +
+ +
+ + + +
    bytes32 requestId = _getRandomRequest(_requestSeed);
+ +
38 + +
+ +
+ + + +
    if (requestId == bytes32(0) || !_ghost_validRequests[requestId]) {
+ +
39 + +
+ +
+ + + +
      return bytes32(0);
+ +
40 + + + + + +
    }
+ +
41 + + + + + +
    if (_ghost_activeResponses[requestId] != bytes32(0)) return bytes32(0);
+ +
42 + + + + + +

+                            
+                        
43 + + + + + +
    address proposer = _pickActor(_actorSeed);
+ +
44 + + + + + +
    _blockNumber = _boundBlockNumber(_blockNumber);
+ +
45 + + + + + +

+                            
+                        
46 + + + + + +
    IOracle.Request memory request = _ghost_requestData[requestId];
+ +
47 + + + + + +
    IOracle.Response memory response =
+ +
48 + + + + + +
      IOracle.Response({requestId: requestId, response: abi.encode(_blockNumber), proposer: proposer});
+ +
49 + + + + + +

+                            
+                        
50 + + + + + +
    bytes32 responseId = oracle.proposeResponse(request, response);
+ +
51 + + + + + +

+                            
+                        
52 + + + + + +
    // Track response
+ +
53 + + + + + +
    _ghost_activeResponses[requestId] = responseId;
+ +
54 + + + + + +
    _ghost_responseData[responseId] = response;
+ +
55 + + + + + +

+                            
+                        
56 + + + + + +
    emit ResponseProposed(requestId, responseId);
+ +
57 + + + + + +

+                            
+                        
58 + + + + + +
    return responseId;
+ +
59 + + + + + +
  }
+ +
60 + + + + + +

+                            
+                        
61 + +
+ +
+ + + +
  function handleDisputeResponseOracle(uint256 _requestSeed, uint256 _actorSeed) external returns (bytes32) {
+ +
62 + +
+ +
+ + + +
    bytes32 requestId = _getRandomRequest(_requestSeed);
+ +
63 + +
+ +
+ + + +
    if (requestId == bytes32(0) || !_ghost_validRequests[requestId]) {
+ +
64 + +
+ +
+ + + +
      return bytes32(0);
+ +
65 + + + + + +
    }
+ +
66 + + + + + +

+                            
+                        
67 + + + + + +
    bytes32 responseId = _ghost_activeResponses[requestId];
+ +
68 + + + + + +
    if (responseId == bytes32(0)) return bytes32(0);
+ +
69 + + + + + +

+                            
+                        
70 + + + + + +
    IOracle.Response memory response = _ghost_responseData[responseId];
+ +
71 + + + + + +
    if (_ghost_finalizedResponses[responseId]) return bytes32(0);
+ +
72 + + + + + +

+                            
+                        
73 + + + + + +
    address disputer = _pickActor(_actorSeed);
+ +
74 + + + + + +
    uint256 bond = _boundAmount(1e18);
+ +
75 + + + + + +

+                            
+                        
76 + + + + + +
    IOracle.Dispute memory dispute =
+ +
77 + + + + + +
      IOracle.Dispute({disputer: disputer, proposer: response.proposer, requestId: requestId, responseId: responseId});
+ +
78 + + + + + +

+                            
+                        
79 + + + + + +
    bytes32 disputeId = oracle.disputeResponse(_ghost_requestData[requestId], response, dispute);
+ +
80 + + + + + +

+                            
+                        
81 + + + + + +
    // Track dispute
+ +
82 + + + + + +
    _ghost_disputes[requestId].push(disputeId);
+ +
83 + + + + + +
    _ghost_disputeData[disputeId] = dispute;
+ +
84 + + + + + +
    _ghost_bonds[disputer][requestId] = bond;
+ +
85 + + + + + +
    _ghost_disputeStatuses[disputeId] = IOracle.DisputeStatus.Escalated;
+ +
86 + + + + + +

+                            
+                        
87 + + + + + +
    emit DisputeCreated(requestId, responseId, disputeId);
+ +
88 + + + + + +

+                            
+                        
89 + + + + + +
    return disputeId;
+ +
90 + + + + + +
  }
+ +
91 + + + + + +

+                            
+                        
92 + + + + + +
  function handleEscalateDispute(uint256 _requestSeed, uint256 _disputeIndex) external {
+ +
93 + +
+ +
+ + + +
    bytes32 requestId = _getRandomRequest(_requestSeed);
+ +
94 + +
+ +
+ + + +
    if (requestId == bytes32(0)) return;
+ +
95 + + + + + +

+                            
+                        
96 + + + + + +
    IOracle.Dispute memory dispute = _getRandomDispute(requestId, _disputeIndex);
+ +
97 + + + + + +
    if (dispute.requestId == bytes32(0)) return;
+ +
98 + + + + + +

+                            
+                        
99 + + + + + +
    if (_ghost_disputeStatuses[keccak256(abi.encode(dispute))] != IOracle.DisputeStatus.Escalated) return;
+ +
100 + + + + + +

+                            
+                        
101 + + + + + +
    IOracle.Response memory response = _ghost_responseData[dispute.responseId];
+ +
102 + + + + + +
    oracle.escalateDispute(_ghost_requestData[requestId], response, dispute);
+ +
103 + + + + + +
  }
+ +
104 + + + + + +

+                            
+                        
105 + + + + + +
  function handleResolveDispute(uint256 _requestSeed, uint256 _disputeIndex) external {
+ +
106 + +
+ +
+ + + +
    bytes32 requestId = _getRandomRequest(_requestSeed);
+ +
107 + +
+ +
+ + + +
    if (requestId == bytes32(0)) return;
+ +
108 + + + + + +

+                            
+                        
109 + + + + + +
    IOracle.Dispute memory dispute = _getRandomDispute(requestId, _disputeIndex);
+ +
110 + + + + + +
    if (dispute.requestId == bytes32(0)) return;
+ +
111 + + + + + +

+                            
+                        
112 + + + + + +
    IOracle.Response memory response = _ghost_responseData[dispute.responseId];
+ +
113 + + + + + +
    oracle.resolveDispute(_ghost_requestData[requestId], response, dispute);
+ +
114 + + + + + +
  }
+ +
115 + + + + + +

+                            
+                        
116 + + + + + +
  function handleUpdateDisputeStatus(uint256 _requestSeed, uint256 _disputeIndex, uint256 _statusSeed) external {
+ +
117 + +
+ +
+ + + +
    bytes32 requestId = _getRandomRequest(_requestSeed);
+ +
118 + +
+ +
+ + + +
    if (requestId == bytes32(0)) return;
+ +
119 + + + + + +

+                            
+                        
120 + + + + + +
    IOracle.Dispute memory dispute = _getRandomDispute(requestId, _disputeIndex);
+ +
121 + + + + + +
    if (dispute.requestId == bytes32(0)) return;
+ +
122 + + + + + +

+                            
+                        
123 + + + + + +
    // Generate a valid dispute status (NoResolution, Won, Lost)
+ +
124 + + + + + +
    IOracle.DisputeStatus status = IOracle.DisputeStatus(
+ +
125 + + + + + +
      bound(_statusSeed, uint8(IOracle.DisputeStatus.NoResolution), uint8(IOracle.DisputeStatus.Lost))
+ +
126 + + + + + +
    );
+ +
127 + + + + + +

+                            
+                        
128 + + + + + +
    IOracle.Response memory response = _ghost_responseData[dispute.responseId];
+ +
129 + + + + + +
    oracle.updateDisputeStatus(_ghost_requestData[requestId], response, dispute, status);
+ +
130 + + + + + +

+                            
+                        
131 + + + + + +
    bytes32 disputeId = keccak256(abi.encode(dispute));
+ +
132 + + + + + +
    _ghost_disputeStatuses[disputeId] = status;
+ +
133 + + + + + +

+                            
+                        
134 + + + + + +
    emit DisputeResolved(disputeId, status);
+ +
135 + + + + + +
  }
+ +
136 + + + + + +

+                            
+                        
137 + + + + + +
  function handleFinalize(uint256 _requestSeed) external {
+ +
138 + +
+ +
+ + + +
    bytes32 requestId = _getRandomRequest(_requestSeed);
+ +
139 + +
+ +
+ + + +
    if (requestId == bytes32(0)) return;
+ +
140 + + + + + +

+                            
+                        
141 + + + + + +
    bytes32 responseId = _ghost_activeResponses[requestId];
+ +
142 + + + + + +
    if (responseId == bytes32(0)) return;
+ +
143 + + + + + +

+                            
+                        
144 + + + + + +
    IOracle.Response memory response = _ghost_responseData[responseId];
+ +
145 + + + + + +
    oracle.finalize(_ghost_requestData[requestId], response);
+ +
146 + + + + + +

+                            
+                        
147 + + + + + +
    _ghost_finalizedResponses[responseId] = true;
+ +
148 + + + + + +
    emit ResponseFinalized(requestId, responseId);
+ +
149 + + + + + +
  }
+ +
150 + + + + + +
}
+ +
151 + + + + + +

+                            
+                        
+
+
+ + + + + + + + + + +
+
+
+ + + + + + +
Lines covered: 0 / 2 (0.0%)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
1 + + + + + +
// SPDX-License-Identifier: MIT
+ +
2 + + + + + +
pragma solidity 0.8.26;
+ +
3 + + + + + +

+                            
+                        
4 + + + + + +
import {HandlerArbitrable} from './HandlerArbitrable.t.sol';
+ +
5 + + + + + +

+                            
+                        
6 + + + + + +
import {HandlerBondEscalationModule} from './HandlerBondEscalationModule.t.sol';
+ +
7 + + + + + +
import {HandlerBondedResponseModule} from './HandlerBondedResponseModule.t.sol';
+ +
8 + + + + + +
import {HandlerCouncilArbitrator} from './HandlerCouncilArbitrator.t.sol';
+ +
9 + + + + + +
import {HandlerEBOFinalityModule} from './HandlerEBOFinalityModule.t.sol';
+ +
10 + + + + + +
import {HandlerEBORequestCreator} from './HandlerEBORequestCreator.t.sol';
+ +
11 + + + + + +
import {HandlerEBORequestModule} from './HandlerEBORequestModule.t.sol';
+ +
12 + + + + + +
import {HandlerHorizonAccountingExtension} from './HandlerHorizonAccountingExtension.t.sol';
+ +
13 + + + + + +
import {HandlerOracle} from './HandlerOracle.t.sol';
+ +
14 + + + + + +

+                            
+                        
15 + + + + + +
contract HandlerParent is
+ +
16 + + + + + +
  HandlerArbitrable,
+ +
17 + + + + + +
  HandlerBondedResponseModule,
+ +
18 + + + + + +
  HandlerBondEscalationModule,
+ +
19 + + + + + +
  HandlerCouncilArbitrator,
+ +
20 + + + + + +
  HandlerEBOFinalityModule,
+ +
21 + + + + + +
  HandlerEBORequestCreator,
+ +
22 + + + + + +
  HandlerEBORequestModule,
+ +
23 + + + + + +
  HandlerHorizonAccountingExtension,
+ +
24 + + + + + +
  HandlerOracle
+ +
25 + + + + + +
{
+ +
26 + + + + + +
  //solhint-disable no-empty-blocks
+ +
27 + + + + + +
  constructor() {}
+ +
28 + + + + + +
}
+ +
29 + + + + + +

+                            
+                        
+
+
+ + + + + + + + + + +
+
+
+ + + + + + +
Lines covered: 12 / 13 (92.3%)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
1 + + + + + +
// SPDX-License-Identifier: UNLICENSED
+ +
2 + + + + + +
pragma solidity ^0.8.19;
+ +
3 + + + + + +

+                            
+                        
4 + + + + + +
import {Utils} from './Utils.t.sol';
+ +
5 + + + + + +

+                            
+                        
6 + + + + + +
contract Actors is Utils {
+ +
7 + + + + + +
  address[] internal _ghost_actors = [
+ +
8 + +
+ +
+ + + +
    address(0x10000),
+ +
9 + +
+ +
+ + + +
    address(0x20000),
+ +
10 + +
+ +
+ + + +
    address(0x30000),
+ +
11 + +
+ +
+ + + +
    address(0x40000),
+ +
12 + +
+ +
+ + + +
    address(0x50000),
+ +
13 + +
+ +
+ + + +
    address(0x60000),
+ +
14 + +
+ +
+ + + +
    address(0x70000),
+ +
15 + +
+ +
+ + + +
    address(0x80000),
+ +
16 + +
+ +
+ + + +
    address(0x90000),
+ +
17 + +
+ +
+ + + +
    address(0xa0000)
+ +
18 + + + + + +
  ];
+ +
19 + + + + + +

+                            
+                        
20 + + + + + +
  event ActorsLog(string);
+ +
21 + + + + + +

+                            
+                        
22 + +
+ +
+ +
+ +
+ +
  function _pickActor(uint256 _seed) internal view returns (address) {
+ +
23 + +
+ +
+ +
+ +
+ +
    return _ghost_actors[_seed % _ghost_actors.length];
+ +
24 + + + + + +
  }
+ +
25 + + + + + +
}
+ +
26 + + + + + +

+                            
+                        
+
+
+ + + + + + + + + + +
+
+
+ + + + + + +
Lines covered: 1 / 7 (14.3%)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
1 + + + + + +
// SPDX-License-Identifier: MIT
+ +
2 + + + + + +
pragma solidity ^0.8.19;
+ +
3 + + + + + +

+                            
+                        
4 + + + + + +
import {ERC20, IERC20} from '@openzeppelin/contracts/token/ERC20/ERC20.sol';
+ +
5 + + + + + +

+                            
+                        
6 + + + + + +
contract FuzzERC20 is ERC20 {
+ +
7 + + + + + +
  address testContract;
+ +
8 + + + + + +

+                            
+                        
9 + + + + + +
  constructor() ERC20('FuzzERC20', 'FuzzERC20') {
+ +
10 + +
+ +
+ + + +
    testContract = msg.sender;
+ +
11 + + + + + +
  }
+ +
12 + + + + + +

+                            
+                        
13 + + + + + +
  function transfer(address to, uint256 amount) public override returns (bool) {
+ +
14 + + + + + +
    address owner = _msgSender();
+ +
15 + + + + + +

+                            
+                        
16 + + + + + +
    // FuzzTest has an infinite mint
+ +
17 + + + + + +
    if (owner == testContract) {
+ +
18 + + + + + +
      _mint(testContract, amount);
+ +
19 + + + + + +
    }
+ +
20 + + + + + +

+                            
+                        
21 + + + + + +
    _transfer(owner, to, amount);
+ +
22 + + + + + +
    return true;
+ +
23 + + + + + +
  }
+ +
24 + + + + + +

+                            
+                        
25 + + + + + +
  function mint(address _to, uint256 _amount) public {
+ +
26 + + + + + +
    _mint(_to, _amount);
+ +
27 + + + + + +
  }
+ +
28 + + + + + +

+                            
+                        
29 + + + + + +
  function burn(address _from, uint256 _amount) public {
+ +
30 + + + + + +
    _burn(_from, _amount);
+ +
31 + + + + + +
  }
+ +
32 + + + + + +
}
+ +
33 + + + + + +

+                            
+                        
+
+
+ + + + + + + + + + +
+
+
+ + + + + + +
Lines covered: 0 / 0 (0.0%)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
1 + + + + + +
// SPDX-License-Identifier: UNLICENSED
+ +
2 + + + + + +
pragma solidity ^0.8.19;
+ +
3 + + + + + +

+                            
+                        
4 + + + + + +
interface IStdCheats {
+ +
5 + + + + + +
  // Set block.timestamp
+ +
6 + + + + + +
  function warp(uint256) external;
+ +
7 + + + + + +

+                            
+                        
8 + + + + + +
  // Set block.number
+ +
9 + + + + + +
  function roll(uint256) external;
+ +
10 + + + + + +

+                            
+                        
11 + + + + + +
  // Set block.basefee
+ +
12 + + + + + +
  function fee(uint256) external;
+ +
13 + + + + + +

+                            
+                        
14 + + + + + +
  // Set block.difficulty and block.prevrandao
+ +
15 + + + + + +
  function difficulty(uint256) external;
+ +
16 + + + + + +

+                            
+                        
17 + + + + + +
  // Set block.chainid
+ +
18 + + + + + +
  function chainId(uint256) external;
+ +
19 + + + + + +

+                            
+                        
20 + + + + + +
  // Sets the block.coinbase
+ +
21 + + + + + +
  function coinbase(address) external;
+ +
22 + + + + + +

+                            
+                        
23 + + + + + +
  // Loads a storage slot from an address
+ +
24 + + + + + +
  function load(address account, bytes32 slot) external returns (bytes32);
+ +
25 + + + + + +

+                            
+                        
26 + + + + + +
  // Stores a value to an address' storage slot
+ +
27 + + + + + +
  function store(address account, bytes32 slot, bytes32 value) external;
+ +
28 + + + + + +

+                            
+                        
29 + + + + + +
  // Sets the *next* call's msg.sender to be the input address
+ +
30 + + + + + +
  function prank(address) external;
+ +
31 + + + + + +

+                            
+                        
32 + + + + + +
  // Set msg.sender to the input address until the current call exits
+ +
33 + + + + + +
  function prankHere(address) external;
+ +
34 + + + + + +

+                            
+                        
35 + + + + + +
  // Sets an address' balance
+ +
36 + + + + + +
  function deal(address who, uint256 newBalance) external;
+ +
37 + + + + + +

+                            
+                        
38 + + + + + +
  // Sets an address' code
+ +
39 + + + + + +
  function etch(address who, bytes calldata code) external;
+ +
40 + + + + + +

+                            
+                        
41 + + + + + +
  // Signs data
+ +
42 + + + + + +
  function sign(uint256 privateKey, bytes32 digest) external returns (uint8 v, bytes32 r, bytes32 s);
+ +
43 + + + + + +

+                            
+                        
44 + + + + + +
  // Computes address for a given private key
+ +
45 + + + + + +
  function addr(uint256 privateKey) external returns (address);
+ +
46 + + + + + +

+                            
+                        
47 + + + + + +
  // Gets the nonce of an account
+ +
48 + + + + + +
  function getNonce(address account) external returns (uint64);
+ +
49 + + + + + +

+                            
+                        
50 + + + + + +
  // Sets the nonce of an account
+ +
51 + + + + + +
  // The new nonce must be higher than the current nonce of the account
+ +
52 + + + + + +
  function setNonce(address account, uint64 nonce) external;
+ +
53 + + + + + +

+                            
+                        
54 + + + + + +
  // Performs a foreign function call via terminal
+ +
55 + + + + + +
  function ffi(string[] calldata) external returns (bytes memory);
+ +
56 + + + + + +

+                            
+                        
57 + + + + + +
  // Take a snapshot of the current state of the EVM
+ +
58 + + + + + +
  function snapshot() external returns (uint256);
+ +
59 + + + + + +

+                            
+                        
60 + + + + + +
  // Revert state back to a snapshot
+ +
61 + + + + + +
  function revertTo(uint256) external returns (bool);
+ +
62 + + + + + +

+                            
+                        
63 + + + + + +
  // Convert Solidity types to strings
+ +
64 + + + + + +
  function toString(address) external returns (string memory);
+ +
65 + + + + + +

+                            
+                        
66 + + + + + +
  function toString(bytes calldata) external returns (string memory);
+ +
67 + + + + + +

+                            
+                        
68 + + + + + +
  function toString(bytes32) external returns (string memory);
+ +
69 + + + + + +

+                            
+                        
70 + + + + + +
  function toString(bool) external returns (string memory);
+ +
71 + + + + + +

+                            
+                        
72 + + + + + +
  function toString(uint256) external returns (string memory);
+ +
73 + + + + + +

+                            
+                        
74 + + + + + +
  function toString(int256) external returns (string memory);
+ +
75 + + + + + +

+                            
+                        
76 + + + + + +
  // Convert strings into Solidity types
+ +
77 + + + + + +
  function parseBytes(string memory) external returns (bytes memory);
+ +
78 + + + + + +

+                            
+                        
79 + + + + + +
  function parseBytes32(string memory) external returns (bytes32);
+ +
80 + + + + + +

+                            
+                        
81 + + + + + +
  function parseAddress(string memory) external returns (address);
+ +
82 + + + + + +

+                            
+                        
83 + + + + + +
  function parseUint(string memory) external returns (uint256);
+ +
84 + + + + + +

+                            
+                        
85 + + + + + +
  function parseInt(string memory) external returns (int256);
+ +
86 + + + + + +

+                            
+                        
87 + + + + + +
  function parseBool(string memory) external returns (bool);
+ +
88 + + + + + +
}
+ +
89 + + + + + +

+                            
+                        
+
+
+ + + + + + + + + + +
+
+
+ + + + + + +
Lines covered: 2 / 3 (66.7%)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
1 + + + + + +
// SPDX-License-Identifier: MIT
+ +
2 + + + + + +
pragma solidity 0.8.26;
+ +
3 + + + + + +

+                            
+                        
4 + + + + + +
contract MockEpochManager {
+ +
5 + +
+ +
+ +
+ +
+ +
  uint256 public currentEpoch;
+ +
6 + + + + + +

+                            
+                        
7 + + + + + +
  constructor(uint256 _startEpoch) {
+ +
8 + +
+ +
+ + + +
    currentEpoch = _startEpoch;
+ +
9 + + + + + +
  }
+ +
10 + + + + + +

+                            
+                        
11 + + + + + +
  function setEpoch(uint256 _epoch) external {
+ +
12 + + + + + +
    currentEpoch = _epoch;
+ +
13 + + + + + +
  }
+ +
14 + + + + + +
}
+ +
15 + + + + + +

+                            
+                        
+
+
+ + + + + + + + + + +
+
+
+ + + + + + +
Lines covered: 1 / 7 (14.3%)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
1 + + + + + +
// SPDX-License-Identifier: MIT
+ +
2 + + + + + +
pragma solidity 0.8.26;
+ +
3 + + + + + +

+                            
+                        
4 + + + + + +
import {IERC20} from '@openzeppelin/contracts/token/ERC20/IERC20.sol';
+ +
5 + + + + + +
import {IHorizonStaking} from 'interfaces/external/IHorizonStaking.sol';
+ +
6 + + + + + +

+                            
+                        
7 + + + + + +
contract MockHorizonStaking {
+ +
8 + + + + + +
  IERC20 public immutable GRT;
+ +
9 + + + + + +
  mapping(address => mapping(address => IHorizonStaking.Provision)) public provisions;
+ +
10 + + + + + +

+                            
+                        
11 + + + + + +
  constructor(IERC20 _grt) {
+ +
12 + +
+ +
+ + + +
    GRT = _grt;
+ +
13 + + + + + +
  }
+ +
14 + + + + + +

+                            
+                        
15 + + + + + +
  function getProvision(
+ +
16 + + + + + +
    address _serviceProvider,
+ +
17 + + + + + +
    address _verifier
+ +
18 + + + + + +
  ) external view returns (IHorizonStaking.Provision memory) {
+ +
19 + + + + + +
    return provisions[_serviceProvider][_verifier];
+ +
20 + + + + + +
  }
+ +
21 + + + + + +

+                            
+                        
22 + + + + + +
  function provision(
+ +
23 + + + + + +
    address _serviceProvider,
+ +
24 + + + + + +
    address _verifier,
+ +
25 + + + + + +
    uint256 _tokens,
+ +
26 + + + + + +
    uint32 _maxVerifierCut,
+ +
27 + + + + + +
    uint64 _thawingPeriod
+ +
28 + + + + + +
  ) external {
+ +
29 + + + + + +
    provisions[_serviceProvider][_verifier] = IHorizonStaking.Provision({
+ +
30 + + + + + +
      tokens: _tokens,
+ +
31 + + + + + +
      tokensThawing: 0,
+ +
32 + + + + + +
      sharesThawing: 0,
+ +
33 + + + + + +
      maxVerifierCut: _maxVerifierCut,
+ +
34 + + + + + +
      thawingPeriod: _thawingPeriod,
+ +
35 + + + + + +
      createdAt: uint64(block.timestamp),
+ +
36 + + + + + +
      maxVerifierCutPending: 0,
+ +
37 + + + + + +
      thawingPeriodPending: 0
+ +
38 + + + + + +
    });
+ +
39 + + + + + +
  }
+ +
40 + + + + + +

+                            
+                        
41 + + + + + +
  function slash(address, uint256, uint256 _tokensVerifier, address _verifierDestination) external {
+ +
42 + + + + + +
    GRT.transfer(_verifierDestination, _tokensVerifier);
+ +
43 + + + + + +
  }
+ +
44 + + + + + +
}
+ +
45 + + + + + +

+                            
+                        
+
+
+ + + + + + + + + + +
+
+
+ + + + + + +
Lines covered: 21 / 32 (65.6%)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
1 + + + + + +
// SPDX-License-Identifier: MIT
+ +
2 + + + + + +
pragma solidity ^0.8.19;
+ +
3 + + + + + +

+                            
+                        
4 + + + + + +
import {IStdCheats} from "./IStdCheats.sol";
+ +
5 + + + + + +

+                            
+                        
6 + + + + + +
// override forge-std:
+ +
7 + + + + + +
// - vm, avoiding unsupported cheatcode
+ +
8 + + + + + +
// - assertEq, allowing custom message in Medusa
+ +
9 + + + + + +
// - assertTrue, allowing custom message in Medusa
+ +
10 + + + + + +
// - makeAddr, bypassing the limitation of non-existing label cheatcode
+ +
11 + + + + + +
// etc
+ +
12 + + + + + +
contract Utils {
+ +
13 + + + + + +
    IStdCheats internal vm =
+ +
14 + +
+ +
+ + + +
        IStdCheats(address(0x7109709ECfa91a80626fF3989D68f67F5b1DD12D));
+ +
15 + + + + + +

+                            
+                        
16 + + + + + +
    event TestFailure(string reason);
+ +
17 + + + + + +
    event AddressMade(string label, address addressGenerated);
+ +
18 + + + + + +

+                            
+                        
19 + + + + + +
    function makeAddr(string memory label) internal returns (address) {
+ +
20 + + + + + +
        address genAddress = address(
+ +
21 + + + + + +
            uint160(uint256(keccak256(abi.encodePacked(label))))
+ +
22 + + + + + +
        );
+ +
23 + + + + + +
        emit AddressMade(label, genAddress);
+ +
24 + + + + + +
        return genAddress;
+ +
25 + + + + + +
    }
+ +
26 + + + + + +

+                            
+                        
27 + + + + + +
    // same as forge-std
+ +
28 + + + + + +
    function bound(
+ +
29 + + + + + +
        uint256 x,
+ +
30 + + + + + +
        uint256 min,
+ +
31 + + + + + +
        uint256 max
+ +
32 + +
+ +
+ +
+ +
+ +
    ) internal pure returns (uint256 result) {
+ +
33 + + + + + +
        //solhint-disable custom-errors
+ +
34 + + + + + +
        require(
+ +
35 + +
+ +
+ +
+ +
+ +
            min <= max,
+ +
36 + + + + + +
            "StdUtils bound(uint256,uint256,uint256): Max is less than min."
+ +
37 + + + + + +
        );
+ +
38 + + + + + +

+                            
+                        
39 + +
+ +
+ +
+ +
+ +
        uint256 UINT256_MAX = 2 ** 256 - 1;
+ +
40 + + + + + +

+                            
+                        
41 + + + + + +
        // If x is between min and max, return x directly. This is to ensure that dictionary values
+ +
42 + + + + + +
        // do not get shifted if the min is nonzero. More info: https://github.com/foundry-rs/forge-std/issues/188
+ +
43 + +
+ +
+ +
+ +
+ +
        if (x >= min && x <= max) return x;
+ +
44 + + + + + +

+                            
+                        
45 + +
+ +
+ +
+ +
+ +
        uint256 size = max - min + 1;
+ +
46 + + + + + +

+                            
+                        
47 + + + + + +
        // If the value is 0, 1, 2, 3, wrap that to min, min+1, min+2, min+3. Similarly for the UINT256_MAX side.
+ +
48 + + + + + +
        // This helps ensure coverage of the min/max values.
+ +
49 + +
+ +
+ +
+ +
+ +
        if (x <= 3 && size > x) return min + x;
+ +
50 + +
+ +
+ +
+ +
+ +
        if (x >= UINT256_MAX - 3 && size > UINT256_MAX - x) {
+ +
51 + +
+ +
+ + + +
            return max - (UINT256_MAX - x);
+ +
52 + + + + + +
        }
+ +
53 + + + + + +

+                            
+                        
54 + + + + + +
        // Otherwise, wrap x into the range [min, max], i.e. the range is inclusive.
+ +
55 + +
+ +
+ +
+ +
+ +
        if (x > max) {
+ +
56 + +
+ +
+ +
+ +
+ +
            uint256 diff = x - max;
+ +
57 + +
+ +
+ +
+ +
+ +
            uint256 rem = diff % size;
+ +
58 + +
+ +
+ +
+ +
+ +
            if (rem == 0) return max;
+ +
59 + +
+ +
+ +
+ +
+ +
            result = min + rem - 1;
+ +
60 + + + + + +
        } else if (x < min) {
+ +
61 + + + + + +
            uint256 diff = min - x;
+ +
62 + + + + + +
            uint256 rem = diff % size;
+ +
63 + + + + + +
            if (rem == 0) return min;
+ +
64 + + + + + +
            result = max - rem + 1;
+ +
65 + + + + + +
        }
+ +
66 + + + + + +
    }
+ +
67 + + + + + +

+                            
+                        
68 + + + + + +
    // todo: convert everything to b32 (then only one implementation)
+ +
69 + + + + + +

+                            
+                        
70 + + + + + +
    function assertEq(uint256 a, uint256 b) internal {
+ +
71 + + + + + +
        assertEq(a, b, "assertEq: a != b");
+ +
72 + + + + + +
    }
+ +
73 + + + + + +

+                            
+                        
74 + + + + + +
    function assertEq(uint256 a, uint256 b, string memory reason) internal {
+ +
75 + + + +
+ +
+ +
        if (a != b) {
+ +
76 + + + + + +
            emit TestFailure(reason);
+ +
77 + + + + + +
            assert(false);
+ +
78 + + + + + +
        }
+ +
79 + + + + + +
    }
+ +
80 + + + + + +

+                            
+                        
81 + + + + + +
    function assertEq(address a, address b) internal {
+ +
82 + + + + + +
        assertEq(a, b, "assertEq: a != b");
+ +
83 + + + + + +
    }
+ +
84 + + + + + +

+                            
+                        
85 + + + + + +
    function assertEq(address a, address b, string memory reason) internal {
+ +
86 + + + +
+ +
+ +
        if (a != b) {
+ +
87 + + + +
+ +
+ +
            emit TestFailure(reason);
+ +
88 + + + +
+ +
+ +
            assert(false);
+ +
89 + + + + + +
        }
+ +
90 + + + + + +
    }
+ +
91 + + + + + +

+                            
+                        
92 + + + + + +
    function assertEq(bytes memory a, bytes memory b) internal {
+ +
93 + + + + + +
        assertEq(a, b, "assertEq: a != b");
+ +
94 + + + + + +
    }
+ +
95 + + + + + +

+                            
+                        
96 + + + + + +
    function assertEq(
+ +
97 + + + + + +
        bytes memory a,
+ +
98 + + + + + +
        bytes memory b,
+ +
99 + + + + + +
        string memory reason
+ +
100 + + + + + +
    ) internal {
+ +
101 + + + +
+ +
+ +
        if (a.length != b.length) {
+ +
102 + + + +
+ +
+ +
            emit TestFailure(reason);
+ +
103 + + + +
+ +
+ +
            assert(false);
+ +
104 + + + + + +
        }
+ +
105 + + + + + +
        for (uint256 i = 0; i < a.length; i++) {
+ +
106 + + + + + +
            if (a[i] != b[i]) {
+ +
107 + + + + + +
                emit TestFailure(reason);
+ +
108 + + + + + +
                assert(false);
+ +
109 + + + + + +
            }
+ +
110 + + + + + +
        }
+ +
111 + + + + + +
    }
+ +
112 + + + + + +

+                            
+                        
113 + + + + + +
    function assertTrue(bool a) internal {
+ +
114 + + + + + +
        assertTrue(a, "assertTrue: !a");
+ +
115 + + + + + +
    }
+ +
116 + + + + + +

+                            
+                        
117 + + + + + +
    function assertTrue(bool a, string memory reason) internal {
+ +
118 + + + + + +
        if (!a) {
+ +
119 + + + + + +
            emit TestFailure(reason);
+ +
120 + + + + + +
            assert(false);
+ +
121 + + + + + +
        }
+ +
122 + + + + + +
    }
+ +
123 + + + + + +
}
+ +
124 + + + + + +

+                            
+                        
+
+
+ + + + + + + + + + +
+
+
+ + + + + + +
Lines covered: 0 / 2 (0.0%)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
1 + + + + + +
// SPDX-License-Identifier: MIT
+ +
2 + + + + + +
pragma solidity 0.8.26;
+ +
3 + + + + + +

+                            
+                        
4 + + + + + +
import {HandlerParent} from "../handlers/HandlerParent.t.sol";
+ +
5 + + + + + +

+                            
+                        
6 + + + + + +
contract PropertyEbo is HandlerParent {
+ +
7 + + + + + +
    //solhint-disable no-empty-blocks
+ +
8 + + + + + +
    constructor() {}
+ +
9 + + + + + +
}
+ +
10 + + + + + +

+                            
+                        
+
+
+ + + + + + + + + + +
+
+
+ + + + + + +
Lines covered: 33 / 51 (64.7%)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
1 + + + + + +
// SPDX-License-Identifier: MIT
+ +
2 + + + + + +
pragma solidity 0.8.26;
+ +
3 + + + + + +

+                            
+                        
4 + + + + + +
import {IOracle} from "@defi-wonderland/prophet-core/solidity/contracts/Oracle.sol";
+ +
5 + + + + + +
import {PropertyEbo} from "./PropertyEbo.t.sol";
+ +
6 + + + + + +

+                            
+                        
7 + + + + + +
contract PropertyParent is PropertyEbo {
+ +
8 + + + + + +
    function property_sanityCheck() external {
+ +
9 + + + +
+ +
+ +
        assertEq(
+ +
10 + + + +
+ +
+ +
            address(eboRequestCreator.ORACLE()),
+ +
11 + + + +
+ +
+ +
            address(oracle),
+ +
12 + + + + + +
            "prop-0: wrong oracle address"
+ +
13 + + + + + +
        );
+ +
14 + + + + + +

+                            
+                        
15 + + + +
+ +
+ +
        assertEq(
+ +
16 + + + +
+ +
+ +
            address(eboRequestCreator.ARBITRABLE()),
+ +
17 + + + +
+ +
+ +
            address(arbitrable),
+ +
18 + + + + + +
            "prop-0: wrong arbitrable address"
+ +
19 + + + + + +
        );
+ +
20 + + + + + +

+                            
+                        
21 + + + +
+ +
+ +
        assertEq(
+ +
22 + + + +
+ +
+ +
            eboRequestCreator.START_EPOCH(),
+ +
23 + + + + + +
            START_EPOCH,
+ +
24 + + + + + +
            "prop-0: wrong start epoch"
+ +
25 + + + + + +
        );
+ +
26 + + + + + +

+                            
+                        
27 + + + +
+ +
+ +
        assertEq(
+ +
28 + + + +
+ +
+ +
            address(eboRequestCreator.epochManager()),
+ +
29 + + + +
+ +
+ +
            address(epochManager),
+ +
30 + + + + + +
            "prop-0: wrong epoch manager address"
+ +
31 + + + + + +
        );
+ +
32 + + + + + +

+                            
+                        
33 + + + +
+ +
+ +
        IOracle.Request memory initialRequestStored = eboRequestCreator
+ +
34 + + + + + +
            .getRequestData();
+ +
35 + + + + + +

+                            
+                        
36 + + + +
+ +
+ +
        assertEq(
+ +
37 + + + +
+ +
+ +
            initialRequestStored.requestModule,
+ +
38 + + + +
+ +
+ +
            address(eboRequestModule),
+ +
39 + + + + + +
            "prop-0: wrong request module in initialRequest"
+ +
40 + + + + + +
        );
+ +
41 + + + + + +

+                            
+                        
42 + + + +
+ +
+ +
        assertEq(
+ +
43 + + + +
+ +
+ +
            initialRequestStored.responseModule,
+ +
44 + + + +
+ +
+ +
            address(bondedResponseModule),
+ +
45 + + + + + +
            "prop-0: wrong response module in initialRequest"
+ +
46 + + + + + +
        );
+ +
47 + + + + + +

+                            
+                        
48 + + + +
+ +
+ +
        assertEq(
+ +
49 + + + +
+ +
+ +
            initialRequestStored.disputeModule,
+ +
50 + + + +
+ +
+ +
            address(bondEscalationModule),
+ +
51 + + + + + +
            "prop-0: wrong disputeModule in initialRequest"
+ +
52 + + + + + +
        );
+ +
53 + + + + + +

+                            
+                        
54 + + + +
+ +
+ +
        assertEq(
+ +
55 + + + +
+ +
+ +
            initialRequestStored.resolutionModule,
+ +
56 + + + +
+ +
+ +
            address(arbitratorModule),
+ +
57 + + + + + +
            "prop-0: wrong resolutionModule in initialRequest"
+ +
58 + + + + + +
        );
+ +
59 + + + + + +

+                            
+                        
60 + + + +
+ +
+ +
        assertEq(
+ +
61 + + + +
+ +
+ +
            initialRequestStored.finalityModule,
+ +
62 + + + +
+ +
+ +
            address(eboFinalityModule),
+ +
63 + + + + + +
            "prop-0: wrong finalityModule in initialRequest"
+ +
64 + + + + + +
        );
+ +
65 + + + + + +

+                            
+                        
66 + + + +
+ +
+ +
        assertEq(
+ +
67 + + + +
+ +
+ +
            initialRequestStored.requester,
+ +
68 + + + +
+ +
+ +
            address(eboRequestCreator),
+ +
69 + + + + + +
            "prop-0: wrong requester in initialRequest"
+ +
70 + + + + + +
        );
+ +
71 + + + + + +

+                            
+                        
72 + + + +
+ +
+ +
        assertEq(
+ +
73 + + + +
+ +
+ +
            initialRequestStored.requestModuleData,
+ +
74 + + + + + +
            abi.encodePacked(
+ +
75 + + + + + +
                START_EPOCH,
+ +
76 + + + + + +
                "mainnet",
+ +
77 + + + +
+ +
+ +
                horizonAccountingExtension,
+ +
78 + + + + + +
                PAYMENT_AMOUNT
+ +
79 + + + + + +
            ),
+ +
80 + + + + + +
            "prop-0: wrong requestModuleData in initialRequest"
+ +
81 + + + + + +
        );
+ +
82 + + + + + +

+                            
+                        
83 + + + + + +
        assertEq(
+ +
84 + + + + + +
            initialRequestStored.responseModuleData,
+ +
85 + + + + + +
            abi.encode(
+ +
86 + + + + + +
                horizonAccountingExtension,
+ +
87 + + + + + +
                GRT,
+ +
88 + + + + + +
                RESPONSE_BOND_SIZE,
+ +
89 + + + + + +
                RESPONSE_DEADLINE,
+ +
90 + + + + + +
                RESPONSE_DISPUTE_WINDOW
+ +
91 + + + + + +
            ),
+ +
92 + + + + + +
            "prop-0: wrong responseModuleData module data in initialRequest"
+ +
93 + + + + + +
        );
+ +
94 + + + + + +

+                            
+                        
95 + + + + + +
        assertEq(
+ +
96 + + + + + +
            initialRequestStored.disputeModuleData,
+ +
97 + + + + + +
            abi.encode(
+ +
98 + + + + + +
                horizonAccountingExtension,
+ +
99 + + + + + +
                GRT,
+ +
100 + + + + + +
                DISPUTE_BOND_SIZE,
+ +
101 + + + + + +
                MAX_NB_ESCALATION,
+ +
102 + + + + + +
                DISPUTE_DEADLINE,
+ +
103 + + + + + +
                TYING_BUFFER,
+ +
104 + + + + + +
                DISPUTE_DISPUTE_WINDOW
+ +
105 + + + + + +
            ),
+ +
106 + + + + + +
            "prop-0: wrong disputeModuleData in initialRequest"
+ +
107 + + + + + +
        );
+ +
108 + + + + + +

+                            
+                        
109 + + + + + +
        assertEq(
+ +
110 + + + + + +
            initialRequestStored.resolutionModuleData,
+ +
111 + + + + + +
            abi.encode(councilArbitrator),
+ +
112 + + + + + +
            "prop-0: wrong resolutionModuleData in initialRequest"
+ +
113 + + + + + +
        );
+ +
114 + + + + + +

+                            
+                        
115 + + + + + +
        assertEq(
+ +
116 + + + + + +
            initialRequestStored.finalityModuleData,
+ +
117 + + + + + +
            abi.encode(eboFinalityModule),
+ +
118 + + + + + +
            "prop-0: wrong finality module data in initialRequest"
+ +
119 + + + + + +
        );
+ +
120 + + + + + +

+                            
+                        
121 + + + + + +
        assertEq(
+ +
122 + + + + + +
            initialRequestStored.nonce,
+ +
123 + + + + + +
            0,
+ +
124 + + + + + +
            "prop-0: wrong nonce in initialRequest"
+ +
125 + + + + + +
        );
+ +
126 + + + + + +
    }
+ +
127 + + + + + +
}
+ +
128 + + + + + +

+                            
+                        
+
+
+ + + + + +
+ + + diff --git a/test/invariants/fuzz/corpus/test_results/1731277916310343000-32dff114-6a03-4430-9d95-836289099cbe.json b/test/invariants/fuzz/corpus/test_results/1731277916310343000-32dff114-6a03-4430-9d95-836289099cbe.json new file mode 100755 index 0000000..792c54a --- /dev/null +++ b/test/invariants/fuzz/corpus/test_results/1731277916310343000-32dff114-6a03-4430-9d95-836289099cbe.json @@ -0,0 +1,23 @@ +[ + { + "call": { + "from": "0x0000000000000000000000000000000000080000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xbf938c53", + "dataAbiValues": { + "methodSignature": "property_sanityCheck()", + "inputValues": [] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 4158, + "blockTimestampDelay": 50559 + } +] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/test_results/1731277916315548000-d4125812-54d1-4fe8-b2da-34d5e34dc9fa.json b/test/invariants/fuzz/corpus/test_results/1731277916315548000-d4125812-54d1-4fe8-b2da-34d5e34dc9fa.json new file mode 100755 index 0000000..efc380f --- /dev/null +++ b/test/invariants/fuzz/corpus/test_results/1731277916315548000-d4125812-54d1-4fe8-b2da-34d5e34dc9fa.json @@ -0,0 +1,23 @@ +[ + { + "call": { + "from": "0x0000000000000000000000000000000000040000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xbf938c53", + "dataAbiValues": { + "methodSignature": "property_sanityCheck()", + "inputValues": [] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 23876, + "blockTimestampDelay": 471523 + } +] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/test_results/1731277916315901000-0a807f4b-d878-4428-b5b9-a9f85a8454cb.json b/test/invariants/fuzz/corpus/test_results/1731277916315901000-0a807f4b-d878-4428-b5b9-a9f85a8454cb.json new file mode 100755 index 0000000..577e6ab --- /dev/null +++ b/test/invariants/fuzz/corpus/test_results/1731277916315901000-0a807f4b-d878-4428-b5b9-a9f85a8454cb.json @@ -0,0 +1,23 @@ +[ + { + "call": { + "from": "0x0000000000000000000000000000000000040000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xbf938c53", + "dataAbiValues": { + "methodSignature": "property_sanityCheck()", + "inputValues": [] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 8541, + "blockTimestampDelay": 295092 + } +] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/test_results/1731277916316125000-1ef75ec6-dacf-4714-ac4e-b14b0e6db321.json b/test/invariants/fuzz/corpus/test_results/1731277916316125000-1ef75ec6-dacf-4714-ac4e-b14b0e6db321.json new file mode 100755 index 0000000..ebfeb42 --- /dev/null +++ b/test/invariants/fuzz/corpus/test_results/1731277916316125000-1ef75ec6-dacf-4714-ac4e-b14b0e6db321.json @@ -0,0 +1,23 @@ +[ + { + "call": { + "from": "0x0000000000000000000000000000000000050000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xbf938c53", + "dataAbiValues": { + "methodSignature": "property_sanityCheck()", + "inputValues": [] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 15835, + "blockTimestampDelay": 490250 + } +] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/test_results/1731277916317250000-ab38a60b-d225-4ae7-b02b-7b0e34fbc487.json b/test/invariants/fuzz/corpus/test_results/1731277916317250000-ab38a60b-d225-4ae7-b02b-7b0e34fbc487.json new file mode 100755 index 0000000..e74a59e --- /dev/null +++ b/test/invariants/fuzz/corpus/test_results/1731277916317250000-ab38a60b-d225-4ae7-b02b-7b0e34fbc487.json @@ -0,0 +1,23 @@ +[ + { + "call": { + "from": "0x0000000000000000000000000000000000050000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xbf938c53", + "dataAbiValues": { + "methodSignature": "property_sanityCheck()", + "inputValues": [] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 0, + "blockTimestampDelay": 0 + } +] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/test_results/1731277916317637000-a56168a4-d5f3-41bd-a2e4-952218f3cb5d.json b/test/invariants/fuzz/corpus/test_results/1731277916317637000-a56168a4-d5f3-41bd-a2e4-952218f3cb5d.json new file mode 100755 index 0000000..a22759a --- /dev/null +++ b/test/invariants/fuzz/corpus/test_results/1731277916317637000-a56168a4-d5f3-41bd-a2e4-952218f3cb5d.json @@ -0,0 +1,23 @@ +[ + { + "call": { + "from": "0x0000000000000000000000000000000000040000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xbf938c53", + "dataAbiValues": { + "methodSignature": "property_sanityCheck()", + "inputValues": [] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 11862, + "blockTimestampDelay": 520464 + } +] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/test_results/1731277916318080000-31a6e666-e7fb-4748-8532-81b12c1dcc7d.json b/test/invariants/fuzz/corpus/test_results/1731277916318080000-31a6e666-e7fb-4748-8532-81b12c1dcc7d.json new file mode 100755 index 0000000..ad91b12 --- /dev/null +++ b/test/invariants/fuzz/corpus/test_results/1731277916318080000-31a6e666-e7fb-4748-8532-81b12c1dcc7d.json @@ -0,0 +1,23 @@ +[ + { + "call": { + "from": "0x0000000000000000000000000000000000080000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xbf938c53", + "dataAbiValues": { + "methodSignature": "property_sanityCheck()", + "inputValues": [] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 17266, + "blockTimestampDelay": 360623 + } +] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/test_results/1731277916318104000-d3a81c39-8004-4bff-b6fc-5ebcc72e5663.json b/test/invariants/fuzz/corpus/test_results/1731277916318104000-d3a81c39-8004-4bff-b6fc-5ebcc72e5663.json new file mode 100755 index 0000000..739ec47 --- /dev/null +++ b/test/invariants/fuzz/corpus/test_results/1731277916318104000-d3a81c39-8004-4bff-b6fc-5ebcc72e5663.json @@ -0,0 +1,23 @@ +[ + { + "call": { + "from": "0x0000000000000000000000000000000000010000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xbf938c53", + "dataAbiValues": { + "methodSignature": "property_sanityCheck()", + "inputValues": [] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 23885, + "blockTimestampDelay": 360525 + } +] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/test_results/1731277916318142000-600969d3-9967-402d-a424-4aa6f788b3cc.json b/test/invariants/fuzz/corpus/test_results/1731277916318142000-600969d3-9967-402d-a424-4aa6f788b3cc.json new file mode 100755 index 0000000..f125715 --- /dev/null +++ b/test/invariants/fuzz/corpus/test_results/1731277916318142000-600969d3-9967-402d-a424-4aa6f788b3cc.json @@ -0,0 +1,23 @@ +[ + { + "call": { + "from": "0x00000000000000000000000000000000000a0000", + "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", + "nonce": 0, + "value": "0x0", + "gasLimit": 12500000, + "gasPrice": "0x1", + "gasFeeCap": "0x0", + "gasTipCap": "0x0", + "data": "0xbf938c53", + "dataAbiValues": { + "methodSignature": "property_sanityCheck()", + "inputValues": [] + }, + "AccessList": null, + "SkipAccountChecks": false + }, + "blockNumberDelay": 3666, + "blockTimestampDelay": 212808 + } +] \ No newline at end of file diff --git a/test/invariants/helpers/Utils.t.sol b/test/invariants/helpers/Utils.t.sol index 55f830b..b74fbd4 100644 --- a/test/invariants/helpers/Utils.t.sol +++ b/test/invariants/helpers/Utils.t.sol @@ -55,6 +55,8 @@ contract Utils { } } + // todo: convert everything to b32 (then only one implementation) + function assertEq(uint256 a, uint256 b) internal { assertEq(a, b, 'assertEq: a != b'); } @@ -77,6 +79,23 @@ contract Utils { } } + function assertEq(bytes memory a, bytes memory b) internal { + assertEq(a, b, 'assertEq: a != b'); + } + + function assertEq(bytes memory a, bytes memory b, string memory reason) internal { + if (a.length != b.length) { + emit TestFailure(reason); + assert(false); + } + for (uint256 i = 0; i < a.length; i++) { + if (a[i] != b[i]) { + emit TestFailure(reason); + assert(false); + } + } + } + function assertTrue(bool a) internal { assertTrue(a, 'assertTrue: !a'); } diff --git a/test/invariants/properties/PropertyA.t.sol b/test/invariants/properties/PropertyEbo.t.sol similarity index 81% rename from test/invariants/properties/PropertyA.t.sol rename to test/invariants/properties/PropertyEbo.t.sol index 8cad264..4d22216 100644 --- a/test/invariants/properties/PropertyA.t.sol +++ b/test/invariants/properties/PropertyEbo.t.sol @@ -3,7 +3,7 @@ pragma solidity 0.8.26; import {HandlerParent} from '../handlers/HandlerParent.t.sol'; -contract PropertyA is HandlerParent { +contract PropertyEbo is HandlerParent { //solhint-disable no-empty-blocks constructor() {} } diff --git a/test/invariants/properties/PropertyParent.t.sol b/test/invariants/properties/PropertyParent.t.sol index 755f405..5e6eeda 100644 --- a/test/invariants/properties/PropertyParent.t.sol +++ b/test/invariants/properties/PropertyParent.t.sol @@ -1,9 +1,10 @@ // SPDX-License-Identifier: MIT pragma solidity 0.8.26; -import {PropertyA} from './PropertyA.t.sol'; +import {PropertyEbo} from './PropertyEbo.t.sol'; +import {PropertySanityCheck} from './PropertySanityCheck.t.sol'; -contract PropertyParent is PropertyA { +contract PropertyParent is PropertyEbo, PropertySanityCheck { //solhint-disable no-empty-blocks constructor() {} } diff --git a/test/invariants/properties/PropertySanityCheck.t.sol b/test/invariants/properties/PropertySanityCheck.t.sol new file mode 100644 index 0000000..4e334fe --- /dev/null +++ b/test/invariants/properties/PropertySanityCheck.t.sol @@ -0,0 +1,99 @@ +// SPDX-License-Identifier: MIT +pragma solidity 0.8.26; + +import '../Setup.t.sol'; +import {HandlerParent} from '../handlers/HandlerParent.t.sol'; +import {IOracle} from '@defi-wonderland/prophet-core/solidity/contracts/Oracle.sol'; + +contract PropertySanityCheck is HandlerParent { + function property_sanityCheck() external { + assertEq(address(eboRequestCreator.ORACLE()), address(oracle), 'prop-0: wrong oracle address'); + + assertEq(address(eboRequestCreator.ARBITRABLE()), address(arbitrable), 'prop-0: wrong arbitrable address'); + + assertEq(eboRequestCreator.START_EPOCH(), START_EPOCH, 'prop-0: wrong start epoch'); + + assertEq(address(eboRequestCreator.epochManager()), address(epochManager), 'prop-0: wrong epoch manager address'); + + IOracle.Request memory initialRequestStored = eboRequestCreator.getRequestData(); + + assertEq( + initialRequestStored.requestModule, address(eboRequestModule), 'prop-0: wrong request module in initialRequest' + ); + + assertEq( + initialRequestStored.responseModule, + address(bondedResponseModule), + 'prop-0: wrong response module in initialRequest' + ); + + assertEq( + initialRequestStored.disputeModule, address(bondEscalationModule), 'prop-0: wrong disputeModule in initialRequest' + ); + + assertEq( + initialRequestStored.resolutionModule, + address(arbitratorModule), + 'prop-0: wrong resolutionModule in initialRequest' + ); + + assertEq( + initialRequestStored.finalityModule, address(eboFinalityModule), 'prop-0: wrong finalityModule in initialRequest' + ); + + assertEq(initialRequestStored.requester, address(eboRequestCreator), 'prop-0: wrong requester in initialRequest'); + + assertEq( + initialRequestStored.requestModuleData, + abi.encode( + IEBORequestModule.RequestParameters({ + epoch: START_EPOCH, + chainId: 'mainnet', + accountingExtension: IAccountingExtension(address(horizonAccountingExtension)), + paymentAmount: PAYMENT_AMOUNT + }) + ), + 'prop-0: wrong requestModuleData in initialRequest' + ); + + assertEq( + initialRequestStored.responseModuleData, + abi.encode( + IBondedResponseModule.RequestParameters({ + accountingExtension: IAccountingExtension(address(horizonAccountingExtension)), + bondToken: GRT, + bondSize: RESPONSE_BOND_SIZE, + deadline: RESPONSE_DEADLINE, + disputeWindow: RESPONSE_DISPUTE_WINDOW + }) + ), + 'prop-0: wrong responseModuleData module data in initialRequest' + ); + + assertEq( + initialRequestStored.disputeModuleData, + abi.encode( + IBondEscalationModule.RequestParameters({ + accountingExtension: IBondEscalationAccounting(address(horizonAccountingExtension)), + bondToken: GRT, + bondSize: DISPUTE_BOND_SIZE, + maxNumberOfEscalations: MAX_NB_ESCALATION, + bondEscalationDeadline: DISPUTE_DEADLINE, + tyingBuffer: TYING_BUFFER, + disputeWindow: DISPUTE_DISPUTE_WINDOW + }) + ), + 'prop-0: wrong disputeModuleData in initialRequest' + ); + + assertEq( + initialRequestStored.resolutionModuleData, + abi.encode(IArbitratorModule.RequestParameters({arbitrator: address(councilArbitrator)})), + 'prop-0: wrong resolutionModuleData in initialRequest' + ); + + assertEq(initialRequestStored.finalityModuleData, bytes(''), 'prop-0: wrong finality module data in initialRequest'); + + assertEq(initialRequestStored.nonce, 0, 'prop-0: wrong nonce in initialRequest'); + } +} From 92a50e3f32a79a8b032168c174200f498f0b6920 Mon Sep 17 00:00:00 2001 From: drgorillamd <83670532+drgorillamd@users.noreply.github.com> Date: Sun, 10 Nov 2024 23:55:02 +0100 Subject: [PATCH 05/28] test(medusa): git ignore corpus --- .gitignore | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/.gitignore b/.gitignore index 3c0f973..2f2a8ed 100644 --- a/.gitignore +++ b/.gitignore @@ -17,9 +17,7 @@ out-via-ir # Keep the latest deployment only broadcast/*/*/* -# Out dir +# Medusa files out crytic-export - -# Echidna corpus -test/invariants/fuzz/echidna_coverage +test/invariants/corpus From 1e78bdb001f8cd012eeb0a1f5f952afe1c2c4e95 Mon Sep 17 00:00:00 2001 From: drgorillamd <83670532+drgorillamd@users.noreply.github.com> Date: Sun, 10 Nov 2024 23:55:46 +0100 Subject: [PATCH 06/28] test(medusa): git ignore corpus --- .gitignore | 1 + 1 file changed, 1 insertion(+) diff --git a/.gitignore b/.gitignore index 2f2a8ed..5be4261 100644 --- a/.gitignore +++ b/.gitignore @@ -21,3 +21,4 @@ broadcast/*/*/* out crytic-export test/invariants/corpus +test/invariants/fuzz/corpus From efc88760b471662a775e530f44900b8c0631ee6d Mon Sep 17 00:00:00 2001 From: drgorillamd <83670532+drgorillamd@users.noreply.github.com> Date: Sun, 10 Nov 2024 23:56:12 +0100 Subject: [PATCH 07/28] test(medusa): typo medusa json --- medusa.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/medusa.json b/medusa.json index 6bb53b5..146d4a0 100644 --- a/medusa.json +++ b/medusa.json @@ -6,7 +6,7 @@ "testLimit": 0, "shrinkLimit": 100000, "callSequenceLength": 100, - "corpusDirectory": "test/invariants/fuzz/corpus", + "corpusDirectory": "test/invariants/corpus", "coverageEnabled": true, "targetContracts": ["FuzzTest"], "predeployedContracts": {}, From e4cf1e5a0e25f92adca3dbeb583315ed047d1766 Mon Sep 17 00:00:00 2001 From: drgorillamd <83670532+drgorillamd@users.noreply.github.com> Date: Sun, 10 Nov 2024 23:56:52 +0100 Subject: [PATCH 08/28] test(medusa): rm corpus --- ...-9d2d56aa-59cf-4190-ad90-113fcac7c07b.json | 25 - ...-1740f705-594e-4ba4-86b9-a7397841852a.json | 101 - ...-f241289c-0658-4e22-beca-b8ee18fa1c5e.json | 205 - ...-1f6e1bdd-fc3f-4a44-b6a7-36b505a2bc08.json | 222 - ...-cb45345a-eb47-4796-90de-54189aa91906.json | 297 - ...-ade8ba36-35c6-4c26-a794-1358fc248c91.json | 336 - ...-d3487e2f-b5c3-4ba6-a4ad-bd45f3059e7b.json | 457 - ...-87a8141e-a121-46dc-a00f-776de71bb0b1.json | 502 - ...-73ba1036-f664-420c-8d38-fc474d664848.json | 432 - ...-7b0538fd-d4b9-43b3-92c7-691cc391e386.json | 521 - ...-d68a6881-2741-489a-b7bd-a28264c8897a.json | 635 - ...-d99cfb6e-8259-4051-98fc-484c2b1166c0.json | 529 - ...-cba6387c-87fd-4774-b883-b02dc21edbe1.json | 501 - ...-741509d7-8c95-4626-b5c3-c17625f529b5.json | 829 - ...-5693c2ca-1af1-4296-b5e4-039401f77778.json | 552 - ...-7e10b2dd-f253-4d1d-b859-ec8a710b55b8.json | 741 - ...-2901a619-fff5-448f-99fe-6220b810c578.json | 849 - ...-8cf92baa-a0a3-4010-9457-96b2f6261d69.json | 862 - ...-125ef6cd-6d4b-4800-ad62-0f4317b13564.json | 1015 - ...-ab0f8e03-6145-4021-98bc-bc4414e1edac.json | 80 - ...-2b517ff1-9d51-4eb3-9295-59aef5edfe82.json | 25 - ...-871a08c3-b8b7-48ec-b0f3-8f40a4b63667.json | 101 - ...-58712d84-87f6-4a52-b17f-0a1efd24dc9a.json | 104 - ...-b61b8318-0b73-4814-96b9-ffd4a7bf2c0a.json | 103 - ...-b4c04c00-0029-44d8-a7a6-df5aa8196990.json | 133 - ...-2dfcb57a-f822-4ba8-935c-c6ef623952cf.json | 49 - ...-e8877634-86e5-4563-9155-7f538767b281.json | 103 - ...-9ce76d8d-3fdf-4be0-a718-67783ed4f0bd.json | 150 - ...-2f49b3b2-64e5-483d-8360-df43563d2ae4.json | 149 - ...-69edad03-8dfd-4c82-a029-e43ba88f8c78.json | 154 - ...-7c923095-534b-4a11-b54e-2d2ef4e1b46b.json | 156 - ...-b159dfaa-e3ec-46e5-98f1-23e5b2c960d2.json | 103 - ...-cdb80630-09f6-4557-a579-1f22c6aad840.json | 158 - ...-457a1374-bc7f-42db-8cbe-f5b69bd2aa06.json | 127 - ...-f157d325-29b7-4f9f-bdb5-7e0eba3fcb5c.json | 172 - ...-f0c7f0bf-41b6-4568-9911-e2d805265711.json | 174 - ...-25d5bdb7-8d18-498d-a97d-d95a6fb8c9a8.json | 119 - ...-1f6f9435-92ad-4363-9f0c-1e54059c5dc4.json | 209 - ...-83d29a38-d185-4da1-bf7c-796c32549172.json | 187 - ...-a886f310-136b-4d5e-b32b-512a0240982f.json | 181 - ...-4d28fe91-5746-4c39-a8f0-ed56ca160a14.json | 128 - ...-b20b34f9-5e1b-4d0f-8572-f21362b0e345.json | 173 - ...-be76a133-7392-4cf1-904a-fb9e7463d9ff.json | 221 - ...-78189ca7-7948-4439-966b-4447023b9d74.json | 199 - ...-6e98b3d8-7a3c-44ab-886c-20808a9bbc0a.json | 145 - ...-cfe80931-2a26-43cf-ac19-9333113edb1b.json | 260 - ...-dca8d182-bcd4-4450-b3b8-ab15f9ec2b20.json | 232 - ...-0934697b-6b99-4564-bc59-fcfff205e7a8.json | 199 - ...-6fd137e0-c5b3-46bf-b7cc-1b9ada70f8cb.json | 244 - ...-86cd1183-238f-46f1-89fb-e31c381aa9cd.json | 224 - ...-dac7fc11-4da0-43b6-a704-b5d5e0f01355.json | 289 - ...-bdb9aaa4-0806-4b34-a670-488774d109df.json | 194 - ...-df75f9a7-1493-4f85-933b-41e16a40a9aa.json | 277 - ...-9a69c5d6-6e9c-4112-b48d-c967ce827264.json | 267 - ...-aa14cc9b-89e7-4ad3-bd27-cebd20d762fd.json | 255 - ...-913a5283-6ee7-4539-b536-25e88067c71c.json | 302 - ...-aa3d9573-1529-4050-b0e3-d3a2c82060ad.json | 275 - ...-4f7eeec0-56e3-48d7-b30c-79fd53ad3971.json | 314 - ...-8d816111-c114-4b60-9a27-9562e7740699.json | 327 - ...-642c65dc-71fa-4e6a-a148-f2dc8dbd48fd.json | 449 - ...-078046e8-41b1-4d52-9ec7-cba3101036d7.json | 401 - ...-e006588c-7192-4449-bd09-0abc99a17369.json | 385 - ...-22ecd0b6-4fd9-4521-9067-46171675f011.json | 718 - ...-a3361f1b-c64e-4877-b104-9e005664b987.json | 490 - ...-336e2810-dd51-4d25-9729-a91266346caf.json | 394 - ...-1be16f79-52f8-40fb-91c4-ea3d3e097ca0.json | 485 - ...-3017e126-f28b-4de3-a2d0-55924f78cb18.json | 865 - ...-1075c611-326d-47eb-b752-8450c62dbeff.json | 1226 - ...-d5281764-a7b2-4459-a57a-1d3573814c84.json | 1623 - ...-b6d2204e-b85e-4a35-937c-c1bc3c2af34d.json | 2161 - .../fuzz/corpus/coverage_report.html | 197588 --------------- ...-32dff114-6a03-4430-9d95-836289099cbe.json | 23 - ...-d4125812-54d1-4fe8-b2da-34d5e34dc9fa.json | 23 - ...-0a807f4b-d878-4428-b5b9-a9f85a8454cb.json | 23 - ...-1ef75ec6-dacf-4714-ac4e-b14b0e6db321.json | 23 - ...-ab38a60b-d225-4ae7-b02b-7b0e34fbc487.json | 23 - ...-a56168a4-d5f3-41bd-a2e4-952218f3cb5d.json | 23 - ...-31a6e666-e7fb-4748-8532-81b12c1dcc7d.json | 23 - ...-d3a81c39-8004-4bff-b6fc-5ebcc72e5663.json | 23 - ...-600969d3-9967-402d-a424-4aa6f788b3cc.json | 23 - 80 files changed, 223865 deletions(-) delete mode 100755 test/invariants/fuzz/corpus/call_sequences/immutable/1731277803570201000-9d2d56aa-59cf-4190-ad90-113fcac7c07b.json delete mode 100755 test/invariants/fuzz/corpus/call_sequences/immutable/1731277803572719000-1740f705-594e-4ba4-86b9-a7397841852a.json delete mode 100755 test/invariants/fuzz/corpus/call_sequences/immutable/1731277803582478000-f241289c-0658-4e22-beca-b8ee18fa1c5e.json delete mode 100755 test/invariants/fuzz/corpus/call_sequences/immutable/1731277803585801000-1f6e1bdd-fc3f-4a44-b6a7-36b505a2bc08.json delete mode 100755 test/invariants/fuzz/corpus/call_sequences/immutable/1731277803593014000-cb45345a-eb47-4796-90de-54189aa91906.json delete mode 100755 test/invariants/fuzz/corpus/call_sequences/immutable/1731277803593410000-ade8ba36-35c6-4c26-a794-1358fc248c91.json delete mode 100755 test/invariants/fuzz/corpus/call_sequences/immutable/1731277803593538000-d3487e2f-b5c3-4ba6-a4ad-bd45f3059e7b.json delete mode 100755 test/invariants/fuzz/corpus/call_sequences/immutable/1731277803599728000-87a8141e-a121-46dc-a00f-776de71bb0b1.json delete mode 100755 test/invariants/fuzz/corpus/call_sequences/immutable/1731277803605108000-73ba1036-f664-420c-8d38-fc474d664848.json delete mode 100755 test/invariants/fuzz/corpus/call_sequences/immutable/1731277803605587000-7b0538fd-d4b9-43b3-92c7-691cc391e386.json delete mode 100755 test/invariants/fuzz/corpus/call_sequences/immutable/1731277803606635000-d68a6881-2741-489a-b7bd-a28264c8897a.json delete mode 100755 test/invariants/fuzz/corpus/call_sequences/immutable/1731277803607978000-d99cfb6e-8259-4051-98fc-484c2b1166c0.json delete mode 100755 test/invariants/fuzz/corpus/call_sequences/immutable/1731277803608778000-cba6387c-87fd-4774-b883-b02dc21edbe1.json delete mode 100755 test/invariants/fuzz/corpus/call_sequences/immutable/1731277803609589000-741509d7-8c95-4626-b5c3-c17625f529b5.json delete mode 100755 test/invariants/fuzz/corpus/call_sequences/immutable/1731277803612336000-5693c2ca-1af1-4296-b5e4-039401f77778.json delete mode 100755 test/invariants/fuzz/corpus/call_sequences/immutable/1731277803616547000-7e10b2dd-f253-4d1d-b859-ec8a710b55b8.json delete mode 100755 test/invariants/fuzz/corpus/call_sequences/immutable/1731277803617615000-2901a619-fff5-448f-99fe-6220b810c578.json delete mode 100755 test/invariants/fuzz/corpus/call_sequences/immutable/1731277803620612000-8cf92baa-a0a3-4010-9457-96b2f6261d69.json delete mode 100755 test/invariants/fuzz/corpus/call_sequences/immutable/1731277803621764000-125ef6cd-6d4b-4800-ad62-0f4317b13564.json delete mode 100755 test/invariants/fuzz/corpus/call_sequences/mutable/1731277803567787000-ab0f8e03-6145-4021-98bc-bc4414e1edac.json delete mode 100755 test/invariants/fuzz/corpus/call_sequences/mutable/1731277803569568000-2b517ff1-9d51-4eb3-9295-59aef5edfe82.json delete mode 100755 test/invariants/fuzz/corpus/call_sequences/mutable/1731277803569770000-871a08c3-b8b7-48ec-b0f3-8f40a4b63667.json delete mode 100755 test/invariants/fuzz/corpus/call_sequences/mutable/1731277803570237000-58712d84-87f6-4a52-b17f-0a1efd24dc9a.json delete mode 100755 test/invariants/fuzz/corpus/call_sequences/mutable/1731277803570989000-b61b8318-0b73-4814-96b9-ffd4a7bf2c0a.json delete mode 100755 test/invariants/fuzz/corpus/call_sequences/mutable/1731277803571997000-b4c04c00-0029-44d8-a7a6-df5aa8196990.json delete mode 100755 test/invariants/fuzz/corpus/call_sequences/mutable/1731277803572903000-2dfcb57a-f822-4ba8-935c-c6ef623952cf.json delete mode 100755 test/invariants/fuzz/corpus/call_sequences/mutable/1731277803573530000-e8877634-86e5-4563-9155-7f538767b281.json delete mode 100755 test/invariants/fuzz/corpus/call_sequences/mutable/1731277803573604000-9ce76d8d-3fdf-4be0-a718-67783ed4f0bd.json delete mode 100755 test/invariants/fuzz/corpus/call_sequences/mutable/1731277803573691000-2f49b3b2-64e5-483d-8360-df43563d2ae4.json delete mode 100755 test/invariants/fuzz/corpus/call_sequences/mutable/1731277803574933000-69edad03-8dfd-4c82-a029-e43ba88f8c78.json delete mode 100755 test/invariants/fuzz/corpus/call_sequences/mutable/1731277803575378000-7c923095-534b-4a11-b54e-2d2ef4e1b46b.json delete mode 100755 test/invariants/fuzz/corpus/call_sequences/mutable/1731277803575499000-b159dfaa-e3ec-46e5-98f1-23e5b2c960d2.json delete mode 100755 test/invariants/fuzz/corpus/call_sequences/mutable/1731277803575632000-cdb80630-09f6-4557-a579-1f22c6aad840.json delete mode 100755 test/invariants/fuzz/corpus/call_sequences/mutable/1731277803576501000-457a1374-bc7f-42db-8cbe-f5b69bd2aa06.json delete mode 100755 test/invariants/fuzz/corpus/call_sequences/mutable/1731277803576958000-f157d325-29b7-4f9f-bdb5-7e0eba3fcb5c.json delete mode 100755 test/invariants/fuzz/corpus/call_sequences/mutable/1731277803577371000-f0c7f0bf-41b6-4568-9911-e2d805265711.json delete mode 100755 test/invariants/fuzz/corpus/call_sequences/mutable/1731277803577541000-25d5bdb7-8d18-498d-a97d-d95a6fb8c9a8.json delete mode 100755 test/invariants/fuzz/corpus/call_sequences/mutable/1731277803577723000-1f6f9435-92ad-4363-9f0c-1e54059c5dc4.json delete mode 100755 test/invariants/fuzz/corpus/call_sequences/mutable/1731277803577914000-83d29a38-d185-4da1-bf7c-796c32549172.json delete mode 100755 test/invariants/fuzz/corpus/call_sequences/mutable/1731277803579664000-a886f310-136b-4d5e-b32b-512a0240982f.json delete mode 100755 test/invariants/fuzz/corpus/call_sequences/mutable/1731277803580224000-4d28fe91-5746-4c39-a8f0-ed56ca160a14.json delete mode 100755 test/invariants/fuzz/corpus/call_sequences/mutable/1731277803580455000-b20b34f9-5e1b-4d0f-8572-f21362b0e345.json delete mode 100755 test/invariants/fuzz/corpus/call_sequences/mutable/1731277803581400000-be76a133-7392-4cf1-904a-fb9e7463d9ff.json delete mode 100755 test/invariants/fuzz/corpus/call_sequences/mutable/1731277803581661000-78189ca7-7948-4439-966b-4447023b9d74.json delete mode 100755 test/invariants/fuzz/corpus/call_sequences/mutable/1731277803582447000-6e98b3d8-7a3c-44ab-886c-20808a9bbc0a.json delete mode 100755 test/invariants/fuzz/corpus/call_sequences/mutable/1731277803582764000-cfe80931-2a26-43cf-ac19-9333113edb1b.json delete mode 100755 test/invariants/fuzz/corpus/call_sequences/mutable/1731277803583775000-dca8d182-bcd4-4450-b3b8-ab15f9ec2b20.json delete mode 100755 test/invariants/fuzz/corpus/call_sequences/mutable/1731277803584460000-0934697b-6b99-4564-bc59-fcfff205e7a8.json delete mode 100755 test/invariants/fuzz/corpus/call_sequences/mutable/1731277803584811000-6fd137e0-c5b3-46bf-b7cc-1b9ada70f8cb.json delete mode 100755 test/invariants/fuzz/corpus/call_sequences/mutable/1731277803585754000-86cd1183-238f-46f1-89fb-e31c381aa9cd.json delete mode 100755 test/invariants/fuzz/corpus/call_sequences/mutable/1731277803586882000-dac7fc11-4da0-43b6-a704-b5d5e0f01355.json delete mode 100755 test/invariants/fuzz/corpus/call_sequences/mutable/1731277803587294000-bdb9aaa4-0806-4b34-a670-488774d109df.json delete mode 100755 test/invariants/fuzz/corpus/call_sequences/mutable/1731277803587717000-df75f9a7-1493-4f85-933b-41e16a40a9aa.json delete mode 100755 test/invariants/fuzz/corpus/call_sequences/mutable/1731277803588141000-9a69c5d6-6e9c-4112-b48d-c967ce827264.json delete mode 100755 test/invariants/fuzz/corpus/call_sequences/mutable/1731277803590022000-aa14cc9b-89e7-4ad3-bd27-cebd20d762fd.json delete mode 100755 test/invariants/fuzz/corpus/call_sequences/mutable/1731277803590829000-913a5283-6ee7-4539-b536-25e88067c71c.json delete mode 100755 test/invariants/fuzz/corpus/call_sequences/mutable/1731277803591721000-aa3d9573-1529-4050-b0e3-d3a2c82060ad.json delete mode 100755 test/invariants/fuzz/corpus/call_sequences/mutable/1731277803592555000-4f7eeec0-56e3-48d7-b30c-79fd53ad3971.json delete mode 100755 test/invariants/fuzz/corpus/call_sequences/mutable/1731277803595622000-8d816111-c114-4b60-9a27-9562e7740699.json delete mode 100755 test/invariants/fuzz/corpus/call_sequences/mutable/1731277803597300000-642c65dc-71fa-4e6a-a148-f2dc8dbd48fd.json delete mode 100755 test/invariants/fuzz/corpus/call_sequences/mutable/1731277803598316000-078046e8-41b1-4d52-9ec7-cba3101036d7.json delete mode 100755 test/invariants/fuzz/corpus/call_sequences/mutable/1731277803599309000-e006588c-7192-4449-bd09-0abc99a17369.json delete mode 100755 test/invariants/fuzz/corpus/call_sequences/mutable/1731277803600377000-22ecd0b6-4fd9-4521-9067-46171675f011.json delete mode 100755 test/invariants/fuzz/corpus/call_sequences/mutable/1731277803601066000-a3361f1b-c64e-4877-b104-9e005664b987.json delete mode 100755 test/invariants/fuzz/corpus/call_sequences/mutable/1731277803601793000-336e2810-dd51-4d25-9729-a91266346caf.json delete mode 100755 test/invariants/fuzz/corpus/call_sequences/mutable/1731277803602532000-1be16f79-52f8-40fb-91c4-ea3d3e097ca0.json delete mode 100755 test/invariants/fuzz/corpus/call_sequences/mutable/1731277803615385000-3017e126-f28b-4de3-a2d0-55924f78cb18.json delete mode 100755 test/invariants/fuzz/corpus/call_sequences/mutable/1731277803619106000-1075c611-326d-47eb-b752-8450c62dbeff.json delete mode 100755 test/invariants/fuzz/corpus/call_sequences/mutable/1731277803628684000-d5281764-a7b2-4459-a57a-1d3573814c84.json delete mode 100755 test/invariants/fuzz/corpus/call_sequences/mutable/1731277803638838000-b6d2204e-b85e-4a35-937c-c1bc3c2af34d.json delete mode 100644 test/invariants/fuzz/corpus/coverage_report.html delete mode 100755 test/invariants/fuzz/corpus/test_results/1731277916310343000-32dff114-6a03-4430-9d95-836289099cbe.json delete mode 100755 test/invariants/fuzz/corpus/test_results/1731277916315548000-d4125812-54d1-4fe8-b2da-34d5e34dc9fa.json delete mode 100755 test/invariants/fuzz/corpus/test_results/1731277916315901000-0a807f4b-d878-4428-b5b9-a9f85a8454cb.json delete mode 100755 test/invariants/fuzz/corpus/test_results/1731277916316125000-1ef75ec6-dacf-4714-ac4e-b14b0e6db321.json delete mode 100755 test/invariants/fuzz/corpus/test_results/1731277916317250000-ab38a60b-d225-4ae7-b02b-7b0e34fbc487.json delete mode 100755 test/invariants/fuzz/corpus/test_results/1731277916317637000-a56168a4-d5f3-41bd-a2e4-952218f3cb5d.json delete mode 100755 test/invariants/fuzz/corpus/test_results/1731277916318080000-31a6e666-e7fb-4748-8532-81b12c1dcc7d.json delete mode 100755 test/invariants/fuzz/corpus/test_results/1731277916318104000-d3a81c39-8004-4bff-b6fc-5ebcc72e5663.json delete mode 100755 test/invariants/fuzz/corpus/test_results/1731277916318142000-600969d3-9967-402d-a424-4aa6f788b3cc.json diff --git a/test/invariants/fuzz/corpus/call_sequences/immutable/1731277803570201000-9d2d56aa-59cf-4190-ad90-113fcac7c07b.json b/test/invariants/fuzz/corpus/call_sequences/immutable/1731277803570201000-9d2d56aa-59cf-4190-ad90-113fcac7c07b.json deleted file mode 100755 index 51c460e..0000000 --- a/test/invariants/fuzz/corpus/call_sequences/immutable/1731277803570201000-9d2d56aa-59cf-4190-ad90-113fcac7c07b.json +++ /dev/null @@ -1,25 +0,0 @@ -[ - { - "call": { - "from": "0x0000000000000000000000000000000000050000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xc5c171570000000000000000000000000647a2b37d508178e906383325307f78da653649", - "dataAbiValues": { - "methodSignature": "handleAddChain(uint256)", - "inputValues": [ - "35851470801474844628522781619661439362520135241" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 17285, - "blockTimestampDelay": 259199 - } -] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/call_sequences/immutable/1731277803572719000-1740f705-594e-4ba4-86b9-a7397841852a.json b/test/invariants/fuzz/corpus/call_sequences/immutable/1731277803572719000-1740f705-594e-4ba4-86b9-a7397841852a.json deleted file mode 100755 index 07ffa02..0000000 --- a/test/invariants/fuzz/corpus/call_sequences/immutable/1731277803572719000-1740f705-594e-4ba4-86b9-a7397841852a.json +++ /dev/null @@ -1,101 +0,0 @@ -[ - { - "call": { - "from": "0x0000000000000000000000000000000000030000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x13a8b8040000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000034000000000000000000000000000000000000000000000000000000000000000170000000000000000000000000000000000000000000000000000000000d2f000ffffc0000000000000000000000000000000000000000000000000000000000181dc31bc03ad9bc8a966de91dfc8c49b929f6d5fd44a9c22a7f5bb37cebfc106bca412bb66f5a786f1f157a7fc9a7a410fdc25af263685a02f7fba0f220b6917fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b825bc2cfc37067e378b4feef3f3411136744d0b2851c161c601669654cf27bfe6100000000000000000000000000000000000000000000000000000000000000006cd40d93882a844c2becf361c7579664aef7a6ef6e8b79d6bf6f6f76426e9b14039e696f94058cfd274de97421f65916ac135f4d55083d357b9c1f34820c9376000000000000000000000000000000000000000000000000000000000003fffe000000000000000000000000000000000000000000000000000000000000000167e6a528e0202cf23a36eacf513eee303475d3e4c983b2ae2d616b11c440f70a4ac07813439b9213b22d4d86340307a2982de60c241368ad288dfea742b6eb5efffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9686c2d73382b1edfa908bcaeb6b9ac0073f469887a9150c80831642e47e35a614c1bffffffffffffffffffffffffffffffffffffffffffffe48e5eb33a3a7f000000104a13a90c13653470268ea78892361e7e91e706d859aabaaf45ddd18c956640809a37cc7335cdf29b7d988dc8c05e2c1899ad1795364e6fa667088b49487472000000000000000000000000000000000000000000000000000000000000fff6fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b80756993dc4be6ecf1e46c48d6f9cae9255a8b46ef956a3d85442a5f41f70ecf93000000000000000000000000000000000000000000000000000000000076a700a77a4c48695a0407441e86efc633aee092d2ebd99c87fdfeebcd904fe33e086d000000000000000000000000000000000000000000000000000000000000001d563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd0633ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed6958658aad3329b56f2f98187bbaed7351982ae06a00b9382adcb723b8b393d1f5e2def8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b4498bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef328d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad82082401f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade0554594d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae962914f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cbba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c33f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8fd276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f6617237058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf259a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe2665f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a219fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb", - "dataAbiValues": { - "methodSignature": "handleCreateRequests(uint256[],bytes32[])", - "inputValues": [ - [ - "13824000", - "115791647525550000827488589184312722123641027794666345134718053606362806484993", - "58737407075920930096693749632210245280794127876199190949253348332199714210054", - "85324707736064915141600617856415742369037048538489516430413284888496340429079", - "115792089237316195423570985008687907853269984665640564039457584007913129380738", - "41504671482165347584846103287222174319130579613222615088745194098566077611617", - "0", - "49224452924880417829398231270379785502530069722970149981823851608145893694228", - "1636828073493779560152621491074002847609709387720111137750911676859097584502", - "262142", - "1", - "46995738119123743123282428161140493004285235666026628953647859202250191730442", - "33811214160519685654400438720767591502827986970858420988841187408488311483230", - "115792089237316195423570985008687907853269984665640564039457584007913129207916", - "20557653259021005890251421269967042420225955023564768794272035576696478452763", - "115792089237316195423570985008687907853269984665640563909857584007913129639936", - "7367887950809164700104084563884591449786965425123545364576065505479275931200", - "58168524174645209900719041489934173752247098791866719219864340874379345294450", - "65526", - "115792089237316195423570985008687907853269984665640564039457584007913129380736", - "53107142721938561923251317745913031228477959801596843755970727929974933606291", - "7776000", - "75752327540241786815348607290604056680494387521335977257182003214564422715501" - ], - [ - "563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe", - "27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a", - "9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd06", - "33ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865", - "8aad3329b56f2f98187bbaed7351982ae06a00b9382adcb723b8b393d1f5e2de", - "f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1", - "c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b44", - "98bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01", - "108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef32", - "8d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea", - "94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad8208240", - "1f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade05545", - "94d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056", - "cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae96291", - "4f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa", - "9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874", - "ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cb", - "ba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c3", - "3f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8f", - "d276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99", - "fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce", - "3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb", - "4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f661723", - "7058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78", - "994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25", - "9a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe26", - "65f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a2", - "19fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c", - "51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb" - ] - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 21265, - "blockTimestampDelay": 360627 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000050000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xbf938c53", - "dataAbiValues": { - "methodSignature": "property_sanityCheck()", - "inputValues": [] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 15835, - "blockTimestampDelay": 490250 - } -] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/call_sequences/immutable/1731277803582478000-f241289c-0658-4e22-beca-b8ee18fa1c5e.json b/test/invariants/fuzz/corpus/call_sequences/immutable/1731277803582478000-f241289c-0658-4e22-beca-b8ee18fa1c5e.json deleted file mode 100755 index 6283a3c..0000000 --- a/test/invariants/fuzz/corpus/call_sequences/immutable/1731277803582478000-f241289c-0658-4e22-beca-b8ee18fa1c5e.json +++ /dev/null @@ -1,205 +0,0 @@ -[ - { - "call": { - "from": "0x0000000000000000000000000000000000030000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x13a8b8040000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000034000000000000000000000000000000000000000000000000000000000000000170000000000000000000000000000000000000000000000000000000000d2f000ffffc0000000000000000000000000000000000000000000000000000000000181dc31bc03ad9bc8a966de91dfc8c49b929f6d5fd44a9c22a7f5bb37cebfc106ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed8ee8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b825bc2cfc37067e378b4feef3f3411136744d0b2851c161c601669654cf27bfe610000000000000000000000000000000000000000000000000000000000000000578750b27e877a957d33dc50d914b1caf972efffa4bb78b85e66dd813a864ca4039e696f94058cfd274de97421f65916ac135f4d55083d357b9c1f34820c9376000000000000000000000000000000000000000000000000000000000003fffe000000000000000000000000000000000000000000000000000000000000000167e6a528e0202cf23a36eacf513eee303475d3e4c983b2ae2d616b11c440f70a4ac07813439b9213b22d4d86340307a2982de60c241368ad288dfea742b6eb5efffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9686c2d73382b1edfa908bcaeb6b9ac0073f469887a9150c80831642e47e35a614c1bffffffffffffffffffffffffffffffffffffffffffffe48e5eb33a3a7f000000104a13a90c13653470268ea78892361e7e91e706d859aabaaf45ddd18c956640809a37cc7335cdf29b7d988dc8c05e2c1899ad1795364e6fa667088b49487472000000000000000000000000000000000000000000000000000000000000fff6fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b800000000000000000000000000000000000000000000000000329c51ac594cf93000000000000000000000000000000000000000000000000000000000076a700a77a4c48695a0407441e86efc633aee092d2ebd99c87fdfeebcd904fe33e086d000000000000000000000000000000000000000000000000000000000000001d563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd0633ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865d5d6866ffb684491364a0853403f689144f5664f5d50de1b1a30d683ff29f21bf8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b4498bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef328d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad82082401f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade0554594d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae96291d8c581a922d52cd477658fcc2e2ca1f954f274ed2cd833a98e6d1d4455581f9d9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cbba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c33f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8fd276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f6617237058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf259a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe2665f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a219fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb", - "dataAbiValues": { - "methodSignature": "handleCreateRequests(uint256[],bytes32[])", - "inputValues": [ - [ - "13824000", - "115791647525550000827488589184312722123641027794666345134718053606362806484993", - "58737407075920930096693749632210245280794127876199190949253348332199714210054", - "115792089237316195423570985008687907853269984665640564039457584007913128431336", - "115792089237316195423570985008687907853269984665640564039457584007913129380738", - "41504671482165347584846103287222174319130579613222615088745194098566077611617", - "0", - "39590299132392589184737138068833640165131826767556478003143025413084726840484", - "1636828073493779560152621491074002847609709387720111137750911676859097584502", - "262142", - "1", - "46995738119123743123282428161140493004285235666026628953647859202250191730442", - "33811214160519685654400438720767591502827986970858420988841187408488311483230", - "115792089237316195423570985008687907853269984665640564039457584007913129207916", - "20557653259021005890251421269967042420225955023564768794272035576696478452763", - "115792089237316195423570985008687907853269984665640563909857584007913129639936", - "7367887950809164700104084563884591449786965425123545364576065505479275931200", - "58168524174645209900719041489934173752247098791866719219864340874379345294450", - "65526", - "115792089237316195423570985008687907853269984665640564039457584007913129380736", - "227929974933606291", - "7776000", - "75752327540241786815348607290604056680494387521335977257182003214564422715501" - ], - [ - "563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe", - "27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a", - "9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd06", - "33ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865", - "d5d6866ffb684491364a0853403f689144f5664f5d50de1b1a30d683ff29f21b", - "f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1", - "c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b44", - "98bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01", - "108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef32", - "8d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea", - "94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad8208240", - "1f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade05545", - "94d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056", - "cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae96291", - "d8c581a922d52cd477658fcc2e2ca1f954f274ed2cd833a98e6d1d4455581f9d", - "9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874", - "ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cb", - "ba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c3", - "3f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8f", - "d276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99", - "fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce", - "3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb", - "4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f661723", - "7058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78", - "994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25", - "9a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe26", - "65f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a2", - "19fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c", - "51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb" - ] - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 21265, - "blockTimestampDelay": 360627 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000020000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x161c7318", - "dataAbiValues": { - "methodSignature": "test_debug()", - "inputValues": [] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 15325, - "blockTimestampDelay": 189245 - }, - { - "call": { - "from": "0x00000000000000000000000000000000000a0000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x88b05f294e5c5739570432e46e997185cf2683c287e8339e1ce7ab9502db4f4b4f0c1b77000000000000000000000000000000000000000000000000000000000012750000000000000000000000000000000000000000000000000006f05b59d3b200003c3b20fe3c6474ef6112cec6e2e1e2a66147c502767418c32e65c3bfa035d898948fc45007206ff5c0b2215d0b5c97d5551a84ed653f28e284b8567c463ce3650000000000000000000000000000000000000000000000000000000000069780ffffffffffffffffffffffffffffffffffffffffffffffffffffffec398000000000000000000000000000000000000000000000000000000000000000093a80", - "dataAbiValues": { - "methodSignature": "handleSetDisputeModuleData(uint256,(address,address,uint256,uint256,uint256,uint256,uint256))", - "inputValues": [ - "35443554117267417118592017165536035041230544133048285386578266163756344810359", - { - "accountingExtension": "0x0000000000000000000000000000000000127500", - "bondEscalationDeadline": "432000", - "bondSize": "27243242601887521753615714576112380311306725462768124357416761313244220872856", - "bondToken": "0x00000000000000000000000006f05b59d3b20000", - "disputeWindow": "604800", - "maxNumberOfEscalations": "67196315620416968751812103706326677402054656808860235011842083525495944438629", - "tyingBuffer": "115792089237316195423570985008687907853269984665640564039457584007828194983936" - } - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 24101, - "blockTimestampDelay": 185392 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000040000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x3c26dcf8000000000000000000000000000000000000000000000853a0d2313c00000000", - "dataAbiValues": { - "methodSignature": "handleSetEpochManager(uint256)", - "inputValues": [ - "39321600000000000000000" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 23050, - "blockTimestampDelay": 360593 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000070000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x1c6850cfb0e3106162bbf50b7b4f4127a44fc6dee30686640d85ab8a97c7a387e688d09200000000000000000000000000000000000000000000000000000000000151800000000000000000000000000000000000000000000000000de0b6b3a7640000", - "dataAbiValues": { - "methodSignature": "handleUpdateDisputeStatus(uint256,uint256,uint256)", - "inputValues": [ - "80008248687813878652618995284154503941697939794158322754224777983398987223186", - "86400", - "1000000000000000000" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 17066, - "blockTimestampDelay": 86400 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000020000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xc0106a6cce21db24dd246f08ad02e64e7a8e8742fa9607e8fdf81425d16e85c70f3de5d85907be10f550a4ab3f84480cf0ea723b2a74da20322f8a7c02918a70cdb15ac9", - "dataAbiValues": { - "methodSignature": "handleCreateRequest(uint256,uint256)", - "inputValues": [ - "93236265237587594263022487768855356786420509345912517467786824227481808922072", - "40269523242363880299786798295795090179015741572111778996238876869560403843785" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 0, - "blockTimestampDelay": 101426 - } -] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/call_sequences/immutable/1731277803585801000-1f6e1bdd-fc3f-4a44-b6a7-36b505a2bc08.json b/test/invariants/fuzz/corpus/call_sequences/immutable/1731277803585801000-1f6e1bdd-fc3f-4a44-b6a7-36b505a2bc08.json deleted file mode 100755 index 4cdce6a..0000000 --- a/test/invariants/fuzz/corpus/call_sequences/immutable/1731277803585801000-1f6e1bdd-fc3f-4a44-b6a7-36b505a2bc08.json +++ /dev/null @@ -1,222 +0,0 @@ -[ - { - "call": { - "from": "0x0000000000000000000000000000000000030000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x13a8b8040000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000034000000000000000000000000000000000000000000000000000000000000000170000000000000000000000000000000000000000000000000000000000d2f000ffffc0000000000000000000000000000000000000000000000000000000000181dc31bc03ad9bc8a966de91dfc8c49b929f6d5fd44a9c22a7f5bb37cebfc106ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed8ee8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b825bc2cfc37067e378b4feef3f3411136744d0b2851c161c601669654cf27bfe6100000000000000000000000000000000000000000000000000000000000000006cd40d93882a844c2becf361c7579664aef7a6ef6e8b79d6bf6f6f76426e9b14039e696f94058cfd274de97421f65916ac135f4d55083d357b9c1f34820c9376000000000000000000000000000000000000000000000000000000000003fffe000000000000000000000000000000000000000000000000000000000000000167e6a528e0202cf23a36eacf513eee303475d3e4c983b2ae2d616b11c440f70a4ac07813439b9213b22d4d86340307a2982de60c241368ad288dfea742b6eb5efffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9686c2d73382b1edfa908bcaeb6b9ac0073f469887a9150c80831642e47e35a614c1bffffffffffffffffffffffffffffffffffffffffffffe48e5eb33a3a7f000000104a13a90c13653470268ea78892361e7e91e706d859aabaaf45ddd18c956640809a37cc7335cdf29b7d988dc8c05e2c1899ad1795364e6fa667088b49487472ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffee00b4fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b80756993dc4be6ecf1e46c48d6f9cae9255a8b46ef956a3d85442a5f41f70ecf93000000000000000000000000000000000000000000000000000000000076a700a77a4c48695a0407441e86efc633aee092d2ebd99c87fdfeebcd904fe33e086d000000000000000000000000000000000000000000000000000000000000001d563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd0633ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865a46715d7736dde0bcf6527392542031b42d0197ab2c1bb4c4d2d7abaed280007f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b4498bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef328d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad82082401f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade0554594d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae962914f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cbba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c33f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8fd276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f6617237058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf259a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe260d35d19771f7c1af646e114de36d19c25e3fc040b27be76073113bb33db17d5d19fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb", - "dataAbiValues": { - "methodSignature": "handleCreateRequests(uint256[],bytes32[])", - "inputValues": [ - [ - "13824000", - "115791647525550000827488589184312722123641027794666345134718053606362806484993", - "58737407075920930096693749632210245280794127876199190949253348332199714210054", - "115792089237316195423570985008687907853269984665640564039457584007913128431336", - "115792089237316195423570985008687907853269984665640564039457584007913129380738", - "41504671482165347584846103287222174319130579613222615088745194098566077611617", - "0", - "49224452924880417829398231270379785502530069722970149981823851608145893694228", - "1636828073493779560152621491074002847609709387720111137750911676859097584502", - "262142", - "1", - "46995738119123743123282428161140493004285235666026628953647859202250191730442", - "33811214160519685654400438720767591502827986970858420988841187408488311483230", - "115792089237316195423570985008687907853269984665640564039457584007913129207916", - "20557653259021005890251421269967042420225955023564768794272035576696478452763", - "115792089237316195423570985008687907853269984665640563909857584007913129639936", - "7367887950809164700104084563884591449786965425123545364576065505479275931200", - "58168524174645209900719041489934173752247098791866719219864340874379345294450", - "115792089237316195423570985008687907853269984665640564039457584007913128460468", - "115792089237316195423570985008687907853269984665640564039457584007913129380736", - "53107142721938561923251317745913031228477959801596843755970727929974933606291", - "7776000", - "75752327540241786815348607290604056680494387521335977257182003214564422715501" - ], - [ - "563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe", - "27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a", - "9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd06", - "33ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865", - "a46715d7736dde0bcf6527392542031b42d0197ab2c1bb4c4d2d7abaed280007", - "f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1", - "c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b44", - "98bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01", - "108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef32", - "8d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea", - "94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad8208240", - "1f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade05545", - "94d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056", - "cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae96291", - "4f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa", - "9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874", - "ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cb", - "ba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c3", - "3f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8f", - "d276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99", - "fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce", - "3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb", - "4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f661723", - "7058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78", - "994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25", - "9a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe26", - "0d35d19771f7c1af646e114de36d19c25e3fc040b27be76073113bb33db17d5d", - "19fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c", - "51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb" - ] - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 21265, - "blockTimestampDelay": 360627 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000080000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x51b295e3caac5b7c00ae43f0a0d2465bc3a827daefa6255afc3feafd105a01b058af4cc3", - "dataAbiValues": { - "methodSignature": "handleFinalize(uint256)", - "inputValues": [ - "91671724510984325847623981850838041499373483072178023597879983910219265559747" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 616, - "blockTimestampDelay": 245182 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000070000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x62e8fd357410315e284ca2250b236ba99041acd7e7626e3fc66727657ddcb75ed512355238b8e299444e7771cad3e9cc9efbc8237922a7b18f034d56199ddaad5f62f70c", - "dataAbiValues": { - "methodSignature": "handleOnDisputeStatusChange(uint256,uint256)", - "inputValues": [ - "52496900712745351460185096722717982602139275703227615313943886816707427317074", - "25656183307321870319256066529210878052151786525540532817103830451324188817164" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 0, - "blockTimestampDelay": 0 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000010000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x5cc02fa53b4e8ff8cbb94866d057a07c347e0cb79a079e6c49875d6adb448ca8b36b2f93", - "dataAbiValues": { - "methodSignature": "handleSetPendingCouncil(uint256)", - "inputValues": [ - "26825265794714411535119211388793422995701606456004679527746190657884506501011" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 22951, - "blockTimestampDelay": 222797 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000090000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x7aeb6faba969b1150e65eb039223322d37083c0f930e9f96e767cfaf888c1440b89042a7ffffffffffffffffffffffffffffffffffffffffffffffffffffffbe15000000", - "dataAbiValues": { - "methodSignature": "handleDisputeResponseBondEscalationModule(uint256,uint256)", - "inputValues": [ - "76627612529152310655938988775485703136714009850335653768166292952282670580391", - "115792089237316195423570985008687907853269984665640564039457584007630014119936" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 23866, - "blockTimestampDelay": 274647 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000030000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 2, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xf4fbbf9b0000000000000000000000000000000000000000000000000000000000000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed8b007c3160c01450d95568fbc7e3fe876965aa411c1bf13d7be2baabf28cedd3012f", - "dataAbiValues": { - "methodSignature": "handleBond(uint256,uint256,uint256)", - "inputValues": [ - "0", - "115792089237316195423570985008687907853269984665640564039457584007913128430336", - "56174036476597730143689219709059961134239333858317208755745576773703517274415" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 0, - "blockTimestampDelay": 404026 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000060000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x94ae6f8c0000000000000000000000000000000000000000000000000000000000000120", - "dataAbiValues": { - "methodSignature": "handleValidateArbitrator(uint256)", - "inputValues": [ - "288" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 28898, - "blockTimestampDelay": 360593 - } -] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/call_sequences/immutable/1731277803593014000-cb45345a-eb47-4796-90de-54189aa91906.json b/test/invariants/fuzz/corpus/call_sequences/immutable/1731277803593014000-cb45345a-eb47-4796-90de-54189aa91906.json deleted file mode 100755 index 0266883..0000000 --- a/test/invariants/fuzz/corpus/call_sequences/immutable/1731277803593014000-cb45345a-eb47-4796-90de-54189aa91906.json +++ /dev/null @@ -1,297 +0,0 @@ -[ - { - "call": { - "from": "0x0000000000000000000000000000000000030000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x13a8b8040000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000034000000000000000000000000000000000000000000000000000000000000000170000000000000000000000000000000000000000000000000000000000d2f000ffffc0000000000000000000000000000000000000000000000000000000000181dc31bc03ad9bc8a966de91dfc8c49b929f6d5fd44a9c22a7f5bb37cebfc106ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed8ee8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b825bc2cfc37067e378b4feef3f3411136744d0b2851c161c601669654cf27bfe6100000000000000000000000000000000000000000000000000000000000000006cd40d93882a844c2becf361c7579664aef7a6ef6e8b79d6bf6f6f76426e9b14039e696f94058cfd274de97421f65916ac135f4d55083d357b9c1f34820c9376000000000000000000000000000000000000000000000000000000000003fffe000000000000000000000000000000000000000000000000000000000000000167e6a528e0202cf23a36eacf513eee303475d3e4c983b2ae2d616b11c440f70a4ac07813439b9213b22d4d86340307a2982de60c241368ad288dfea742b6eb5efffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9686c2d73382b1edfa908bcaeb6b9ac0073f469887a9150c80831642e47e35a614c1bffffffffffffffffffffffffffffffffffffffffffffe48e5eb33a3a7f000000104a13a90c13653470268ea78892361e7e91e706d859aabaaf45ddd18c956640809a37cc7335cdf29b7d988dc8c05e2c1899ad1795364e6fa667088b49487472000000000000000000000000000000000000000000000000000000000000fff6fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b80756993dc4be6ecf1e46c48d6f9cae9255a8b46ef956a3d85442a5f41f70ecf93000000000000000000000000000000000000000000000000000000000076a700a77a4c48695a0407441e86efc633aee092d2ebd99c87fdfeebcd904fe33e086d000000000000000000000000000000000000000000000000000000000000001d563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd0633ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed6958658aad3329b56f2f98187bbaed7351982ae06a00b9382adcb723b8b393d1f5e2def8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b4498bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef328d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad82082401f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade0554594d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae962914f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cbba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c33f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8fd276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f6617237058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf259a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe2665f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a219fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb", - "dataAbiValues": { - "methodSignature": "handleCreateRequests(uint256[],bytes32[])", - "inputValues": [ - [ - "13824000", - "115791647525550000827488589184312722123641027794666345134718053606362806484993", - "58737407075920930096693749632210245280794127876199190949253348332199714210054", - "115792089237316195423570985008687907853269984665640564039457584007913128431336", - "115792089237316195423570985008687907853269984665640564039457584007913129380738", - "41504671482165347584846103287222174319130579613222615088745194098566077611617", - "0", - "49224452924880417829398231270379785502530069722970149981823851608145893694228", - "1636828073493779560152621491074002847609709387720111137750911676859097584502", - "262142", - "1", - "46995738119123743123282428161140493004285235666026628953647859202250191730442", - "33811214160519685654400438720767591502827986970858420988841187408488311483230", - "115792089237316195423570985008687907853269984665640564039457584007913129207916", - "20557653259021005890251421269967042420225955023564768794272035576696478452763", - "115792089237316195423570985008687907853269984665640563909857584007913129639936", - "7367887950809164700104084563884591449786965425123545364576065505479275931200", - "58168524174645209900719041489934173752247098791866719219864340874379345294450", - "65526", - "115792089237316195423570985008687907853269984665640564039457584007913129380736", - "53107142721938561923251317745913031228477959801596843755970727929974933606291", - "7776000", - "75752327540241786815348607290604056680494387521335977257182003214564422715501" - ], - [ - "563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe", - "27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a", - "9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd06", - "33ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865", - "8aad3329b56f2f98187bbaed7351982ae06a00b9382adcb723b8b393d1f5e2de", - "f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1", - "c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b44", - "98bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01", - "108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef32", - "8d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea", - "94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad8208240", - "1f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade05545", - "94d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056", - "cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae96291", - "4f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa", - "9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874", - "ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cb", - "ba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c3", - "3f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8f", - "d276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99", - "fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce", - "3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb", - "4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f661723", - "7058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78", - "994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25", - "9a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe26", - "65f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a2", - "19fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c", - "51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb" - ] - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 21265, - "blockTimestampDelay": 360627 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000050000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x91e32c74e0613faa5f896b73380078af3c1ee8605eec949aaf9c8f422f264f3de916b58dc905ee964be623d23ba97ccc5a2b838249eaa10a8671d6a68f97b09746107abf", - "dataAbiValues": { - "methodSignature": "handleCreateRequest(uint256,bytes32)", - "inputValues": [ - "101489901651207154401933345705911812335881908306802664469868899807780031346061", - "c905ee964be623d23ba97ccc5a2b838249eaa10a8671d6a68f97b09746107abf" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 23884, - "blockTimestampDelay": 297676 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000020000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x161c7318", - "dataAbiValues": { - "methodSignature": "test_debug()", - "inputValues": [] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 0, - "blockTimestampDelay": 1 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000070000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xaa1a5bd9ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffee2cac1a259bf9695aac61487b4606621f281407f44a6d621116f436e53e00628b", - "dataAbiValues": { - "methodSignature": "handleResolveDispute(uint256,uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913129639918", - "20205843492154653597326893919151713313559584018734749877274787063574636290699" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 23891, - "blockTimestampDelay": 328958 - }, - { - "call": { - "from": "0x00000000000000000000000000000000000a0000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xec5bf215fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff60000", - "dataAbiValues": { - "methodSignature": "handleFinalizeRequestResponseModule(uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913128984576" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 23883, - "blockTimestampDelay": 276784 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000020000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xd1a55655fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe9c", - "dataAbiValues": { - "methodSignature": "handleRevokeModule(uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913129639580" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 14210, - "blockTimestampDelay": 524288 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000060000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x727899fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffb001400000000000000000000000000000000000000000000000000000000001275000000000000000000000000000000000000000000000000000000000000000000a46e28ce399e11c208b07a84e457189f5b64e15f51e128b7baf507642bfef8c6", - "dataAbiValues": { - "methodSignature": "handlePledge(uint256,uint256,uint256,uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913129312276", - "1209600", - "0", - "74373941974452021616102119156230516273735358461823357873191033522071497799878" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 1, - "blockTimestampDelay": 256 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000040000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xa44b098effffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0003", - "dataAbiValues": { - "methodSignature": "handleSetArbitrator(uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913129574403" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 43748, - "blockTimestampDelay": 541010 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000010000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x8f790139ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0", - "dataAbiValues": { - "methodSignature": "handleReleaseUnutilizedResponse(uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913129639904" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 11833, - "blockTimestampDelay": 213928 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000090000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xa59d317d7f4bab9c72ef04decea93d5f106890883b64be0e4f50aa1ceebd5a435a7fa13a0000000000000000000000001302f0402bb094e65a1c38fc8979628fa7cb7eb80000000000000000000000000000000000000000000000000000000000093a8000000000000000000000000000000000000000000000000000000000000d2f00fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff70000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff", - "dataAbiValues": { - "methodSignature": "handleSetResponseModuleData(uint256,(address,address,uint256,uint256,uint256))", - "inputValues": [ - "57577429716414119383889913852992200380066446236494108346454295294682507223354", - { - "accountingExtension": "0x1302F0402bb094e65a1c38fC8979628FA7cb7eB8", - "bondSize": "864000", - "bondToken": "0x0000000000000000000000000000000000093A80", - "deadline": "115792089237316195423570985008687907853269984665640564039457584007913129050112", - "disputeWindow": "115792089237316195423570985008687907853269984665640564039457584007913129639935" - } - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 30759, - "blockTimestampDelay": 56734 - } -] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/call_sequences/immutable/1731277803593410000-ade8ba36-35c6-4c26-a794-1358fc248c91.json b/test/invariants/fuzz/corpus/call_sequences/immutable/1731277803593410000-ade8ba36-35c6-4c26-a794-1358fc248c91.json deleted file mode 100755 index 8b166a9..0000000 --- a/test/invariants/fuzz/corpus/call_sequences/immutable/1731277803593410000-ade8ba36-35c6-4c26-a794-1358fc248c91.json +++ /dev/null @@ -1,336 +0,0 @@ -[ - { - "call": { - "from": "0x0000000000000000000000000000000000040000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x52e3cb9c6b0d264b5add160d5053aa476132c22d6540d3605ad8dfb850790b1ba996569b", - "dataAbiValues": { - "methodSignature": "handleSetMaxUsersToCheck(uint256)", - "inputValues": [ - "48420708108177856443123222644862532857390746786695606854692354379525674915483" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 59698, - "blockTimestampDelay": 331757 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000020000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x62e8fd3500000000000000000000000000000000000000000000000000000000000000124ab950c09e2414c3ec444389b5281e1bdfda8ecfec5392240af8d376f3781e4f", - "dataAbiValues": { - "methodSignature": "handleOnDisputeStatusChange(uint256,uint256)", - "inputValues": [ - "18", - "33798574834817402171861624718400176195923458571787846279113220864863863578191" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 41059, - "blockTimestampDelay": 386818 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000040000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x161c7318", - "dataAbiValues": { - "methodSignature": "test_debug()", - "inputValues": [] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 2290, - "blockTimestampDelay": 360593 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000050000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xb05752f700000000000000000000000000000000000000000000000014d1120d7b160000fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa0100ffffe666666666666666666666666666666666666666666666666666666666670000000000000000000000000000000000000000000000000000000000000001", - "dataAbiValues": { - "methodSignature": "handleOnSettleBondEscalation(uint256,uint256,uint256,uint256)", - "inputValues": [ - "1500000000000000000", - "115792089237316195423570985008687907853269984665640564039457584007913129246976", - "115791912552609717585138026678937833561418401917250876477561771847293000377959", - "1" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 35958, - "blockTimestampDelay": 189815 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000080000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xd1a556550000000000000000000000000000000000000000000000000000000000093a80", - "dataAbiValues": { - "methodSignature": "handleRevokeModule(uint256)", - "inputValues": [ - "604800" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 23866, - "blockTimestampDelay": 120766 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000040000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 2, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xf60285cafffffffffffffffffffffffffffffffffffffffffffffffffffffffffffb00001f6163d95156c50021d434e3914437a6419fd074db58aba632a1165e1049633a3bf295102083f98484e4163605f3f088673969b3a53bced8eb97b90d6679470f0000000000000000000000000000000000000000000000000000000000000014", - "dataAbiValues": { - "methodSignature": "handleBondWithSender(uint256,uint256,uint256,uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913129312256", - "14193771603127510897806160380156132720630156725507671248204049821265402880826", - "27115063851078188957254873925429362151386502274781693755807630999965205612303", - "20" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 14998, - "blockTimestampDelay": 528331 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000050000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x51b295e3fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc18", - "dataAbiValues": { - "methodSignature": "handleFinalize(uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913129638936" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 23876, - "blockTimestampDelay": 327680 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000060000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x2047c4493b1bb599e967df2247a0bde0e15c19a16d95520dbb9eb811b647dd1c5a50d970bda0d1adb4d017dcf6513d613392f361bfe0847acfbe5bbfd267240bef7125cd61ebaebab2bac3aa4819e2caf8f85c718565871747241e292cc36db91888e520d873b789d8f47c6606b2d5358f69133b1dd4937cee526c90ac095190af102de2", - "dataAbiValues": { - "methodSignature": "handlePay(uint256,uint256,uint256,uint256)", - "inputValues": [ - "26735416302702836720504774004574936090245153519362370366870156849631651223920", - "85771271060700958624081931951489906403580871476691194667860842730768850560461", - "44290761310036599938494988979380191776366734083697389368196279735913800066336", - "97904029442377240838501909618781928147909909174040210570358457032104622435810" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 54628, - "blockTimestampDelay": 362209 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000020000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x9f6259e57cf479b021a816743ff5b53a6f3e5c2c247b2adb9311a44237c3858abd44df0e0000000000000000000000000000000000000000000000000000000000127118", - "dataAbiValues": { - "methodSignature": "handleResolve(uint256,uint256)", - "inputValues": [ - "56518743767933985910260346386765678340564227438862784222762849925209918856974", - "1208600" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 35385, - "blockTimestampDelay": 50692 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000050000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 2, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x0fb55087fffffffffffffffffffffffffffffffffffffffffffffffffffffff400000000", - "dataAbiValues": { - "methodSignature": "handleApproveModule(uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007861590032384" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 1, - "blockTimestampDelay": 57134 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000050000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 3, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x5356b6811b3175568497fde3c31fe069ccc7985311b0506f3b43e70969ab59ea722d2599", - "dataAbiValues": { - "methodSignature": "handleAddEBORequestCreatorFinalityModule(uint256)", - "inputValues": [ - "12299832254764069471447641000592064088020729744720327828938364394997925356953" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 0, - "blockTimestampDelay": 0 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000050000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 4, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xa44b098ea6e532d597161bf414844541b5281607abc0fedcfbe19700823ca81bfeffd5da", - "dataAbiValues": { - "methodSignature": "handleSetArbitrator(uint256)", - "inputValues": [ - "75488891688353701349182521546099519030572206284453220585196006136091846366682" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 13249, - "blockTimestampDelay": 486500 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000090000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x727899ff000000000000000000000000000000000000000000000000000000000009688043d2cc6bee2c75afbb0a2d8e686ed8d850d35e4220dab9eaaad8c1f2bbd315eb000040ba1702262dc3924484fe5b466a7207d688c9429f8aaeb64c1acd0d86e1fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff70000", - "dataAbiValues": { - "methodSignature": "handlePledge(uint256,uint256,uint256,uint256)", - "inputValues": [ - "616576", - "30677409604733962472433633135176719636373390531562919397962760076773674915307", - "446728739341497667529209047101419397582060126024847855090499938302133985", - "115792089237316195423570985008687907853269984665640564039457584007913129050112" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 28736, - "blockTimestampDelay": 576650 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000040000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 3, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x52e3cb9cfffffffffffffffffffffffffffffffffffffffffffffffff90fa4a62c4e0000", - "dataAbiValues": { - "methodSignature": "handleSetMaxUsersToCheck(uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457084007913129639936" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 14857, - "blockTimestampDelay": 578411 - } -] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/call_sequences/immutable/1731277803593538000-d3487e2f-b5c3-4ba6-a4ad-bd45f3059e7b.json b/test/invariants/fuzz/corpus/call_sequences/immutable/1731277803593538000-d3487e2f-b5c3-4ba6-a4ad-bd45f3059e7b.json deleted file mode 100755 index 9d2093f..0000000 --- a/test/invariants/fuzz/corpus/call_sequences/immutable/1731277803593538000-d3487e2f-b5c3-4ba6-a4ad-bd45f3059e7b.json +++ /dev/null @@ -1,457 +0,0 @@ -[ - { - "call": { - "from": "0x0000000000000000000000000000000000030000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x13a8b8040000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000034000000000000000000000000000000000000000000000000000000000000000170000000000000000000000000000000000000000000000000000000000d2f000ffffc0000000000000000000000000000000000000000000000000000000000181dc31bc03ad9bc8a966de91dfc8c49b929f6d5fd44a9c22a7f5bb37cebfc106ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed8ee8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b825bc2cfc37067e378b4feef3f3411136744d0b2851c161c601669654cf27bfe6100000000000000000000000000000000000000000000000000000000000000006cd40d93882a844c2becf361c7579664aef7a6ef6e8b79d6bf6f6f76426e9b14039e696f94058cfd274de97421f65916ac135f4d55083d357b9c1f34820c9376000000000000000000000000000000000000000000000000000000000003fffe000000000000000000000000000000000000000000000000000000000000000167e6a528e0202cf23a36eacf513eee303475d3e4c983b2ae2d616b11c440f70a4ac07813439b9213b22d4d86340307a2982de60c241368ad288dfea742b6eb5efffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9686c2d73382b1edfa908bcaeb6b9ac0073f469887a9150c80831642e47e35a614c1bffffffffffffffffffffffffffffffffffffffffffffe48e5eb33a3a7f000000104a13a90c13653470268ea78892361e7e91e706d859aabaaf45ddd18c956640809a37cc7335cdf29b7d988dc8c05e2c1899ad1795364e6fa667088b49487472ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffee00b4fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b80756993dc4be6ecf1e46c48d6f9cae9255a8b46ef956a3d85442a5f41f70ecf93000000000000000000000000000000000000000000000000000000000076a700a77a4c48695a0407441e86efc633aee092d2ebd99c87fdfeebcd904fe33e086d000000000000000000000000000000000000000000000000000000000000001d563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd0633ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865a46715d7736dde0bcf6527392542031b42d0197ab2c1bb4c4d2d7abaed280007f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b4498bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef328d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad82082401f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade0554594d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae962914f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cbba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c33f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8fd276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f6617237058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf259a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe260d35d19771f7c1af646e114de36d19c25e3fc040b27be76073113bb33db17d5d19fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb", - "dataAbiValues": { - "methodSignature": "handleCreateRequests(uint256[],bytes32[])", - "inputValues": [ - [ - "13824000", - "115791647525550000827488589184312722123641027794666345134718053606362806484993", - "58737407075920930096693749632210245280794127876199190949253348332199714210054", - "115792089237316195423570985008687907853269984665640564039457584007913128431336", - "115792089237316195423570985008687907853269984665640564039457584007913129380738", - "41504671482165347584846103287222174319130579613222615088745194098566077611617", - "0", - "49224452924880417829398231270379785502530069722970149981823851608145893694228", - "1636828073493779560152621491074002847609709387720111137750911676859097584502", - "262142", - "1", - "46995738119123743123282428161140493004285235666026628953647859202250191730442", - "33811214160519685654400438720767591502827986970858420988841187408488311483230", - "115792089237316195423570985008687907853269984665640564039457584007913129207916", - "20557653259021005890251421269967042420225955023564768794272035576696478452763", - "115792089237316195423570985008687907853269984665640563909857584007913129639936", - "7367887950809164700104084563884591449786965425123545364576065505479275931200", - "58168524174645209900719041489934173752247098791866719219864340874379345294450", - "115792089237316195423570985008687907853269984665640564039457584007913128460468", - "115792089237316195423570985008687907853269984665640564039457584007913129380736", - "53107142721938561923251317745913031228477959801596843755970727929974933606291", - "7776000", - "75752327540241786815348607290604056680494387521335977257182003214564422715501" - ], - [ - "563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe", - "27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a", - "9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd06", - "33ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865", - "a46715d7736dde0bcf6527392542031b42d0197ab2c1bb4c4d2d7abaed280007", - "f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1", - "c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b44", - "98bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01", - "108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef32", - "8d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea", - "94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad8208240", - "1f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade05545", - "94d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056", - "cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae96291", - "4f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa", - "9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874", - "ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cb", - "ba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c3", - "3f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8f", - "d276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99", - "fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce", - "3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb", - "4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f661723", - "7058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78", - "994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25", - "9a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe26", - "0d35d19771f7c1af646e114de36d19c25e3fc040b27be76073113bb33db17d5d", - "19fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c", - "51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb" - ] - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 21265, - "blockTimestampDelay": 360627 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000080000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x51b295e3caac5b7c00ae43f0a0d2465bc3a827daefa6255afc3feafd105a01b058af4cc3", - "dataAbiValues": { - "methodSignature": "handleFinalize(uint256)", - "inputValues": [ - "91671724510984325847623981850838041499373483072178023597879983910219265559747" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 616, - "blockTimestampDelay": 245182 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000070000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x62e8fd357410315e284ca2250b236ba99041acd7e7626e3fc66727657ddcb75ed512355238b8e299444e7771cad3e9cc9efbc8237922a7b18f034d56199ddaad5f62f70c", - "dataAbiValues": { - "methodSignature": "handleOnDisputeStatusChange(uint256,uint256)", - "inputValues": [ - "52496900712745351460185096722717982602139275703227615313943886816707427317074", - "25656183307321870319256066529210878052151786525540532817103830451324188817164" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 0, - "blockTimestampDelay": 0 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000010000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x5cc02fa53b4e8ff8cbb94866d057a07c347e0cb79a079e6c49875d6adb448ca8b36b2f93", - "dataAbiValues": { - "methodSignature": "handleSetPendingCouncil(uint256)", - "inputValues": [ - "26825265794714411535119211388793422995701606456004679527746190657884506501011" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 22951, - "blockTimestampDelay": 222797 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000090000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x7aeb6faba969b1150e65eb039223322d37083c0f930e9f96e767cfaf888c1440b89042a7ffffffffffffffffffffffffffffffffffffffffffffffffffffffbe15000000", - "dataAbiValues": { - "methodSignature": "handleDisputeResponseBondEscalationModule(uint256,uint256)", - "inputValues": [ - "76627612529152310655938988775485703136714009850335653768166292952282670580391", - "115792089237316195423570985008687907853269984665640564039457584007630014119936" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 23866, - "blockTimestampDelay": 274647 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000030000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 2, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xf4fbbf9b0000000000000000000000000000000000000000000000000000000000000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed8b007c3160c01450d95568fbc7e3fe876965aa411c1bf13d7be2baabf28cedd3012f", - "dataAbiValues": { - "methodSignature": "handleBond(uint256,uint256,uint256)", - "inputValues": [ - "0", - "115792089237316195423570985008687907853269984665640564039457584007913128430336", - "56174036476597730143689219709059961134239333858317208755745576773703517274415" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 0, - "blockTimestampDelay": 404026 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000060000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x94ae6f8c0000000000000000000000000000000000000000000000000000000000000120", - "dataAbiValues": { - "methodSignature": "handleValidateArbitrator(uint256)", - "inputValues": [ - "288" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 28898, - "blockTimestampDelay": 360593 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000020000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x0692ea7e0000000000000000000000000000000000000000000000000000000000000100", - "dataAbiValues": { - "methodSignature": "handleRemoveChain(uint256)", - "inputValues": [ - "256" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 10120, - "blockTimestampDelay": 442746 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000030000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 3, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xb05752f77477db96404997c322ba9a11ba66d9f58fa471415b5c82afcf1965a16b52aa310000000000000000000000000000000000000000000000000000000000060000a3d04e821fd24d173d46c5c6591bac6f9d3ee4250e38f6752d158a2114dae86a7312ea15e2dc75c19cc06e815ad4c43b0e39987ce5ac5a5bac39cbb127f734e6", - "dataAbiValues": { - "methodSignature": "handleOnSettleBondEscalation(uint256,uint256,uint256,uint256)", - "inputValues": [ - "52680060769579736990081276342150508425883578818293859365287572298297987213873", - "393216", - "74095040352905635550053635482030730013005988265241047193937642446333545212010", - "52049396432936944477776417116733628414171704893437425841548460736384299644134" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 23866, - "blockTimestampDelay": 360369 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000020000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x9d2e6a6fb7ab9b804f5e3b07b64589457afe860d64ca8a1102a99dc3b01e9042b84b54c8", - "dataAbiValues": { - "methodSignature": "handleRemoveEBORequestCreatorRequestModule(uint256)", - "inputValues": [ - "83076455368730213982012688072579720945989878255995701383969604691644153287880" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 3912, - "blockTimestampDelay": 284189 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000050000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x13a8b80400000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000001dfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b820000000000000000000000000000000000000000000000000000000000000000ce675a74f87f83662332b39024ab66f66d3ad8159fb92d1081e73d8747ac44a2fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa0000f99ab80a56afb5cf2d406681086184fa568b2c59b23b9eed0fb97babbdd70dcb987572aba5f9d1eb2bdfd7db4a60daa53ab31e663abe9ea14abc72f369d5dae3d49d00025d7681398c1ac8e5b18d32589a9d3aee941f68217de08b573fb0ef22270657897cfb0e6dff27bde358d9cd33988862a59eafeb150f97e1fb0bd5db1eb09668549dc88efb456b69b806d30443b7484266af42ae24fadce2ada2bf2e00ffffffffffffffffffffffff8ef68f613056e57f9d900c6762970980a4e22ed300000000000000000000000000000000000000000000000000000000000100006558973ea0cf6ef065af511cdd91dcf8ebf51e410d0e710b8482f875357b01e5a82a9a69bb78fc7065db036b90eebef2590e8a9797d50a66dfb4ab86433720e10000000000000000000000000000000000000000000000000000000000002700fffffffffffffffffffffffffffffffffffffffffffffffff90fa4a62c4e00000000000000000000000000000000000000000000000000000000000000010000688ad2bfdd1982f027350b11d5a66e4eb674020afc643610b6411864c705684cbaab39a71efe2422fd2229cf398d057b9b06ccfbe74bc3a4994ba9deed6f93052af9415df05e3b4e4bb3efd2328b1fac61e86adbbb1f32d9fe4d9fa96ef608ab9d48454c637331b80fc8bdfe0b16c68d224ae00eca2bc8b6b5b82eeb5dbb05bdffffffffffffffffffffffff8ef68f613056e57f9d900c6762970980a4e22ed3aaa89e9ec9968c5d9717eac26037a4e7abb9cc9d43af24edb06275ca7126a4c8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff2d0f6000000000000000000000000000000000000000000000000000000000009000056db5811b60eafc5a06420c40941879ca1aae8ba576dbb8f9dd9cbe1e4e187fb14c4c80ff0fa9624d2a9e63be6e238aa088864d7cd2780d36bc6dee000c42d1b000000000000000000000000000000000000000000000000000000000003f48058825231460c027d950a84d667bec6ad5f4731e0cfaef9f9b65d7008ad39ff50fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa0000000000000000000000000000000000000000000000000000000000000029f87ffe759d510e1c1d646f2c46946d2e09cce6ece48d285eecbab28b6da0aaafbe4233335f0868c51a18ff4b577aba2300ff0e1110fe6ebcf65aab5b22a0cd7af45a3243de6773b2ac820589df08ee53500a017476ffbb1bc4ceb09189a3a8688430464e8052902c1bf8131a3b65b1b8579578c0674f6b54e6508ebe3e773f92f62a3923b7d048bd00e06c64c9764f411dd42925c5a3bc087d2acf2dd45670afee5922c58e2ab2a48008017cf695319fc8f68540c785800cac4fb40071265bc6c57dd1da3996638b1d193cb3f0de7290b528e8c2553b44fdb00bd2f7afeb507f780ecfa7e55b67e34060e5a3ab3fc7c2fd6270fb027a69d0e3430e553adf6819c8dbcc8fe9ee062b2c79b12ff5516725f8025598c75085e7022536add4c3462e067f6eb57330f4a2635836735eb4e0053c2a02ad8f30b1ebb63d99a2cd2153db645c350fe8e5c04c29094fa388abef6a8faa96395cb0ff0901d9a9031f7631b22558fb38048fa6c225997c825a3070205c6bcc28d8335499c58531230e56b3a4aec270fc970dd1c77c0c5296114545b189f9c61f42ccea793f3b2f3b6c3b46fd6fb449fc87916235c006bf56db0c5c21f31410623781ece548911499cc23d8ac091676bc100d89c7174c55fa0bd83529b7e4cd0d2fb4476413f61972f0f860f6c403befbb5f69d0e304161de4e70ca3042a1d04835a72006a53c3175c5109baf4182d0da9a3e83b98e43af1ad858e630be26febe27f2c8a4f67eec52f53b0d005a92a11a1dd559351c3b253a1d1a70c23193b67441c058e70e67ac3f8ac4aee50ed009392925b73b400df2177c6a10fe1f591984b99794e9156c3bd0b4a2ed7517c12532c97966b24ef7deb1cf9e6cf37ab8f578cfd25cc9f82f16474fe7e1bde4298cc60088e914f35d7d5a66ef30363aca7be4e251f53e2f64b81e00b44a4f3ed31e5f1f4a517d25b06946975a9d79df88cf56c616ae4c81922660d533aa9317d842f948b3d2a5cab98f377cd1b719e1be52bfb774c70bd5ed589e3a4bff539f55e90e58abc8536ecc396cd34b566e938f0f4864fe1d6ff24fb8e3e3ab1b4c42b42c06700cd46a831b567bbdea115be603b7703579c8280ed0e5d4f20a9e510271e5bb61a194d5b0b205124c05d8991782e8e73158b0fd60717823b82eb7b4dd90cf778f8607913cad2914c4dfe829100903d1830199c1fbf569d6e37e2adb5d073c66fd3991eb8187063de6745dcedadabd41f6a70c7b2bc8e61d100de94b032f6d262a2e7a314c8a07740f33d9c56d018c1e78418ac315f32e91eed3eacbcded8e609c83aef09642cbfb3b717abe19c73fd5e49e008e320b3ee4ccaed6c353284dc811b9981746d05d363d35325d6f5e61340a544bf9b32b7b6cec1644b91e0b92085ff64c8d92b30f5ad1033570b6077b8bc2bb7a44a70045644d7bccb31cd1d59dc43541430d346d2a743381036d2f2e2a7a59e07c0c65de024350786615d3e7aa2c597a5d7e035e9d109e65d7d4badc94bc4bd2e55e3bc724b748e74a0fcacb73a2a9ee52f36347a5ae6072f300d6fd2f62bf08605016a6931767f353ac73babce9625b51569ab81df833bee00d3ff2bbb3badef2878a170d7d7109f33ab0f46bc96f4fc89ca727c7d8bc4282604b5bf3bbf0eea2bab4f7798601d86277e09f88645c1d56a4cae35b59d720e8b57f7e4abc5ea43a53526265c5cc4dedc5b72f127134d3d97a31a652f905f82ee74953598bf2a05f52dd89152ca9400523884d909d0469c6a966a2d841f4f01b74e98660ea5a28534174638ba83bf16343fcc653aaed6743963ad798004516fca1ba790701142e7b44788e2b9a4c6744", - "dataAbiValues": { - "methodSignature": "handleCreateRequests(uint256[],bytes32[])", - "inputValues": [ - [ - "115792089237316195423570985008687907853269984665640564039457584007913129380738", - "0", - "93359056366519978384575301215212766084552195127475241400321367131381031519394", - "115792089237316195423570985008687907853269984665640564039457584007913129246720", - "112899263945265618091091185689767054075036928377626216345331905228274830609867", - "68959065517949274316588826283101587750558165013430347817640346533866916666083", - "96167718952585367175045237006581483249627268288674080939511722496406722768674", - "17651406335742926396690394648438989354403684618877496125906122976087978138398", - "79872808473243763044716704952744950461935635665535412421360192734135943376384", - "115792089237316195423570985008042581378843437462327153970303678099387767205587", - "65536", - "45840124100760761585173752354748948632868900822901326367871013022630665716197", - "76063831858184420518861268628451249077285698597102935859033978034718219116769", - "9984", - "115792089237316195423570985008687907853269984665640564039457084007913129639936", - "65536", - "47285815686966272144121693505188799597744533049049783177959832040536684193868", - "84432718589681428792934245815119003114976466487051385221334973405702499832581", - "19437535705728302099767088929537200823274258212636994203273729259332963797163", - "71140808496164046925239908329887697304458696034799907436633500076327881606589", - "115792089237316195423570985008042581378843437462327153970303678099387767205587", - "77191109322862123514795600886680155988643876662484090273820952307332291142856", - "115792089237316195423570985008687907853269984665640564039457584007913128775926", - "589824", - "39286452316517865283766389032392547299789935223147165990478078739011264940027", - "9393939775408484523215953034946785494006122941999182174070733730995117501723", - "259200", - "40033788065363256588949523368348146912228695325379481069044606228254426791760", - "115792089237316195423570985008687907853269984665640564039457584007913129639930" - ], - [ - "f87ffe759d510e1c1d646f2c46946d2e09cce6ece48d285eecbab28b6da0aaaf", - "be4233335f0868c51a18ff4b577aba2300ff0e1110fe6ebcf65aab5b22a0cd7a", - "f45a3243de6773b2ac820589df08ee53500a017476ffbb1bc4ceb09189a3a868", - "8430464e8052902c1bf8131a3b65b1b8579578c0674f6b54e6508ebe3e773f92", - "f62a3923b7d048bd00e06c64c9764f411dd42925c5a3bc087d2acf2dd45670af", - "ee5922c58e2ab2a48008017cf695319fc8f68540c785800cac4fb40071265bc6", - "c57dd1da3996638b1d193cb3f0de7290b528e8c2553b44fdb00bd2f7afeb507f", - "780ecfa7e55b67e34060e5a3ab3fc7c2fd6270fb027a69d0e3430e553adf6819", - "c8dbcc8fe9ee062b2c79b12ff5516725f8025598c75085e7022536add4c3462e", - "067f6eb57330f4a2635836735eb4e0053c2a02ad8f30b1ebb63d99a2cd2153db", - "645c350fe8e5c04c29094fa388abef6a8faa96395cb0ff0901d9a9031f7631b2", - "2558fb38048fa6c225997c825a3070205c6bcc28d8335499c58531230e56b3a4", - "aec270fc970dd1c77c0c5296114545b189f9c61f42ccea793f3b2f3b6c3b46fd", - "6fb449fc87916235c006bf56db0c5c21f31410623781ece548911499cc23d8ac", - "091676bc100d89c7174c55fa0bd83529b7e4cd0d2fb4476413f61972f0f860f6", - "c403befbb5f69d0e304161de4e70ca3042a1d04835a72006a53c3175c5109baf", - "4182d0da9a3e83b98e43af1ad858e630be26febe27f2c8a4f67eec52f53b0d00", - "5a92a11a1dd559351c3b253a1d1a70c23193b67441c058e70e67ac3f8ac4aee5", - "0ed009392925b73b400df2177c6a10fe1f591984b99794e9156c3bd0b4a2ed75", - "17c12532c97966b24ef7deb1cf9e6cf37ab8f578cfd25cc9f82f16474fe7e1bd", - "e4298cc60088e914f35d7d5a66ef30363aca7be4e251f53e2f64b81e00b44a4f", - "3ed31e5f1f4a517d25b06946975a9d79df88cf56c616ae4c81922660d533aa93", - "17d842f948b3d2a5cab98f377cd1b719e1be52bfb774c70bd5ed589e3a4bff53", - "9f55e90e58abc8536ecc396cd34b566e938f0f4864fe1d6ff24fb8e3e3ab1b4c", - "42b42c06700cd46a831b567bbdea115be603b7703579c8280ed0e5d4f20a9e51", - "0271e5bb61a194d5b0b205124c05d8991782e8e73158b0fd60717823b82eb7b4", - "dd90cf778f8607913cad2914c4dfe829100903d1830199c1fbf569d6e37e2adb", - "5d073c66fd3991eb8187063de6745dcedadabd41f6a70c7b2bc8e61d100de94b", - "032f6d262a2e7a314c8a07740f33d9c56d018c1e78418ac315f32e91eed3eacb", - "cded8e609c83aef09642cbfb3b717abe19c73fd5e49e008e320b3ee4ccaed6c3", - "53284dc811b9981746d05d363d35325d6f5e61340a544bf9b32b7b6cec1644b9", - "1e0b92085ff64c8d92b30f5ad1033570b6077b8bc2bb7a44a70045644d7bccb3", - "1cd1d59dc43541430d346d2a743381036d2f2e2a7a59e07c0c65de0243507866", - "15d3e7aa2c597a5d7e035e9d109e65d7d4badc94bc4bd2e55e3bc724b748e74a", - "0fcacb73a2a9ee52f36347a5ae6072f300d6fd2f62bf08605016a6931767f353", - "ac73babce9625b51569ab81df833bee00d3ff2bbb3badef2878a170d7d7109f3", - "3ab0f46bc96f4fc89ca727c7d8bc4282604b5bf3bbf0eea2bab4f7798601d862", - "77e09f88645c1d56a4cae35b59d720e8b57f7e4abc5ea43a53526265c5cc4ded", - "c5b72f127134d3d97a31a652f905f82ee74953598bf2a05f52dd89152ca94005", - "23884d909d0469c6a966a2d841f4f01b74e98660ea5a28534174638ba83bf163", - "43fcc653aaed6743963ad798004516fca1ba790701142e7b44788e2b9a4c6744" - ] - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 18813, - "blockTimestampDelay": 166386 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000050000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xb6c75efa21e47192f11d3f380576fd394ec9e1b4eb90a89bceb9b651bba78bf6ab564d9dfffffffffffffffffffffffffffffffffffffffffffffffff90fa4a62c4d00002c95da414ee489142bbc6e001fef7a12692a3b9d1210170c80e8d07cec96b7c5", - "dataAbiValues": { - "methodSignature": "handleClaimEscalationReward(uint256,uint256,uint256)", - "inputValues": [ - "15329948992898956970077422041464151575333773433396765238718102692294303305117", - "115792089237316195423570985008687907853269984665640564039457084007913129574400", - "20166531891724206848272694213144022190042376042953875838430089970096862050245" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 7764, - "blockTimestampDelay": 145528 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000090000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x161c7318", - "dataAbiValues": { - "methodSignature": "test_debug()", - "inputValues": [] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 15165, - "blockTimestampDelay": 79666 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000050000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 2, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x94c9ca03", - "dataAbiValues": { - "methodSignature": "handleConfirmCouncil()", - "inputValues": [] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 18, - "blockTimestampDelay": 12967 - } -] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/call_sequences/immutable/1731277803599728000-87a8141e-a121-46dc-a00f-776de71bb0b1.json b/test/invariants/fuzz/corpus/call_sequences/immutable/1731277803599728000-87a8141e-a121-46dc-a00f-776de71bb0b1.json deleted file mode 100755 index 3c59287..0000000 --- a/test/invariants/fuzz/corpus/call_sequences/immutable/1731277803599728000-87a8141e-a121-46dc-a00f-776de71bb0b1.json +++ /dev/null @@ -1,502 +0,0 @@ -[ - { - "call": { - "from": "0x0000000000000000000000000000000000030000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x13a8b8040000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000034000000000000000000000000000000000000000000000000000000000000000170000000000000000000000000000000000000000000000000000000000d2f000ffffc0000000000000000000000000000000000000000000000000000000000181dc31bc03ad9bc8a966de91dfc8c49b929f6d5fd44a9c22a7f5bb37cebfc106000000000000000000000000000000000000000000007ff72b2c19616ab00000e645df196666f5e4e940c577b9670b086db2c746878e45aae0dbee6c63a0e6a35bc2cfc37067e378b4feef3f3411136744d0b2851c161c601669654cf27bfe6100000000000000000000000000000000000000000000000000000000000000006cd40d93882a844c2becf361c7579664aef7a6ef6e8b79d6bf6f6f76426e9b14039e696f94058cfd274de97421f65916ac135f4d55083d357b9c1f34820c9376000000000000000000000000000000000000000000000000000000000003fffe000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000004ac07813439b9213b22d4d86340307a2982de60c241368ad288dfea742b6eb5efffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9686c2d73382b1edfa908bcaeb6b9ac0073f469887a9150c80831642e47e35a614c1bffffffffffffffffffffffffffffffffffffffffffffe48e5eb33a3a7f000000104a13a90c13653470268ea78892361e7e91e706d859aabaaf45ddd18c956640809a37cc7335cdf29b7d988dc8c05e2c1899ad1795364e6fa667088b49487472000000000000000000000000000000000000000000000000000000000000fff6fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b80756993dc4be6ecf1e46c48d6f9cae9255a8b46ef956a3d85442a5f41f70ecf93000000000000000000000000000000000000000000000000000000000076a700a77a4c48695a0407441e86efc633aee092d2ebd99c87fdfeebcd904fe33e086d000000000000000000000000000000000000000000000000000000000000001d563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd0633ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed6958658aad3329b56f2f98187bbaed7351982ae06a00b9382adcb723b8b393d1f5e2def8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b4498bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a0171bc7dd16f0e277b94f2e46980d7e8e6c3c5187bf68be378e2d72cd0e70293ef8d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad82082401f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade0554594d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae962914f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874465e592f6d3f1d78fbc619b878d95794035829bd9b1285f3eb021d72f8e45638ba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c33f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8fd276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a9925e5ea45a807ae40eb654d82982bacb30bb1da6060d308d0b63004f4e1926b0c3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f6617237058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf259a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe2665f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a219fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb", - "dataAbiValues": { - "methodSignature": "handleCreateRequests(uint256[],bytes32[])", - "inputValues": [ - [ - "13824000", - "115791647525550000827488589184312722123641027794666345134718053606362806484993", - "58737407075920930096693749632210245280794127876199190949253348332199714210054", - "604300000000000000000000", - "104155407395839188072220307346509508179171066778602859964492537460856123877027", - "41504671482165347584846103287222174319130579613222615088745194098566077611617", - "0", - "49224452924880417829398231270379785502530069722970149981823851608145893694228", - "1636828073493779560152621491074002847609709387720111137750911676859097584502", - "262142", - "1", - "0", - "33811214160519685654400438720767591502827986970858420988841187408488311483230", - "115792089237316195423570985008687907853269984665640564039457584007913129207916", - "20557653259021005890251421269967042420225955023564768794272035576696478452763", - "115792089237316195423570985008687907853269984665640563909857584007913129639936", - "7367887950809164700104084563884591449786965425123545364576065505479275931200", - "58168524174645209900719041489934173752247098791866719219864340874379345294450", - "65526", - "115792089237316195423570985008687907853269984665640564039457584007913129380736", - "53107142721938561923251317745913031228477959801596843755970727929974933606291", - "7776000", - "75752327540241786815348607290604056680494387521335977257182003214564422715501" - ], - [ - "563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe", - "27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a", - "9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd06", - "33ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865", - "8aad3329b56f2f98187bbaed7351982ae06a00b9382adcb723b8b393d1f5e2de", - "f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1", - "c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b44", - "98bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01", - "71bc7dd16f0e277b94f2e46980d7e8e6c3c5187bf68be378e2d72cd0e70293ef", - "8d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea", - "94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad8208240", - "1f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade05545", - "94d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056", - "cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae96291", - "4f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa", - "9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874", - "465e592f6d3f1d78fbc619b878d95794035829bd9b1285f3eb021d72f8e45638", - "ba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c3", - "3f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8f", - "d276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99", - "25e5ea45a807ae40eb654d82982bacb30bb1da6060d308d0b63004f4e1926b0c", - "3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb", - "4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f661723", - "7058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78", - "994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25", - "9a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe26", - "65f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a2", - "19fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c", - "51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb" - ] - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 21265, - "blockTimestampDelay": 360627 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000030000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 2, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x0692ea7eeaaa73118d1da2c1db95511517ab896f87445c2331029aecdc7f065f634e6b46", - "dataAbiValues": { - "methodSignature": "handleRemoveChain(uint256)", - "inputValues": [ - "106142364743506859045918558596602602319943607038906547683486076996802461985606" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 2001, - "blockTimestampDelay": 455470 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000090000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x864e2da9fffffffffffffffffffffffffffffffffffffffffffffffff90fa4a62c573a80b81e8d97661fbf779db19fd00793e39f3b40bca612ee408ab75ff1c6439cf047509736e50626b1084ee93f4294000f73db102927cdc7fc34de68c384da900e6c", - "dataAbiValues": { - "methodSignature": "handleArbitrateDispute(uint256,uint256,uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457084007913130244736", - "83279546779206125286340055887058748934887896216240549764862301155730028032071", - "36452200662221151095065482565067302916782446267779931962683895890335455252076" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 41956, - "blockTimestampDelay": 475112 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000090000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xb6c75efaab191ad64d8fba3d052ab8ef37a088ba9faf5a1be696a47310de3441525ef897fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe3aaae444ec5312714f03b0566d2b40e5d34f58f068cabf3625fc0d7cfe3db912", - "dataAbiValues": { - "methodSignature": "handleClaimEscalationReward(uint256,uint256,uint256)", - "inputValues": [ - "77389853507359787864882669351213362161735184606551274462865365263877886900375", - "115792089237316195423570985008687907853269984665640564039457584007913129639934", - "26536084675173092165947634556752584404681954305155475174391110206140234709266" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 18699, - "blockTimestampDelay": 240561 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000030000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 3, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xf84d6dfcd2d78e343e1607b919341e2fe248544a49a0028fbd677a717f6a437862ddbc00", - "dataAbiValues": { - "methodSignature": "handleAddEBORequestCreatorRequestModule(uint256)", - "inputValues": [ - "95366551777850189910113500849756061153261920552639335948298155642211775921152" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 16776, - "blockTimestampDelay": 165634 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000060000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x0fb55087cd27e66c1a6365fdd2d452e5a6a582655000c0811d209ba0499f4483caf4b2da", - "dataAbiValues": { - "methodSignature": "handleApproveModule(uint256)", - "inputValues": [ - "92794631311208978202520326772644046682922248037671286389514014341863059010266" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 6256, - "blockTimestampDelay": 488143 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000060000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xaa1a5bd9128a1b5b9d7d3061f14bea63c8830170dadc5f154b01425336f91cc6d8611588ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00", - "dataAbiValues": { - "methodSignature": "handleResolveDispute(uint256,uint256)", - "inputValues": [ - "8385644986530251641334144830118419649455771804161689778824132977763480049032", - "115792089237316195423570985008687907853269984665640564039457584007913129639680" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 35699, - "blockTimestampDelay": 65536 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000020000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x51b295e30000000000000000000000000000000000000000000000000de0b6b3a7640000", - "dataAbiValues": { - "methodSignature": "handleFinalize(uint256)", - "inputValues": [ - "1000000000000000000" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 41252, - "blockTimestampDelay": 375602 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000020000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xf60285caff44fb6a2363fac767b088aff222c3143f1ed041c9b3e47d6474ee4922e1979fec9d178675775c3aa5161a5a209a68597466d991483528cc71c8d6ac533d0955a137b7e6f635f28c37dc46d14755f62f1ce7b659dc1873b04e1744e54dc225b665dad307139d75a132cdb60e373e4b35bba44673f5ee3d0bfbf1ac491c3d0e75", - "dataAbiValues": { - "methodSignature": "handleBondWithSender(uint256,uint256,uint256,uint256)", - "inputValues": [ - "115461657188952309751477762153544746327107707569543270374831352475679717431199", - "107023389619990543669223297468939824753654796115418022982959364890624175966549", - "72920814456766912229072746410044959713398794893085675262607692768311068730806", - "46070226826296101107756227560930518318774961046515756120293728876851585945205" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 39447, - "blockTimestampDelay": 175903 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000040000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xa59d317d37645351a8f36eba3b366024eafac86b09ad5a52e0d3cf42eb52112344ab3206000000000000000000000000d12fb9f7a711eb0caf6aac68aeaf04277804b39e000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000000000000000000000000000000000000003200000fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffb00000b2104824bc90dc4bcf1e407a769278e1c443fdba6cf324b44962e4fea636424", - "dataAbiValues": { - "methodSignature": "handleSetResponseModuleData(uint256,(address,address,uint256,uint256,uint256))", - "inputValues": [ - "25054466425052560783839884851311066245042877293899029878022208182382616064518", - { - "accountingExtension": "0xd12fb9f7A711Eb0caF6aaC68AEaF04277804B39e", - "bondSize": "52428800", - "bondToken": "0x000000000000000000000000000000000000000A", - "deadline": "115792089237316195423570985008687907853269984665640564039457584007913129312256", - "disputeWindow": "5033778407313201451107747851099848118306043382601391308246767880599192691748" - } - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 26656, - "blockTimestampDelay": 604799 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000040000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x0692ea7efffffffffffffffffffffffffffffffffffffffffffffffffbd62f96e74f8b00", - "dataAbiValues": { - "methodSignature": "handleRemoveChain(uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457284007913128430336" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 56799, - "blockTimestampDelay": 262144 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000020000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 2, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x4741f6dcfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd0000", - "dataAbiValues": { - "methodSignature": "handleSetFinalityModuleData(uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913129443328" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 23786, - "blockTimestampDelay": 327680 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000050000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x13a8b804000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000e00000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000d2f0087104a1ac49782a4e16877da31b055635722ebf513f4c9d4971ee8ba22ecc4a6eec651143a3c6f38d013752a6418c6f09e02c569047e21b1821746f674b34b1c0000000000000000000000000000000000000000000000000000000000000036fa4a08dc093aad94a53150a69958ea5701d0cdfc0457647f4a00851f2b3ffa4ffd8a6288227c780955edaf8b4dede4dd79b2d6a1b9670dc32f84033dbf8be3094a3581399d5766a955990785635f7387f42bc3ac7aefc687d70bedd0207993bc4c485bed03b3790844630b99699bb40f5069c1d8403298cdfda2575a3317f64ae11593ffb0ec0927fe5913230c741395327603a0cb862e6b83dfda2f6220ae47cc515c273c51f6f72596a67c49bd9c8c601629067e48532c86a5ec436da6c5d4a086dd03f412f823cb3b33845d313ed20d3eb30a8c1738fe538f8ce08dda6bc903393b682ce82af7ad546cbd6f5e6b633403a16c9539778326f27093154073c189ff0c2a9bf1d9e0c1340059cb502459adc6848943173465070dbc70f56c9773a380843bf072ee4ebcdaa6db9c9b1bcdd7accd8376418847fe049b50be079824e34e17ba796d22717b906c8ae168c515652b146e98f67ff81a17d32cfbb3a45d70b80d8aebc1f699d448d6bb373046a46055cea8663f1e133e3b318bd3bbf341831782f5c84d3a2e123ae7cf9de566a9e5958314dac1f2f943af76cc5a4ed5d61bb435d28f2bc87a2c6a8b92b314537495d986c635f3f24b0c89bb8431fd15da1f20ecad2204c5f2c899891deee290ce478f20d080be1f01b0631cfde6d77c174a0451dff325ceca911fe96cc8e506f589259f7ae6d81a6562ad17da5ac2668afb4dfae5387e68f8f182b4cd18e2d04b3d23801beadb0e540b89182a8ef12544bf301a4ed791f0937f2169890e091a55113e6f5869333627389cfa9013231650d5b1193bc5c6faf12c4caedc4c1de1a155f1caac4b1b386f2c9fb59c0edddb79370ea902ef6cdf5724565bfb35d2d999e5b8ae7d2997c94e3ce7b6bfc8698850f5bea6ed28d2670ed0bc72485811f4579eee682784c336392515b9f38b305760c5f2a08ab4ab5c4e4dc94bfd7fe5a3c37df0d10561d5eee3109a165aa8d09aee107d8bc0847badc5833e23b36da204e51497d3f1716162337b2ca72a6d9b0df65af932d7fe5768c3a7a91282332e7768f46e57727280521bd0e3c9f183fa04f1c0e3d82bf7ea3b756ba92372a93cb61e730e2e59814916b3e92ea0d14277077195c6e7500b9f864c7baa380be57ffd71a995ea5594800861a797da989e5e145ccb01db898f989f4c6fde7d34bf056442d3839d229d6e8c8fd581525acabfa32dfd933d425b58fea110c87b5d18bd00fffbffa00d873198e501a825357e75a85912832c0f7dc92f5825797c2460c978f3e875aea0a979c0a4060871bbd79a9babf07212d556a72bb84496ad42f34884efeed068bfad56613cf714bca57b67944ed964fa024cbdc39fe0848bdeb5c884858a5ac18070bc1e4c0329f2d89fcaadcfdab6ef8a1532af54954a15ea5e23ce45325d9f98f0e3fb86d60b7a0397d2453942930b89e474cdda078d4d62f83b306800b744f407abb12457ab2002a4c1babaebbacd167f44ae7a2bcba0576b2bba82a9e92a2177c482c7e3607c94e731f1a05d19d027153f2b2e5e5fa02b5887eadf045f884b7410bc1af1eb756ae71476a0623a5c27fbd454617541c911c1ca7f76e1017369953940959affc0126bd3ec9ee985c1ac0733a0d152dc33ad991a56c05ed402b56772c434095bf2c563875bd1ef4f339a0116feea24de95ead8342f2cc38eb2eb85b85c3ecbb25e77ae77cbbeb5b4bbc22e5b5bae35469b6565c089be978e383bca0d9ea2bdf66b2c2022976a424700038eb0dd496185b4406b017eb667af2336bd343a6518cdb282ed1f4ad156a51a420357c104c259ffefcc61717fc2d33bbac669fd340b62448e7b1ff79817d2faacc25d75413c7765d42904380717b7dfba97b043ecf6e68448d74c814a84fcec4b8e91924a2d84756257a3f7b5be9993390cb0d83ea216c344cd01747e580a018abe2b78ff31d78a0376939df219b6e4348501b5cd4005a711a4cf2585665816a7e23ad88e6fce9816231f577a8a4cc99f0fb7042243727ff97dfb91a943382ca90c2df1ad395083a12f7234582ea05fb002ebe876e39b32b192b8ada3a742f234ac609ba886fe26fc693ae013386f1b8b4d4b3c0fca228fbbd7af483f28f0a6a1363b275abecc85f2bee9d3c5c82a69692d9e81a977c050c94a09db9ac1ec9c86f3a6e0085d60e0d08cd2f8711d90b4066d0b5dfa922675d11a734712b53ba0ccab9ab7a8fe313144d531d11397926ca47601f444c6e995d8c7bfe71bac0249f67ef196e0656ff7e065d21224aea23f74592d0df86b3869e0a08de6c436ae57b76cc6821c11d16b120219ecb3e66724bb9b913be1da889b5d3900926e267b2beaeca176baaa9f8c82b8d74a308a307751320c46e850a5eaea83c5acccf639b783f5606cebaf54d8c04499037c3ab777163747416a6910cb0352002b67", - "dataAbiValues": { - "methodSignature": "handleCreateRequests(uint256[],bytes32[])", - "inputValues": [ - [ - "2", - "864000", - "61091015562669229328302511622207838274133483677802899134756790701318101320870", - "108000853268429518120666974822971079545728317287326968663692222929051051051804" - ], - [ - "fa4a08dc093aad94a53150a69958ea5701d0cdfc0457647f4a00851f2b3ffa4f", - "fd8a6288227c780955edaf8b4dede4dd79b2d6a1b9670dc32f84033dbf8be309", - "4a3581399d5766a955990785635f7387f42bc3ac7aefc687d70bedd0207993bc", - "4c485bed03b3790844630b99699bb40f5069c1d8403298cdfda2575a3317f64a", - "e11593ffb0ec0927fe5913230c741395327603a0cb862e6b83dfda2f6220ae47", - "cc515c273c51f6f72596a67c49bd9c8c601629067e48532c86a5ec436da6c5d4", - "a086dd03f412f823cb3b33845d313ed20d3eb30a8c1738fe538f8ce08dda6bc9", - "03393b682ce82af7ad546cbd6f5e6b633403a16c9539778326f27093154073c1", - "89ff0c2a9bf1d9e0c1340059cb502459adc6848943173465070dbc70f56c9773", - "a380843bf072ee4ebcdaa6db9c9b1bcdd7accd8376418847fe049b50be079824", - "e34e17ba796d22717b906c8ae168c515652b146e98f67ff81a17d32cfbb3a45d", - "70b80d8aebc1f699d448d6bb373046a46055cea8663f1e133e3b318bd3bbf341", - "831782f5c84d3a2e123ae7cf9de566a9e5958314dac1f2f943af76cc5a4ed5d6", - "1bb435d28f2bc87a2c6a8b92b314537495d986c635f3f24b0c89bb8431fd15da", - "1f20ecad2204c5f2c899891deee290ce478f20d080be1f01b0631cfde6d77c17", - "4a0451dff325ceca911fe96cc8e506f589259f7ae6d81a6562ad17da5ac2668a", - "fb4dfae5387e68f8f182b4cd18e2d04b3d23801beadb0e540b89182a8ef12544", - "bf301a4ed791f0937f2169890e091a55113e6f5869333627389cfa9013231650", - "d5b1193bc5c6faf12c4caedc4c1de1a155f1caac4b1b386f2c9fb59c0edddb79", - "370ea902ef6cdf5724565bfb35d2d999e5b8ae7d2997c94e3ce7b6bfc8698850", - "f5bea6ed28d2670ed0bc72485811f4579eee682784c336392515b9f38b305760", - "c5f2a08ab4ab5c4e4dc94bfd7fe5a3c37df0d10561d5eee3109a165aa8d09aee", - "107d8bc0847badc5833e23b36da204e51497d3f1716162337b2ca72a6d9b0df6", - "5af932d7fe5768c3a7a91282332e7768f46e57727280521bd0e3c9f183fa04f1", - "c0e3d82bf7ea3b756ba92372a93cb61e730e2e59814916b3e92ea0d142770771", - "95c6e7500b9f864c7baa380be57ffd71a995ea5594800861a797da989e5e145c", - "cb01db898f989f4c6fde7d34bf056442d3839d229d6e8c8fd581525acabfa32d", - "fd933d425b58fea110c87b5d18bd00fffbffa00d873198e501a825357e75a859", - "12832c0f7dc92f5825797c2460c978f3e875aea0a979c0a4060871bbd79a9bab", - "f07212d556a72bb84496ad42f34884efeed068bfad56613cf714bca57b67944e", - "d964fa024cbdc39fe0848bdeb5c884858a5ac18070bc1e4c0329f2d89fcaadcf", - "dab6ef8a1532af54954a15ea5e23ce45325d9f98f0e3fb86d60b7a0397d24539", - "42930b89e474cdda078d4d62f83b306800b744f407abb12457ab2002a4c1baba", - "ebbacd167f44ae7a2bcba0576b2bba82a9e92a2177c482c7e3607c94e731f1a0", - "5d19d027153f2b2e5e5fa02b5887eadf045f884b7410bc1af1eb756ae71476a0", - "623a5c27fbd454617541c911c1ca7f76e1017369953940959affc0126bd3ec9e", - "e985c1ac0733a0d152dc33ad991a56c05ed402b56772c434095bf2c563875bd1", - "ef4f339a0116feea24de95ead8342f2cc38eb2eb85b85c3ecbb25e77ae77cbbe", - "b5b4bbc22e5b5bae35469b6565c089be978e383bca0d9ea2bdf66b2c2022976a", - "424700038eb0dd496185b4406b017eb667af2336bd343a6518cdb282ed1f4ad1", - "56a51a420357c104c259ffefcc61717fc2d33bbac669fd340b62448e7b1ff798", - "17d2faacc25d75413c7765d42904380717b7dfba97b043ecf6e68448d74c814a", - "84fcec4b8e91924a2d84756257a3f7b5be9993390cb0d83ea216c344cd01747e", - "580a018abe2b78ff31d78a0376939df219b6e4348501b5cd4005a711a4cf2585", - "665816a7e23ad88e6fce9816231f577a8a4cc99f0fb7042243727ff97dfb91a9", - "43382ca90c2df1ad395083a12f7234582ea05fb002ebe876e39b32b192b8ada3", - "a742f234ac609ba886fe26fc693ae013386f1b8b4d4b3c0fca228fbbd7af483f", - "28f0a6a1363b275abecc85f2bee9d3c5c82a69692d9e81a977c050c94a09db9a", - "c1ec9c86f3a6e0085d60e0d08cd2f8711d90b4066d0b5dfa922675d11a734712", - "b53ba0ccab9ab7a8fe313144d531d11397926ca47601f444c6e995d8c7bfe71b", - "ac0249f67ef196e0656ff7e065d21224aea23f74592d0df86b3869e0a08de6c4", - "36ae57b76cc6821c11d16b120219ecb3e66724bb9b913be1da889b5d3900926e", - "267b2beaeca176baaa9f8c82b8d74a308a307751320c46e850a5eaea83c5accc", - "f639b783f5606cebaf54d8c04499037c3ab777163747416a6910cb0352002b67" - ] - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 40713, - "blockTimestampDelay": 288890 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000040000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 2, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x51b295e3bb1a2084cb159fd6a10d243726c06ecc2c061e64fa5637a4e1e36ecd536af41a", - "dataAbiValues": { - "methodSignature": "handleFinalize(uint256)", - "inputValues": [ - "84628665144738400938347255498120459236162163404711567437113231227400449881114" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 40461, - "blockTimestampDelay": 86400 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000010000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x51b295e35136d12e4fabb2fa40b59d097a7d5e4dc2581129e405d2d808b39933f643e93e", - "dataAbiValues": { - "methodSignature": "handleFinalize(uint256)", - "inputValues": [ - "36734194190276940096273241257659402973542659853799331442674641708617136597310" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 0, - "blockTimestampDelay": 0 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000090000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 2, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xc0106a6cffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0a9473a1fb03242c6ca0cf72ce918a668d75a7aef4f15a0d33f1a7b490a38de2b", - "dataAbiValues": { - "methodSignature": "handleCreateRequest(uint256,uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913129639904", - "76566718707773384903225614118535891165433973603151251259517762515743289171499" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 47596, - "blockTimestampDelay": 550258 - } -] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/call_sequences/immutable/1731277803605108000-73ba1036-f664-420c-8d38-fc474d664848.json b/test/invariants/fuzz/corpus/call_sequences/immutable/1731277803605108000-73ba1036-f664-420c-8d38-fc474d664848.json deleted file mode 100755 index c3f2dc8..0000000 --- a/test/invariants/fuzz/corpus/call_sequences/immutable/1731277803605108000-73ba1036-f664-420c-8d38-fc474d664848.json +++ /dev/null @@ -1,432 +0,0 @@ -[ - { - "call": { - "from": "0x0000000000000000000000000000000000040000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x52e3cb9c6b0d264b5add160d5053aa476132c22d6540d3605ad8dfb850790b1ba996569b", - "dataAbiValues": { - "methodSignature": "handleSetMaxUsersToCheck(uint256)", - "inputValues": [ - "48420708108177856443123222644862532857390746786695606854692354379525674915483" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 59698, - "blockTimestampDelay": 331757 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000020000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x62e8fd3500000000000000000000000000000000000000000000000000000000000000124ab950c09e2414c3ec444389b5281e1bdfda8ecfec5392240af8d376f3781e4f", - "dataAbiValues": { - "methodSignature": "handleOnDisputeStatusChange(uint256,uint256)", - "inputValues": [ - "18", - "33798574834817402171861624718400176195923458571787846279113220864863863578191" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 41059, - "blockTimestampDelay": 386818 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000040000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x161c7318", - "dataAbiValues": { - "methodSignature": "test_debug()", - "inputValues": [] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 2290, - "blockTimestampDelay": 360593 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000050000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xb05752f700000000000000000000000000000000000000000000000014d1120d7b160000fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa0100ffffe666666666666666666666666666666666666666666666666666666666670000000000000000000000000000000000000000000000000000000000000001", - "dataAbiValues": { - "methodSignature": "handleOnSettleBondEscalation(uint256,uint256,uint256,uint256)", - "inputValues": [ - "1500000000000000000", - "115792089237316195423570985008687907853269984665640564039457584007913129246976", - "115791912552609717585138026678937833561418401917250876477561771847293000377959", - "1" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 35958, - "blockTimestampDelay": 189815 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000080000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xd1a556550000000000000000000000000000000000000000000000000000000000093a80", - "dataAbiValues": { - "methodSignature": "handleRevokeModule(uint256)", - "inputValues": [ - "604800" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 23866, - "blockTimestampDelay": 120766 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000040000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 2, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xf60285cafffffffffffffffffffffffffffffffffffffffffffffffffffffffffffb00001f6163d95156c50021d434e3914437a6419fd074db58aba632a1165e1049633a3bf295102083f98484e4163605f3f088673969b3a53bced8eb97b90d6679470f0000000000000000000000000000000000000000000000000000000000000014", - "dataAbiValues": { - "methodSignature": "handleBondWithSender(uint256,uint256,uint256,uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913129312256", - "14193771603127510897806160380156132720630156725507671248204049821265402880826", - "27115063851078188957254873925429362151386502274781693755807630999965205612303", - "20" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 14998, - "blockTimestampDelay": 528331 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000050000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x51b295e3fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc18", - "dataAbiValues": { - "methodSignature": "handleFinalize(uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913129638936" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 23876, - "blockTimestampDelay": 327680 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000060000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x2047c4493b1bb599e967df2247a0bde0e15c19a16d95520dbb9eb811b647dd1c5a50d970bda0d1adb4d017dcf6513d613392f361bfe0847acfbe5bbfd267240bef7125cd61ebaebab2bac3aa4819e2caf8f85c718565871747241e292cc36db91888e520d873b789d8f47c6606b2d5358f69133b1dd4937cee526c90ac095190af102de2", - "dataAbiValues": { - "methodSignature": "handlePay(uint256,uint256,uint256,uint256)", - "inputValues": [ - "26735416302702836720504774004574936090245153519362370366870156849631651223920", - "85771271060700958624081931951489906403580871476691194667860842730768850560461", - "44290761310036599938494988979380191776366734083697389368196279735913800066336", - "97904029442377240838501909618781928147909909174040210570358457032104622435810" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 54628, - "blockTimestampDelay": 362209 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000020000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x9f6259e57cf479b021a816743ff5b53a6f3e5c2c247b2adb9311a44237c3858abd44df0e0000000000000000000000000000000000000000000000000000000000127118", - "dataAbiValues": { - "methodSignature": "handleResolve(uint256,uint256)", - "inputValues": [ - "56518743767933985910260346386765678340564227438862784222762849925209918856974", - "1208600" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 35385, - "blockTimestampDelay": 50692 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000050000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 2, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x0fb55087fffffffffffffffffffffffffffffffffffffffffffffffffffffff400000000", - "dataAbiValues": { - "methodSignature": "handleApproveModule(uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007861590032384" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 1, - "blockTimestampDelay": 57134 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000050000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 3, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x5356b6811b3175568497fde3c31fe069ccc7985311b0506f3b43e70969ab59ea722d2599", - "dataAbiValues": { - "methodSignature": "handleAddEBORequestCreatorFinalityModule(uint256)", - "inputValues": [ - "12299832254764069471447641000592064088020729744720327828938364394997925356953" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 0, - "blockTimestampDelay": 0 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000050000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 4, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xa44b098ea6e532d597161bf414844541b5281607abc0fedcfbe19700823ca81bfeffd5da", - "dataAbiValues": { - "methodSignature": "handleSetArbitrator(uint256)", - "inputValues": [ - "75488891688353701349182521546099519030572206284453220585196006136091846366682" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 13249, - "blockTimestampDelay": 486500 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000090000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x727899ff000000000000000000000000000000000000000000000000000000000009688043d2cc6bee2c75afbb0a2d8e686ed8d850d35e4220dab9eaaad8c1f2bbd315eb000040ba1702262dc3924484fe5b466a7207d688c9429f8aaeb64c1acd0d86e1fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff70000", - "dataAbiValues": { - "methodSignature": "handlePledge(uint256,uint256,uint256,uint256)", - "inputValues": [ - "616576", - "30677409604733962472433633135176719636373390531562919397962760076773674915307", - "446728739341497667529209047101419397582060126024847855090499938302133985", - "115792089237316195423570985008687907853269984665640564039457584007913129050112" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 28736, - "blockTimestampDelay": 576650 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000040000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 3, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x52e3cb9cfffffffffffffffffffffffffffffffffffffffffffffffff90fa4a62c4e0000", - "dataAbiValues": { - "methodSignature": "handleSetMaxUsersToCheck(uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457084007913129639936" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 14857, - "blockTimestampDelay": 578411 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000070000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x91e32c74fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8000053817ae4082823f7b7ef4f21ea8eaf2d55883b146199ee5cd9707c39a3f025ab", - "dataAbiValues": { - "methodSignature": "handleCreateRequest(uint256,bytes32)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913129115648", - "53817ae4082823f7b7ef4f21ea8eaf2d55883b146199ee5cd9707c39a3f025ab" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 23, - "blockTimestampDelay": 32 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000070000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x48a41c2700db944f945348b4c6cffca09ace97414e862af57bfe67d15e8f4ba3813ede4b3d688e69cd534e15f8ccc3765fd50e2ab30d2b740b3ff6d5865213182fe783c63b4bac2923dad06e124a6e05ae7aa5ae1b3e8edff0154acd1de94e5fe6e26732", - "dataAbiValues": { - "methodSignature": "handlePropose(uint256,uint256,uint256)", - "inputValues": [ - "387963111102058097323071002434237761651493831039740349958407635767455047243", - "27775818758715135462630212585325327395456425224261459780030383525521640620998", - "26820159805776502209708934821205059577225837408551437026198979884765463865138" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 25200, - "blockTimestampDelay": 27983 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000020000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 2, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xc0106a6cfffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7fc1800001fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff", - "dataAbiValues": { - "methodSignature": "handleCreateRequest(uint256,uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913129114648", - "220855883097298041197912187592864814478435487109452369765200775161577471" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 50518, - "blockTimestampDelay": 458752 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000050000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 5, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x9d2e6a6f000000000000000000000000000000000000000000000000000000000005d100", - "dataAbiValues": { - "methodSignature": "handleRemoveEBORequestCreatorRequestModule(uint256)", - "inputValues": [ - "381184" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 23639, - "blockTimestampDelay": 195785 - } -] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/call_sequences/immutable/1731277803605587000-7b0538fd-d4b9-43b3-92c7-691cc391e386.json b/test/invariants/fuzz/corpus/call_sequences/immutable/1731277803605587000-7b0538fd-d4b9-43b3-92c7-691cc391e386.json deleted file mode 100755 index 0125ab6..0000000 --- a/test/invariants/fuzz/corpus/call_sequences/immutable/1731277803605587000-7b0538fd-d4b9-43b3-92c7-691cc391e386.json +++ /dev/null @@ -1,521 +0,0 @@ -[ - { - "call": { - "from": "0x0000000000000000000000000000000000030000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x13a8b8040000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000034000000000000000000000000000000000000000000000000000000000000000170000000000000000000000000000000000000000000000000000000000d2f000ffffc0000000000000000000000000000000000000000000000000000000000181dc31bc03ad9bc8a966de91dfc8c49b929f6d5fd44a9c22a7f5bb37cebfc106ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed8ee8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b825bc2cfc37067e378b4feef3f3411136744d0b2851c161c601669654cf27bfe610000000000000000000000000000000000000000000000000000000000000000578750b27e877a957d33dc50d914b1caf972efffa4bb78b85e66dd813a864ca4039e696f94058cfd274de97421f65916ac135f4d55083d357b9c1f34820c9376000000000000000000000000000000000000000000000000000000000003fffe000000000000000000000000000000000000000000000000000000000000000167e6a528e0202cf23a36eacf513eee303475d3e4c983b2ae2d616b11c440f70a4ac07813439b9213b22d4d86340307a2982de60c241368ad288dfea742b6eb5efffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9686c2d73382b1edfa908bcaeb6b9ac0073f469887a9150c80831642e47e35a614c1bffffffffffffffffffffffffffffffffffffffffffffe48e5eb33a3a7f000000104a13a90c13653470268ea78892361e7e91e706d859aabaaf45ddd18c956640809a37cc7335cdf29b7d988dc8c05e2c1899ad1795364e6fa667088b49487472000000000000000000000000000000000000000000000000000000000000fff6fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b800000000000000000000000000000000000000000000000000329c51ac594cf93000000000000000000000000000000000000000000000000000000000076a700a77a4c48695a0407441e86efc633aee092d2ebd99c87fdfeebcd904fe33e086d000000000000000000000000000000000000000000000000000000000000001d563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd0633ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865d5d6866ffb684491364a0853403f689144f5664f5d50de1b1a30d683ff29f21bf8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b4498bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef328d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad82082401f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade0554594d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae96291d8c581a922d52cd477658fcc2e2ca1f954f274ed2cd833a98e6d1d4455581f9d9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cbba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c33f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8fd276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f6617237058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf259a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe2665f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a219fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb", - "dataAbiValues": { - "methodSignature": "handleCreateRequests(uint256[],bytes32[])", - "inputValues": [ - [ - "13824000", - "115791647525550000827488589184312722123641027794666345134718053606362806484993", - "58737407075920930096693749632210245280794127876199190949253348332199714210054", - "115792089237316195423570985008687907853269984665640564039457584007913128431336", - "115792089237316195423570985008687907853269984665640564039457584007913129380738", - "41504671482165347584846103287222174319130579613222615088745194098566077611617", - "0", - "39590299132392589184737138068833640165131826767556478003143025413084726840484", - "1636828073493779560152621491074002847609709387720111137750911676859097584502", - "262142", - "1", - "46995738119123743123282428161140493004285235666026628953647859202250191730442", - "33811214160519685654400438720767591502827986970858420988841187408488311483230", - "115792089237316195423570985008687907853269984665640564039457584007913129207916", - "20557653259021005890251421269967042420225955023564768794272035576696478452763", - "115792089237316195423570985008687907853269984665640563909857584007913129639936", - "7367887950809164700104084563884591449786965425123545364576065505479275931200", - "58168524174645209900719041489934173752247098791866719219864340874379345294450", - "65526", - "115792089237316195423570985008687907853269984665640564039457584007913129380736", - "227929974933606291", - "7776000", - "75752327540241786815348607290604056680494387521335977257182003214564422715501" - ], - [ - "563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe", - "27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a", - "9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd06", - "33ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865", - "d5d6866ffb684491364a0853403f689144f5664f5d50de1b1a30d683ff29f21b", - "f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1", - "c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b44", - "98bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01", - "108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef32", - "8d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea", - "94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad8208240", - "1f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade05545", - "94d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056", - "cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae96291", - "d8c581a922d52cd477658fcc2e2ca1f954f274ed2cd833a98e6d1d4455581f9d", - "9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874", - "ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cb", - "ba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c3", - "3f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8f", - "d276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99", - "fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce", - "3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb", - "4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f661723", - "7058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78", - "994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25", - "9a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe26", - "65f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a2", - "19fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c", - "51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb" - ] - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 21265, - "blockTimestampDelay": 360627 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000020000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x161c7318", - "dataAbiValues": { - "methodSignature": "test_debug()", - "inputValues": [] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 15325, - "blockTimestampDelay": 189245 - }, - { - "call": { - "from": "0x00000000000000000000000000000000000a0000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x88b05f294e5c5739570432e46e997185cf2683c287e8339e1ce7ab9502db4f4b4f0c1b77000000000000000000000000000000000000000000000000000000000012750000000000000000000000000000000000000000000000000006f05b59d3b200003c3b20fe3c6474ef6112cec6e2e1e2a66147c502767418c32e65c3bfa035d898948fc45007206ff5c0b2215d0b5c97d5551a84ed653f28e284b8567c463ce3650000000000000000000000000000000000000000000000000000000000069780ffffffffffffffffffffffffffffffffffffffffffffffffffffffec398000000000000000000000000000000000000000000000000000000000000000093a80", - "dataAbiValues": { - "methodSignature": "handleSetDisputeModuleData(uint256,(address,address,uint256,uint256,uint256,uint256,uint256))", - "inputValues": [ - "35443554117267417118592017165536035041230544133048285386578266163756344810359", - { - "accountingExtension": "0x0000000000000000000000000000000000127500", - "bondEscalationDeadline": "432000", - "bondSize": "27243242601887521753615714576112380311306725462768124357416761313244220872856", - "bondToken": "0x00000000000000000000000006f05b59d3b20000", - "disputeWindow": "604800", - "maxNumberOfEscalations": "67196315620416968751812103706326677402054656808860235011842083525495944438629", - "tyingBuffer": "115792089237316195423570985008687907853269984665640564039457584007828194983936" - } - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 24101, - "blockTimestampDelay": 185392 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000040000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x3c26dcf8000000000000000000000000000000000000000000000853a0d2313c00000000", - "dataAbiValues": { - "methodSignature": "handleSetEpochManager(uint256)", - "inputValues": [ - "39321600000000000000000" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 23050, - "blockTimestampDelay": 360593 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000070000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x1c6850cfb0e3106162bbf50b7b4f4127a44fc6dee30686640d85ab8a97c7a387e688d09200000000000000000000000000000000000000000000000000000000000151800000000000000000000000000000000000000000000000000de0b6b3a7640000", - "dataAbiValues": { - "methodSignature": "handleUpdateDisputeStatus(uint256,uint256,uint256)", - "inputValues": [ - "80008248687813878652618995284154503941697939794158322754224777983398987223186", - "86400", - "1000000000000000000" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 17066, - "blockTimestampDelay": 86400 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000020000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xc0106a6cce21db24dd246f08ad02e64e7a8e8742fa9607e8fdf81425d16e85c70f3de5d85907be10f550a4ab3f84480cf0ea723b2a74da20322f8a7c02918a70cdb15ac9", - "dataAbiValues": { - "methodSignature": "handleCreateRequest(uint256,uint256)", - "inputValues": [ - "93236265237587594263022487768855356786420509345912517467786824227481808922072", - "40269523242363880299786798295795090179015741572111778996238876869560403843785" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 0, - "blockTimestampDelay": 101426 - }, - { - "call": { - "from": "0x00000000000000000000000000000000000a0000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x9d2e6a6f998e4550a0de435d19cec4771f09fda88c2b7664624260171a192d839c6e2a65", - "dataAbiValues": { - "methodSignature": "handleRemoveEBORequestCreatorRequestModule(uint256)", - "inputValues": [ - "69455236510673350336024647478873143438234265695463592178397393693034284984933" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 35869, - "blockTimestampDelay": 315170 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000020000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 2, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xd1a55655fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6c580", - "dataAbiValues": { - "methodSignature": "handleRevokeModule(uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913129035136" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 55790, - "blockTimestampDelay": 111616 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000010000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x55438465815bedc734908418031caab89516e183218d7f0edf8e3c493ab40a8fcacc98210000000000000000000000001260c0c92cc0a0b1b5b54cb0501ed367353befeb", - "dataAbiValues": { - "methodSignature": "handleSetResolutionModuleData(uint256,(address))", - "inputValues": [ - "58510781634585462798122964402259920591361435129587016659431711127985600632865", - { - "arbitrator": "0x1260c0c92cc0A0b1B5b54cb0501eD367353befeB" - } - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 25042, - "blockTimestampDelay": 70452 - }, - { - "call": { - "from": "0x00000000000000000000000000000000000a0000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 2, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x9d2e6a6ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6c580", - "dataAbiValues": { - "methodSignature": "handleRemoveEBORequestCreatorRequestModule(uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913129035136" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 25184, - "blockTimestampDelay": 168977 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000050000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x7aeb6fabc80cc1410f822f39c5490f53cdc96dd08eb43974e7995e4657ae6b6bf548e7f2871b07795e307166d3b23beb0529cf4a4051c8b01210b5127b57c6be3cac11f1", - "dataAbiValues": { - "methodSignature": "handleDisputeResponseBondEscalationModule(uint256,uint256)", - "inputValues": [ - "90485105672505321392083992946066544751897224405196443707030040081777413384178", - "61109991013787236767457822530506378720905044490242359531817392410759292260849" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 41797, - "blockTimestampDelay": 101425 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000090000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xa59d317dfffffffffffffffffffffffffffffffffffffffffffffffffffffffffff90000000000000000000000000000ca826f8feadcf20b2c0d50019199cea2b62c4cc700000000000000000000000075f502741def771b94c656bf8b5b7b7f148a930e00000000000000000000000000000000000000000000000006f05b59d3b20003f8dd5e39a09165ac6f78d6e4e38c07ee1b85cd9c0c109e3875dd38c411542ff4f3b3ccb415be6bb6735532f53ea67d407e49e0d5d7b99fe0de0f5c49f9da3fad", - "dataAbiValues": { - "methodSignature": "handleSetResponseModuleData(uint256,(address,address,uint256,uint256,uint256))", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913129181184", - { - "accountingExtension": "0xCA826F8feAdcF20b2c0d50019199ceA2B62C4cC7", - "bondSize": "500000000000000003", - "bondToken": "0x75f502741def771B94c656BF8b5b7b7F148a930e", - "deadline": "112564709967749425184314086071684882232174773517983829235624129600201071800308", - "disputeWindow": "110229700641664101210984642912501714027284836539036269317787492668732763422637" - } - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 38892, - "blockTimestampDelay": 395331 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000030000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 2, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x5356b681ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed8b00", - "dataAbiValues": { - "methodSignature": "handleAddEBORequestCreatorFinalityModule(uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913128430336" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 1, - "blockTimestampDelay": 4 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000020000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 3, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xc82f34f9fffffffffffffffffffffffffffffffffffffffffffffffff90fa4a62c4e0000fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffb0000", - "dataAbiValues": { - "methodSignature": "handleSettleBondEscalation(uint256,uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457084007913129639936", - "115792089237316195423570985008687907853269984665640564039457584007913129312256" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 23866, - "blockTimestampDelay": 113161 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000010000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x2047c4492e64b41916de5b94d992b242b245ce626a3dd9c7254209d1570cf319fa441fd1000000000000000000000000000000000000000000000000000000000008fffd0fa843072bf2005848c182b7849f66291f398bbb4dafa0e91ec02b6a91d418b672d4cd830dfe7246067a1b8779402dfb7b658d530dd840edc5012d689d2c9579", - "dataAbiValues": { - "methodSignature": "handlePay(uint256,uint256,uint256,uint256)", - "inputValues": [ - "20984318732057524363726518924471354496680932310149856273743839135273616416721", - "589821", - "7081985645984608152432907279403883877639977254641757337320076223831621245110", - "51939654707453224176314972721194901176628383443245907877596385748832861590905" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 17276, - "blockTimestampDelay": 163731 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000050000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x91e32c740000000000000000000000000000000000000000000000000000000000010000b7d9c274be2bab775c3f0c67272c24e432bd17847d8d572c22e3bcbb93effe8a", - "dataAbiValues": { - "methodSignature": "handleCreateRequest(uint256,bytes32)", - "inputValues": [ - "65536", - "b7d9c274be2bab775c3f0c67272c24e432bd17847d8d572c22e3bcbb93effe8a" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 5055, - "blockTimestampDelay": 233600 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000070000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x0fb550870000000000000000000000000000000000000000000000000000000000090000", - "dataAbiValues": { - "methodSignature": "handleApproveModule(uint256)", - "inputValues": [ - "589824" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 32888, - "blockTimestampDelay": 86400 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000060000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x554384651676267f0f7bea50c3144ae4e2baa4c5c6c43120dd776d813464250e09efd5560000000000000000000000005d52af464621f4bc06c88cb2ce9f9e7d74fd3422", - "dataAbiValues": { - "methodSignature": "handleSetResolutionModuleData(uint256,(address))", - "inputValues": [ - "10159636314380774835278947121760878401829355612383499588542760074484202329430", - { - "arbitrator": "0x5D52af464621f4Bc06c88cB2cE9F9e7D74Fd3422" - } - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 53908, - "blockTimestampDelay": 60042 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000080000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xbf938c53", - "dataAbiValues": { - "methodSignature": "property_sanityCheck()", - "inputValues": [] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 17266, - "blockTimestampDelay": 360623 - } -] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/call_sequences/immutable/1731277803606635000-d68a6881-2741-489a-b7bd-a28264c8897a.json b/test/invariants/fuzz/corpus/call_sequences/immutable/1731277803606635000-d68a6881-2741-489a-b7bd-a28264c8897a.json deleted file mode 100755 index bffec95..0000000 --- a/test/invariants/fuzz/corpus/call_sequences/immutable/1731277803606635000-d68a6881-2741-489a-b7bd-a28264c8897a.json +++ /dev/null @@ -1,635 +0,0 @@ -[ - { - "call": { - "from": "0x0000000000000000000000000000000000030000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x13a8b8040000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000034000000000000000000000000000000000000000000000000000000000000000170000000000000000000000000000000000000000000000000000000000d2f000ffffc0000000000000000000000000000000000000000000000000000000000181dc31bc03ad9bc8a966de91dfc8c49b929f6d5fd44a9c22a7f5bb37cebfc106000000000000000000000000000000000000000000007ff72b2c19616ab00000e645df196666f5e4e940c577b9670b086db2c746878e45aae0dbee6c63a0e6a35bc2cfc37067e378b4feef3f3411136744d0b2851c161c601669654cf27bfe6100000000000000000000000000000000000000000000000000000000000000006cd40d93882a844c2becf361c7579664aef7a6ef6e8b79d6bf6f6f76426e9b14039e696f94058cfd274de97421f65916ac135f4d55083d357b9c1f34820c9376000000000000000000000000000000000000000000000000000000000003fffe000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000004ac07813439b9213b22d4d86340307a2982de60c241368ad288dfea742b6eb5efffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9686c2d73382b1edfa908bcaeb6b9ac0073f469887a9150c80831642e47e35a614c1bffffffffffffffffffffffffffffffffffffffffffffe48e5eb33a3a7f000000104a13a90c13653470268ea78892361e7e91e706d859aabaaf45ddd18c956640809a37cc7335cdf29b7d988dc8c05e2c1899ad1795364e6fa667088b49487472000000000000000000000000000000000000000000000000000000000000fff6fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b80756993dc4be6ecf1e46c48d6f9cae9255a8b46ef956a3d85442a5f41f70ecf93000000000000000000000000000000000000000000000000000000000076a700a77a4c48695a0407441e86efc633aee092d2ebd99c87fdfeebcd904fe33e086d000000000000000000000000000000000000000000000000000000000000001d563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd0633ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed6958658aad3329b56f2f98187bbaed7351982ae06a00b9382adcb723b8b393d1f5e2def8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b4498bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a0171bc7dd16f0e277b94f2e46980d7e8e6c3c5187bf68be378e2d72cd0e70293ef8d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad82082401f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade0554594d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae962914f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874465e592f6d3f1d78fbc619b878d95794035829bd9b1285f3eb021d72f8e45638ba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c33f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8fd276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a9925e5ea45a807ae40eb654d82982bacb30bb1da6060d308d0b63004f4e1926b0c3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f6617237058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf259a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe2665f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a219fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb", - "dataAbiValues": { - "methodSignature": "handleCreateRequests(uint256[],bytes32[])", - "inputValues": [ - [ - "13824000", - "115791647525550000827488589184312722123641027794666345134718053606362806484993", - "58737407075920930096693749632210245280794127876199190949253348332199714210054", - "604300000000000000000000", - "104155407395839188072220307346509508179171066778602859964492537460856123877027", - "41504671482165347584846103287222174319130579613222615088745194098566077611617", - "0", - "49224452924880417829398231270379785502530069722970149981823851608145893694228", - "1636828073493779560152621491074002847609709387720111137750911676859097584502", - "262142", - "1", - "0", - "33811214160519685654400438720767591502827986970858420988841187408488311483230", - "115792089237316195423570985008687907853269984665640564039457584007913129207916", - "20557653259021005890251421269967042420225955023564768794272035576696478452763", - "115792089237316195423570985008687907853269984665640563909857584007913129639936", - "7367887950809164700104084563884591449786965425123545364576065505479275931200", - "58168524174645209900719041489934173752247098791866719219864340874379345294450", - "65526", - "115792089237316195423570985008687907853269984665640564039457584007913129380736", - "53107142721938561923251317745913031228477959801596843755970727929974933606291", - "7776000", - "75752327540241786815348607290604056680494387521335977257182003214564422715501" - ], - [ - "563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe", - "27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a", - "9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd06", - "33ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865", - "8aad3329b56f2f98187bbaed7351982ae06a00b9382adcb723b8b393d1f5e2de", - "f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1", - "c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b44", - "98bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01", - "71bc7dd16f0e277b94f2e46980d7e8e6c3c5187bf68be378e2d72cd0e70293ef", - "8d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea", - "94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad8208240", - "1f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade05545", - "94d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056", - "cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae96291", - "4f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa", - "9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874", - "465e592f6d3f1d78fbc619b878d95794035829bd9b1285f3eb021d72f8e45638", - "ba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c3", - "3f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8f", - "d276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99", - "25e5ea45a807ae40eb654d82982bacb30bb1da6060d308d0b63004f4e1926b0c", - "3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb", - "4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f661723", - "7058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78", - "994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25", - "9a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe26", - "65f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a2", - "19fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c", - "51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb" - ] - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 21265, - "blockTimestampDelay": 360627 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000030000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 2, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x0692ea7eeaaa73118d1da2c1db95511517ab896f87445c2331029aecdc7f065f634e6b46", - "dataAbiValues": { - "methodSignature": "handleRemoveChain(uint256)", - "inputValues": [ - "106142364743506859045918558596602602319943607038906547683486076996802461985606" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 2001, - "blockTimestampDelay": 455470 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000090000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x864e2da9fffffffffffffffffffffffffffffffffffffffffffffffff90fa4a62c573a80b81e8d97661fbf779db19fd00793e39f3b40bca612ee408ab75ff1c6439cf047509736e50626b1084ee93f4294000f73db102927cdc7fc34de68c384da900e6c", - "dataAbiValues": { - "methodSignature": "handleArbitrateDispute(uint256,uint256,uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457084007913130244736", - "83279546779206125286340055887058748934887896216240549764862301155730028032071", - "36452200662221151095065482565067302916782446267779931962683895890335455252076" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 41956, - "blockTimestampDelay": 475112 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000090000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xb6c75efaab191ad64d8fba3d052ab8ef37a088ba9faf5a1be696a47310de3441525ef897fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe3aaae444ec5312714f03b0566d2b40e5d34f58f068cabf3625fc0d7cfe3db912", - "dataAbiValues": { - "methodSignature": "handleClaimEscalationReward(uint256,uint256,uint256)", - "inputValues": [ - "77389853507359787864882669351213362161735184606551274462865365263877886900375", - "115792089237316195423570985008687907853269984665640564039457584007913129639934", - "26536084675173092165947634556752584404681954305155475174391110206140234709266" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 18699, - "blockTimestampDelay": 240561 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000030000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 3, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xf84d6dfcd2d78e343e1607b919341e2fe248544a49a0028fbd677a717f6a437862ddbc00", - "dataAbiValues": { - "methodSignature": "handleAddEBORequestCreatorRequestModule(uint256)", - "inputValues": [ - "95366551777850189910113500849756061153261920552639335948298155642211775921152" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 16776, - "blockTimestampDelay": 165634 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000060000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x0fb55087cd27e66c1a6365fdd2d452e5a6a582655000c0811d209ba0499f4483caf4b2da", - "dataAbiValues": { - "methodSignature": "handleApproveModule(uint256)", - "inputValues": [ - "92794631311208978202520326772644046682922248037671286389514014341863059010266" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 6256, - "blockTimestampDelay": 488143 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000060000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xaa1a5bd9128a1b5b9d7d3061f14bea63c8830170dadc5f154b01425336f91cc6d8611588ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00", - "dataAbiValues": { - "methodSignature": "handleResolveDispute(uint256,uint256)", - "inputValues": [ - "8385644986530251641334144830118419649455771804161689778824132977763480049032", - "115792089237316195423570985008687907853269984665640564039457584007913129639680" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 35699, - "blockTimestampDelay": 65536 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000020000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x51b295e30000000000000000000000000000000000000000000000000de0b6b3a7640000", - "dataAbiValues": { - "methodSignature": "handleFinalize(uint256)", - "inputValues": [ - "1000000000000000000" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 41252, - "blockTimestampDelay": 375602 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000020000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xf60285caff44fb6a2363fac767b088aff222c3143f1ed041c9b3e47d6474ee4922e1979fec9d178675775c3aa5161a5a209a68597466d991483528cc71c8d6ac533d0955a137b7e6f635f28c37dc46d14755f62f1ce7b659dc1873b04e1744e54dc225b665dad307139d75a132cdb60e373e4b35bba44673f5ee3d0bfbf1ac491c3d0e75", - "dataAbiValues": { - "methodSignature": "handleBondWithSender(uint256,uint256,uint256,uint256)", - "inputValues": [ - "115461657188952309751477762153544746327107707569543270374831352475679717431199", - "107023389619990543669223297468939824753654796115418022982959364890624175966549", - "72920814456766912229072746410044959713398794893085675262607692768311068730806", - "46070226826296101107756227560930518318774961046515756120293728876851585945205" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 39447, - "blockTimestampDelay": 175903 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000040000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xa59d317d37645351a8f36eba3b366024eafac86b09ad5a52e0d3cf42eb52112344ab3206000000000000000000000000d12fb9f7a711eb0caf6aac68aeaf04277804b39e000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000000000000000000000000000000000000003200000fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffb00000b2104824bc90dc4bcf1e407a769278e1c443fdba6cf324b44962e4fea636424", - "dataAbiValues": { - "methodSignature": "handleSetResponseModuleData(uint256,(address,address,uint256,uint256,uint256))", - "inputValues": [ - "25054466425052560783839884851311066245042877293899029878022208182382616064518", - { - "accountingExtension": "0xd12fb9f7A711Eb0caF6aaC68AEaF04277804B39e", - "bondSize": "52428800", - "bondToken": "0x000000000000000000000000000000000000000A", - "deadline": "115792089237316195423570985008687907853269984665640564039457584007913129312256", - "disputeWindow": "5033778407313201451107747851099848118306043382601391308246767880599192691748" - } - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 26656, - "blockTimestampDelay": 604799 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000040000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x0692ea7efffffffffffffffffffffffffffffffffffffffffffffffffbd62f96e74f8b00", - "dataAbiValues": { - "methodSignature": "handleRemoveChain(uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457284007913128430336" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 56799, - "blockTimestampDelay": 262144 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000020000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 2, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x4741f6dcfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd0000", - "dataAbiValues": { - "methodSignature": "handleSetFinalityModuleData(uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913129443328" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 23786, - "blockTimestampDelay": 327680 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000050000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x13a8b804000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000e00000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000d2f0087104a1ac49782a4e16877da31b055635722ebf513f4c9d4971ee8ba22ecc4a6eec651143a3c6f38d013752a6418c6f09e02c569047e21b1821746f674b34b1c0000000000000000000000000000000000000000000000000000000000000036fa4a08dc093aad94a53150a69958ea5701d0cdfc0457647f4a00851f2b3ffa4ffd8a6288227c780955edaf8b4dede4dd79b2d6a1b9670dc32f84033dbf8be3094a3581399d5766a955990785635f7387f42bc3ac7aefc687d70bedd0207993bc4c485bed03b3790844630b99699bb40f5069c1d8403298cdfda2575a3317f64ae11593ffb0ec0927fe5913230c741395327603a0cb862e6b83dfda2f6220ae47cc515c273c51f6f72596a67c49bd9c8c601629067e48532c86a5ec436da6c5d4a086dd03f412f823cb3b33845d313ed20d3eb30a8c1738fe538f8ce08dda6bc903393b682ce82af7ad546cbd6f5e6b633403a16c9539778326f27093154073c189ff0c2a9bf1d9e0c1340059cb502459adc6848943173465070dbc70f56c9773a380843bf072ee4ebcdaa6db9c9b1bcdd7accd8376418847fe049b50be079824e34e17ba796d22717b906c8ae168c515652b146e98f67ff81a17d32cfbb3a45d70b80d8aebc1f699d448d6bb373046a46055cea8663f1e133e3b318bd3bbf341831782f5c84d3a2e123ae7cf9de566a9e5958314dac1f2f943af76cc5a4ed5d61bb435d28f2bc87a2c6a8b92b314537495d986c635f3f24b0c89bb8431fd15da1f20ecad2204c5f2c899891deee290ce478f20d080be1f01b0631cfde6d77c174a0451dff325ceca911fe96cc8e506f589259f7ae6d81a6562ad17da5ac2668afb4dfae5387e68f8f182b4cd18e2d04b3d23801beadb0e540b89182a8ef12544bf301a4ed791f0937f2169890e091a55113e6f5869333627389cfa9013231650d5b1193bc5c6faf12c4caedc4c1de1a155f1caac4b1b386f2c9fb59c0edddb79370ea902ef6cdf5724565bfb35d2d999e5b8ae7d2997c94e3ce7b6bfc8698850f5bea6ed28d2670ed0bc72485811f4579eee682784c336392515b9f38b305760c5f2a08ab4ab5c4e4dc94bfd7fe5a3c37df0d10561d5eee3109a165aa8d09aee107d8bc0847badc5833e23b36da204e51497d3f1716162337b2ca72a6d9b0df65af932d7fe5768c3a7a91282332e7768f46e57727280521bd0e3c9f183fa04f1c0e3d82bf7ea3b756ba92372a93cb61e730e2e59814916b3e92ea0d14277077195c6e7500b9f864c7baa380be57ffd71a995ea5594800861a797da989e5e145ccb01db898f989f4c6fde7d34bf056442d3839d229d6e8c8fd581525acabfa32dfd933d425b58fea110c87b5d18bd00fffbffa00d873198e501a825357e75a85912832c0f7dc92f5825797c2460c978f3e875aea0a979c0a4060871bbd79a9babf07212d556a72bb84496ad42f34884efeed068bfad56613cf714bca57b67944ed964fa024cbdc39fe0848bdeb5c884858a5ac18070bc1e4c0329f2d89fcaadcfdab6ef8a1532af54954a15ea5e23ce45325d9f98f0e3fb86d60b7a0397d2453942930b89e474cdda078d4d62f83b306800b744f407abb12457ab2002a4c1babaebbacd167f44ae7a2bcba0576b2bba82a9e92a2177c482c7e3607c94e731f1a05d19d027153f2b2e5e5fa02b5887eadf045f884b7410bc1af1eb756ae71476a0623a5c27fbd454617541c911c1ca7f76e1017369953940959affc0126bd3ec9ee985c1ac0733a0d152dc33ad991a56c05ed402b56772c434095bf2c563875bd1ef4f339a0116feea24de95ead8342f2cc38eb2eb85b85c3ecbb25e77ae77cbbeb5b4bbc22e5b5bae35469b6565c089be978e383bca0d9ea2bdf66b2c2022976a424700038eb0dd496185b4406b017eb667af2336bd343a6518cdb282ed1f4ad156a51a420357c104c259ffefcc61717fc2d33bbac669fd340b62448e7b1ff79817d2faacc25d75413c7765d42904380717b7dfba97b043ecf6e68448d74c814a84fcec4b8e91924a2d84756257a3f7b5be9993390cb0d83ea216c344cd01747e580a018abe2b78ff31d78a0376939df219b6e4348501b5cd4005a711a4cf2585665816a7e23ad88e6fce9816231f577a8a4cc99f0fb7042243727ff97dfb91a943382ca90c2df1ad395083a12f7234582ea05fb002ebe876e39b32b192b8ada3a742f234ac609ba886fe26fc693ae013386f1b8b4d4b3c0fca228fbbd7af483f28f0a6a1363b275abecc85f2bee9d3c5c82a69692d9e81a977c050c94a09db9ac1ec9c86f3a6e0085d60e0d08cd2f8711d90b4066d0b5dfa922675d11a734712b53ba0ccab9ab7a8fe313144d531d11397926ca47601f444c6e995d8c7bfe71bac0249f67ef196e0656ff7e065d21224aea23f74592d0df86b3869e0a08de6c436ae57b76cc6821c11d16b120219ecb3e66724bb9b913be1da889b5d3900926e267b2beaeca176baaa9f8c82b8d74a308a307751320c46e850a5eaea83c5acccf639b783f5606cebaf54d8c04499037c3ab777163747416a6910cb0352002b67", - "dataAbiValues": { - "methodSignature": "handleCreateRequests(uint256[],bytes32[])", - "inputValues": [ - [ - "2", - "864000", - "61091015562669229328302511622207838274133483677802899134756790701318101320870", - "108000853268429518120666974822971079545728317287326968663692222929051051051804" - ], - [ - "fa4a08dc093aad94a53150a69958ea5701d0cdfc0457647f4a00851f2b3ffa4f", - "fd8a6288227c780955edaf8b4dede4dd79b2d6a1b9670dc32f84033dbf8be309", - "4a3581399d5766a955990785635f7387f42bc3ac7aefc687d70bedd0207993bc", - "4c485bed03b3790844630b99699bb40f5069c1d8403298cdfda2575a3317f64a", - "e11593ffb0ec0927fe5913230c741395327603a0cb862e6b83dfda2f6220ae47", - "cc515c273c51f6f72596a67c49bd9c8c601629067e48532c86a5ec436da6c5d4", - "a086dd03f412f823cb3b33845d313ed20d3eb30a8c1738fe538f8ce08dda6bc9", - "03393b682ce82af7ad546cbd6f5e6b633403a16c9539778326f27093154073c1", - "89ff0c2a9bf1d9e0c1340059cb502459adc6848943173465070dbc70f56c9773", - "a380843bf072ee4ebcdaa6db9c9b1bcdd7accd8376418847fe049b50be079824", - "e34e17ba796d22717b906c8ae168c515652b146e98f67ff81a17d32cfbb3a45d", - "70b80d8aebc1f699d448d6bb373046a46055cea8663f1e133e3b318bd3bbf341", - "831782f5c84d3a2e123ae7cf9de566a9e5958314dac1f2f943af76cc5a4ed5d6", - "1bb435d28f2bc87a2c6a8b92b314537495d986c635f3f24b0c89bb8431fd15da", - "1f20ecad2204c5f2c899891deee290ce478f20d080be1f01b0631cfde6d77c17", - "4a0451dff325ceca911fe96cc8e506f589259f7ae6d81a6562ad17da5ac2668a", - "fb4dfae5387e68f8f182b4cd18e2d04b3d23801beadb0e540b89182a8ef12544", - "bf301a4ed791f0937f2169890e091a55113e6f5869333627389cfa9013231650", - "d5b1193bc5c6faf12c4caedc4c1de1a155f1caac4b1b386f2c9fb59c0edddb79", - "370ea902ef6cdf5724565bfb35d2d999e5b8ae7d2997c94e3ce7b6bfc8698850", - "f5bea6ed28d2670ed0bc72485811f4579eee682784c336392515b9f38b305760", - "c5f2a08ab4ab5c4e4dc94bfd7fe5a3c37df0d10561d5eee3109a165aa8d09aee", - "107d8bc0847badc5833e23b36da204e51497d3f1716162337b2ca72a6d9b0df6", - "5af932d7fe5768c3a7a91282332e7768f46e57727280521bd0e3c9f183fa04f1", - "c0e3d82bf7ea3b756ba92372a93cb61e730e2e59814916b3e92ea0d142770771", - "95c6e7500b9f864c7baa380be57ffd71a995ea5594800861a797da989e5e145c", - "cb01db898f989f4c6fde7d34bf056442d3839d229d6e8c8fd581525acabfa32d", - "fd933d425b58fea110c87b5d18bd00fffbffa00d873198e501a825357e75a859", - "12832c0f7dc92f5825797c2460c978f3e875aea0a979c0a4060871bbd79a9bab", - "f07212d556a72bb84496ad42f34884efeed068bfad56613cf714bca57b67944e", - "d964fa024cbdc39fe0848bdeb5c884858a5ac18070bc1e4c0329f2d89fcaadcf", - "dab6ef8a1532af54954a15ea5e23ce45325d9f98f0e3fb86d60b7a0397d24539", - "42930b89e474cdda078d4d62f83b306800b744f407abb12457ab2002a4c1baba", - "ebbacd167f44ae7a2bcba0576b2bba82a9e92a2177c482c7e3607c94e731f1a0", - "5d19d027153f2b2e5e5fa02b5887eadf045f884b7410bc1af1eb756ae71476a0", - "623a5c27fbd454617541c911c1ca7f76e1017369953940959affc0126bd3ec9e", - "e985c1ac0733a0d152dc33ad991a56c05ed402b56772c434095bf2c563875bd1", - "ef4f339a0116feea24de95ead8342f2cc38eb2eb85b85c3ecbb25e77ae77cbbe", - "b5b4bbc22e5b5bae35469b6565c089be978e383bca0d9ea2bdf66b2c2022976a", - "424700038eb0dd496185b4406b017eb667af2336bd343a6518cdb282ed1f4ad1", - "56a51a420357c104c259ffefcc61717fc2d33bbac669fd340b62448e7b1ff798", - "17d2faacc25d75413c7765d42904380717b7dfba97b043ecf6e68448d74c814a", - "84fcec4b8e91924a2d84756257a3f7b5be9993390cb0d83ea216c344cd01747e", - "580a018abe2b78ff31d78a0376939df219b6e4348501b5cd4005a711a4cf2585", - "665816a7e23ad88e6fce9816231f577a8a4cc99f0fb7042243727ff97dfb91a9", - "43382ca90c2df1ad395083a12f7234582ea05fb002ebe876e39b32b192b8ada3", - "a742f234ac609ba886fe26fc693ae013386f1b8b4d4b3c0fca228fbbd7af483f", - "28f0a6a1363b275abecc85f2bee9d3c5c82a69692d9e81a977c050c94a09db9a", - "c1ec9c86f3a6e0085d60e0d08cd2f8711d90b4066d0b5dfa922675d11a734712", - "b53ba0ccab9ab7a8fe313144d531d11397926ca47601f444c6e995d8c7bfe71b", - "ac0249f67ef196e0656ff7e065d21224aea23f74592d0df86b3869e0a08de6c4", - "36ae57b76cc6821c11d16b120219ecb3e66724bb9b913be1da889b5d3900926e", - "267b2beaeca176baaa9f8c82b8d74a308a307751320c46e850a5eaea83c5accc", - "f639b783f5606cebaf54d8c04499037c3ab777163747416a6910cb0352002b67" - ] - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 40713, - "blockTimestampDelay": 288890 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000040000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 2, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x51b295e3bb1a2084cb159fd6a10d243726c06ecc2c061e64fa5637a4e1e36ecd536af41a", - "dataAbiValues": { - "methodSignature": "handleFinalize(uint256)", - "inputValues": [ - "84628665144738400938347255498120459236162163404711567437113231227400449881114" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 40461, - "blockTimestampDelay": 86400 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000010000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x51b295e35136d12e4fabb2fa40b59d097a7d5e4dc2581129e405d2d808b39933f643e93e", - "dataAbiValues": { - "methodSignature": "handleFinalize(uint256)", - "inputValues": [ - "36734194190276940096273241257659402973542659853799331442674641708617136597310" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 0, - "blockTimestampDelay": 0 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000090000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 2, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xc0106a6cffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0a9473a1fb03242c6ca0cf72ce918a668d75a7aef4f15a0d33f1a7b490a38de2b", - "dataAbiValues": { - "methodSignature": "handleCreateRequest(uint256,uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913129639904", - "76566718707773384903225614118535891165433973603151251259517762515743289171499" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 47596, - "blockTimestampDelay": 550258 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000030000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 4, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xcd10417a00000000000000000000000000000000000000000000000000000000000300000000000000000000000000000000000000000000000000000000000000000000", - "dataAbiValues": { - "methodSignature": "handleEscalateDispute(uint256,uint256)", - "inputValues": [ - "196608", - "0" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 49468, - "blockTimestampDelay": 531192 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000050000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x48a41c27f5e2b5585f4a318b516ae77e2bcf1d0c6c69d73f617d0ad2dbeddce25ff7ba910000000000000000000000000000000000000000000000000000000000000100ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff01", - "dataAbiValues": { - "methodSignature": "handlePropose(uint256,uint256,uint256)", - "inputValues": [ - "111217206938139444968553110676306921351727538827093245698432831002069798730385", - "256", - "115792089237316195423570985008687907853269984665640564039457584007913129639681" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 58448, - "blockTimestampDelay": 291208 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000040000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 3, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x223b137447d666f967a2435f360ae1a5d74411418e2552cde02c3fbb44404f0b7f0b7418000000000000000000000000000000000000000000000000000000000000004016d6fce3ebe57504d74c895dd764984c1a0fd9bc84e53996fe9d1fdbe18087310000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000000000000000000000000000000000000382997ddbd0ec071e601a74bec3b18f95a929e2c8f2fc57697f8fb476f87fce56000000000000000000000000000000000000000000000000000000000000000273d0000000000000000000000000000000000000000000000000000000000000", - "dataAbiValues": { - "methodSignature": "handleSetRequestModuleData(uint256,(uint256,string,address,uint256))", - "inputValues": [ - "32493028223342497817984115926415147953105366173154533585631663319985412600856", - { - "accountingExtension": "0x0000000000000000000000000000000000000003", - "chainId": "s\ufffd", - "epoch": "10330733325524501176169902709898413906911149832921865654336546665583987427121", - "paymentAmount": "59071866561259445092599584718662586641316079064498865051383233255850771467862" - } - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 60461, - "blockTimestampDelay": 141927 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000020000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 3, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xa44b098efffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeae7d", - "dataAbiValues": { - "methodSignature": "handleSetArbitrator(uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913129553533" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 0, - "blockTimestampDelay": 0 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000050000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 2, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x88b05f294612566bf9a56551713402058b178bf9334e16a430e78e53610b3f6114f2e572000000000000000000000000000000000000000000000000000000000000000200000000000000000000000018d46a62722e6eafc069b97c7a78574ce775f12972176491145ebf6cab47d070a505484213e19c33bd80bea8025c039a73381b46fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b80fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd97e0eb0dc1b379e381e4fe6763a824517b98db81bcc6b00d254c5ccfca3f2ac18b9668134e813d08414573dcc8f081b6e06ecf54faff7d640eb4d6256186486c", - "dataAbiValues": { - "methodSignature": "handleSetDisputeModuleData(uint256,(address,address,uint256,uint256,uint256,uint256,uint256))", - "inputValues": [ - "31694299109185575978093051252844457975556191736261404991840997988919212696946", - { - "accountingExtension": "0x0000000000000000000000000000000000000002", - "bondEscalationDeadline": "115792089237316195423570985008687907853269984665640564039457584007913129639933", - "bondSize": "51604996306954439705122303006796123301392110440900451331152134443247940934470", - "bondToken": "0x18D46A62722e6EaFC069B97C7a78574Ce775f129", - "disputeWindow": "63137231314917362874984632942434005220138982617699967905479977286643722111084", - "maxNumberOfEscalations": "115792089237316195423570985008687907853269984665640564039457584007913129380736", - "tyingBuffer": "68696636159853489678209085642458599054486261706714901038271685491028301654721" - } - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 20610, - "blockTimestampDelay": 50559 - } -] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/call_sequences/immutable/1731277803607978000-d99cfb6e-8259-4051-98fc-484c2b1166c0.json b/test/invariants/fuzz/corpus/call_sequences/immutable/1731277803607978000-d99cfb6e-8259-4051-98fc-484c2b1166c0.json deleted file mode 100755 index 594868b..0000000 --- a/test/invariants/fuzz/corpus/call_sequences/immutable/1731277803607978000-d99cfb6e-8259-4051-98fc-484c2b1166c0.json +++ /dev/null @@ -1,529 +0,0 @@ -[ - { - "call": { - "from": "0x0000000000000000000000000000000000030000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x13a8b8040000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000034000000000000000000000000000000000000000000000000000000000000000170000000000000000000000000000000000000000000000000000000000d2f000ffffc0000000000000000000000000000000000000000000000000000000000181dc31bc03ad9bc8a966de91dfc8c49b929f6d5fd44a9c22a7f5bb37cebfc106ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed8ee8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b825bc2cfc37067e378b4feef3f3411136744d0b2851c161c601669654cf27bfe6100000000000000000000000000000000000000000000000000000000000000006cd40d93882a844c2becf361c7579664aef7a6ef6e8b79d6bf6f6f76426e9b14039e696f94058cfd274de97421f65916ac135f4d55083d357b9c1f34820c9376000000000000000000000000000000000000000000000000000000000003fffe000000000000000000000000000000000000000000000000000000000000000167e6a528e0202cf23a36eacf513eee303475d3e4c983b2ae2d616b11c440f70a4ac07813439b9213b22d4d86340307a2982de60c241368ad288dfea742b6eb5efffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9686c2d73382b1edfa908bcaeb6b9ac0073f469887a9150c80831642e47e35a614c1bffffffffffffffffffffffffffffffffffffffffffffe48e5eb33a3a7f000000104a13a90c13653470268ea78892361e7e91e706d859aabaaf45ddd18c956640809a37cc7335cdf29b7d988dc8c05e2c1899ad1795364e6fa667088b49487472000000000000000000000000000000000000000000000000000000000000fff6fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b80756993dc4be6ecf1e46c48d6f9cae9255a8b46ef956a3d85442a5f41f70ecf93000000000000000000000000000000000000000000000000000000000076a700a77a4c48695a0407441e86efc633aee092d2ebd99c87fdfeebcd904fe33e086d000000000000000000000000000000000000000000000000000000000000001d563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd0633ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed6958658aad3329b56f2f98187bbaed7351982ae06a00b9382adcb723b8b393d1f5e2def8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b4498bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef328d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad82082401f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade0554594d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae962914f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cbba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c33f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8fd276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f6617237058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf259a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe2665f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a219fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb", - "dataAbiValues": { - "methodSignature": "handleCreateRequests(uint256[],bytes32[])", - "inputValues": [ - [ - "13824000", - "115791647525550000827488589184312722123641027794666345134718053606362806484993", - "58737407075920930096693749632210245280794127876199190949253348332199714210054", - "115792089237316195423570985008687907853269984665640564039457584007913128431336", - "115792089237316195423570985008687907853269984665640564039457584007913129380738", - "41504671482165347584846103287222174319130579613222615088745194098566077611617", - "0", - "49224452924880417829398231270379785502530069722970149981823851608145893694228", - "1636828073493779560152621491074002847609709387720111137750911676859097584502", - "262142", - "1", - "46995738119123743123282428161140493004285235666026628953647859202250191730442", - "33811214160519685654400438720767591502827986970858420988841187408488311483230", - "115792089237316195423570985008687907853269984665640564039457584007913129207916", - "20557653259021005890251421269967042420225955023564768794272035576696478452763", - "115792089237316195423570985008687907853269984665640563909857584007913129639936", - "7367887950809164700104084563884591449786965425123545364576065505479275931200", - "58168524174645209900719041489934173752247098791866719219864340874379345294450", - "65526", - "115792089237316195423570985008687907853269984665640564039457584007913129380736", - "53107142721938561923251317745913031228477959801596843755970727929974933606291", - "7776000", - "75752327540241786815348607290604056680494387521335977257182003214564422715501" - ], - [ - "563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe", - "27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a", - "9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd06", - "33ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865", - "8aad3329b56f2f98187bbaed7351982ae06a00b9382adcb723b8b393d1f5e2de", - "f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1", - "c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b44", - "98bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01", - "108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef32", - "8d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea", - "94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad8208240", - "1f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade05545", - "94d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056", - "cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae96291", - "4f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa", - "9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874", - "ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cb", - "ba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c3", - "3f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8f", - "d276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99", - "fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce", - "3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb", - "4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f661723", - "7058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78", - "994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25", - "9a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe26", - "65f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a2", - "19fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c", - "51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb" - ] - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 21265, - "blockTimestampDelay": 360627 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000050000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x91e32c74e0613faa5f896b73380078af3c1ee8605eec949aaf9c8f422f264f3de916b58dc905ee964be623d23ba97ccc5a2b838249eaa10a8671d6a68f97b09746107abf", - "dataAbiValues": { - "methodSignature": "handleCreateRequest(uint256,bytes32)", - "inputValues": [ - "101489901651207154401933345705911812335881908306802664469868899807780031346061", - "c905ee964be623d23ba97ccc5a2b838249eaa10a8671d6a68f97b09746107abf" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 23884, - "blockTimestampDelay": 297676 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000020000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x161c7318", - "dataAbiValues": { - "methodSignature": "test_debug()", - "inputValues": [] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 0, - "blockTimestampDelay": 1 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000070000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xaa1a5bd9ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffee2cac1a259bf9695aac61487b4606621f281407f44a6d621116f436e53e00628b", - "dataAbiValues": { - "methodSignature": "handleResolveDispute(uint256,uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913129639918", - "20205843492154653597326893919151713313559584018734749877274787063574636290699" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 23891, - "blockTimestampDelay": 328958 - }, - { - "call": { - "from": "0x00000000000000000000000000000000000a0000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xec5bf215fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff60000", - "dataAbiValues": { - "methodSignature": "handleFinalizeRequestResponseModule(uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913128984576" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 23883, - "blockTimestampDelay": 276784 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000020000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xd1a55655fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe9c", - "dataAbiValues": { - "methodSignature": "handleRevokeModule(uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913129639580" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 14210, - "blockTimestampDelay": 524288 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000060000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x727899fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffb001400000000000000000000000000000000000000000000000000000000001275000000000000000000000000000000000000000000000000000000000000000000a46e28ce399e11c208b07a84e457189f5b64e15f51e128b7baf507642bfef8c6", - "dataAbiValues": { - "methodSignature": "handlePledge(uint256,uint256,uint256,uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913129312276", - "1209600", - "0", - "74373941974452021616102119156230516273735358461823357873191033522071497799878" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 1, - "blockTimestampDelay": 256 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000040000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xa44b098effffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0003", - "dataAbiValues": { - "methodSignature": "handleSetArbitrator(uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913129574403" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 43748, - "blockTimestampDelay": 541010 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000010000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x8f790139ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0", - "dataAbiValues": { - "methodSignature": "handleReleaseUnutilizedResponse(uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913129639904" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 11833, - "blockTimestampDelay": 213928 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000090000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xa59d317d7f4bab9c72ef04decea93d5f106890883b64be0e4f50aa1ceebd5a435a7fa13a0000000000000000000000001302f0402bb094e65a1c38fc8979628fa7cb7eb80000000000000000000000000000000000000000000000000000000000093a8000000000000000000000000000000000000000000000000000000000000d2f00fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff70000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff", - "dataAbiValues": { - "methodSignature": "handleSetResponseModuleData(uint256,(address,address,uint256,uint256,uint256))", - "inputValues": [ - "57577429716414119383889913852992200380066446236494108346454295294682507223354", - { - "accountingExtension": "0x1302F0402bb094e65a1c38fC8979628FA7cb7eB8", - "bondSize": "864000", - "bondToken": "0x0000000000000000000000000000000000093A80", - "deadline": "115792089237316195423570985008687907853269984665640564039457584007913129050112", - "disputeWindow": "115792089237316195423570985008687907853269984665640564039457584007913129639935" - } - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 30759, - "blockTimestampDelay": 56734 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000060000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x864e2da9ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff30838cd661e07d4920a4bce6f00da019a66f1a0c976d396f8827e2cc52ed8ce1fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff80000", - "dataAbiValues": { - "methodSignature": "handleArbitrateDispute(uint256,uint256,uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913129639935", - "21943445721707534311606538764242968064099548519492097564976924267444655983841", - "115792089237316195423570985008687907853269984665640564039457584007913129115648" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 1, - "blockTimestampDelay": 2 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000090000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x9f6259e5fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd0000ffff800000000000000000000000000000000000000000000000000000000007", - "dataAbiValues": { - "methodSignature": "handleResolve(uint256,uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913129443328", - "115791205813783806231406193359937536394012070923692126229978523204812483330055" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 23928, - "blockTimestampDelay": 603784 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000050000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x91e32c7440906eb1080127929789d55c169cd890ff51930058d460b835803e947a1382a9e3a84eb76ecf8f296e15f27686df9d7107dae93af0929c31ee8d76fd38476ee4", - "dataAbiValues": { - "methodSignature": "handleCreateRequest(uint256,bytes32)", - "inputValues": [ - "29203212251508816547276680880804676973046658682524638891611434720618890887849", - "e3a84eb76ecf8f296e15f27686df9d7107dae93af0929c31ee8d76fd38476ee4" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 8633, - "blockTimestampDelay": 384652 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000070000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xcd10417afffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00000e9d23751886f170e2b576c9a16ce5725aaa7d6b5a51829b582417606f258a52e", - "dataAbiValues": { - "methodSignature": "handleEscalateDispute(uint256,uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913128591360", - "105760313397677454187313767699264694345051805328600745402406216015374137730350" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 0, - "blockTimestampDelay": 0 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000070000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 2, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xdb106ace00000000000000000000000000000000000000000000000000000000000700000000000000000000000000000000000000000000000000000000000000000b8000000000000000000000000000000000000000000000000000000000000000018e16328353e4335d4857f0c0272a56e894016a8e7fd5018abf59e4d63ffccc5d", - "dataAbiValues": { - "methodSignature": "handleSlash(uint256,uint256,uint256,uint256)", - "inputValues": [ - "458752", - "2944", - "1", - "64267643762154101036828179854063870619362775084021579500394794132351915707485" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 164, - "blockTimestampDelay": 328 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000070000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 3, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x64d6e6d34c37e1c6d066da117417045ecbb977d5fedb1a4f579c688036dfc2df96e8752a043feae6e9cd4dd5562baba0f9a2b8b88a6d24a210411d2a9ec010c887b2bbe857bd07a491da874930cf70d2603f546341bf1b41678d94212ad0d7f75f1f8c34", - "dataAbiValues": { - "methodSignature": "handlePledgeAgainstDispute(uint256,uint256,uint256)", - "inputValues": [ - "34474511333835792082501049571137601504043270057660531960180087278390018077994", - "1922183993469207343531967439441002744253338739077547349842513920358809254888", - "39685204671003151059797908428363376637491661590041500229844100997746182294580" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 13776, - "blockTimestampDelay": 196607 - }, - { - "call": { - "from": "0x00000000000000000000000000000000000a0000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xec5bf2150000000000000000000000000000000000000000000000000429d069189e0000", - "dataAbiValues": { - "methodSignature": "handleFinalizeRequestResponseModule(uint256)", - "inputValues": [ - "300000000000000000" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 73, - "blockTimestampDelay": 256 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000040000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x88b05f29ef15b65782cfe591a01276bbd3a4a416a4bc7c3c46d4a2a065776ceef8729dba0000000000000000000000000413cb2b8393acd243f05fe1fc92f0f33645674b0000000000000000000000000000000000000000000000000000000000030000fffffffffffffffffffffffffffffffffffffffffffffffff90fa4a62c4e0000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed8b000000000000000000000000000000000000000000000000000000000000000000fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff70000d2ba62ed8591040e27c905c9f23b93ea29ed2e248c13da4976202a1dc77c2ba8", - "dataAbiValues": { - "methodSignature": "handleSetDisputeModuleData(uint256,(address,address,uint256,uint256,uint256,uint256,uint256))", - "inputValues": [ - "108141133076887610497531349483470932814278164634546444848861358676425430965690", - { - "accountingExtension": "0x0413cb2b8393aCD243f05fe1fC92f0F33645674B", - "bondEscalationDeadline": "0", - "bondSize": "115792089237316195423570985008687907853269984665640564039457084007913129639936", - "bondToken": "0x0000000000000000000000000000000000030000", - "disputeWindow": "95315014531250257482381499157059680862481424202393349630157942686167364021160", - "maxNumberOfEscalations": "115792089237316195423570985008687907853269984665640564039457584007913128430336", - "tyingBuffer": "115792089237316195423570985008687907853269984665640564039457584007913129050112" - } - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 38581, - "blockTimestampDelay": 108799 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000010000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x223b137450d770be3b639c40475b7c2d9b38d9e215fe44b7581f0c70a37d8c0a641edafd0000000000000000000000000000000000000000000000000000000000000040fffffffffffffffffffffffffffffffffffffffffffffffffbd62f96e762000000000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000429d069189e0000faaa954e38a0b2b00899664d61354e2cfff2f66f0626a1fe18153ff26908fb17000000000000000000000000000000000000000000000000000000000000002245524332303a206275726e20616d6f756e7420657863656564732062616c616e6365000000000000000000000000000000000000000000000000000000000000", - "dataAbiValues": { - "methodSignature": "handleSetRequestModuleData(uint256,(uint256,string,address,uint256))", - "inputValues": [ - "36565678129823773534549762252589227787369831080370959419522126439904133962493", - { - "accountingExtension": "0x0000000000000000000000000429d069189E0000", - "chainId": "ERC20: burn amount exceeds balance", - "epoch": "115792089237316195423570985008687907853269984665640564039457284007913129639936", - "paymentAmount": "113379606615874029916799118804079911196343283863948566571202567108031238699799" - } - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 37714, - "blockTimestampDelay": 360627 - } -] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/call_sequences/immutable/1731277803608778000-cba6387c-87fd-4774-b883-b02dc21edbe1.json b/test/invariants/fuzz/corpus/call_sequences/immutable/1731277803608778000-cba6387c-87fd-4774-b883-b02dc21edbe1.json deleted file mode 100755 index 3e46697..0000000 --- a/test/invariants/fuzz/corpus/call_sequences/immutable/1731277803608778000-cba6387c-87fd-4774-b883-b02dc21edbe1.json +++ /dev/null @@ -1,501 +0,0 @@ -[ - { - "call": { - "from": "0x0000000000000000000000000000000000040000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x52e3cb9c6b0d264b5add160d5053aa476132c22d6540d3605ad8dfb850790b1ba996569b", - "dataAbiValues": { - "methodSignature": "handleSetMaxUsersToCheck(uint256)", - "inputValues": [ - "48420708108177856443123222644862532857390746786695606854692354379525674915483" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 59698, - "blockTimestampDelay": 331757 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000020000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x62e8fd3500000000000000000000000000000000000000000000000000000000000000124ab950c09e2414c3ec444389b5281e1bdfda8ecfec5392240af8d376f3781e4f", - "dataAbiValues": { - "methodSignature": "handleOnDisputeStatusChange(uint256,uint256)", - "inputValues": [ - "18", - "33798574834817402171861624718400176195923458571787846279113220864863863578191" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 41059, - "blockTimestampDelay": 386818 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000040000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x161c7318", - "dataAbiValues": { - "methodSignature": "test_debug()", - "inputValues": [] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 2290, - "blockTimestampDelay": 360593 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000050000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xb05752f700000000000000000000000000000000000000000000000014d1120d7b160000fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa0100ffffe666666666666666666666666666666666666666666666666666666666670000000000000000000000000000000000000000000000000000000000000001", - "dataAbiValues": { - "methodSignature": "handleOnSettleBondEscalation(uint256,uint256,uint256,uint256)", - "inputValues": [ - "1500000000000000000", - "115792089237316195423570985008687907853269984665640564039457584007913129246976", - "115791912552609717585138026678937833561418401917250876477561771847293000377959", - "1" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 35958, - "blockTimestampDelay": 189815 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000080000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xd1a556550000000000000000000000000000000000000000000000000000000000093a80", - "dataAbiValues": { - "methodSignature": "handleRevokeModule(uint256)", - "inputValues": [ - "604800" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 23866, - "blockTimestampDelay": 120766 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000040000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 2, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xf60285cafffffffffffffffffffffffffffffffffffffffffffffffffffffffffffb00001f6163d95156c50021d434e3914437a6419fd074db58aba632a1165e1049633a3bf295102083f98484e4163605f3f088673969b3a53bced8eb97b90d6679470f0000000000000000000000000000000000000000000000000000000000000014", - "dataAbiValues": { - "methodSignature": "handleBondWithSender(uint256,uint256,uint256,uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913129312256", - "14193771603127510897806160380156132720630156725507671248204049821265402880826", - "27115063851078188957254873925429362151386502274781693755807630999965205612303", - "20" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 14998, - "blockTimestampDelay": 528331 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000050000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x51b295e3fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc18", - "dataAbiValues": { - "methodSignature": "handleFinalize(uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913129638936" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 23876, - "blockTimestampDelay": 327680 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000060000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x2047c4493b1bb599e967df2247a0bde0e15c19a16d95520dbb9eb811b647dd1c5a50d970bda0d1adb4d017dcf6513d613392f361bfe0847acfbe5bbfd267240bef7125cd61ebaebab2bac3aa4819e2caf8f85c718565871747241e292cc36db91888e520d873b789d8f47c6606b2d5358f69133b1dd4937cee526c90ac095190af102de2", - "dataAbiValues": { - "methodSignature": "handlePay(uint256,uint256,uint256,uint256)", - "inputValues": [ - "26735416302702836720504774004574936090245153519362370366870156849631651223920", - "85771271060700958624081931951489906403580871476691194667860842730768850560461", - "44290761310036599938494988979380191776366734083697389368196279735913800066336", - "97904029442377240838501909618781928147909909174040210570358457032104622435810" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 54628, - "blockTimestampDelay": 362209 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000020000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x9f6259e57cf479b021a816743ff5b53a6f3e5c2c247b2adb9311a44237c3858abd44df0e0000000000000000000000000000000000000000000000000000000000127118", - "dataAbiValues": { - "methodSignature": "handleResolve(uint256,uint256)", - "inputValues": [ - "56518743767933985910260346386765678340564227438862784222762849925209918856974", - "1208600" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 35385, - "blockTimestampDelay": 50692 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000050000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 2, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x0fb55087fffffffffffffffffffffffffffffffffffffffffffffffffffffff400000000", - "dataAbiValues": { - "methodSignature": "handleApproveModule(uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007861590032384" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 1, - "blockTimestampDelay": 57134 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000050000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 3, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x5356b6811b3175568497fde3c31fe069ccc7985311b0506f3b43e70969ab59ea722d2599", - "dataAbiValues": { - "methodSignature": "handleAddEBORequestCreatorFinalityModule(uint256)", - "inputValues": [ - "12299832254764069471447641000592064088020729744720327828938364394997925356953" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 0, - "blockTimestampDelay": 0 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000050000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 4, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xa44b098ea6e532d597161bf414844541b5281607abc0fedcfbe19700823ca81bfeffd5da", - "dataAbiValues": { - "methodSignature": "handleSetArbitrator(uint256)", - "inputValues": [ - "75488891688353701349182521546099519030572206284453220585196006136091846366682" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 13249, - "blockTimestampDelay": 486500 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000090000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x727899ff000000000000000000000000000000000000000000000000000000000009688043d2cc6bee2c75afbb0a2d8e686ed8d850d35e4220dab9eaaad8c1f2bbd315eb000040ba1702262dc3924484fe5b466a7207d688c9429f8aaeb64c1acd0d86e1fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff70000", - "dataAbiValues": { - "methodSignature": "handlePledge(uint256,uint256,uint256,uint256)", - "inputValues": [ - "616576", - "30677409604733962472433633135176719636373390531562919397962760076773674915307", - "446728739341497667529209047101419397582060126024847855090499938302133985", - "115792089237316195423570985008687907853269984665640564039457584007913129050112" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 28736, - "blockTimestampDelay": 576650 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000040000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 3, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x52e3cb9cfffffffffffffffffffffffffffffffffffffffffffffffff90fa4a62c4e0000", - "dataAbiValues": { - "methodSignature": "handleSetMaxUsersToCheck(uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457084007913129639936" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 14857, - "blockTimestampDelay": 578411 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000070000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x91e32c74fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8000053817ae4082823f7b7ef4f21ea8eaf2d55883b146199ee5cd9707c39a3f025ab", - "dataAbiValues": { - "methodSignature": "handleCreateRequest(uint256,bytes32)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913129115648", - "53817ae4082823f7b7ef4f21ea8eaf2d55883b146199ee5cd9707c39a3f025ab" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 23, - "blockTimestampDelay": 32 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000070000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x48a41c2700db944f945348b4c6cffca09ace97414e862af57bfe67d15e8f4ba3813ede4b3d688e69cd534e15f8ccc3765fd50e2ab30d2b740b3ff6d5865213182fe783c63b4bac2923dad06e124a6e05ae7aa5ae1b3e8edff0154acd1de94e5fe6e26732", - "dataAbiValues": { - "methodSignature": "handlePropose(uint256,uint256,uint256)", - "inputValues": [ - "387963111102058097323071002434237761651493831039740349958407635767455047243", - "27775818758715135462630212585325327395456425224261459780030383525521640620998", - "26820159805776502209708934821205059577225837408551437026198979884765463865138" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 25200, - "blockTimestampDelay": 27983 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000020000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 2, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xc0106a6cfffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7fc1800001fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff", - "dataAbiValues": { - "methodSignature": "handleCreateRequest(uint256,uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913129114648", - "220855883097298041197912187592864814478435487109452369765200775161577471" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 50518, - "blockTimestampDelay": 458752 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000050000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 5, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x9d2e6a6f000000000000000000000000000000000000000000000000000000000005d100", - "dataAbiValues": { - "methodSignature": "handleRemoveEBORequestCreatorRequestModule(uint256)", - "inputValues": [ - "381184" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 23639, - "blockTimestampDelay": 195785 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000040000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 4, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x3edc7cbd1599870fe02ecf9ec87ee76accd2d760e7eba60278962813ea05d348dc178e41", - "dataAbiValues": { - "methodSignature": "handleFinalizeRequestFinalityModule(uint256)", - "inputValues": [ - "9769829584924913960676332702159746411403704490750429962740385280098947272257" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 2685, - "blockTimestampDelay": 487244 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000080000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x0fb55087fffffffffffffffffffffffffedea0275f3411a7ad187b0108aa786a3f16bde9", - "dataAbiValues": { - "methodSignature": "handleApproveModule(uint256)", - "inputValues": [ - "115792089237316195423570985008681454588525719193607429938766044948827876015593" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 15207, - "blockTimestampDelay": 220921 - }, - { - "call": { - "from": "0x00000000000000000000000000000000000a0000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x6b125a57e286bb06cb42cc1cd185bc3f02cfcd592fc3e9b10aa00b2c2b633d09978af7a7", - "dataAbiValues": { - "methodSignature": "handleRemoveEBORequestCreatorFinalityModule(uint256)", - "inputValues": [ - "102460752096230911141037771748726806398872347580671159824723173728064937588647" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 12095, - "blockTimestampDelay": 12289 - } -] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/call_sequences/immutable/1731277803609589000-741509d7-8c95-4626-b5c3-c17625f529b5.json b/test/invariants/fuzz/corpus/call_sequences/immutable/1731277803609589000-741509d7-8c95-4626-b5c3-c17625f529b5.json deleted file mode 100755 index 506127c..0000000 --- a/test/invariants/fuzz/corpus/call_sequences/immutable/1731277803609589000-741509d7-8c95-4626-b5c3-c17625f529b5.json +++ /dev/null @@ -1,829 +0,0 @@ -[ - { - "call": { - "from": "0x0000000000000000000000000000000000030000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x13a8b8040000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000034000000000000000000000000000000000000000000000000000000000000000170000000000000000000000000000000000000000000000000000000000d2f000ffffc0000000000000000000000000000000000000000000000000000000000181dc31bc03ad9bc8a966de91dfc8c49b929f6d5fd44a9c22a7f5bb37cebfc106000000000000000000000000000000000000000000007ff72b2c19616ab00000e645df196666f5e4e940c577b9670b086db2c746878e45aae0dbee6c63a0e6a35bc2cfc37067e378b4feef3f3411136744d0b2851c161c601669654cf27bfe6100000000000000000000000000000000000000000000000000000000000000006cd40d93882a844c2becf361c7579664aef7a6ef6e8b79d6bf6f6f76426e9b14039e696f94058cfd274de97421f65916ac135f4d55083d357b9c1f34820c9376000000000000000000000000000000000000000000000000000000000003fffe000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000004ac07813439b9213b22d4d86340307a2982de60c241368ad288dfea742b6eb5efffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9686c2d73382b1edfa908bcaeb6b9ac0073f469887a9150c80831642e47e35a614c1bffffffffffffffffffffffffffffffffffffffffffffe48e5eb33a3a7f000000104a13a90c13653470268ea78892361e7e91e706d859aabaaf45ddd18c956640809a37cc7335cdf29b7d988dc8c05e2c1899ad1795364e6fa667088b49487472000000000000000000000000000000000000000000000000000000000000fff6fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b80756993dc4be6ecf1e46c48d6f9cae9255a8b46ef956a3d85442a5f41f70ecf93000000000000000000000000000000000000000000000000000000000076a700a77a4c48695a0407441e86efc633aee092d2ebd99c87fdfeebcd904fe33e086d000000000000000000000000000000000000000000000000000000000000001d563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd0633ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed6958658aad3329b56f2f98187bbaed7351982ae06a00b9382adcb723b8b393d1f5e2def8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b4498bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a0171bc7dd16f0e277b94f2e46980d7e8e6c3c5187bf68be378e2d72cd0e70293ef8d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad82082401f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade0554594d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae962914f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874465e592f6d3f1d78fbc619b878d95794035829bd9b1285f3eb021d72f8e45638ba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c33f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8fd276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a9925e5ea45a807ae40eb654d82982bacb30bb1da6060d308d0b63004f4e1926b0c3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f6617237058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf259a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe2665f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a219fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb", - "dataAbiValues": { - "methodSignature": "handleCreateRequests(uint256[],bytes32[])", - "inputValues": [ - [ - "13824000", - "115791647525550000827488589184312722123641027794666345134718053606362806484993", - "58737407075920930096693749632210245280794127876199190949253348332199714210054", - "604300000000000000000000", - "104155407395839188072220307346509508179171066778602859964492537460856123877027", - "41504671482165347584846103287222174319130579613222615088745194098566077611617", - "0", - "49224452924880417829398231270379785502530069722970149981823851608145893694228", - "1636828073493779560152621491074002847609709387720111137750911676859097584502", - "262142", - "1", - "0", - "33811214160519685654400438720767591502827986970858420988841187408488311483230", - "115792089237316195423570985008687907853269984665640564039457584007913129207916", - "20557653259021005890251421269967042420225955023564768794272035576696478452763", - "115792089237316195423570985008687907853269984665640563909857584007913129639936", - "7367887950809164700104084563884591449786965425123545364576065505479275931200", - "58168524174645209900719041489934173752247098791866719219864340874379345294450", - "65526", - "115792089237316195423570985008687907853269984665640564039457584007913129380736", - "53107142721938561923251317745913031228477959801596843755970727929974933606291", - "7776000", - "75752327540241786815348607290604056680494387521335977257182003214564422715501" - ], - [ - "563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe", - "27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a", - "9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd06", - "33ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865", - "8aad3329b56f2f98187bbaed7351982ae06a00b9382adcb723b8b393d1f5e2de", - "f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1", - "c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b44", - "98bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01", - "71bc7dd16f0e277b94f2e46980d7e8e6c3c5187bf68be378e2d72cd0e70293ef", - "8d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea", - "94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad8208240", - "1f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade05545", - "94d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056", - "cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae96291", - "4f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa", - "9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874", - "465e592f6d3f1d78fbc619b878d95794035829bd9b1285f3eb021d72f8e45638", - "ba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c3", - "3f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8f", - "d276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99", - "25e5ea45a807ae40eb654d82982bacb30bb1da6060d308d0b63004f4e1926b0c", - "3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb", - "4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f661723", - "7058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78", - "994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25", - "9a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe26", - "65f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a2", - "19fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c", - "51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb" - ] - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 21265, - "blockTimestampDelay": 360627 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000030000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 2, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x0692ea7eeaaa73118d1da2c1db95511517ab896f87445c2331029aecdc7f065f634e6b46", - "dataAbiValues": { - "methodSignature": "handleRemoveChain(uint256)", - "inputValues": [ - "106142364743506859045918558596602602319943607038906547683486076996802461985606" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 2001, - "blockTimestampDelay": 455470 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000090000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x864e2da9fffffffffffffffffffffffffffffffffffffffffffffffff90fa4a62c573a80b81e8d97661fbf779db19fd00793e39f3b40bca612ee408ab75ff1c6439cf047509736e50626b1084ee93f4294000f73db102927cdc7fc34de68c384da900e6c", - "dataAbiValues": { - "methodSignature": "handleArbitrateDispute(uint256,uint256,uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457084007913130244736", - "83279546779206125286340055887058748934887896216240549764862301155730028032071", - "36452200662221151095065482565067302916782446267779931962683895890335455252076" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 41956, - "blockTimestampDelay": 475112 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000090000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xb6c75efaab191ad64d8fba3d052ab8ef37a088ba9faf5a1be696a47310de3441525ef897fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe3aaae444ec5312714f03b0566d2b40e5d34f58f068cabf3625fc0d7cfe3db912", - "dataAbiValues": { - "methodSignature": "handleClaimEscalationReward(uint256,uint256,uint256)", - "inputValues": [ - "77389853507359787864882669351213362161735184606551274462865365263877886900375", - "115792089237316195423570985008687907853269984665640564039457584007913129639934", - "26536084675173092165947634556752584404681954305155475174391110206140234709266" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 18699, - "blockTimestampDelay": 240561 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000030000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 3, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xf84d6dfcd2d78e343e1607b919341e2fe248544a49a0028fbd677a717f6a437862ddbc00", - "dataAbiValues": { - "methodSignature": "handleAddEBORequestCreatorRequestModule(uint256)", - "inputValues": [ - "95366551777850189910113500849756061153261920552639335948298155642211775921152" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 16776, - "blockTimestampDelay": 165634 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000060000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x0fb55087cd27e66c1a6365fdd2d452e5a6a582655000c0811d209ba0499f4483caf4b2da", - "dataAbiValues": { - "methodSignature": "handleApproveModule(uint256)", - "inputValues": [ - "92794631311208978202520326772644046682922248037671286389514014341863059010266" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 6256, - "blockTimestampDelay": 488143 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000060000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xaa1a5bd9128a1b5b9d7d3061f14bea63c8830170dadc5f154b01425336f91cc6d8611588ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00", - "dataAbiValues": { - "methodSignature": "handleResolveDispute(uint256,uint256)", - "inputValues": [ - "8385644986530251641334144830118419649455771804161689778824132977763480049032", - "115792089237316195423570985008687907853269984665640564039457584007913129639680" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 35699, - "blockTimestampDelay": 65536 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000020000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x51b295e30000000000000000000000000000000000000000000000000de0b6b3a7640000", - "dataAbiValues": { - "methodSignature": "handleFinalize(uint256)", - "inputValues": [ - "1000000000000000000" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 41252, - "blockTimestampDelay": 375602 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000020000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xf60285caff44fb6a2363fac767b088aff222c3143f1ed041c9b3e47d6474ee4922e1979fec9d178675775c3aa5161a5a209a68597466d991483528cc71c8d6ac533d0955a137b7e6f635f28c37dc46d14755f62f1ce7b659dc1873b04e1744e54dc225b665dad307139d75a132cdb60e373e4b35bba44673f5ee3d0bfbf1ac491c3d0e75", - "dataAbiValues": { - "methodSignature": "handleBondWithSender(uint256,uint256,uint256,uint256)", - "inputValues": [ - "115461657188952309751477762153544746327107707569543270374831352475679717431199", - "107023389619990543669223297468939824753654796115418022982959364890624175966549", - "72920814456766912229072746410044959713398794893085675262607692768311068730806", - "46070226826296101107756227560930518318774961046515756120293728876851585945205" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 39447, - "blockTimestampDelay": 175903 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000040000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xa59d317d37645351a8f36eba3b366024eafac86b09ad5a52e0d3cf42eb52112344ab3206000000000000000000000000d12fb9f7a711eb0caf6aac68aeaf04277804b39e000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000000000000000000000000000000000000003200000fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffb00000b2104824bc90dc4bcf1e407a769278e1c443fdba6cf324b44962e4fea636424", - "dataAbiValues": { - "methodSignature": "handleSetResponseModuleData(uint256,(address,address,uint256,uint256,uint256))", - "inputValues": [ - "25054466425052560783839884851311066245042877293899029878022208182382616064518", - { - "accountingExtension": "0xd12fb9f7A711Eb0caF6aaC68AEaF04277804B39e", - "bondSize": "52428800", - "bondToken": "0x000000000000000000000000000000000000000A", - "deadline": "115792089237316195423570985008687907853269984665640564039457584007913129312256", - "disputeWindow": "5033778407313201451107747851099848118306043382601391308246767880599192691748" - } - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 26656, - "blockTimestampDelay": 604799 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000040000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x0692ea7efffffffffffffffffffffffffffffffffffffffffffffffffbd62f96e74f8b00", - "dataAbiValues": { - "methodSignature": "handleRemoveChain(uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457284007913128430336" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 56799, - "blockTimestampDelay": 262144 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000020000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 2, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x4741f6dcfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd0000", - "dataAbiValues": { - "methodSignature": "handleSetFinalityModuleData(uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913129443328" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 23786, - "blockTimestampDelay": 327680 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000050000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x13a8b804000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000e00000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000d2f0087104a1ac49782a4e16877da31b055635722ebf513f4c9d4971ee8ba22ecc4a6eec651143a3c6f38d013752a6418c6f09e02c569047e21b1821746f674b34b1c0000000000000000000000000000000000000000000000000000000000000036fa4a08dc093aad94a53150a69958ea5701d0cdfc0457647f4a00851f2b3ffa4ffd8a6288227c780955edaf8b4dede4dd79b2d6a1b9670dc32f84033dbf8be3094a3581399d5766a955990785635f7387f42bc3ac7aefc687d70bedd0207993bc4c485bed03b3790844630b99699bb40f5069c1d8403298cdfda2575a3317f64ae11593ffb0ec0927fe5913230c741395327603a0cb862e6b83dfda2f6220ae47cc515c273c51f6f72596a67c49bd9c8c601629067e48532c86a5ec436da6c5d4a086dd03f412f823cb3b33845d313ed20d3eb30a8c1738fe538f8ce08dda6bc903393b682ce82af7ad546cbd6f5e6b633403a16c9539778326f27093154073c189ff0c2a9bf1d9e0c1340059cb502459adc6848943173465070dbc70f56c9773a380843bf072ee4ebcdaa6db9c9b1bcdd7accd8376418847fe049b50be079824e34e17ba796d22717b906c8ae168c515652b146e98f67ff81a17d32cfbb3a45d70b80d8aebc1f699d448d6bb373046a46055cea8663f1e133e3b318bd3bbf341831782f5c84d3a2e123ae7cf9de566a9e5958314dac1f2f943af76cc5a4ed5d61bb435d28f2bc87a2c6a8b92b314537495d986c635f3f24b0c89bb8431fd15da1f20ecad2204c5f2c899891deee290ce478f20d080be1f01b0631cfde6d77c174a0451dff325ceca911fe96cc8e506f589259f7ae6d81a6562ad17da5ac2668afb4dfae5387e68f8f182b4cd18e2d04b3d23801beadb0e540b89182a8ef12544bf301a4ed791f0937f2169890e091a55113e6f5869333627389cfa9013231650d5b1193bc5c6faf12c4caedc4c1de1a155f1caac4b1b386f2c9fb59c0edddb79370ea902ef6cdf5724565bfb35d2d999e5b8ae7d2997c94e3ce7b6bfc8698850f5bea6ed28d2670ed0bc72485811f4579eee682784c336392515b9f38b305760c5f2a08ab4ab5c4e4dc94bfd7fe5a3c37df0d10561d5eee3109a165aa8d09aee107d8bc0847badc5833e23b36da204e51497d3f1716162337b2ca72a6d9b0df65af932d7fe5768c3a7a91282332e7768f46e57727280521bd0e3c9f183fa04f1c0e3d82bf7ea3b756ba92372a93cb61e730e2e59814916b3e92ea0d14277077195c6e7500b9f864c7baa380be57ffd71a995ea5594800861a797da989e5e145ccb01db898f989f4c6fde7d34bf056442d3839d229d6e8c8fd581525acabfa32dfd933d425b58fea110c87b5d18bd00fffbffa00d873198e501a825357e75a85912832c0f7dc92f5825797c2460c978f3e875aea0a979c0a4060871bbd79a9babf07212d556a72bb84496ad42f34884efeed068bfad56613cf714bca57b67944ed964fa024cbdc39fe0848bdeb5c884858a5ac18070bc1e4c0329f2d89fcaadcfdab6ef8a1532af54954a15ea5e23ce45325d9f98f0e3fb86d60b7a0397d2453942930b89e474cdda078d4d62f83b306800b744f407abb12457ab2002a4c1babaebbacd167f44ae7a2bcba0576b2bba82a9e92a2177c482c7e3607c94e731f1a05d19d027153f2b2e5e5fa02b5887eadf045f884b7410bc1af1eb756ae71476a0623a5c27fbd454617541c911c1ca7f76e1017369953940959affc0126bd3ec9ee985c1ac0733a0d152dc33ad991a56c05ed402b56772c434095bf2c563875bd1ef4f339a0116feea24de95ead8342f2cc38eb2eb85b85c3ecbb25e77ae77cbbeb5b4bbc22e5b5bae35469b6565c089be978e383bca0d9ea2bdf66b2c2022976a424700038eb0dd496185b4406b017eb667af2336bd343a6518cdb282ed1f4ad156a51a420357c104c259ffefcc61717fc2d33bbac669fd340b62448e7b1ff79817d2faacc25d75413c7765d42904380717b7dfba97b043ecf6e68448d74c814a84fcec4b8e91924a2d84756257a3f7b5be9993390cb0d83ea216c344cd01747e580a018abe2b78ff31d78a0376939df219b6e4348501b5cd4005a711a4cf2585665816a7e23ad88e6fce9816231f577a8a4cc99f0fb7042243727ff97dfb91a943382ca90c2df1ad395083a12f7234582ea05fb002ebe876e39b32b192b8ada3a742f234ac609ba886fe26fc693ae013386f1b8b4d4b3c0fca228fbbd7af483f28f0a6a1363b275abecc85f2bee9d3c5c82a69692d9e81a977c050c94a09db9ac1ec9c86f3a6e0085d60e0d08cd2f8711d90b4066d0b5dfa922675d11a734712b53ba0ccab9ab7a8fe313144d531d11397926ca47601f444c6e995d8c7bfe71bac0249f67ef196e0656ff7e065d21224aea23f74592d0df86b3869e0a08de6c436ae57b76cc6821c11d16b120219ecb3e66724bb9b913be1da889b5d3900926e267b2beaeca176baaa9f8c82b8d74a308a307751320c46e850a5eaea83c5acccf639b783f5606cebaf54d8c04499037c3ab777163747416a6910cb0352002b67", - "dataAbiValues": { - "methodSignature": "handleCreateRequests(uint256[],bytes32[])", - "inputValues": [ - [ - "2", - "864000", - "61091015562669229328302511622207838274133483677802899134756790701318101320870", - "108000853268429518120666974822971079545728317287326968663692222929051051051804" - ], - [ - "fa4a08dc093aad94a53150a69958ea5701d0cdfc0457647f4a00851f2b3ffa4f", - "fd8a6288227c780955edaf8b4dede4dd79b2d6a1b9670dc32f84033dbf8be309", - "4a3581399d5766a955990785635f7387f42bc3ac7aefc687d70bedd0207993bc", - "4c485bed03b3790844630b99699bb40f5069c1d8403298cdfda2575a3317f64a", - "e11593ffb0ec0927fe5913230c741395327603a0cb862e6b83dfda2f6220ae47", - "cc515c273c51f6f72596a67c49bd9c8c601629067e48532c86a5ec436da6c5d4", - "a086dd03f412f823cb3b33845d313ed20d3eb30a8c1738fe538f8ce08dda6bc9", - "03393b682ce82af7ad546cbd6f5e6b633403a16c9539778326f27093154073c1", - "89ff0c2a9bf1d9e0c1340059cb502459adc6848943173465070dbc70f56c9773", - "a380843bf072ee4ebcdaa6db9c9b1bcdd7accd8376418847fe049b50be079824", - "e34e17ba796d22717b906c8ae168c515652b146e98f67ff81a17d32cfbb3a45d", - "70b80d8aebc1f699d448d6bb373046a46055cea8663f1e133e3b318bd3bbf341", - "831782f5c84d3a2e123ae7cf9de566a9e5958314dac1f2f943af76cc5a4ed5d6", - "1bb435d28f2bc87a2c6a8b92b314537495d986c635f3f24b0c89bb8431fd15da", - "1f20ecad2204c5f2c899891deee290ce478f20d080be1f01b0631cfde6d77c17", - "4a0451dff325ceca911fe96cc8e506f589259f7ae6d81a6562ad17da5ac2668a", - "fb4dfae5387e68f8f182b4cd18e2d04b3d23801beadb0e540b89182a8ef12544", - "bf301a4ed791f0937f2169890e091a55113e6f5869333627389cfa9013231650", - "d5b1193bc5c6faf12c4caedc4c1de1a155f1caac4b1b386f2c9fb59c0edddb79", - "370ea902ef6cdf5724565bfb35d2d999e5b8ae7d2997c94e3ce7b6bfc8698850", - "f5bea6ed28d2670ed0bc72485811f4579eee682784c336392515b9f38b305760", - "c5f2a08ab4ab5c4e4dc94bfd7fe5a3c37df0d10561d5eee3109a165aa8d09aee", - "107d8bc0847badc5833e23b36da204e51497d3f1716162337b2ca72a6d9b0df6", - "5af932d7fe5768c3a7a91282332e7768f46e57727280521bd0e3c9f183fa04f1", - "c0e3d82bf7ea3b756ba92372a93cb61e730e2e59814916b3e92ea0d142770771", - "95c6e7500b9f864c7baa380be57ffd71a995ea5594800861a797da989e5e145c", - "cb01db898f989f4c6fde7d34bf056442d3839d229d6e8c8fd581525acabfa32d", - "fd933d425b58fea110c87b5d18bd00fffbffa00d873198e501a825357e75a859", - "12832c0f7dc92f5825797c2460c978f3e875aea0a979c0a4060871bbd79a9bab", - "f07212d556a72bb84496ad42f34884efeed068bfad56613cf714bca57b67944e", - "d964fa024cbdc39fe0848bdeb5c884858a5ac18070bc1e4c0329f2d89fcaadcf", - "dab6ef8a1532af54954a15ea5e23ce45325d9f98f0e3fb86d60b7a0397d24539", - "42930b89e474cdda078d4d62f83b306800b744f407abb12457ab2002a4c1baba", - "ebbacd167f44ae7a2bcba0576b2bba82a9e92a2177c482c7e3607c94e731f1a0", - "5d19d027153f2b2e5e5fa02b5887eadf045f884b7410bc1af1eb756ae71476a0", - "623a5c27fbd454617541c911c1ca7f76e1017369953940959affc0126bd3ec9e", - "e985c1ac0733a0d152dc33ad991a56c05ed402b56772c434095bf2c563875bd1", - "ef4f339a0116feea24de95ead8342f2cc38eb2eb85b85c3ecbb25e77ae77cbbe", - "b5b4bbc22e5b5bae35469b6565c089be978e383bca0d9ea2bdf66b2c2022976a", - "424700038eb0dd496185b4406b017eb667af2336bd343a6518cdb282ed1f4ad1", - "56a51a420357c104c259ffefcc61717fc2d33bbac669fd340b62448e7b1ff798", - "17d2faacc25d75413c7765d42904380717b7dfba97b043ecf6e68448d74c814a", - "84fcec4b8e91924a2d84756257a3f7b5be9993390cb0d83ea216c344cd01747e", - "580a018abe2b78ff31d78a0376939df219b6e4348501b5cd4005a711a4cf2585", - "665816a7e23ad88e6fce9816231f577a8a4cc99f0fb7042243727ff97dfb91a9", - "43382ca90c2df1ad395083a12f7234582ea05fb002ebe876e39b32b192b8ada3", - "a742f234ac609ba886fe26fc693ae013386f1b8b4d4b3c0fca228fbbd7af483f", - "28f0a6a1363b275abecc85f2bee9d3c5c82a69692d9e81a977c050c94a09db9a", - "c1ec9c86f3a6e0085d60e0d08cd2f8711d90b4066d0b5dfa922675d11a734712", - "b53ba0ccab9ab7a8fe313144d531d11397926ca47601f444c6e995d8c7bfe71b", - "ac0249f67ef196e0656ff7e065d21224aea23f74592d0df86b3869e0a08de6c4", - "36ae57b76cc6821c11d16b120219ecb3e66724bb9b913be1da889b5d3900926e", - "267b2beaeca176baaa9f8c82b8d74a308a307751320c46e850a5eaea83c5accc", - "f639b783f5606cebaf54d8c04499037c3ab777163747416a6910cb0352002b67" - ] - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 40713, - "blockTimestampDelay": 288890 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000040000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 2, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x51b295e3bb1a2084cb159fd6a10d243726c06ecc2c061e64fa5637a4e1e36ecd536af41a", - "dataAbiValues": { - "methodSignature": "handleFinalize(uint256)", - "inputValues": [ - "84628665144738400938347255498120459236162163404711567437113231227400449881114" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 40461, - "blockTimestampDelay": 86400 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000010000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x51b295e35136d12e4fabb2fa40b59d097a7d5e4dc2581129e405d2d808b39933f643e93e", - "dataAbiValues": { - "methodSignature": "handleFinalize(uint256)", - "inputValues": [ - "36734194190276940096273241257659402973542659853799331442674641708617136597310" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 0, - "blockTimestampDelay": 0 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000090000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 2, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xc0106a6cffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0a9473a1fb03242c6ca0cf72ce918a668d75a7aef4f15a0d33f1a7b490a38de2b", - "dataAbiValues": { - "methodSignature": "handleCreateRequest(uint256,uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913129639904", - "76566718707773384903225614118535891165433973603151251259517762515743289171499" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 47596, - "blockTimestampDelay": 550258 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000030000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 4, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xcd10417a00000000000000000000000000000000000000000000000000000000000300000000000000000000000000000000000000000000000000000000000000000000", - "dataAbiValues": { - "methodSignature": "handleEscalateDispute(uint256,uint256)", - "inputValues": [ - "196608", - "0" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 49468, - "blockTimestampDelay": 531192 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000050000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x48a41c27f5e2b5585f4a318b516ae77e2bcf1d0c6c69d73f617d0ad2dbeddce25ff7ba910000000000000000000000000000000000000000000000000000000000000100ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff01", - "dataAbiValues": { - "methodSignature": "handlePropose(uint256,uint256,uint256)", - "inputValues": [ - "111217206938139444968553110676306921351727538827093245698432831002069798730385", - "256", - "115792089237316195423570985008687907853269984665640564039457584007913129639681" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 58448, - "blockTimestampDelay": 291208 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000040000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 3, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x223b137447d666f967a2435f360ae1a5d74411418e2552cde02c3fbb44404f0b7f0b7418000000000000000000000000000000000000000000000000000000000000004016d6fce3ebe57504d74c895dd764984c1a0fd9bc84e53996fe9d1fdbe18087310000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000000000000000000000000000000000000382997ddbd0ec071e601a74bec3b18f95a929e2c8f2fc57697f8fb476f87fce56000000000000000000000000000000000000000000000000000000000000000273d0000000000000000000000000000000000000000000000000000000000000", - "dataAbiValues": { - "methodSignature": "handleSetRequestModuleData(uint256,(uint256,string,address,uint256))", - "inputValues": [ - "32493028223342497817984115926415147953105366173154533585631663319985412600856", - { - "accountingExtension": "0x0000000000000000000000000000000000000003", - "chainId": "s\ufffd", - "epoch": "10330733325524501176169902709898413906911149832921865654336546665583987427121", - "paymentAmount": "59071866561259445092599584718662586641316079064498865051383233255850771467862" - } - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 60461, - "blockTimestampDelay": 141927 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000020000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 3, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xa44b098efffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeae7d", - "dataAbiValues": { - "methodSignature": "handleSetArbitrator(uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913129553533" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 0, - "blockTimestampDelay": 0 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000050000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 2, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x88b05f294612566bf9a56551713402058b178bf9334e16a430e78e53610b3f6114f2e572000000000000000000000000000000000000000000000000000000000000000200000000000000000000000018d46a62722e6eafc069b97c7a78574ce775f12972176491145ebf6cab47d070a505484213e19c33bd80bea8025c039a73381b46fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b80fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd97e0eb0dc1b379e381e4fe6763a824517b98db81bcc6b00d254c5ccfca3f2ac18b9668134e813d08414573dcc8f081b6e06ecf54faff7d640eb4d6256186486c", - "dataAbiValues": { - "methodSignature": "handleSetDisputeModuleData(uint256,(address,address,uint256,uint256,uint256,uint256,uint256))", - "inputValues": [ - "31694299109185575978093051252844457975556191736261404991840997988919212696946", - { - "accountingExtension": "0x0000000000000000000000000000000000000002", - "bondEscalationDeadline": "115792089237316195423570985008687907853269984665640564039457584007913129639933", - "bondSize": "51604996306954439705122303006796123301392110440900451331152134443247940934470", - "bondToken": "0x18D46A62722e6EaFC069B97C7a78574Ce775f129", - "disputeWindow": "63137231314917362874984632942434005220138982617699967905479977286643722111084", - "maxNumberOfEscalations": "115792089237316195423570985008687907853269984665640564039457584007913129380736", - "tyingBuffer": "68696636159853489678209085642458599054486261706714901038271685491028301654721" - } - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 20610, - "blockTimestampDelay": 50559 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000010000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x91e32c742e693f54b35fa5d59ec7953d3d92c6c7321e518cbc79bb814991c6e38f5e3a3b39aa5c9d593e01f0e71bc219c99a7b0f669cacf8042cd6f7799e6b55d0d6b295", - "dataAbiValues": { - "methodSignature": "handleCreateRequest(uint256,bytes32)", - "inputValues": [ - "20992347070177599493552861158782242658616332286840658514010375208108738624059", - "39aa5c9d593e01f0e71bc219c99a7b0f669cacf8042cd6f7799e6b55d0d6b295" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 20220, - "blockTimestampDelay": 415244 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000070000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x5cc02fa5628fe26e3155794c9672436827dce1d88dc59c36825e4dbc840be7b15b3945f3", - "dataAbiValues": { - "methodSignature": "handleSetPendingCouncil(uint256)", - "inputValues": [ - "44580881056887387257556915461952599311513410767387100456778677309001344566771" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 20553, - "blockTimestampDelay": 432000 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000070000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x40605c3f0000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000009600000000000000000000000000000000000000000000000000000000000000047687677d0c6f67a9956de9987d3e8b159a0d3c12ad8f44dcf63a5e9fe7ae5ed3836c16ceef8f711d08c56d2883a542ac041c7b48b785d2419068f9a62edcd7aea0000000000000000000000000000000000000000000000000000000000000000edf7ce6770dd66f7bdcce36fc92a787d6426f09349d5baa2304120109a773e6881e245155e0ed0cd3d341cd42a57b85936f48fb474504d089e886946d60b7576e3a146458f9f31b03b050bfd1076e75bd82c2a42ee9f781bd024c95aaed1c3328f5fbec5b96c71ef236600dc1c449129b85c991ad1b7523aa54e8ea5621f5987e12335585b7f58b9b432b8b95f5fd4b96c0b638e4520eff7ebe46e3da077283efffffffffffffffffffffffffffffffffffffffffffffffffffffffffff5ff00000000000000000000000000000000000000000000000000000000000000000208c3d9dcb20ce04dfbed1a8c1c517cbb033585ec3e9aa7dfe09e91e3bb36464d98fba04831dcd2b3e695b54803c55187d640e45af514fe5c0f8081f44fbcbeadfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff60000000000000000000000000000000000000000000000000000000000080000a7914c10414c7bbb28e53dc2c688b52ca379cb0617309744884835320aa1713a80e524d9968af1ce0b859abebe59bf209b97f4e355d4be48e33124a9a4c73c9d4d0c53ce9c8d29ba273e68a6b3d85ca9f293cd46561486c23200749a0d8d411f6fc9448bb49ba795c03571e22825f0641bba1bc2a8b54733e949f6724d96eb884495e22ccb540d20202d5fa0d71109610521d4e07b0cd370531ef82b7255a85c696b94cec6c8592bc81599bafa0c68c62418dab9f4186ab1e69b7c59b92e80a51ba716e5f4c3d0fbaadae95ec36df0525837af55a6febc2c9689dc3927ef9078000000000000000000000000000000000000000000000000000000000000000a47d016964331660942cdcfa0676a830caedaf4db51a76f4b83ddea96ca711643fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6c580022ec5efeafce51a8de578c83e5d849f66594a0d307c30a3187052b6c205f99c109be70d42a58d5a7da348ccb74b3ed1ddd72a8836d6a852bad67603a37ba875000000000000000000000000000000000000000000000000000000000001518053d957c2c1f5ccc418309c4069b6c0be545d7b5ffb47492c0a301d7f0ec4b1d685963b153983c03f793bb0b8478e9a98c71ae488586e6f7c198453b6434914ae468a811a40716f1bc76e368a87a2ce5f45b008407f425d25953533f66cf9a7de808bb0b45503a9b7c4992dff96ccf858f68f88d385a58a45852255e7c2a401e8e096bedec30949990986924a9e8efb76f8fa9e1c9809016ea95f61bf96edbc2f492e56bea6a5df3db0a92fe23c15ffbc48aecf3d2d9a1d11077ee5c10aa3b8b500000000000000000000000000000000000000000000000000000000000500000000c22e450672894ab6cd8efb11d33f5617839a5bc7dea00c22e450672894a99df55d0f76bee4bcf80f8e37f4c035ac38c35fb484100a223cd0dfa9dd353eaafffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0000000000000000000000000000000000000000000000000000000000069780d924264f3898c6ca908dbe653a4417f1bbb7adfd75548319bf0485ad6aafde822e12ace8656b33eb3d6dcf829cec280dad58216e3441a45d78320f925ef4c2c7fc161600886833ad8999595a9b8a17b8340b50b143261691dd53847fc73a3c570000000000000000000000000000000000000000000000000429d069189e000090afd283d5b15af0cc55f32ed879b6b4e364cf16dd61c7c125c3abdcfe5bbc76c1ea7d56a449217e98179261720bf72d7c5fe9766e2407de8efc6be0fa889996af78a8298488eb83653785ff21b936ce9c27e44f997e65e11a10a806b28e85144e55f67548be509222b88e150fbded4b86112ef6a9a3fa5061634c10ccd26f89219311f916d4d4d069c10e5df546fcda58432bef62508e4d1e6d3fc962cc8eacffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeb0000fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7000004b7c87fff4044b4e74cac01bc926f8a66b5ffbcc5ab275d24215c0ed31e8cbc000033333333333333333333333333333333333333333333333333333333333380a241d03559e8bfba0485b0d7abed07712e2e479dd0ce47734c8c46e79ea99176f059ac75dcfddf5ab3c3eaa2f1b0a908f293a445b5b1aae50c94085b395aabb15fd23ae87d78f85eebbe80d089443433e09f7875fa1fe1e878ac8f02bac14d47db68178557f8b86fcc1e70033a6b23f36861c69650b2e1b1c54c3e4e38bec6fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff80000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed8b00c24c1bac90ebf08d9ac58f77aab9761be35a4df59a1e123ce0a52a5e459d1193abac291b6c7cf32a1c1bf4e4c34ca9f40e45197022fb5eb0336b6581998a0966b981721422af5dcbf394fb82c9530a9e41372ff98c8b715b2604518bdd53c123fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa00000000000000000000000000000000000000000000000000000429d06918a000008763a1dc6288781834628921decf9797a012b55a7340402df0aac23f1ec1c4010000000000000000000000000000000000000000000000000000000000000012fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffb000091e6bf1af91c7b654fd2e5a39fc7b291948e66ef98428300a0f1c069bf5157675a62cebece86f10ff59982c702bab09ea6efa05c1f4638d0b3cb64bc03528e2cf835137cbb5048d30b838c22241d38f1ba1211ccddcf9238cf1c7a55613b0f2c0000136b06e70b74211247c17f81c85322358d29092d96433469e3a1a3ea7544fde48049eaff4aa6184c129d4d9b2ae30d27c85fb125fabf6622a8b91539e40bea3aa7abe8774d0b75c9f61880a5eb87e8d5e9c540d1e5575a87ee6a919c4f40000000000000000000000000000000000000000000000000000000000000001a243520fba835c81d96c5aec594af13983ec1bbc4bbb65fe3c42cbad86d2f8d0b000000000000000000000000000000000000000000000000000000000000000a61bdf8e170aeac32df600557fc9109a0e1931a89ce037f7a73f4e27014cbeb3ee2999738af6c65ef91f63f8d37d38b836cf45786877c54eca436cebcfe970103e2495cba7c4e13e87ea6fd3ecaec2767555a4b05bb3a46970b2a52e369833c229c98af5791b9eb10a9ce4f8877b29a0d3d252c26e8978fc0f06dc76e5c773e0d7d18299afb7f04306c841ad4dde10b0e85299468c5542d959cc2a9eb4a224adec971ae980c3aca7594e053e53f02f2cbb507dff5ad84d765f47e082cad37088dffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000000064fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc00000000000000000000000000000000000000000000000000000429d06918a30000cfe3163c31cd941c4908c92e98dbae78eb610b5dc95280675541c644dcf9c8f500000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000070000c2df88ffb895bb3ee5e308a9f9b59def710f56ead713536fef962d1921952f52507d6ffcb75e4b55151ff6aed1a0b9bb6d8fcd8d5c591258860c6432d79b66deb6ca18f9955582373ef05fe8a0ea15469e2e42507df1773160264edb03b93d4afffffffffffffffffffffffffffffffffffffffffffffffffffffef2852482d1fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9002028aa14e24eabf324687cff69eac9445a8b6d322afd1f749d06e2db36542f15bf0000000000000000000000000000000000000000000000000000000000030000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffec64dc0896a8cd2481b4de12c4c15c61ec7269a601900ab5064de099ddc4815c21fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff96880", - "dataAbiValues": { - "methodSignature": "handleAmendEpoch(uint256,uint256[],uint256[])", - "inputValues": [ - "131072", - [ - "47249851142740957875757900722779564657107273723906910256311739213982676151608", - "24766647138290460177752181234244218002669932821712329987517949466155636587242", - "0", - "107635980887742396802989946387564943771597423793872822880446020389851475951208", - "58748141700443537731924179025379299905124924268648486910397741139492126553462", - "102959964003436531771605190463160185179521415668756700512209123474929947362098", - "64849904481003809351316455932003660004683549313112719287715608903446404487559", - "101832598753169673332434200866859671573583992662842345135767087566893488744510", - "115792089237316195423570985008687907853269984665640564039457584007913128984320", - "2", - "3964541595194321251049067066727095442150914503457355275421156022122200843853", - "69196137823698655653179131081748492787753217343508675585086117321321112977069", - "115792089237316195423570985008687907853269984665640564039457584007913129639926", - "524288", - "75792963508756617716638337164822687693930529122081563495913601860663238553914", - "58300906925523261178190550226810506704237340748656034105474573547804618603677", - "34849869920871438155430600521556864444509859388103082685646642846820738089247", - "50562335537967437952552687066491099733264203586317703438897045144079049354120", - "31022094918639093592809734205946854493687731921234396095826256308342577539164", - "47682928770316848609484539286410371707483684010538998761101216800973410697381", - "12507668409590352176172458789061820918700048371081002479886390349704123617400", - "10", - "32481872328373691918491608409201337116411995929807719754470895460896910415427", - "115792089237316195423570985008687907853269984665640564039457584007913129035136", - "987266774351020839026202647140160929484406452454656930109189606660181981596", - "7512461533277042537650113826310416800190431280406474926456260795113588631669", - "86400", - "37925977948056232333212671950177614183909984801269218202283041467764136260054", - "60423043696541527786411067027331108736077933111445718401854939120676383560878", - "31906615328792064267287065751203493967441657403485782729489444603549659539422", - "58142855929762780006244349247823147669055400828717759145815619594102285533672", - "101584422479822196487353742809726641621647381263703357860936186417864256633903", - "33100711601684018991909556451825954777243047261585260172245805028334775810229", - "327680", - "1340186218024493002587627141304258192746180378074543565271499814906401961", - "71446637037758358116465784240690108798175037326038801993773476812486740360874", - "115792089237316195423570985008687907853269984665640564039457584007913129639934", - "432000", - "98215759039058129811069975962076516563865141423407928082078011663829313773186", - "20839387647756181674923298419552294886853857628058613012393606876825426117319", - "114021860331193221546298748801449163227736451520005563918149923632276456488023", - "300000000000000000", - "65443701353316894436567772279582990841706584775134004403299385948764787948662", - "87710687043878617200016562937082580838310086473928443054884759037111133837718", - "79367930762546646363195273083176957226771595872507422347465520372259073459476", - "35432285181576787435411052955550450505300949325786212997760353422194162954121", - "15186174566889253010204046787236418120118689199202142220826285962993569926828", - "115792089237316195423570985008687907853269984665640564039457584007913128263680", - "115792089237316195423570985008687907853269984665640564039457584007913129050112", - "2133968207251167582431772071102515689799560696939649201928863585509853531324", - "353369412955676865916659500148583703165496779375123791624321240258523955", - "58182728069952182075105014396527452811135033226950986415304485007647280376209", - "53797578333320386010456122044156857743869580805840963593876795181230590614187", - "80228675625285898042656808560537019109829718306369783404321506803462795084109", - "32501870172339943500186166407857619651344111150644834648060840735320957304518", - "115792089237316195423570985008687907853269984665640564039457584007913129115648", - "115792089237316195423570985008687907853269984665640564039457584007913128430336", - "87883164001601056595617337236338321635271327694861418666965294740904263618963", - "77649678513824341834462714929317783260475812428214921694262117336984404494694", - "83906587601195920361441906297987737596060683960919063624786619529343500796195", - "115792089237316195423570985008687907853269984665640564039457584007913129246720", - "300000000000131072", - "61238269540880867255905792063103824629886144667112593231825926894695712146433", - "18", - "115792089237316195423570985008687907853269984665640564039457584007913129312256", - "65993056830217982500232177698232701243193826692204311110170855515525531916135", - "40882734288729406091300429366702778355211210171364316858691443667620666183212", - "112267363839023720090900192093569439082045663236816136381119901541587977178924", - "134018621802449300258762714130425819274618037807454356527149981490640196", - "114838877238692460901739037435708768147992899524492322670651309852230992651275", - "105944840924513804511236867160081932556494222659003216854401617204424367427392" - ], - [ - "16377133083975144612803209916890759276116079793347708892259939332490555002123", - "10", - "44209998118768791307014642136652120267704279192218906644488834105212924586814", - "102494075072658918779959176572030905228085485918607969092905532405942307979523", - "102352323603851854147303090326961438456288187821786226964274201402124301188130", - "70830575299308684007858248487084455137350147340081636707263387232100381310477", - "56581797552380621635106000276727873672203516396150582086354318630661782653662", - "91115741286620669112937454104354410989556251121248953782619196069266559797389", - "115792089237316195423570985008687907853269984665640564039457584007913129574400", - "262144", - "100", - "115792089237316195423570985008687907853269984665640564039457584007913129377792", - "300000000000327680", - "94029987401702137462237430126565305540660377850025797500486713728434821515509", - "256", - "458752", - "88143645052327880294016331672884386697866318870146480968988222959112275963730", - "36406656676820602772473438963511049244974309266248500307301099349900791604958", - "82678013919905467091748735010739230611958440922307682242577676600485986516298", - "115792089237316195423570985008687907853269984665640564039457584006755722232529", - "115792089237316195423570985008687907853269984665640564039457584007913129181216", - "18393022080502958242737873783961131068118909769972148436847751681820714800575", - "196608", - "115792089237316195423570985008687907853269984665640564039457584007913129639916", - "45620050488317513559777904066204761490045812513350707192575523630828126034977", - "115792089237316195423570985008687907853269984665640564039457584007913129207936" - ] - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 47284, - "blockTimestampDelay": 478924 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000070000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 2, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xf84d6dfc592b97c781e37069fb1746e80fce7a05bdc0db067121ed67b8f0c5341f98343f", - "dataAbiValues": { - "methodSignature": "handleAddEBORequestCreatorRequestModule(uint256)", - "inputValues": [ - "40332865490102779880692380169491232729036205025855948737372216034766219654207" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 0, - "blockTimestampDelay": 113401 - } -] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/call_sequences/immutable/1731277803612336000-5693c2ca-1af1-4296-b5e4-039401f77778.json b/test/invariants/fuzz/corpus/call_sequences/immutable/1731277803612336000-5693c2ca-1af1-4296-b5e4-039401f77778.json deleted file mode 100755 index 1390a86..0000000 --- a/test/invariants/fuzz/corpus/call_sequences/immutable/1731277803612336000-5693c2ca-1af1-4296-b5e4-039401f77778.json +++ /dev/null @@ -1,552 +0,0 @@ -[ - { - "call": { - "from": "0x0000000000000000000000000000000000030000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x13a8b8040000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000034000000000000000000000000000000000000000000000000000000000000000170000000000000000000000000000000000000000000000000000000000d2f000ffffc0000000000000000000000000000000000000000000000000000000000181dc31bc03ad9bc8a966de91dfc8c49b929f6d5fd44a9c22a7f5bb37cebfc106ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed8ee8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b825bc2cfc37067e378b4feef3f3411136744d0b2851c161c601669654cf27bfe6100000000000000000000000000000000000000000000000000000000000000006cd40d93882a844c2becf361c7579664aef7a6ef6e8b79d6bf6f6f76426e9b14039e696f94058cfd274de97421f65916ac135f4d55083d357b9c1f34820c9376000000000000000000000000000000000000000000000000000000000003fffe000000000000000000000000000000000000000000000000000000000000000167e6a528e0202cf23a36eacf513eee303475d3e4c983b2ae2d616b11c440f70a4ac07813439b9213b22d4d86340307a2982de60c241368ad288dfea742b6eb5efffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9686c2d73382b1edfa908bcaeb6b9ac0073f469887a9150c80831642e47e35a614c1bffffffffffffffffffffffffffffffffffffffffffffe48e5eb33a3a7f000000104a13a90c13653470268ea78892361e7e91e706d859aabaaf45ddd18c956640809a37cc7335cdf29b7d988dc8c05e2c1899ad1795364e6fa667088b49487472000000000000000000000000000000000000000000000000000000000000fff6fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b80756993dc4be6ecf1e46c48d6f9cae9255a8b46ef956a3d85442a5f41f70ecf93000000000000000000000000000000000000000000000000000000000076a700a77a4c48695a0407441e86efc633aee092d2ebd99c87fdfeebcd904fe33e086d000000000000000000000000000000000000000000000000000000000000001d563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd0633ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed6958658aad3329b56f2f98187bbaed7351982ae06a00b9382adcb723b8b393d1f5e2def8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b4498bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef328d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad82082401f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade0554594d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae962914f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cbba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c33f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8fd276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f6617237058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf259a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe2665f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a219fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb", - "dataAbiValues": { - "methodSignature": "handleCreateRequests(uint256[],bytes32[])", - "inputValues": [ - [ - "13824000", - "115791647525550000827488589184312722123641027794666345134718053606362806484993", - "58737407075920930096693749632210245280794127876199190949253348332199714210054", - "115792089237316195423570985008687907853269984665640564039457584007913128431336", - "115792089237316195423570985008687907853269984665640564039457584007913129380738", - "41504671482165347584846103287222174319130579613222615088745194098566077611617", - "0", - "49224452924880417829398231270379785502530069722970149981823851608145893694228", - "1636828073493779560152621491074002847609709387720111137750911676859097584502", - "262142", - "1", - "46995738119123743123282428161140493004285235666026628953647859202250191730442", - "33811214160519685654400438720767591502827986970858420988841187408488311483230", - "115792089237316195423570985008687907853269984665640564039457584007913129207916", - "20557653259021005890251421269967042420225955023564768794272035576696478452763", - "115792089237316195423570985008687907853269984665640563909857584007913129639936", - "7367887950809164700104084563884591449786965425123545364576065505479275931200", - "58168524174645209900719041489934173752247098791866719219864340874379345294450", - "65526", - "115792089237316195423570985008687907853269984665640564039457584007913129380736", - "53107142721938561923251317745913031228477959801596843755970727929974933606291", - "7776000", - "75752327540241786815348607290604056680494387521335977257182003214564422715501" - ], - [ - "563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe", - "27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a", - "9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd06", - "33ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865", - "8aad3329b56f2f98187bbaed7351982ae06a00b9382adcb723b8b393d1f5e2de", - "f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1", - "c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b44", - "98bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01", - "108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef32", - "8d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea", - "94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad8208240", - "1f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade05545", - "94d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056", - "cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae96291", - "4f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa", - "9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874", - "ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cb", - "ba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c3", - "3f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8f", - "d276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99", - "fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce", - "3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb", - "4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f661723", - "7058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78", - "994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25", - "9a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe26", - "65f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a2", - "19fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c", - "51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb" - ] - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 21265, - "blockTimestampDelay": 360627 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000050000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x91e32c74e0613faa5f896b73380078af3c1ee8605eec949aaf9c8f422f264f3de916b58dc905ee964be623d23ba97ccc5a2b838249eaa10a8671d6a68f97b09746107abf", - "dataAbiValues": { - "methodSignature": "handleCreateRequest(uint256,bytes32)", - "inputValues": [ - "101489901651207154401933345705911812335881908306802664469868899807780031346061", - "c905ee964be623d23ba97ccc5a2b838249eaa10a8671d6a68f97b09746107abf" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 23884, - "blockTimestampDelay": 297676 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000020000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x161c7318", - "dataAbiValues": { - "methodSignature": "test_debug()", - "inputValues": [] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 0, - "blockTimestampDelay": 1 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000070000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xaa1a5bd9ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffee2cac1a259bf9695aac61487b4606621f281407f44a6d621116f436e53e00628b", - "dataAbiValues": { - "methodSignature": "handleResolveDispute(uint256,uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913129639918", - "20205843492154653597326893919151713313559584018734749877274787063574636290699" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 23891, - "blockTimestampDelay": 328958 - }, - { - "call": { - "from": "0x00000000000000000000000000000000000a0000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xec5bf215fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff60000", - "dataAbiValues": { - "methodSignature": "handleFinalizeRequestResponseModule(uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913128984576" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 23883, - "blockTimestampDelay": 276784 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000020000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xd1a55655fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe9c", - "dataAbiValues": { - "methodSignature": "handleRevokeModule(uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913129639580" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 14210, - "blockTimestampDelay": 524288 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000060000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x727899fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffb001400000000000000000000000000000000000000000000000000000000001275000000000000000000000000000000000000000000000000000000000000000000a46e28ce399e11c208b07a84e457189f5b64e15f51e128b7baf507642bfef8c6", - "dataAbiValues": { - "methodSignature": "handlePledge(uint256,uint256,uint256,uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913129312276", - "1209600", - "0", - "74373941974452021616102119156230516273735358461823357873191033522071497799878" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 1, - "blockTimestampDelay": 256 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000040000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xa44b098effffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0003", - "dataAbiValues": { - "methodSignature": "handleSetArbitrator(uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913129574403" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 43748, - "blockTimestampDelay": 541010 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000010000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x8f790139ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0", - "dataAbiValues": { - "methodSignature": "handleReleaseUnutilizedResponse(uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913129639904" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 11833, - "blockTimestampDelay": 213928 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000090000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xa59d317d7f4bab9c72ef04decea93d5f106890883b64be0e4f50aa1ceebd5a435a7fa13a0000000000000000000000001302f0402bb094e65a1c38fc8979628fa7cb7eb80000000000000000000000000000000000000000000000000000000000093a8000000000000000000000000000000000000000000000000000000000000d2f00fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff70000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff", - "dataAbiValues": { - "methodSignature": "handleSetResponseModuleData(uint256,(address,address,uint256,uint256,uint256))", - "inputValues": [ - "57577429716414119383889913852992200380066446236494108346454295294682507223354", - { - "accountingExtension": "0x1302F0402bb094e65a1c38fC8979628FA7cb7eB8", - "bondSize": "864000", - "bondToken": "0x0000000000000000000000000000000000093A80", - "deadline": "115792089237316195423570985008687907853269984665640564039457584007913129050112", - "disputeWindow": "115792089237316195423570985008687907853269984665640564039457584007913129639935" - } - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 30759, - "blockTimestampDelay": 56734 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000060000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x864e2da9ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff30838cd661e07d4920a4bce6f00da019a66f1a0c976d396f8827e2cc52ed8ce1fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff80000", - "dataAbiValues": { - "methodSignature": "handleArbitrateDispute(uint256,uint256,uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913129639935", - "21943445721707534311606538764242968064099548519492097564976924267444655983841", - "115792089237316195423570985008687907853269984665640564039457584007913129115648" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 1, - "blockTimestampDelay": 2 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000090000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x9f6259e5fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd0000ffff800000000000000000000000000000000000000000000000000000000007", - "dataAbiValues": { - "methodSignature": "handleResolve(uint256,uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913129443328", - "115791205813783806231406193359937536394012070923692126229978523204812483330055" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 23928, - "blockTimestampDelay": 603784 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000050000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x91e32c7440906eb1080127929789d55c169cd890ff51930058d460b835803e947a1382a9e3a84eb76ecf8f296e15f27686df9d7107dae93af0929c31ee8d76fd38476ee4", - "dataAbiValues": { - "methodSignature": "handleCreateRequest(uint256,bytes32)", - "inputValues": [ - "29203212251508816547276680880804676973046658682524638891611434720618890887849", - "e3a84eb76ecf8f296e15f27686df9d7107dae93af0929c31ee8d76fd38476ee4" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 8633, - "blockTimestampDelay": 384652 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000070000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xcd10417afffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00000e9d23751886f170e2b576c9a16ce5725aaa7d6b5a51829b582417606f258a52e", - "dataAbiValues": { - "methodSignature": "handleEscalateDispute(uint256,uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913128591360", - "105760313397677454187313767699264694345051805328600745402406216015374137730350" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 0, - "blockTimestampDelay": 0 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000070000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 2, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xdb106ace00000000000000000000000000000000000000000000000000000000000700000000000000000000000000000000000000000000000000000000000000000b8000000000000000000000000000000000000000000000000000000000000000018e16328353e4335d4857f0c0272a56e894016a8e7fd5018abf59e4d63ffccc5d", - "dataAbiValues": { - "methodSignature": "handleSlash(uint256,uint256,uint256,uint256)", - "inputValues": [ - "458752", - "2944", - "1", - "64267643762154101036828179854063870619362775084021579500394794132351915707485" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 164, - "blockTimestampDelay": 328 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000070000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 3, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x64d6e6d34c37e1c6d066da117417045ecbb977d5fedb1a4f579c688036dfc2df96e8752a043feae6e9cd4dd5562baba0f9a2b8b88a6d24a210411d2a9ec010c887b2bbe857bd07a491da874930cf70d2603f546341bf1b41678d94212ad0d7f75f1f8c34", - "dataAbiValues": { - "methodSignature": "handlePledgeAgainstDispute(uint256,uint256,uint256)", - "inputValues": [ - "34474511333835792082501049571137601504043270057660531960180087278390018077994", - "1922183993469207343531967439441002744253338739077547349842513920358809254888", - "39685204671003151059797908428363376637491661590041500229844100997746182294580" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 13776, - "blockTimestampDelay": 196607 - }, - { - "call": { - "from": "0x00000000000000000000000000000000000a0000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xec5bf2150000000000000000000000000000000000000000000000000429d069189e0000", - "dataAbiValues": { - "methodSignature": "handleFinalizeRequestResponseModule(uint256)", - "inputValues": [ - "300000000000000000" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 73, - "blockTimestampDelay": 256 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000040000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x88b05f29ef15b65782cfe591a01276bbd3a4a416a4bc7c3c46d4a2a065776ceef8729dba0000000000000000000000000413cb2b8393acd243f05fe1fc92f0f33645674b0000000000000000000000000000000000000000000000000000000000030000fffffffffffffffffffffffffffffffffffffffffffffffff90fa4a62c4e0000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed8b000000000000000000000000000000000000000000000000000000000000000000fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff70000d2ba62ed8591040e27c905c9f23b93ea29ed2e248c13da4976202a1dc77c2ba8", - "dataAbiValues": { - "methodSignature": "handleSetDisputeModuleData(uint256,(address,address,uint256,uint256,uint256,uint256,uint256))", - "inputValues": [ - "108141133076887610497531349483470932814278164634546444848861358676425430965690", - { - "accountingExtension": "0x0413cb2b8393aCD243f05fe1fC92f0F33645674B", - "bondEscalationDeadline": "0", - "bondSize": "115792089237316195423570985008687907853269984665640564039457084007913129639936", - "bondToken": "0x0000000000000000000000000000000000030000", - "disputeWindow": "95315014531250257482381499157059680862481424202393349630157942686167364021160", - "maxNumberOfEscalations": "115792089237316195423570985008687907853269984665640564039457584007913128430336", - "tyingBuffer": "115792089237316195423570985008687907853269984665640564039457584007913129050112" - } - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 38581, - "blockTimestampDelay": 108799 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000010000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x223b137450d770be3b639c40475b7c2d9b38d9e215fe44b7581f0c70a37d8c0a641edafd0000000000000000000000000000000000000000000000000000000000000040fffffffffffffffffffffffffffffffffffffffffffffffffbd62f96e762000000000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000429d069189e0000faaa954e38a0b2b00899664d61354e2cfff2f66f0626a1fe18153ff26908fb17000000000000000000000000000000000000000000000000000000000000002245524332303a206275726e20616d6f756e7420657863656564732062616c616e6365000000000000000000000000000000000000000000000000000000000000", - "dataAbiValues": { - "methodSignature": "handleSetRequestModuleData(uint256,(uint256,string,address,uint256))", - "inputValues": [ - "36565678129823773534549762252589227787369831080370959419522126439904133962493", - { - "accountingExtension": "0x0000000000000000000000000429d069189E0000", - "chainId": "ERC20: burn amount exceeds balance", - "epoch": "115792089237316195423570985008687907853269984665640564039457284007913129639936", - "paymentAmount": "113379606615874029916799118804079911196343283863948566571202567108031238699799" - } - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 37714, - "blockTimestampDelay": 360627 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000080000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x3c26dcf850998e7a487a0396644961090095b61b3c1b308fa403cec3ee49938481a811c6", - "dataAbiValues": { - "methodSignature": "handleSetEpochManager(uint256)", - "inputValues": [ - "36456338832299820178700876510501821848611772013703942260527737361995594731974" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 55799, - "blockTimestampDelay": 360605 - } -] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/call_sequences/immutable/1731277803616547000-7e10b2dd-f253-4d1d-b859-ec8a710b55b8.json b/test/invariants/fuzz/corpus/call_sequences/immutable/1731277803616547000-7e10b2dd-f253-4d1d-b859-ec8a710b55b8.json deleted file mode 100755 index 176f3f0..0000000 --- a/test/invariants/fuzz/corpus/call_sequences/immutable/1731277803616547000-7e10b2dd-f253-4d1d-b859-ec8a710b55b8.json +++ /dev/null @@ -1,741 +0,0 @@ -[ - { - "call": { - "from": "0x0000000000000000000000000000000000040000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x52e3cb9c6b0d264b5add160d5053aa476132c22d6540d3605ad8dfb850790b1ba996569b", - "dataAbiValues": { - "methodSignature": "handleSetMaxUsersToCheck(uint256)", - "inputValues": [ - "48420708108177856443123222644862532857390746786695606854692354379525674915483" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 59698, - "blockTimestampDelay": 331757 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000020000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x62e8fd3500000000000000000000000000000000000000000000000000000000000000124ab950c09e2414c3ec444389b5281e1bdfda8ecfec5392240af8d376f3781e4f", - "dataAbiValues": { - "methodSignature": "handleOnDisputeStatusChange(uint256,uint256)", - "inputValues": [ - "18", - "33798574834817402171861624718400176195923458571787846279113220864863863578191" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 41059, - "blockTimestampDelay": 386818 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000040000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x161c7318", - "dataAbiValues": { - "methodSignature": "test_debug()", - "inputValues": [] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 2290, - "blockTimestampDelay": 360593 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000050000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xb05752f700000000000000000000000000000000000000000000000014d1120d7b160000fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa0100ffffe666666666666666666666666666666666666666666666666666666666670000000000000000000000000000000000000000000000000000000000000001", - "dataAbiValues": { - "methodSignature": "handleOnSettleBondEscalation(uint256,uint256,uint256,uint256)", - "inputValues": [ - "1500000000000000000", - "115792089237316195423570985008687907853269984665640564039457584007913129246976", - "115791912552609717585138026678937833561418401917250876477561771847293000377959", - "1" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 35958, - "blockTimestampDelay": 189815 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000080000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xd1a556550000000000000000000000000000000000000000000000000000000000093a80", - "dataAbiValues": { - "methodSignature": "handleRevokeModule(uint256)", - "inputValues": [ - "604800" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 23866, - "blockTimestampDelay": 120766 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000040000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 2, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xf60285cafffffffffffffffffffffffffffffffffffffffffffffffffffffffffffb00001f6163d95156c50021d434e3914437a6419fd074db58aba632a1165e1049633a3bf295102083f98484e4163605f3f088673969b3a53bced8eb97b90d6679470f0000000000000000000000000000000000000000000000000000000000000014", - "dataAbiValues": { - "methodSignature": "handleBondWithSender(uint256,uint256,uint256,uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913129312256", - "14193771603127510897806160380156132720630156725507671248204049821265402880826", - "27115063851078188957254873925429362151386502274781693755807630999965205612303", - "20" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 14998, - "blockTimestampDelay": 528331 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000050000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x51b295e3fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc18", - "dataAbiValues": { - "methodSignature": "handleFinalize(uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913129638936" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 23876, - "blockTimestampDelay": 327680 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000060000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x2047c4493b1bb599e967df2247a0bde0e15c19a16d95520dbb9eb811b647dd1c5a50d970bda0d1adb4d017dcf6513d613392f361bfe0847acfbe5bbfd267240bef7125cd61ebaebab2bac3aa4819e2caf8f85c718565871747241e292cc36db91888e520d873b789d8f47c6606b2d5358f69133b1dd4937cee526c90ac095190af102de2", - "dataAbiValues": { - "methodSignature": "handlePay(uint256,uint256,uint256,uint256)", - "inputValues": [ - "26735416302702836720504774004574936090245153519362370366870156849631651223920", - "85771271060700958624081931951489906403580871476691194667860842730768850560461", - "44290761310036599938494988979380191776366734083697389368196279735913800066336", - "97904029442377240838501909618781928147909909174040210570358457032104622435810" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 54628, - "blockTimestampDelay": 362209 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000020000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x9f6259e57cf479b021a816743ff5b53a6f3e5c2c247b2adb9311a44237c3858abd44df0e0000000000000000000000000000000000000000000000000000000000127118", - "dataAbiValues": { - "methodSignature": "handleResolve(uint256,uint256)", - "inputValues": [ - "56518743767933985910260346386765678340564227438862784222762849925209918856974", - "1208600" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 35385, - "blockTimestampDelay": 50692 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000050000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 2, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x0fb55087fffffffffffffffffffffffffffffffffffffffffffffffffffffff400000000", - "dataAbiValues": { - "methodSignature": "handleApproveModule(uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007861590032384" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 1, - "blockTimestampDelay": 57134 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000050000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 3, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x5356b6811b3175568497fde3c31fe069ccc7985311b0506f3b43e70969ab59ea722d2599", - "dataAbiValues": { - "methodSignature": "handleAddEBORequestCreatorFinalityModule(uint256)", - "inputValues": [ - "12299832254764069471447641000592064088020729744720327828938364394997925356953" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 0, - "blockTimestampDelay": 0 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000050000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 4, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xa44b098ea6e532d597161bf414844541b5281607abc0fedcfbe19700823ca81bfeffd5da", - "dataAbiValues": { - "methodSignature": "handleSetArbitrator(uint256)", - "inputValues": [ - "75488891688353701349182521546099519030572206284453220585196006136091846366682" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 13249, - "blockTimestampDelay": 486500 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000090000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x727899ff000000000000000000000000000000000000000000000000000000000009688043d2cc6bee2c75afbb0a2d8e686ed8d850d35e4220dab9eaaad8c1f2bbd315eb000040ba1702262dc3924484fe5b466a7207d688c9429f8aaeb64c1acd0d86e1fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff70000", - "dataAbiValues": { - "methodSignature": "handlePledge(uint256,uint256,uint256,uint256)", - "inputValues": [ - "616576", - "30677409604733962472433633135176719636373390531562919397962760076773674915307", - "446728739341497667529209047101419397582060126024847855090499938302133985", - "115792089237316195423570985008687907853269984665640564039457584007913129050112" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 28736, - "blockTimestampDelay": 576650 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000040000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 3, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x52e3cb9cfffffffffffffffffffffffffffffffffffffffffffffffff90fa4a62c4e0000", - "dataAbiValues": { - "methodSignature": "handleSetMaxUsersToCheck(uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457084007913129639936" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 14857, - "blockTimestampDelay": 578411 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000070000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x91e32c74fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8000053817ae4082823f7b7ef4f21ea8eaf2d55883b146199ee5cd9707c39a3f025ab", - "dataAbiValues": { - "methodSignature": "handleCreateRequest(uint256,bytes32)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913129115648", - "53817ae4082823f7b7ef4f21ea8eaf2d55883b146199ee5cd9707c39a3f025ab" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 23, - "blockTimestampDelay": 32 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000070000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x48a41c2700db944f945348b4c6cffca09ace97414e862af57bfe67d15e8f4ba3813ede4b3d688e69cd534e15f8ccc3765fd50e2ab30d2b740b3ff6d5865213182fe783c63b4bac2923dad06e124a6e05ae7aa5ae1b3e8edff0154acd1de94e5fe6e26732", - "dataAbiValues": { - "methodSignature": "handlePropose(uint256,uint256,uint256)", - "inputValues": [ - "387963111102058097323071002434237761651493831039740349958407635767455047243", - "27775818758715135462630212585325327395456425224261459780030383525521640620998", - "26820159805776502209708934821205059577225837408551437026198979884765463865138" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 25200, - "blockTimestampDelay": 27983 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000020000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 2, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xc0106a6cfffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7fc1800001fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff", - "dataAbiValues": { - "methodSignature": "handleCreateRequest(uint256,uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913129114648", - "220855883097298041197912187592864814478435487109452369765200775161577471" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 50518, - "blockTimestampDelay": 458752 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000050000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 5, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x9d2e6a6f000000000000000000000000000000000000000000000000000000000005d100", - "dataAbiValues": { - "methodSignature": "handleRemoveEBORequestCreatorRequestModule(uint256)", - "inputValues": [ - "381184" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 23639, - "blockTimestampDelay": 195785 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000040000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 4, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x3edc7cbd1599870fe02ecf9ec87ee76accd2d760e7eba60278962813ea05d348dc178e41", - "dataAbiValues": { - "methodSignature": "handleFinalizeRequestFinalityModule(uint256)", - "inputValues": [ - "9769829584924913960676332702159746411403704490750429962740385280098947272257" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 2685, - "blockTimestampDelay": 487244 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000080000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x0fb55087fffffffffffffffffffffffffedea0275f3411a7ad187b0108aa786a3f16bde9", - "dataAbiValues": { - "methodSignature": "handleApproveModule(uint256)", - "inputValues": [ - "115792089237316195423570985008681454588525719193607429938766044948827876015593" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 15207, - "blockTimestampDelay": 220921 - }, - { - "call": { - "from": "0x00000000000000000000000000000000000a0000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x6b125a57e286bb06cb42cc1cd185bc3f02cfcd592fc3e9b10aa00b2c2b633d09978af7a7", - "dataAbiValues": { - "methodSignature": "handleRemoveEBORequestCreatorFinalityModule(uint256)", - "inputValues": [ - "102460752096230911141037771748726806398872347580671159824723173728064937588647" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 12095, - "blockTimestampDelay": 12289 - }, - { - "call": { - "from": "0x00000000000000000000000000000000000a0000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x161c7318", - "dataAbiValues": { - "methodSignature": "test_debug()", - "inputValues": [] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 15263, - "blockTimestampDelay": 532218 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000040000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 5, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xec5bf215fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe", - "dataAbiValues": { - "methodSignature": "handleFinalizeRequestResponseModule(uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913129639934" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 66, - "blockTimestampDelay": 100 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000080000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 2, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x3edc7cbd0000000000000000000000000000000000000000000000000000000000069780", - "dataAbiValues": { - "methodSignature": "handleFinalizeRequestFinalityModule(uint256)", - "inputValues": [ - "432000" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 25275, - "blockTimestampDelay": 265204 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000070000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 2, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xf60285ca0000000000000000000000000000000000000000000000000000000000090000fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0000fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff951803e9cbc6e25eef9741c5aecc543fdfd3b7843cdd81d009791c912b1ac18ca3bc3", - "dataAbiValues": { - "methodSignature": "handleBondWithSender(uint256,uint256,uint256,uint256)", - "inputValues": [ - "589824", - "115792089237316195423570985008687907853269984665640564039457584007913129508864", - "115792089237316195423570985008687907853269984665640564039457584007913129202048", - "28320325252170137216432823826258230770014552748113962706280014781562200144835" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 32288, - "blockTimestampDelay": 531907 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000040000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 6, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xefe223c59c2553129e7851cb256c99b06c7f8dc81f210c90a2e2611259abc401e81f07540000000000000000000000000000000000000000000000000000000000000001", - "dataAbiValues": { - "methodSignature": "handleDisputeResponseOracle(uint256,uint256)", - "inputValues": [ - "70626751067301019089441572534217019449535130321119175666564383155547736573780", - "1" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 54625, - "blockTimestampDelay": 259200 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000030000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x864e2da9883fe7612b6bb87b26cae4dca32375d45e122ab623e5fabce941d7b88e897fa5fffffffffffffffffffffffffffffffffffffffffffffff90fa4a62c4e00000041076a70cffc1a4eeb895e1e3bd1eea004e1c563d9647015c78c3ec8bdf54455", - "dataAbiValues": { - "methodSignature": "handleArbitrateDispute(uint256,uint256,uint256)", - "inputValues": [ - "61627455695498944603673940108566635137976242750181887122097763359817575530405", - "115792089237316195423570985008687907853269984665640564039329584007913129639936", - "29413437713895903893487278743213882333056396597315056022550118936518019335253" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 51381, - "blockTimestampDelay": 259200 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000050000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 6, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xd51b326a00000000000000000000000000000000000000000000000000000000000003e5fffffffffffffffffffffffffffffffffffffffffffffffff90fa4a62c4e00000000000000000000000000000000000000000000000000000000000000050000", - "dataAbiValues": { - "methodSignature": "handlePledgeForDispute(uint256,uint256,uint256)", - "inputValues": [ - "997", - "115792089237316195423570985008687907853269984665640564039457084007913129639936", - "327680" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 18831, - "blockTimestampDelay": 48188 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000080000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 3, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xc0106a6cf52979d6557e7dffb91b5c3d89fc589d6d825e7304f69a52751c44508ab494c3fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff70000", - "dataAbiValues": { - "methodSignature": "handleCreateRequest(uint256,uint256)", - "inputValues": [ - "110889929522296307995270791263779988265523562999353831634872636959969779160259", - "115792089237316195423570985008687907853269984665640564039457584007913129050112" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 18, - "blockTimestampDelay": 196608 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000060000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x94ae6f8c06d71e3fa7df5670060e7ae6bfb0fef56e250e6caae1d93f62f15d384dd79058", - "dataAbiValues": { - "methodSignature": "handleValidateArbitrator(uint256)", - "inputValues": [ - "3093957978973023196079698570753322494102707684193970199785237023181952749656" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 45163, - "blockTimestampDelay": 193409 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000020000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 3, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x5543846522791a89d6fc1377bd19a2942e57d92b97cc6684453067dfb865a791d2538da6000000000000000000000000e3c48138f476eb09478b5d32fa946e61fe5f12e8", - "dataAbiValues": { - "methodSignature": "handleSetResolutionModuleData(uint256,(address))", - "inputValues": [ - "15592608508227480150485868850753978432760407300713696700708765193096882523558", - { - "arbitrator": "0xe3c48138F476Eb09478b5D32FA946E61fE5F12e8" - } - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 3666, - "blockTimestampDelay": 310056 - } -] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/call_sequences/immutable/1731277803617615000-2901a619-fff5-448f-99fe-6220b810c578.json b/test/invariants/fuzz/corpus/call_sequences/immutable/1731277803617615000-2901a619-fff5-448f-99fe-6220b810c578.json deleted file mode 100755 index bb2601f..0000000 --- a/test/invariants/fuzz/corpus/call_sequences/immutable/1731277803617615000-2901a619-fff5-448f-99fe-6220b810c578.json +++ /dev/null @@ -1,849 +0,0 @@ -[ - { - "call": { - "from": "0x0000000000000000000000000000000000030000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x13a8b8040000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000034000000000000000000000000000000000000000000000000000000000000000170000000000000000000000000000000000000000000000000000000000d2f000ffffc0000000000000000000000000000000000000000000000000000000000181dc31bc03ad9bc8a966de91dfc8c49b929f6d5fd44a9c22a7f5bb37cebfc106ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed8ee8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6c5805bc2cfc37067e378b4feef3f3411136744d0b2851c161c601669654cf27bfe6100000000000000000000000000000000000000000000000000000000000000006cd40d93882a844c2becf361c7579664aef7a6ef6e8b79d6bf6f6f76426e9b14039e696f94058cfd274de97421f65916ac135f4d55083d357b9c1f34820c9376000000000000000000000000000000000000000000000000000000000003fffe000000000000000000000000000000000000000000000000000000000000000167e6a528e0202cf23a36eacf513eee303475d3e4c983b2ae2d616b11c440f70aaa625827d77aa233df42016988900477ead582090357ec011f404ff1f0aa321bfffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9686c2d73382b1edfa908bcaeb6b9ac0073f469887a9150c80831642e47e35a614c1bffffffffffffffffffffffffffffffffffffffffffffe48e5eb33a3a7f000000104a13a90c13653470268ea78892361e7e91e706d859aabaaf45ddd18c956640809a37cc7335cdf29b7d988dc8c05e2c1899ad1795364e6fa667088b49487472000000000000000000000000000000000000000000000000000000000000fff6fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b80756993dc4be6ecf1e46c48d6f9cae9255a8b46ef956a3d85442a5f41f70ecf93000000000000000000000000000000000000000000000000000000000076a700a77a4c48695a0407441e86efc633aee092d2ebd99c87fdfeebcd904fe33e086d000000000000000000000000000000000000000000000000000000000000001d563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd0633ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed69586530127b846a0115a3e561f49781eea70d4bcc4884906080e6adb068ff5fe13953f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b4498bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef328d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad82082401f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade0554594d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e05648dd821e471bd9a22c1f612735d2d7244c13832c4b0f28993ecafc561bfc52ae4f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cbba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c33f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8fd276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f6617237058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf259a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe2665f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a219fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb", - "dataAbiValues": { - "methodSignature": "handleCreateRequests(uint256[],bytes32[])", - "inputValues": [ - [ - "13824000", - "115791647525550000827488589184312722123641027794666345134718053606362806484993", - "58737407075920930096693749632210245280794127876199190949253348332199714210054", - "115792089237316195423570985008687907853269984665640564039457584007913128431336", - "115792089237316195423570985008687907853269984665640564039457584007913129035136", - "41504671482165347584846103287222174319130579613222615088745194098566077611617", - "0", - "49224452924880417829398231270379785502530069722970149981823851608145893694228", - "1636828073493779560152621491074002847609709387720111137750911676859097584502", - "262142", - "1", - "46995738119123743123282428161140493004285235666026628953647859202250191730442", - "77066943699312596523560233185714836616924754343478096130098486630426813805083", - "115792089237316195423570985008687907853269984665640564039457584007913129207916", - "20557653259021005890251421269967042420225955023564768794272035576696478452763", - "115792089237316195423570985008687907853269984665640563909857584007913129639936", - "7367887950809164700104084563884591449786965425123545364576065505479275931200", - "58168524174645209900719041489934173752247098791866719219864340874379345294450", - "65526", - "115792089237316195423570985008687907853269984665640564039457584007913129380736", - "53107142721938561923251317745913031228477959801596843755970727929974933606291", - "7776000", - "75752327540241786815348607290604056680494387521335977257182003214564422715501" - ], - [ - "563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe", - "27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a", - "9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd06", - "33ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865", - "30127b846a0115a3e561f49781eea70d4bcc4884906080e6adb068ff5fe13953", - "f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1", - "c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b44", - "98bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01", - "108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef32", - "8d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea", - "94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad8208240", - "1f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade05545", - "94d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056", - "48dd821e471bd9a22c1f612735d2d7244c13832c4b0f28993ecafc561bfc52ae", - "4f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa", - "9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874", - "ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cb", - "ba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c3", - "3f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8f", - "d276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99", - "fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce", - "3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb", - "4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f661723", - "7058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78", - "994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25", - "9a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe26", - "65f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a2", - "19fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c", - "51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb" - ] - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 21265, - "blockTimestampDelay": 360627 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000050000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x91e32c74e0613faa5f896b73380078af3c1ee8605eec949aaf9c8f422f264f3de916b58d4b3032484de1fb4c70c2a705584283a0288158e7d201a2526966e049d49acde5", - "dataAbiValues": { - "methodSignature": "handleCreateRequest(uint256,bytes32)", - "inputValues": [ - "101489901651207154401933345705911812335881908306802664469868899807780031346061", - "4b3032484de1fb4c70c2a705584283a0288158e7d201a2526966e049d49acde5" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 23884, - "blockTimestampDelay": 297676 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000080000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x62e8fd350000000000000000000000000000000000000000000000000000000000000000f3e0a4b7d4b9f146c330bf4206493b9644386108e6fb9dbd1ec9e9631656b911", - "dataAbiValues": { - "methodSignature": "handleOnDisputeStatusChange(uint256,uint256)", - "inputValues": [ - "0", - "110308932790717902341334723675742636402013152744066319296234386176011142609169" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 6, - "blockTimestampDelay": 447025 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000060000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xb05752f7000000000000000000000000000000000000000000000000000000000083d600ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff3cb74a490a6b235de22fdba8b11c89c1a75ba52781eaa376b8904d607971473952c39b6854fd2443ddec68f9b401b12b2c3233b939e902ba2cc4b78fc21880c9", - "dataAbiValues": { - "methodSignature": "handleOnSettleBondEscalation(uint256,uint256,uint256,uint256)", - "inputValues": [ - "8640000", - "115792089237316195423570985008687907853269984665640564039457584007913129639935", - "27462616626253393834172180586494418890954476283257859666307992469208736810809", - "37435261344928203651121242557808094327910915308413204917974281668150859169993" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 20576, - "blockTimestampDelay": 441138 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000050000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x88b05f29000000000000000000000000000000000000000000000000000000000009fffe000000000000000000000000c43801cd359a82757df4289878ce85539b0fcade000000000000000000000000000000000000000000000000000000000000006434998e76fdd43c55ad90e4a35d96044a3ebe674f5dfa103757d366102ca9f26c00000000000000000000000000000000000000000000000000000000000001000e694122e842adea5277bbbdab0b14091c2583d39824533976734442dab724e2195f41f8193b8fdb454e4c675da554f0f9409064f42db392c9ab9d5e83fad976fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe", - "dataAbiValues": { - "methodSignature": "handleSetDisputeModuleData(uint256,(address,address,uint256,uint256,uint256,uint256,uint256))", - "inputValues": [ - "655358", - { - "accountingExtension": "0xc43801Cd359A82757Df4289878CE85539B0fcAdE", - "bondEscalationDeadline": "6518348376578069825047353184871606747778953752910129049968505915388248663266", - "bondSize": "23791578983227214469447533216306682837879210004146422934780693486186688803436", - "bondToken": "0x0000000000000000000000000000000000000064", - "disputeWindow": "115792089237316195423570985008687907853269984665640564039457584007913129639934", - "maxNumberOfEscalations": "256", - "tyingBuffer": "11476126987972230713107770724661081842991657660629818104854040000448595417462" - } - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 1, - "blockTimestampDelay": 2 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000020000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xf84d6dfc00000000000000000000000000000000000000000000000006f05b59d3ad0000", - "dataAbiValues": { - "methodSignature": "handleAddEBORequestCreatorRequestModule(uint256)", - "inputValues": [ - "499999999999672320" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 12976, - "blockTimestampDelay": 472659 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000010000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x4741f6dcc0e4d0eee56b7f10aa9aefe04c4f650af62be8b532d57f12aa7ac5b950884c3a", - "dataAbiValues": { - "methodSignature": "handleSetFinalityModuleData(uint256)", - "inputValues": [ - "87248350062624793638699702709121271409886681841563726628967995216176035155002" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 29334, - "blockTimestampDelay": 296740 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000020000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x5356b681bebfb0dc367f431af08687c084e9c844567359d9793a12e0818425b7df16682a", - "dataAbiValues": { - "methodSignature": "handleAddEBORequestCreatorFinalityModule(uint256)", - "inputValues": [ - "86278129664477803463997658766424154744739678303000950581784606393529462581290" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 3566, - "blockTimestampDelay": 274227 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000040000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xaa1a5bd9ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffee0000000000000000000000000000000000000000000000000000000000000001", - "dataAbiValues": { - "methodSignature": "handleResolveDispute(uint256,uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913129639918", - "1" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 38128, - "blockTimestampDelay": 65536 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000080000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x864e2da9000000000000000000000000000000000000000000000000000000000004ff00bfa47f0f3034e3c5b418dac09c339f53fbdf69ff4b147e91a872420a6f7ed6e20000000000000000000000000000000000000000000000000000000000040000", - "dataAbiValues": { - "methodSignature": "handleArbitrateDispute(uint256,uint256,uint256)", - "inputValues": [ - "327424", - "86682393929289525193494153568452559356866521755790133919226203303415723775714", - "262144" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 28049, - "blockTimestampDelay": 147436 - }, - { - "call": { - "from": "0x00000000000000000000000000000000000a0000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x5356b681000000000000000000000000000000000000000000000000000000000000000a", - "dataAbiValues": { - "methodSignature": "handleAddEBORequestCreatorFinalityModule(uint256)", - "inputValues": [ - "10" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 21572, - "blockTimestampDelay": 167216 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000010000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xf84d6dfc87e2e521510210bb9f1efbff2cd79d7cd5675b7d503c446b0017b6bbcd5d492f", - "dataAbiValues": { - "methodSignature": "handleAddEBORequestCreatorRequestModule(uint256)", - "inputValues": [ - "61463123393503677610123184398943346662098674670775488627974437033537892600111" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 1005, - "blockTimestampDelay": 436171 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000090000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xec5bf215564402b8b5f207f4eed188f382ae7d299d56800cfcdbfbdd380f5d111164d7f3", - "dataAbiValues": { - "methodSignature": "handleFinalizeRequestResponseModule(uint256)", - "inputValues": [ - "39019069361849810475124568581956515548187837436962789536769612725416477644787" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 29390, - "blockTimestampDelay": 405151 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000050000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 2, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x2047c44964af5d348042810c6713f567b2ae0a1329f9a41a31dd65689466b80ed86a98102cf683f24338dbd0d0b4e969d552adaa1cb2ba854e7981b39db6aa7a4eb4733a4406bfd9ab92f3b803843d5137445ebcd4035dd79b752232dceb1e4a553a7fc90bc23f646eb8405f9865cad125e2b67c4cb5be6b00c8cbfeb79ac596e5fee34b", - "dataAbiValues": { - "methodSignature": "handlePay(uint256,uint256,uint256,uint256)", - "inputValues": [ - "45541126372497665840906508174782686333425760491760126897278402501345182128144", - "20337320375757040483596893633798835084481932414588544316829844888167896085306", - "30769198887980302917418981166398434808730110615619342329624446156192224018377", - "5318647182657600089902655701709793773207260177110878862668649309798760637259" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 23482, - "blockTimestampDelay": 51930 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000040000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x161c7318", - "dataAbiValues": { - "methodSignature": "test_debug()", - "inputValues": [] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 0, - "blockTimestampDelay": 0 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000070000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xf84d6dfcf6cf88d9f37a86121908cb039be9cc51a5103895c84fc649276df49538afcbad", - "dataAbiValues": { - "methodSignature": "handleAddEBORequestCreatorRequestModule(uint256)", - "inputValues": [ - "111635642607345537592182708073224837457339443516741764226233323948854559624109" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 23896, - "blockTimestampDelay": 360604 - }, - { - "call": { - "from": "0x00000000000000000000000000000000000a0000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xd1a55655000000000000000000000000000000000000000000000000000000000004839c", - "dataAbiValues": { - "methodSignature": "handleRevokeModule(uint256)", - "inputValues": [ - "295836" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 55339, - "blockTimestampDelay": 85204 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000090000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xefe223c58670cef9c731503eed4776ba6fad6b3696fa16be2eb18b465fbafeeaa0fe7be70000000000000000000000000000000000000000000000000000000000000064", - "dataAbiValues": { - "methodSignature": "handleDisputeResponseOracle(uint256,uint256)", - "inputValues": [ - "60809237075164466486500268418905379284411433772615587007980463004965951929319", - "100" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 38872, - "blockTimestampDelay": 360628 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000070000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x3c26dcf8a5a8486b947649db116db64c5c45ca42e6e1d986fed7026bd9ac1d8640310d33", - "dataAbiValues": { - "methodSignature": "handleSetEpochManager(uint256)", - "inputValues": [ - "74928950149207865187656931027679893325164490827615215400216718609192626228531" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 21, - "blockTimestampDelay": 232191 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000020000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 2, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x727899ff0000000000000000000000000000000000000000000000000000000000015180001d4d2f346ae4815c9e9f03f21e3deda069706413924e409fa7504059d19f8a00000000000000000000000000000000000000000000000000000000001061800000000000000000000000000000000000000000000000000000000000000000", - "dataAbiValues": { - "methodSignature": "handlePledge(uint256,uint256,uint256,uint256)", - "inputValues": [ - "86400", - "51771271984981606474845360496175347553777726680427752644378601650631319434", - "1073536", - "0" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 0, - "blockTimestampDelay": 0 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000040000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 2, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x0692ea7e00000000000000000000000000000000000000000000000006f05b59d3b20000", - "dataAbiValues": { - "methodSignature": "handleRemoveChain(uint256)", - "inputValues": [ - "500000000000000000" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 7308, - "blockTimestampDelay": 572210 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000080000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 2, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xf60285ca0000000000000000000000000000000000000000000000000000001c00000000c55ec4bc0d08a528b0c66dda1e983ee7a47fab9c2c7be0189c7f1615408b21090c446e0f4b256cc52cd8a8e7d04a641b919117ba4e8eec18cfc1d6bbef455c1afffffffffffffffffffffffffffffffffffffffffffffffffffffffffff96880", - "dataAbiValues": { - "methodSignature": "handleBondWithSender(uint256,uint256,uint256,uint256)", - "inputValues": [ - "120259084288", - "89273072607119207212350079296024751198400000134903763911230695693815852507401", - "5548659387815291343462229641472196329432108891134398921647704413649710177306", - "115792089237316195423570985008687907853269984665640564039457584007913129207936" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 3666, - "blockTimestampDelay": 328552 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000090000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 2, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xf60285cafffffffffffffffffffffffffffffffffffffffffffffffffffffffffffb000025f25d7faafc93fb72865fa242af64b472ba83cff86d93b0533a903d41979d49a118576f8a1093f26ae33d6729cf5cc25c7581d9765b4403dbe286498c516c51fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffefe", - "dataAbiValues": { - "methodSignature": "handleBondWithSender(uint256,uint256,uint256,uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913129312256", - "17163797691587697797154778947709945459459813549491742892821231886739673947465", - "72865376410486736594847893277442722029628711678849188712496784814318445227089", - "115792089237316195423570985008687907853269984665640564039457584007913129639678" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 16097, - "blockTimestampDelay": 32945 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000060000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x1c6850cf935db8f217ab066b096d3e73a0d7b001fc4ecd8978a23860b95e790ce003170a4eaae94e9868a2f0db87614a7dec2d16319e0ba326a536f6f1691bb8e96bf90f0b832e69b37aa7335b293d4fa58406790362547ef49f09345b753dfa24964850", - "dataAbiValues": { - "methodSignature": "handleUpdateDisputeStatus(uint256,uint256,uint256)", - "inputValues": [ - "66655581966891990089433207462395406981090073962288009560809406913154795116298", - "35582376416332259156222282743710371541531294308094913458341281816449259403535", - "5207218629929607814724254599342746391010434197465047907333283290976655657040" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 60434, - "blockTimestampDelay": 109697 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000040000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 3, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x94ae6f8c0000000000000000000000007109709ecfa91a80626ff3989d68f67f5b1dd12d", - "dataAbiValues": { - "methodSignature": "handleValidateArbitrator(uint256)", - "inputValues": [ - "645326474426547203313410069153905908525362434349" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 0, - "blockTimestampDelay": 604799 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000050000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 3, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x6b125a57fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff60000", - "dataAbiValues": { - "methodSignature": "handleRemoveEBORequestCreatorFinalityModule(uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913128984576" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 45581, - "blockTimestampDelay": 117423 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000070000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 2, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x9d2e6a6fc6539b7a2476ae67ba4b976f82611916e58f7b5d2430c83158095390cd02239e", - "dataAbiValues": { - "methodSignature": "handleRemoveEBORequestCreatorRequestModule(uint256)", - "inputValues": [ - "89705665389500661869876865816500895748106493083156214106851103557324275590046" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 41808, - "blockTimestampDelay": 450845 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000050000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 4, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x0692ea7effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff", - "dataAbiValues": { - "methodSignature": "handleRemoveChain(uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913129639935" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 2372, - "blockTimestampDelay": 234681 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000080000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 3, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xd1a556550000000000000000000000000000000000000000000000000000000000000001", - "dataAbiValues": { - "methodSignature": "handleRevokeModule(uint256)", - "inputValues": [ - "1" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 50550, - "blockTimestampDelay": 229553 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000020000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 3, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xf4fbbf9ba1fc4eba964b9a2c2032d06ec565d5292cf250b147e734e6d992d5d0bda436f600000000000000000000000000000000000000000000000000000000000697806bf391284d4660fc77fbe4592328a2f0997562e4f12cf27795f43d0b0fc3bc7a", - "dataAbiValues": { - "methodSignature": "handleBond(uint256,uint256,uint256)", - "inputValues": [ - "73268157448823115839328750088743753530156494765398712182649313036506897856246", - "432000", - "48827820474906800904865104890106511812906050912626598573180323282500481956986" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 0, - "blockTimestampDelay": 1 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000090000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 3, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xdb106ace6d38c114215bf8f8b3ad2ed58065d5cc3089e62f5be34c18288c135f3f9724a20000000000000000000000000000000000000000000000000000000000069780fffffffffffffffffffffffffffffffffffffffffffffffff90fa4a62c4e00006d9d66ca4ec2ea144207d592952b27c55e72f77602616bdfe3178ceccfefbe99", - "dataAbiValues": { - "methodSignature": "handleSlash(uint256,uint256,uint256,uint256)", - "inputValues": [ - "49402376510960630712476074985720877101324288030739208582895764419073394812066", - "432000", - "115792089237316195423570985008687907853269984665640564039457084007913129639936", - "49580204917077383946213464068067879479747000240903333733565655861027448798873" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 27322, - "blockTimestampDelay": 32945 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000050000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 5, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x94c9ca03", - "dataAbiValues": { - "methodSignature": "handleConfirmCouncil()", - "inputValues": [] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 1, - "blockTimestampDelay": 12 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000090000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 4, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x0692ea7e0000000000000000000000000000000000000000000000000000000000000000", - "dataAbiValues": { - "methodSignature": "handleRemoveChain(uint256)", - "inputValues": [ - "0" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 29896, - "blockTimestampDelay": 295089 - } -] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/call_sequences/immutable/1731277803620612000-8cf92baa-a0a3-4010-9457-96b2f6261d69.json b/test/invariants/fuzz/corpus/call_sequences/immutable/1731277803620612000-8cf92baa-a0a3-4010-9457-96b2f6261d69.json deleted file mode 100755 index 279cdbf..0000000 --- a/test/invariants/fuzz/corpus/call_sequences/immutable/1731277803620612000-8cf92baa-a0a3-4010-9457-96b2f6261d69.json +++ /dev/null @@ -1,862 +0,0 @@ -[ - { - "call": { - "from": "0x0000000000000000000000000000000000040000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x52e3cb9c6b0d264b5add160d5053aa476132c22d6540d3605ad8dfb850790b1ba996569b", - "dataAbiValues": { - "methodSignature": "handleSetMaxUsersToCheck(uint256)", - "inputValues": [ - "48420708108177856443123222644862532857390746786695606854692354379525674915483" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 59698, - "blockTimestampDelay": 331757 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000020000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x62e8fd3500000000000000000000000000000000000000000000000000000000000000124ab950c09e2414c3ec444389b5281e1bdfda8ecfec5392240af8d376f3781e4f", - "dataAbiValues": { - "methodSignature": "handleOnDisputeStatusChange(uint256,uint256)", - "inputValues": [ - "18", - "33798574834817402171861624718400176195923458571787846279113220864863863578191" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 41059, - "blockTimestampDelay": 386818 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000040000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x161c7318", - "dataAbiValues": { - "methodSignature": "test_debug()", - "inputValues": [] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 2290, - "blockTimestampDelay": 360593 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000050000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xb05752f700000000000000000000000000000000000000000000000014d1120d7b160000fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa0100ffffe666666666666666666666666666666666666666666666666666666666670000000000000000000000000000000000000000000000000000000000000001", - "dataAbiValues": { - "methodSignature": "handleOnSettleBondEscalation(uint256,uint256,uint256,uint256)", - "inputValues": [ - "1500000000000000000", - "115792089237316195423570985008687907853269984665640564039457584007913129246976", - "115791912552609717585138026678937833561418401917250876477561771847293000377959", - "1" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 35958, - "blockTimestampDelay": 189815 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000080000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xd1a556550000000000000000000000000000000000000000000000000000000000093a80", - "dataAbiValues": { - "methodSignature": "handleRevokeModule(uint256)", - "inputValues": [ - "604800" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 23866, - "blockTimestampDelay": 120766 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000040000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 2, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xf60285cafffffffffffffffffffffffffffffffffffffffffffffffffffffffffffb00001f6163d95156c50021d434e3914437a6419fd074db58aba632a1165e1049633a3bf295102083f98484e4163605f3f088673969b3a53bced8eb97b90d6679470f0000000000000000000000000000000000000000000000000000000000000014", - "dataAbiValues": { - "methodSignature": "handleBondWithSender(uint256,uint256,uint256,uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913129312256", - "14193771603127510897806160380156132720630156725507671248204049821265402880826", - "27115063851078188957254873925429362151386502274781693755807630999965205612303", - "20" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 14998, - "blockTimestampDelay": 528331 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000050000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x51b295e3fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc18", - "dataAbiValues": { - "methodSignature": "handleFinalize(uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913129638936" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 23876, - "blockTimestampDelay": 327680 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000060000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x2047c4493b1bb599e967df2247a0bde0e15c19a16d95520dbb9eb811b647dd1c5a50d970bda0d1adb4d017dcf6513d613392f361bfe0847acfbe5bbfd267240bef7125cd61ebaebab2bac3aa4819e2caf8f85c718565871747241e292cc36db91888e520d873b789d8f47c6606b2d5358f69133b1dd4937cee526c90ac095190af102de2", - "dataAbiValues": { - "methodSignature": "handlePay(uint256,uint256,uint256,uint256)", - "inputValues": [ - "26735416302702836720504774004574936090245153519362370366870156849631651223920", - "85771271060700958624081931951489906403580871476691194667860842730768850560461", - "44290761310036599938494988979380191776366734083697389368196279735913800066336", - "97904029442377240838501909618781928147909909174040210570358457032104622435810" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 54628, - "blockTimestampDelay": 362209 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000020000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x9f6259e57cf479b021a816743ff5b53a6f3e5c2c247b2adb9311a44237c3858abd44df0e0000000000000000000000000000000000000000000000000000000000127118", - "dataAbiValues": { - "methodSignature": "handleResolve(uint256,uint256)", - "inputValues": [ - "56518743767933985910260346386765678340564227438862784222762849925209918856974", - "1208600" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 35385, - "blockTimestampDelay": 50692 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000050000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 2, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x0fb55087fffffffffffffffffffffffffffffffffffffffffffffffffffffff400000000", - "dataAbiValues": { - "methodSignature": "handleApproveModule(uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007861590032384" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 1, - "blockTimestampDelay": 57134 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000050000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 3, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x5356b6811b3175568497fde3c31fe069ccc7985311b0506f3b43e70969ab59ea722d2599", - "dataAbiValues": { - "methodSignature": "handleAddEBORequestCreatorFinalityModule(uint256)", - "inputValues": [ - "12299832254764069471447641000592064088020729744720327828938364394997925356953" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 0, - "blockTimestampDelay": 0 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000050000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 4, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xa44b098ea6e532d597161bf414844541b5281607abc0fedcfbe19700823ca81bfeffd5da", - "dataAbiValues": { - "methodSignature": "handleSetArbitrator(uint256)", - "inputValues": [ - "75488891688353701349182521546099519030572206284453220585196006136091846366682" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 13249, - "blockTimestampDelay": 486500 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000090000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x727899ff000000000000000000000000000000000000000000000000000000000009688043d2cc6bee2c75afbb0a2d8e686ed8d850d35e4220dab9eaaad8c1f2bbd315eb000040ba1702262dc3924484fe5b466a7207d688c9429f8aaeb64c1acd0d86e1fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff70000", - "dataAbiValues": { - "methodSignature": "handlePledge(uint256,uint256,uint256,uint256)", - "inputValues": [ - "616576", - "30677409604733962472433633135176719636373390531562919397962760076773674915307", - "446728739341497667529209047101419397582060126024847855090499938302133985", - "115792089237316195423570985008687907853269984665640564039457584007913129050112" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 28736, - "blockTimestampDelay": 576650 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000040000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 3, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x52e3cb9cfffffffffffffffffffffffffffffffffffffffffffffffff90fa4a62c4e0000", - "dataAbiValues": { - "methodSignature": "handleSetMaxUsersToCheck(uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457084007913129639936" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 14857, - "blockTimestampDelay": 578411 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000070000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x91e32c74fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8000053817ae4082823f7b7ef4f21ea8eaf2d55883b146199ee5cd9707c39a3f025ab", - "dataAbiValues": { - "methodSignature": "handleCreateRequest(uint256,bytes32)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913129115648", - "53817ae4082823f7b7ef4f21ea8eaf2d55883b146199ee5cd9707c39a3f025ab" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 23, - "blockTimestampDelay": 32 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000070000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x48a41c2700db944f945348b4c6cffca09ace97414e862af57bfe67d15e8f4ba3813ede4b3d688e69cd534e15f8ccc3765fd50e2ab30d2b740b3ff6d5865213182fe783c63b4bac2923dad06e124a6e05ae7aa5ae1b3e8edff0154acd1de94e5fe6e26732", - "dataAbiValues": { - "methodSignature": "handlePropose(uint256,uint256,uint256)", - "inputValues": [ - "387963111102058097323071002434237761651493831039740349958407635767455047243", - "27775818758715135462630212585325327395456425224261459780030383525521640620998", - "26820159805776502209708934821205059577225837408551437026198979884765463865138" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 25200, - "blockTimestampDelay": 27983 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000020000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 2, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xc0106a6cfffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7fc1800001fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff", - "dataAbiValues": { - "methodSignature": "handleCreateRequest(uint256,uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913129114648", - "220855883097298041197912187592864814478435487109452369765200775161577471" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 50518, - "blockTimestampDelay": 458752 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000050000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 5, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x9d2e6a6f000000000000000000000000000000000000000000000000000000000005d100", - "dataAbiValues": { - "methodSignature": "handleRemoveEBORequestCreatorRequestModule(uint256)", - "inputValues": [ - "381184" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 23639, - "blockTimestampDelay": 195785 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000040000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 4, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x3edc7cbd1599870fe02ecf9ec87ee76accd2d760e7eba60278962813ea05d348dc178e41", - "dataAbiValues": { - "methodSignature": "handleFinalizeRequestFinalityModule(uint256)", - "inputValues": [ - "9769829584924913960676332702159746411403704490750429962740385280098947272257" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 2685, - "blockTimestampDelay": 487244 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000080000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x0fb55087fffffffffffffffffffffffffedea0275f3411a7ad187b0108aa786a3f16bde9", - "dataAbiValues": { - "methodSignature": "handleApproveModule(uint256)", - "inputValues": [ - "115792089237316195423570985008681454588525719193607429938766044948827876015593" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 15207, - "blockTimestampDelay": 220921 - }, - { - "call": { - "from": "0x00000000000000000000000000000000000a0000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x6b125a57e286bb06cb42cc1cd185bc3f02cfcd592fc3e9b10aa00b2c2b633d09978af7a7", - "dataAbiValues": { - "methodSignature": "handleRemoveEBORequestCreatorFinalityModule(uint256)", - "inputValues": [ - "102460752096230911141037771748726806398872347580671159824723173728064937588647" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 12095, - "blockTimestampDelay": 12289 - }, - { - "call": { - "from": "0x00000000000000000000000000000000000a0000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x161c7318", - "dataAbiValues": { - "methodSignature": "test_debug()", - "inputValues": [] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 15263, - "blockTimestampDelay": 532218 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000040000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 5, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xec5bf215fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe", - "dataAbiValues": { - "methodSignature": "handleFinalizeRequestResponseModule(uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913129639934" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 66, - "blockTimestampDelay": 100 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000080000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 2, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x3edc7cbd0000000000000000000000000000000000000000000000000000000000069780", - "dataAbiValues": { - "methodSignature": "handleFinalizeRequestFinalityModule(uint256)", - "inputValues": [ - "432000" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 25275, - "blockTimestampDelay": 265204 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000070000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 2, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xf60285ca0000000000000000000000000000000000000000000000000000000000090000fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0000fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff951803e9cbc6e25eef9741c5aecc543fdfd3b7843cdd81d009791c912b1ac18ca3bc3", - "dataAbiValues": { - "methodSignature": "handleBondWithSender(uint256,uint256,uint256,uint256)", - "inputValues": [ - "589824", - "115792089237316195423570985008687907853269984665640564039457584007913129508864", - "115792089237316195423570985008687907853269984665640564039457584007913129202048", - "28320325252170137216432823826258230770014552748113962706280014781562200144835" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 32288, - "blockTimestampDelay": 531907 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000040000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 6, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xefe223c59c2553129e7851cb256c99b06c7f8dc81f210c90a2e2611259abc401e81f07540000000000000000000000000000000000000000000000000000000000000001", - "dataAbiValues": { - "methodSignature": "handleDisputeResponseOracle(uint256,uint256)", - "inputValues": [ - "70626751067301019089441572534217019449535130321119175666564383155547736573780", - "1" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 54625, - "blockTimestampDelay": 259200 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000030000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x864e2da9883fe7612b6bb87b26cae4dca32375d45e122ab623e5fabce941d7b88e897fa5fffffffffffffffffffffffffffffffffffffffffffffff90fa4a62c4e00000041076a70cffc1a4eeb895e1e3bd1eea004e1c563d9647015c78c3ec8bdf54455", - "dataAbiValues": { - "methodSignature": "handleArbitrateDispute(uint256,uint256,uint256)", - "inputValues": [ - "61627455695498944603673940108566635137976242750181887122097763359817575530405", - "115792089237316195423570985008687907853269984665640564039329584007913129639936", - "29413437713895903893487278743213882333056396597315056022550118936518019335253" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 51381, - "blockTimestampDelay": 259200 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000050000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 6, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xd51b326a00000000000000000000000000000000000000000000000000000000000003e5fffffffffffffffffffffffffffffffffffffffffffffffff90fa4a62c4e00000000000000000000000000000000000000000000000000000000000000050000", - "dataAbiValues": { - "methodSignature": "handlePledgeForDispute(uint256,uint256,uint256)", - "inputValues": [ - "997", - "115792089237316195423570985008687907853269984665640564039457084007913129639936", - "327680" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 18831, - "blockTimestampDelay": 48188 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000080000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 3, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xc0106a6cf52979d6557e7dffb91b5c3d89fc589d6d825e7304f69a52751c44508ab494c3fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff70000", - "dataAbiValues": { - "methodSignature": "handleCreateRequest(uint256,uint256)", - "inputValues": [ - "110889929522296307995270791263779988265523562999353831634872636959969779160259", - "115792089237316195423570985008687907853269984665640564039457584007913129050112" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 18, - "blockTimestampDelay": 196608 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000060000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x94ae6f8c06d71e3fa7df5670060e7ae6bfb0fef56e250e6caae1d93f62f15d384dd79058", - "dataAbiValues": { - "methodSignature": "handleValidateArbitrator(uint256)", - "inputValues": [ - "3093957978973023196079698570753322494102707684193970199785237023181952749656" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 45163, - "blockTimestampDelay": 193409 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000020000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 3, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x5543846522791a89d6fc1377bd19a2942e57d92b97cc6684453067dfb865a791d2538da6000000000000000000000000e3c48138f476eb09478b5d32fa946e61fe5f12e8", - "dataAbiValues": { - "methodSignature": "handleSetResolutionModuleData(uint256,(address))", - "inputValues": [ - "15592608508227480150485868850753978432760407300713696700708765193096882523558", - { - "arbitrator": "0xe3c48138F476Eb09478b5D32FA946E61fE5F12e8" - } - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 3666, - "blockTimestampDelay": 310056 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000060000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 2, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xdb106acea2d5173adb93a2cd1033b5f52681bd0614b47ae4535d63b77f6c639133ca2c49000000000000000000000000000000000000000000000000000000000000000accd8e89f1509f48130de39cf5bad897268280e26e0d77bbeb894829a9094d406fef738389e245691128a28af2582e3bf7008a41611638738a61546690c37f95f", - "dataAbiValues": { - "methodSignature": "handleSlash(uint256,uint256,uint256,uint256)", - "inputValues": [ - "73651180222253959435445851094553484306349010260885383557615430474495169277001", - "10", - "92655065570978103145219371427434907985144045715846383103199450179683908637702", - "115324262789356647940193411987118065973685194399929380631474822550484470462815" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 43822, - "blockTimestampDelay": 379194 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000010000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xc82f34f90a1c5127f33f84ac236f164e5943f332c200323385ba846740a1f92876cf5cdc0000000000000000000000000000000000000000000000000000000000000014", - "dataAbiValues": { - "methodSignature": "handleSettleBondEscalation(uint256,uint256)", - "inputValues": [ - "4573160322155485468092691711528209900478228879240914282338054668139686223068", - "20" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 28361, - "blockTimestampDelay": 423157 - }, - { - "call": { - "from": "0x00000000000000000000000000000000000a0000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 2, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xc0106a6cbfc3b0ce22d27a5161f7cb0e93bac74fec1d3119e554fbdc013a6ba1802ab50aeab9325edfd6b15693c964f3737ba9e68630d71953d76525d7cfd0f062d4ab85", - "dataAbiValues": { - "methodSignature": "handleCreateRequest(uint256,uint256)", - "inputValues": [ - "86737509521808917159111158607442063703291470172791970792565090962547296351498", - "106168420920593622728073515457652893967459017093322482730963636595159293275013" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 13, - "blockTimestampDelay": 32 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000010000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x62e8fd35000000000000000000000000000000000000000000000000000000000000001cfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0000", - "dataAbiValues": { - "methodSignature": "handleOnDisputeStatusChange(uint256,uint256)", - "inputValues": [ - "28", - "115792089237316195423570985008687907853269984665640564039457584007913129377792" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 46292, - "blockTimestampDelay": 390579 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000060000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 3, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xc5c17157fe265ad4da14535a720baa0713c6d6be4b3fd0574f9854514a59d3351509881e", - "dataAbiValues": { - "methodSignature": "handleAddChain(uint256)", - "inputValues": [ - "114955230624257586888150299074240011223672725671584890060570375544722550261790" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 44387, - "blockTimestampDelay": 414636 - } -] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/call_sequences/immutable/1731277803621764000-125ef6cd-6d4b-4800-ad62-0f4317b13564.json b/test/invariants/fuzz/corpus/call_sequences/immutable/1731277803621764000-125ef6cd-6d4b-4800-ad62-0f4317b13564.json deleted file mode 100755 index f04a2ea..0000000 --- a/test/invariants/fuzz/corpus/call_sequences/immutable/1731277803621764000-125ef6cd-6d4b-4800-ad62-0f4317b13564.json +++ /dev/null @@ -1,1015 +0,0 @@ -[ - { - "call": { - "from": "0x0000000000000000000000000000000000030000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x13a8b8040000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000034000000000000000000000000000000000000000000000000000000000000000170000000000000000000000000000000000000000000000000000000000d2f000ffffc0000000000000000000000000000000000000000000000000000000000181dc31bc03ad9bc8a966de91dfc8c49b929f6d5fd44a9c22a7f5bb37cebfc106ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed8ee8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6c5805bc2cfc37067e378b4feef3f3411136744d0b2851c161c601669654cf27bfe6100000000000000000000000000000000000000000000000000000000000000006cd40d93882a844c2becf361c7579664aef7a6ef6e8b79d6bf6f6f76426e9b14039e696f94058cfd274de97421f65916ac135f4d55083d357b9c1f34820c9376000000000000000000000000000000000000000000000000000000000003fffe000000000000000000000000000000000000000000000000000000000000000167e6a528e0202cf23a36eacf513eee303475d3e4c983b2ae2d616b11c440f70aaa625827d77aa233df42016988900477ead582090357ec011f404ff1f0aa321bfffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9686c2d73382b1edfa908bcaeb6b9ac0073f469887a9150c80831642e47e35a614c1bffffffffffffffffffffffffffffffffffffffffffffe48e5eb33a3a7f000000104a13a90c13653470268ea78892361e7e91e706d859aabaaf45ddd18c956640809a37cc7335cdf29b7d988dc8c05e2c1899ad1795364e6fa667088b49487472000000000000000000000000000000000000000000000000000000000000fff6fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b80756993dc4be6ecf1e46c48d6f9cae9255a8b46ef956a3d85442a5f41f70ecf93000000000000000000000000000000000000000000000000000000000076a700a77a4c48695a0407441e86efc633aee092d2ebd99c87fdfeebcd904fe33e086d000000000000000000000000000000000000000000000000000000000000001d563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd0633ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed69586530127b846a0115a3e561f49781eea70d4bcc4884906080e6adb068ff5fe13953f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b4498bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef328d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad82082401f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade0554594d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e05648dd821e471bd9a22c1f612735d2d7244c13832c4b0f28993ecafc561bfc52ae4f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cbba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c33f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8fd276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f6617237058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf259a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe2665f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a219fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb", - "dataAbiValues": { - "methodSignature": "handleCreateRequests(uint256[],bytes32[])", - "inputValues": [ - [ - "13824000", - "115791647525550000827488589184312722123641027794666345134718053606362806484993", - "58737407075920930096693749632210245280794127876199190949253348332199714210054", - "115792089237316195423570985008687907853269984665640564039457584007913128431336", - "115792089237316195423570985008687907853269984665640564039457584007913129035136", - "41504671482165347584846103287222174319130579613222615088745194098566077611617", - "0", - "49224452924880417829398231270379785502530069722970149981823851608145893694228", - "1636828073493779560152621491074002847609709387720111137750911676859097584502", - "262142", - "1", - "46995738119123743123282428161140493004285235666026628953647859202250191730442", - "77066943699312596523560233185714836616924754343478096130098486630426813805083", - "115792089237316195423570985008687907853269984665640564039457584007913129207916", - "20557653259021005890251421269967042420225955023564768794272035576696478452763", - "115792089237316195423570985008687907853269984665640563909857584007913129639936", - "7367887950809164700104084563884591449786965425123545364576065505479275931200", - "58168524174645209900719041489934173752247098791866719219864340874379345294450", - "65526", - "115792089237316195423570985008687907853269984665640564039457584007913129380736", - "53107142721938561923251317745913031228477959801596843755970727929974933606291", - "7776000", - "75752327540241786815348607290604056680494387521335977257182003214564422715501" - ], - [ - "563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe", - "27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a", - "9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd06", - "33ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865", - "30127b846a0115a3e561f49781eea70d4bcc4884906080e6adb068ff5fe13953", - "f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1", - "c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b44", - "98bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01", - "108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef32", - "8d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea", - "94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad8208240", - "1f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade05545", - "94d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056", - "48dd821e471bd9a22c1f612735d2d7244c13832c4b0f28993ecafc561bfc52ae", - "4f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa", - "9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874", - "ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cb", - "ba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c3", - "3f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8f", - "d276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99", - "fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce", - "3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb", - "4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f661723", - "7058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78", - "994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25", - "9a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe26", - "65f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a2", - "19fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c", - "51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb" - ] - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 21265, - "blockTimestampDelay": 360627 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000050000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x91e32c74e0613faa5f896b73380078af3c1ee8605eec949aaf9c8f422f264f3de916b58d4b3032484de1fb4c70c2a705584283a0288158e7d201a2526966e049d49acde5", - "dataAbiValues": { - "methodSignature": "handleCreateRequest(uint256,bytes32)", - "inputValues": [ - "101489901651207154401933345705911812335881908306802664469868899807780031346061", - "4b3032484de1fb4c70c2a705584283a0288158e7d201a2526966e049d49acde5" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 23884, - "blockTimestampDelay": 297676 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000080000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x62e8fd350000000000000000000000000000000000000000000000000000000000000000f3e0a4b7d4b9f146c330bf4206493b9644386108e6fb9dbd1ec9e9631656b911", - "dataAbiValues": { - "methodSignature": "handleOnDisputeStatusChange(uint256,uint256)", - "inputValues": [ - "0", - "110308932790717902341334723675742636402013152744066319296234386176011142609169" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 6, - "blockTimestampDelay": 447025 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000060000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xb05752f7000000000000000000000000000000000000000000000000000000000083d600ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff3cb74a490a6b235de22fdba8b11c89c1a75ba52781eaa376b8904d607971473952c39b6854fd2443ddec68f9b401b12b2c3233b939e902ba2cc4b78fc21880c9", - "dataAbiValues": { - "methodSignature": "handleOnSettleBondEscalation(uint256,uint256,uint256,uint256)", - "inputValues": [ - "8640000", - "115792089237316195423570985008687907853269984665640564039457584007913129639935", - "27462616626253393834172180586494418890954476283257859666307992469208736810809", - "37435261344928203651121242557808094327910915308413204917974281668150859169993" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 20576, - "blockTimestampDelay": 441138 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000050000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x88b05f29000000000000000000000000000000000000000000000000000000000009fffe000000000000000000000000c43801cd359a82757df4289878ce85539b0fcade000000000000000000000000000000000000000000000000000000000000006434998e76fdd43c55ad90e4a35d96044a3ebe674f5dfa103757d366102ca9f26c00000000000000000000000000000000000000000000000000000000000001000e694122e842adea5277bbbdab0b14091c2583d39824533976734442dab724e2195f41f8193b8fdb454e4c675da554f0f9409064f42db392c9ab9d5e83fad976fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe", - "dataAbiValues": { - "methodSignature": "handleSetDisputeModuleData(uint256,(address,address,uint256,uint256,uint256,uint256,uint256))", - "inputValues": [ - "655358", - { - "accountingExtension": "0xc43801Cd359A82757Df4289878CE85539B0fcAdE", - "bondEscalationDeadline": "6518348376578069825047353184871606747778953752910129049968505915388248663266", - "bondSize": "23791578983227214469447533216306682837879210004146422934780693486186688803436", - "bondToken": "0x0000000000000000000000000000000000000064", - "disputeWindow": "115792089237316195423570985008687907853269984665640564039457584007913129639934", - "maxNumberOfEscalations": "256", - "tyingBuffer": "11476126987972230713107770724661081842991657660629818104854040000448595417462" - } - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 1, - "blockTimestampDelay": 2 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000020000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xf84d6dfc00000000000000000000000000000000000000000000000006f05b59d3ad0000", - "dataAbiValues": { - "methodSignature": "handleAddEBORequestCreatorRequestModule(uint256)", - "inputValues": [ - "499999999999672320" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 12976, - "blockTimestampDelay": 472659 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000010000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x4741f6dcc0e4d0eee56b7f10aa9aefe04c4f650af62be8b532d57f12aa7ac5b950884c3a", - "dataAbiValues": { - "methodSignature": "handleSetFinalityModuleData(uint256)", - "inputValues": [ - "87248350062624793638699702709121271409886681841563726628967995216176035155002" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 29334, - "blockTimestampDelay": 296740 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000020000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x5356b681bebfb0dc367f431af08687c084e9c844567359d9793a12e0818425b7df16682a", - "dataAbiValues": { - "methodSignature": "handleAddEBORequestCreatorFinalityModule(uint256)", - "inputValues": [ - "86278129664477803463997658766424154744739678303000950581784606393529462581290" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 3566, - "blockTimestampDelay": 274227 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000040000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xaa1a5bd9ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffee0000000000000000000000000000000000000000000000000000000000000001", - "dataAbiValues": { - "methodSignature": "handleResolveDispute(uint256,uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913129639918", - "1" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 38128, - "blockTimestampDelay": 65536 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000080000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x864e2da9000000000000000000000000000000000000000000000000000000000004ff00bfa47f0f3034e3c5b418dac09c339f53fbdf69ff4b147e91a872420a6f7ed6e20000000000000000000000000000000000000000000000000000000000040000", - "dataAbiValues": { - "methodSignature": "handleArbitrateDispute(uint256,uint256,uint256)", - "inputValues": [ - "327424", - "86682393929289525193494153568452559356866521755790133919226203303415723775714", - "262144" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 28049, - "blockTimestampDelay": 147436 - }, - { - "call": { - "from": "0x00000000000000000000000000000000000a0000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x5356b681000000000000000000000000000000000000000000000000000000000000000a", - "dataAbiValues": { - "methodSignature": "handleAddEBORequestCreatorFinalityModule(uint256)", - "inputValues": [ - "10" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 21572, - "blockTimestampDelay": 167216 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000010000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xf84d6dfc87e2e521510210bb9f1efbff2cd79d7cd5675b7d503c446b0017b6bbcd5d492f", - "dataAbiValues": { - "methodSignature": "handleAddEBORequestCreatorRequestModule(uint256)", - "inputValues": [ - "61463123393503677610123184398943346662098674670775488627974437033537892600111" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 1005, - "blockTimestampDelay": 436171 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000090000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xec5bf215564402b8b5f207f4eed188f382ae7d299d56800cfcdbfbdd380f5d111164d7f3", - "dataAbiValues": { - "methodSignature": "handleFinalizeRequestResponseModule(uint256)", - "inputValues": [ - "39019069361849810475124568581956515548187837436962789536769612725416477644787" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 29390, - "blockTimestampDelay": 405151 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000050000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 2, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x2047c44964af5d348042810c6713f567b2ae0a1329f9a41a31dd65689466b80ed86a98102cf683f24338dbd0d0b4e969d552adaa1cb2ba854e7981b39db6aa7a4eb4733a4406bfd9ab92f3b803843d5137445ebcd4035dd79b752232dceb1e4a553a7fc90bc23f646eb8405f9865cad125e2b67c4cb5be6b00c8cbfeb79ac596e5fee34b", - "dataAbiValues": { - "methodSignature": "handlePay(uint256,uint256,uint256,uint256)", - "inputValues": [ - "45541126372497665840906508174782686333425760491760126897278402501345182128144", - "20337320375757040483596893633798835084481932414588544316829844888167896085306", - "30769198887980302917418981166398434808730110615619342329624446156192224018377", - "5318647182657600089902655701709793773207260177110878862668649309798760637259" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 23482, - "blockTimestampDelay": 51930 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000040000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x161c7318", - "dataAbiValues": { - "methodSignature": "test_debug()", - "inputValues": [] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 0, - "blockTimestampDelay": 0 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000070000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xf84d6dfcf6cf88d9f37a86121908cb039be9cc51a5103895c84fc649276df49538afcbad", - "dataAbiValues": { - "methodSignature": "handleAddEBORequestCreatorRequestModule(uint256)", - "inputValues": [ - "111635642607345537592182708073224837457339443516741764226233323948854559624109" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 23896, - "blockTimestampDelay": 360604 - }, - { - "call": { - "from": "0x00000000000000000000000000000000000a0000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xd1a55655000000000000000000000000000000000000000000000000000000000004839c", - "dataAbiValues": { - "methodSignature": "handleRevokeModule(uint256)", - "inputValues": [ - "295836" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 55339, - "blockTimestampDelay": 85204 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000090000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xefe223c58670cef9c731503eed4776ba6fad6b3696fa16be2eb18b465fbafeeaa0fe7be70000000000000000000000000000000000000000000000000000000000000064", - "dataAbiValues": { - "methodSignature": "handleDisputeResponseOracle(uint256,uint256)", - "inputValues": [ - "60809237075164466486500268418905379284411433772615587007980463004965951929319", - "100" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 38872, - "blockTimestampDelay": 360628 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000070000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x3c26dcf8a5a8486b947649db116db64c5c45ca42e6e1d986fed7026bd9ac1d8640310d33", - "dataAbiValues": { - "methodSignature": "handleSetEpochManager(uint256)", - "inputValues": [ - "74928950149207865187656931027679893325164490827615215400216718609192626228531" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 21, - "blockTimestampDelay": 232191 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000020000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 2, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x727899ff0000000000000000000000000000000000000000000000000000000000015180001d4d2f346ae4815c9e9f03f21e3deda069706413924e409fa7504059d19f8a00000000000000000000000000000000000000000000000000000000001061800000000000000000000000000000000000000000000000000000000000000000", - "dataAbiValues": { - "methodSignature": "handlePledge(uint256,uint256,uint256,uint256)", - "inputValues": [ - "86400", - "51771271984981606474845360496175347553777726680427752644378601650631319434", - "1073536", - "0" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 0, - "blockTimestampDelay": 0 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000040000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 2, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x0692ea7e00000000000000000000000000000000000000000000000006f05b59d3b20000", - "dataAbiValues": { - "methodSignature": "handleRemoveChain(uint256)", - "inputValues": [ - "500000000000000000" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 7308, - "blockTimestampDelay": 572210 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000080000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 2, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xf60285ca0000000000000000000000000000000000000000000000000000001c00000000c55ec4bc0d08a528b0c66dda1e983ee7a47fab9c2c7be0189c7f1615408b21090c446e0f4b256cc52cd8a8e7d04a641b919117ba4e8eec18cfc1d6bbef455c1afffffffffffffffffffffffffffffffffffffffffffffffffffffffffff96880", - "dataAbiValues": { - "methodSignature": "handleBondWithSender(uint256,uint256,uint256,uint256)", - "inputValues": [ - "120259084288", - "89273072607119207212350079296024751198400000134903763911230695693815852507401", - "5548659387815291343462229641472196329432108891134398921647704413649710177306", - "115792089237316195423570985008687907853269984665640564039457584007913129207936" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 3666, - "blockTimestampDelay": 328552 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000090000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 2, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xf60285cafffffffffffffffffffffffffffffffffffffffffffffffffffffffffffb000025f25d7faafc93fb72865fa242af64b472ba83cff86d93b0533a903d41979d49a118576f8a1093f26ae33d6729cf5cc25c7581d9765b4403dbe286498c516c51fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffefe", - "dataAbiValues": { - "methodSignature": "handleBondWithSender(uint256,uint256,uint256,uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913129312256", - "17163797691587697797154778947709945459459813549491742892821231886739673947465", - "72865376410486736594847893277442722029628711678849188712496784814318445227089", - "115792089237316195423570985008687907853269984665640564039457584007913129639678" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 16097, - "blockTimestampDelay": 32945 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000060000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x1c6850cf935db8f217ab066b096d3e73a0d7b001fc4ecd8978a23860b95e790ce003170a4eaae94e9868a2f0db87614a7dec2d16319e0ba326a536f6f1691bb8e96bf90f0b832e69b37aa7335b293d4fa58406790362547ef49f09345b753dfa24964850", - "dataAbiValues": { - "methodSignature": "handleUpdateDisputeStatus(uint256,uint256,uint256)", - "inputValues": [ - "66655581966891990089433207462395406981090073962288009560809406913154795116298", - "35582376416332259156222282743710371541531294308094913458341281816449259403535", - "5207218629929607814724254599342746391010434197465047907333283290976655657040" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 60434, - "blockTimestampDelay": 109697 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000040000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 3, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x94ae6f8c0000000000000000000000007109709ecfa91a80626ff3989d68f67f5b1dd12d", - "dataAbiValues": { - "methodSignature": "handleValidateArbitrator(uint256)", - "inputValues": [ - "645326474426547203313410069153905908525362434349" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 0, - "blockTimestampDelay": 604799 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000050000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 3, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x6b125a57fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff60000", - "dataAbiValues": { - "methodSignature": "handleRemoveEBORequestCreatorFinalityModule(uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913128984576" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 45581, - "blockTimestampDelay": 117423 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000070000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 2, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x9d2e6a6fc6539b7a2476ae67ba4b976f82611916e58f7b5d2430c83158095390cd02239e", - "dataAbiValues": { - "methodSignature": "handleRemoveEBORequestCreatorRequestModule(uint256)", - "inputValues": [ - "89705665389500661869876865816500895748106493083156214106851103557324275590046" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 41808, - "blockTimestampDelay": 450845 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000050000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 4, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x0692ea7effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff", - "dataAbiValues": { - "methodSignature": "handleRemoveChain(uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913129639935" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 2372, - "blockTimestampDelay": 234681 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000080000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 3, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xd1a556550000000000000000000000000000000000000000000000000000000000000001", - "dataAbiValues": { - "methodSignature": "handleRevokeModule(uint256)", - "inputValues": [ - "1" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 50550, - "blockTimestampDelay": 229553 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000020000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 3, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xf4fbbf9ba1fc4eba964b9a2c2032d06ec565d5292cf250b147e734e6d992d5d0bda436f600000000000000000000000000000000000000000000000000000000000697806bf391284d4660fc77fbe4592328a2f0997562e4f12cf27795f43d0b0fc3bc7a", - "dataAbiValues": { - "methodSignature": "handleBond(uint256,uint256,uint256)", - "inputValues": [ - "73268157448823115839328750088743753530156494765398712182649313036506897856246", - "432000", - "48827820474906800904865104890106511812906050912626598573180323282500481956986" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 0, - "blockTimestampDelay": 1 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000090000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 3, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xdb106ace6d38c114215bf8f8b3ad2ed58065d5cc3089e62f5be34c18288c135f3f9724a20000000000000000000000000000000000000000000000000000000000069780fffffffffffffffffffffffffffffffffffffffffffffffff90fa4a62c4e00006d9d66ca4ec2ea144207d592952b27c55e72f77602616bdfe3178ceccfefbe99", - "dataAbiValues": { - "methodSignature": "handleSlash(uint256,uint256,uint256,uint256)", - "inputValues": [ - "49402376510960630712476074985720877101324288030739208582895764419073394812066", - "432000", - "115792089237316195423570985008687907853269984665640564039457084007913129639936", - "49580204917077383946213464068067879479747000240903333733565655861027448798873" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 27322, - "blockTimestampDelay": 32945 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000050000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 5, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x94c9ca03", - "dataAbiValues": { - "methodSignature": "handleConfirmCouncil()", - "inputValues": [] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 1, - "blockTimestampDelay": 12 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000090000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 4, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x0692ea7e0000000000000000000000000000000000000000000000000000000000000000", - "dataAbiValues": { - "methodSignature": "handleRemoveChain(uint256)", - "inputValues": [ - "0" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 29896, - "blockTimestampDelay": 295089 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000080000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 4, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x8f790139efba9b2834c74d709519853c0c661cced3f6e6bb57034f06a1b09ebb79f36d9c", - "dataAbiValues": { - "methodSignature": "handleReleaseUnutilizedResponse(uint256)", - "inputValues": [ - "108432475220089292989352031551556088320023937241642286584901681212614704852380" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 0, - "blockTimestampDelay": 0 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000030000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 2, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xa44b098e23efefd49377cb652b2efe8f6107693a85f268401d3f695de47b13e417a59903", - "dataAbiValues": { - "methodSignature": "handleSetArbitrator(uint256)", - "inputValues": [ - "16254881397312121307844917357848000937401516541955530653246186212852626725123" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 4534, - "blockTimestampDelay": 578608 - }, - { - "call": { - "from": "0x00000000000000000000000000000000000a0000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 2, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x91e32c7461c4f89d311c5622d26ee473805d801e1e4be30bf8050ec8c525ddf1cf37acbe0ead82a3944ed45e30d3e999e0e48601607b422425d39a985ea42d26d3b6e9c4", - "dataAbiValues": { - "methodSignature": "handleCreateRequest(uint256,bytes32)", - "inputValues": [ - "44222364208250993042194123695458820220229905873588662451847890140503268109502", - "0ead82a3944ed45e30d3e999e0e48601607b422425d39a985ea42d26d3b6e9c4" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 0, - "blockTimestampDelay": 0 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000010000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 2, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x1c6850cf87ae5d14ee2351ca102989d785b4b7efe087fc5a1b60c34e0be145f7b943be8ffffffffffffffffffffffffffffffffffffffffffffffffffbd62f96e762000000000000000000000000000000000000000000000000000000000000000d2e9c", - "dataAbiValues": { - "methodSignature": "handleUpdateDisputeStatus(uint256,uint256,uint256)", - "inputValues": [ - "61370308374700441181536886680791943808671525212080209904364978290829998407311", - "115792089237316195423570985008687907853269984665640564039457284007913129639936", - "863900" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 48892, - "blockTimestampDelay": 295089 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000010000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 3, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x3edc7cbdb121a3097a91b0a9dd08824bfabe574af41d35d62d9a5fec850f5c6a64dc8da6", - "dataAbiValues": { - "methodSignature": "handleFinalizeRequestFinalityModule(uint256)", - "inputValues": [ - "80118805392577917302320307777298810080793910322434011470484002932687271398822" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 6262, - "blockTimestampDelay": 355344 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000070000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 3, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xf6424e9b2c6c78cd5e252239ca5f659d6a33fc535923c6c3f5fe9b5ae5c441f67c10c683fffffffffffffffffffffffffffffffffffffffffffffffffffffff422800000fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe", - "dataAbiValues": { - "methodSignature": "handleProposeResponse(uint256,uint256,uint256)", - "inputValues": [ - "20093418566925099562206972483095283711082263828977174359548316414600652310147", - "115792089237316195423570985008687907853269984665640564039457584007862168846336", - "115792089237316195423570985008687907853269984665640564039457584007913129639934" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 54369, - "blockTimestampDelay": 360627 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000090000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 5, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x4741f6dcf2ec8f248161ff659b9a00fc126511299241c5b1d2eab9067b406b43e6e9d2cd", - "dataAbiValues": { - "methodSignature": "handleSetFinalityModuleData(uint256)", - "inputValues": [ - "109877673198349435273933557980761836191817416087000044001744188979781359489741" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 49682, - "blockTimestampDelay": 571210 - } -] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803567787000-ab0f8e03-6145-4021-98bc-bc4414e1edac.json b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803567787000-ab0f8e03-6145-4021-98bc-bc4414e1edac.json deleted file mode 100755 index 31cf38f..0000000 --- a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803567787000-ab0f8e03-6145-4021-98bc-bc4414e1edac.json +++ /dev/null @@ -1,80 +0,0 @@ -[ - { - "call": { - "from": "0x0000000000000000000000000000000000030000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x13a8b8040000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000034000000000000000000000000000000000000000000000000000000000000000170000000000000000000000000000000000000000000000000000000000d2f000ffffc0000000000000000000000000000000000000000000000000000000000181dc31bc03ad9bc8a966de91dfc8c49b929f6d5fd44a9c22a7f5bb37cebfc106ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed8ee8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b825bc2cfc37067e378b4feef3f3411136744d0b2851c161c601669654cf27bfe6100000000000000000000000000000000000000000000000000000000000000006cd40d93882a844c2becf361c7579664aef7a6ef6e8b79d6bf6f6f76426e9b14039e696f94058cfd274de97421f65916ac135f4d55083d357b9c1f34820c9376000000000000000000000000000000000000000000000000000000000003fffe000000000000000000000000000000000000000000000000000000000000000167e6a528e0202cf23a36eacf513eee303475d3e4c983b2ae2d616b11c440f70a4ac07813439b9213b22d4d86340307a2982de60c241368ad288dfea742b6eb5efffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9686c2d73382b1edfa908bcaeb6b9ac0073f469887a9150c80831642e47e35a614c1bffffffffffffffffffffffffffffffffffffffffffffe48e5eb33a3a7f000000104a13a90c13653470268ea78892361e7e91e706d859aabaaf45ddd18c956640809a37cc7335cdf29b7d988dc8c05e2c1899ad1795364e6fa667088b49487472000000000000000000000000000000000000000000000000000000000000fff6fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b80756993dc4be6ecf1e46c48d6f9cae9255a8b46ef956a3d85442a5f41f70ecf93000000000000000000000000000000000000000000000000000000000076a700a77a4c48695a0407441e86efc633aee092d2ebd99c87fdfeebcd904fe33e086d000000000000000000000000000000000000000000000000000000000000001d563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd0633ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed6958658aad3329b56f2f98187bbaed7351982ae06a00b9382adcb723b8b393d1f5e2def8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b4498bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef328d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad82082401f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade0554594d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae962914f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cbba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c33f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8fd276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f6617237058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf259a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe2665f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a219fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb", - "dataAbiValues": { - "methodSignature": "handleCreateRequests(uint256[],bytes32[])", - "inputValues": [ - [ - "13824000", - "115791647525550000827488589184312722123641027794666345134718053606362806484993", - "58737407075920930096693749632210245280794127876199190949253348332199714210054", - "115792089237316195423570985008687907853269984665640564039457584007913128431336", - "115792089237316195423570985008687907853269984665640564039457584007913129380738", - "41504671482165347584846103287222174319130579613222615088745194098566077611617", - "0", - "49224452924880417829398231270379785502530069722970149981823851608145893694228", - "1636828073493779560152621491074002847609709387720111137750911676859097584502", - "262142", - "1", - "46995738119123743123282428161140493004285235666026628953647859202250191730442", - "33811214160519685654400438720767591502827986970858420988841187408488311483230", - "115792089237316195423570985008687907853269984665640564039457584007913129207916", - "20557653259021005890251421269967042420225955023564768794272035576696478452763", - "115792089237316195423570985008687907853269984665640563909857584007913129639936", - "7367887950809164700104084563884591449786965425123545364576065505479275931200", - "58168524174645209900719041489934173752247098791866719219864340874379345294450", - "65526", - "115792089237316195423570985008687907853269984665640564039457584007913129380736", - "53107142721938561923251317745913031228477959801596843755970727929974933606291", - "7776000", - "75752327540241786815348607290604056680494387521335977257182003214564422715501" - ], - [ - "563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe", - "27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a", - "9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd06", - "33ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865", - "8aad3329b56f2f98187bbaed7351982ae06a00b9382adcb723b8b393d1f5e2de", - "f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1", - "c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b44", - "98bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01", - "108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef32", - "8d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea", - "94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad8208240", - "1f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade05545", - "94d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056", - "cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae96291", - "4f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa", - "9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874", - "ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cb", - "ba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c3", - "3f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8f", - "d276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99", - "fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce", - "3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb", - "4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f661723", - "7058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78", - "994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25", - "9a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe26", - "65f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a2", - "19fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c", - "51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb" - ] - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 21265, - "blockTimestampDelay": 360627 - } -] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803569568000-2b517ff1-9d51-4eb3-9295-59aef5edfe82.json b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803569568000-2b517ff1-9d51-4eb3-9295-59aef5edfe82.json deleted file mode 100755 index 2b53cfb..0000000 --- a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803569568000-2b517ff1-9d51-4eb3-9295-59aef5edfe82.json +++ /dev/null @@ -1,25 +0,0 @@ -[ - { - "call": { - "from": "0x0000000000000000000000000000000000040000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x52e3cb9c6b0d264b5add160d5053aa476132c22d6540d3605ad8dfb850790b1ba996569b", - "dataAbiValues": { - "methodSignature": "handleSetMaxUsersToCheck(uint256)", - "inputValues": [ - "48420708108177856443123222644862532857390746786695606854692354379525674915483" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 59698, - "blockTimestampDelay": 331757 - } -] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803569770000-871a08c3-b8b7-48ec-b0f3-8f40a4b63667.json b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803569770000-871a08c3-b8b7-48ec-b0f3-8f40a4b63667.json deleted file mode 100755 index 4c27a18..0000000 --- a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803569770000-871a08c3-b8b7-48ec-b0f3-8f40a4b63667.json +++ /dev/null @@ -1,101 +0,0 @@ -[ - { - "call": { - "from": "0x0000000000000000000000000000000000030000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x13a8b8040000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000034000000000000000000000000000000000000000000000000000000000000000170000000000000000000000000000000000000000000000000000000000d2f000ffffc0000000000000000000000000000000000000000000000000000000000181dc31bc03ad9bc8a966de91dfc8c49b929f6d5fd44a9c22a7f5bb37cebfc106ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed8ee8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b825bc2cfc37067e378b4feef3f3411136744d0b2851c161c601669654cf27bfe610000000000000000000000000000000000000000000000000000000000000000578750b27e877a957d33dc50d914b1caf972efffa4bb78b85e66dd813a864ca4039e696f94058cfd274de97421f65916ac135f4d55083d357b9c1f34820c9376000000000000000000000000000000000000000000000000000000000003fffe000000000000000000000000000000000000000000000000000000000000000167e6a528e0202cf23a36eacf513eee303475d3e4c983b2ae2d616b11c440f70a4ac07813439b9213b22d4d86340307a2982de60c241368ad288dfea742b6eb5efffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9686c2d73382b1edfa908bcaeb6b9ac0073f469887a9150c80831642e47e35a614c1bffffffffffffffffffffffffffffffffffffffffffffe48e5eb33a3a7f000000104a13a90c13653470268ea78892361e7e91e706d859aabaaf45ddd18c956640809a37cc7335cdf29b7d988dc8c05e2c1899ad1795364e6fa667088b49487472000000000000000000000000000000000000000000000000000000000000fff6fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b800000000000000000000000000000000000000000000000000329c51ac594cf93000000000000000000000000000000000000000000000000000000000076a700a77a4c48695a0407441e86efc633aee092d2ebd99c87fdfeebcd904fe33e086d000000000000000000000000000000000000000000000000000000000000001d563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd0633ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865d5d6866ffb684491364a0853403f689144f5664f5d50de1b1a30d683ff29f21bf8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b4498bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef328d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad82082401f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade0554594d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae96291d8c581a922d52cd477658fcc2e2ca1f954f274ed2cd833a98e6d1d4455581f9d9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cbba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c33f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8fd276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f6617237058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf259a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe2665f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a219fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb", - "dataAbiValues": { - "methodSignature": "handleCreateRequests(uint256[],bytes32[])", - "inputValues": [ - [ - "13824000", - "115791647525550000827488589184312722123641027794666345134718053606362806484993", - "58737407075920930096693749632210245280794127876199190949253348332199714210054", - "115792089237316195423570985008687907853269984665640564039457584007913128431336", - "115792089237316195423570985008687907853269984665640564039457584007913129380738", - "41504671482165347584846103287222174319130579613222615088745194098566077611617", - "0", - "39590299132392589184737138068833640165131826767556478003143025413084726840484", - "1636828073493779560152621491074002847609709387720111137750911676859097584502", - "262142", - "1", - "46995738119123743123282428161140493004285235666026628953647859202250191730442", - "33811214160519685654400438720767591502827986970858420988841187408488311483230", - "115792089237316195423570985008687907853269984665640564039457584007913129207916", - "20557653259021005890251421269967042420225955023564768794272035576696478452763", - "115792089237316195423570985008687907853269984665640563909857584007913129639936", - "7367887950809164700104084563884591449786965425123545364576065505479275931200", - "58168524174645209900719041489934173752247098791866719219864340874379345294450", - "65526", - "115792089237316195423570985008687907853269984665640564039457584007913129380736", - "227929974933606291", - "7776000", - "75752327540241786815348607290604056680494387521335977257182003214564422715501" - ], - [ - "563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe", - "27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a", - "9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd06", - "33ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865", - "d5d6866ffb684491364a0853403f689144f5664f5d50de1b1a30d683ff29f21b", - "f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1", - "c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b44", - "98bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01", - "108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef32", - "8d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea", - "94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad8208240", - "1f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade05545", - "94d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056", - "cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae96291", - "d8c581a922d52cd477658fcc2e2ca1f954f274ed2cd833a98e6d1d4455581f9d", - "9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874", - "ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cb", - "ba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c3", - "3f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8f", - "d276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99", - "fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce", - "3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb", - "4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f661723", - "7058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78", - "994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25", - "9a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe26", - "65f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a2", - "19fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c", - "51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb" - ] - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 21265, - "blockTimestampDelay": 360627 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000020000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x161c7318", - "dataAbiValues": { - "methodSignature": "test_debug()", - "inputValues": [] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 15325, - "blockTimestampDelay": 189245 - } -] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803570237000-58712d84-87f6-4a52-b17f-0a1efd24dc9a.json b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803570237000-58712d84-87f6-4a52-b17f-0a1efd24dc9a.json deleted file mode 100755 index 4dbda46..0000000 --- a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803570237000-58712d84-87f6-4a52-b17f-0a1efd24dc9a.json +++ /dev/null @@ -1,104 +0,0 @@ -[ - { - "call": { - "from": "0x0000000000000000000000000000000000030000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x13a8b8040000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000034000000000000000000000000000000000000000000000000000000000000000170000000000000000000000000000000000000000000000000000000000d2f000ffffc0000000000000000000000000000000000000000000000000000000000181dc31bc03ad9bc8a966de91dfc8c49b929f6d5fd44a9c22a7f5bb37cebfc106ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed8ee8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b825bc2cfc37067e378b4feef3f3411136744d0b2851c161c601669654cf27bfe6100000000000000000000000000000000000000000000000000000000000000006cd40d93882a844c2becf361c7579664aef7a6ef6e8b79d6bf6f6f76426e9b14039e696f94058cfd274de97421f65916ac135f4d55083d357b9c1f34820c9376000000000000000000000000000000000000000000000000000000000003fffe000000000000000000000000000000000000000000000000000000000000000167e6a528e0202cf23a36eacf513eee303475d3e4c983b2ae2d616b11c440f70a4ac07813439b9213b22d4d86340307a2982de60c241368ad288dfea742b6eb5efffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9686c2d73382b1edfa908bcaeb6b9ac0073f469887a9150c80831642e47e35a614c1bffffffffffffffffffffffffffffffffffffffffffffe48e5eb33a3a7f000000104a13a90c13653470268ea78892361e7e91e706d859aabaaf45ddd18c956640809a37cc7335cdf29b7d988dc8c05e2c1899ad1795364e6fa667088b49487472000000000000000000000000000000000000000000000000000000000000fff6fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b80756993dc4be6ecf1e46c48d6f9cae9255a8b46ef956a3d85442a5f41f70ecf93000000000000000000000000000000000000000000000000000000000076a700a77a4c48695a0407441e86efc633aee092d2ebd99c87fdfeebcd904fe33e086d000000000000000000000000000000000000000000000000000000000000001d563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd0633ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed6958658aad3329b56f2f98187bbaed7351982ae06a00b9382adcb723b8b393d1f5e2def8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b4498bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef328d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad82082401f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade0554594d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae962914f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cbba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c33f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8fd276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f6617237058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf259a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe2665f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a219fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb", - "dataAbiValues": { - "methodSignature": "handleCreateRequests(uint256[],bytes32[])", - "inputValues": [ - [ - "13824000", - "115791647525550000827488589184312722123641027794666345134718053606362806484993", - "58737407075920930096693749632210245280794127876199190949253348332199714210054", - "115792089237316195423570985008687907853269984665640564039457584007913128431336", - "115792089237316195423570985008687907853269984665640564039457584007913129380738", - "41504671482165347584846103287222174319130579613222615088745194098566077611617", - "0", - "49224452924880417829398231270379785502530069722970149981823851608145893694228", - "1636828073493779560152621491074002847609709387720111137750911676859097584502", - "262142", - "1", - "46995738119123743123282428161140493004285235666026628953647859202250191730442", - "33811214160519685654400438720767591502827986970858420988841187408488311483230", - "115792089237316195423570985008687907853269984665640564039457584007913129207916", - "20557653259021005890251421269967042420225955023564768794272035576696478452763", - "115792089237316195423570985008687907853269984665640563909857584007913129639936", - "7367887950809164700104084563884591449786965425123545364576065505479275931200", - "58168524174645209900719041489934173752247098791866719219864340874379345294450", - "65526", - "115792089237316195423570985008687907853269984665640564039457584007913129380736", - "53107142721938561923251317745913031228477959801596843755970727929974933606291", - "7776000", - "75752327540241786815348607290604056680494387521335977257182003214564422715501" - ], - [ - "563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe", - "27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a", - "9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd06", - "33ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865", - "8aad3329b56f2f98187bbaed7351982ae06a00b9382adcb723b8b393d1f5e2de", - "f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1", - "c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b44", - "98bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01", - "108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef32", - "8d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea", - "94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad8208240", - "1f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade05545", - "94d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056", - "cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae96291", - "4f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa", - "9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874", - "ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cb", - "ba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c3", - "3f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8f", - "d276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99", - "fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce", - "3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb", - "4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f661723", - "7058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78", - "994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25", - "9a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe26", - "65f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a2", - "19fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c", - "51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb" - ] - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 21265, - "blockTimestampDelay": 360627 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000050000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x91e32c74e0613faa5f896b73380078af3c1ee8605eec949aaf9c8f422f264f3de916b58dc905ee964be623d23ba97ccc5a2b838249eaa10a8671d6a68f97b09746107abf", - "dataAbiValues": { - "methodSignature": "handleCreateRequest(uint256,bytes32)", - "inputValues": [ - "101489901651207154401933345705911812335881908306802664469868899807780031346061", - "c905ee964be623d23ba97ccc5a2b838249eaa10a8671d6a68f97b09746107abf" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 23884, - "blockTimestampDelay": 297676 - } -] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803570989000-b61b8318-0b73-4814-96b9-ffd4a7bf2c0a.json b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803570989000-b61b8318-0b73-4814-96b9-ffd4a7bf2c0a.json deleted file mode 100755 index 27966e6..0000000 --- a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803570989000-b61b8318-0b73-4814-96b9-ffd4a7bf2c0a.json +++ /dev/null @@ -1,103 +0,0 @@ -[ - { - "call": { - "from": "0x0000000000000000000000000000000000030000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x13a8b8040000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000034000000000000000000000000000000000000000000000000000000000000000170000000000000000000000000000000000000000000000000000000000d2f000ffffc0000000000000000000000000000000000000000000000000000000000181dc31bc03ad9bc8a966de91dfc8c49b929f6d5fd44a9c22a7f5bb37cebfc106ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed8ee8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b825bc2cfc37067e378b4feef3f3411136744d0b2851c161c601669654cf27bfe6100000000000000000000000000000000000000000000000000000000000000006cd40d93882a844c2becf361c7579664aef7a6ef6e8b79d6bf6f6f76426e9b14039e696f94058cfd274de97421f65916ac135f4d55083d357b9c1f34820c9376000000000000000000000000000000000000000000000000000000000003fffe000000000000000000000000000000000000000000000000000000000000000167e6a528e0202cf23a36eacf513eee303475d3e4c983b2ae2d616b11c440f70a4ac07813439b9213b22d4d86340307a2982de60c241368ad288dfea742b6eb5efffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9686c2d73382b1edfa908bcaeb6b9ac0073f469887a9150c80831642e47e35a614c1bffffffffffffffffffffffffffffffffffffffffffffe48e5eb33a3a7f000000104a13a90c13653470268ea78892361e7e91e706d859aabaaf45ddd18c956640809a37cc7335cdf29b7d988dc8c05e2c1899ad1795364e6fa667088b49487472ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffee00b4fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b80756993dc4be6ecf1e46c48d6f9cae9255a8b46ef956a3d85442a5f41f70ecf93000000000000000000000000000000000000000000000000000000000076a700a77a4c48695a0407441e86efc633aee092d2ebd99c87fdfeebcd904fe33e086d000000000000000000000000000000000000000000000000000000000000001d563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd0633ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865a46715d7736dde0bcf6527392542031b42d0197ab2c1bb4c4d2d7abaed280007f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b4498bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef328d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad82082401f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade0554594d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae962914f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cbba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c33f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8fd276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f6617237058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf259a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe260d35d19771f7c1af646e114de36d19c25e3fc040b27be76073113bb33db17d5d19fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb", - "dataAbiValues": { - "methodSignature": "handleCreateRequests(uint256[],bytes32[])", - "inputValues": [ - [ - "13824000", - "115791647525550000827488589184312722123641027794666345134718053606362806484993", - "58737407075920930096693749632210245280794127876199190949253348332199714210054", - "115792089237316195423570985008687907853269984665640564039457584007913128431336", - "115792089237316195423570985008687907853269984665640564039457584007913129380738", - "41504671482165347584846103287222174319130579613222615088745194098566077611617", - "0", - "49224452924880417829398231270379785502530069722970149981823851608145893694228", - "1636828073493779560152621491074002847609709387720111137750911676859097584502", - "262142", - "1", - "46995738119123743123282428161140493004285235666026628953647859202250191730442", - "33811214160519685654400438720767591502827986970858420988841187408488311483230", - "115792089237316195423570985008687907853269984665640564039457584007913129207916", - "20557653259021005890251421269967042420225955023564768794272035576696478452763", - "115792089237316195423570985008687907853269984665640563909857584007913129639936", - "7367887950809164700104084563884591449786965425123545364576065505479275931200", - "58168524174645209900719041489934173752247098791866719219864340874379345294450", - "115792089237316195423570985008687907853269984665640564039457584007913128460468", - "115792089237316195423570985008687907853269984665640564039457584007913129380736", - "53107142721938561923251317745913031228477959801596843755970727929974933606291", - "7776000", - "75752327540241786815348607290604056680494387521335977257182003214564422715501" - ], - [ - "563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe", - "27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a", - "9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd06", - "33ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865", - "a46715d7736dde0bcf6527392542031b42d0197ab2c1bb4c4d2d7abaed280007", - "f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1", - "c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b44", - "98bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01", - "108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef32", - "8d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea", - "94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad8208240", - "1f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade05545", - "94d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056", - "cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae96291", - "4f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa", - "9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874", - "ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cb", - "ba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c3", - "3f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8f", - "d276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99", - "fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce", - "3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb", - "4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f661723", - "7058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78", - "994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25", - "9a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe26", - "0d35d19771f7c1af646e114de36d19c25e3fc040b27be76073113bb33db17d5d", - "19fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c", - "51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb" - ] - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 21265, - "blockTimestampDelay": 360627 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000080000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x51b295e3caac5b7c00ae43f0a0d2465bc3a827daefa6255afc3feafd105a01b058af4cc3", - "dataAbiValues": { - "methodSignature": "handleFinalize(uint256)", - "inputValues": [ - "91671724510984325847623981850838041499373483072178023597879983910219265559747" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 616, - "blockTimestampDelay": 245182 - } -] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803571997000-b4c04c00-0029-44d8-a7a6-df5aa8196990.json b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803571997000-b4c04c00-0029-44d8-a7a6-df5aa8196990.json deleted file mode 100755 index 8986a50..0000000 --- a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803571997000-b4c04c00-0029-44d8-a7a6-df5aa8196990.json +++ /dev/null @@ -1,133 +0,0 @@ -[ - { - "call": { - "from": "0x0000000000000000000000000000000000030000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x13a8b8040000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000034000000000000000000000000000000000000000000000000000000000000000170000000000000000000000000000000000000000000000000000000000d2f000ffffc0000000000000000000000000000000000000000000000000000000000181dc31bc03ad9bc8a966de91dfc8c49b929f6d5fd44a9c22a7f5bb37cebfc106ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed8ee8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b825bc2cfc37067e378b4feef3f3411136744d0b2851c161c601669654cf27bfe610000000000000000000000000000000000000000000000000000000000000000578750b27e877a957d33dc50d914b1caf972efffa4bb78b85e66dd813a864ca4039e696f94058cfd274de97421f65916ac135f4d55083d357b9c1f34820c9376000000000000000000000000000000000000000000000000000000000003fffe000000000000000000000000000000000000000000000000000000000000000167e6a528e0202cf23a36eacf513eee303475d3e4c983b2ae2d616b11c440f70a4ac07813439b9213b22d4d86340307a2982de60c241368ad288dfea742b6eb5efffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9686c2d73382b1edfa908bcaeb6b9ac0073f469887a9150c80831642e47e35a614c1bffffffffffffffffffffffffffffffffffffffffffffe48e5eb33a3a7f000000104a13a90c13653470268ea78892361e7e91e706d859aabaaf45ddd18c956640809a37cc7335cdf29b7d988dc8c05e2c1899ad1795364e6fa667088b49487472000000000000000000000000000000000000000000000000000000000000fff6fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b800000000000000000000000000000000000000000000000000329c51ac594cf93000000000000000000000000000000000000000000000000000000000076a700a77a4c48695a0407441e86efc633aee092d2ebd99c87fdfeebcd904fe33e086d000000000000000000000000000000000000000000000000000000000000001d563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd0633ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865d5d6866ffb684491364a0853403f689144f5664f5d50de1b1a30d683ff29f21bf8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b4498bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef328d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad82082401f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade0554594d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae96291d8c581a922d52cd477658fcc2e2ca1f954f274ed2cd833a98e6d1d4455581f9d9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cbba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c33f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8fd276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f6617237058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf259a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe2665f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a219fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb", - "dataAbiValues": { - "methodSignature": "handleCreateRequests(uint256[],bytes32[])", - "inputValues": [ - [ - "13824000", - "115791647525550000827488589184312722123641027794666345134718053606362806484993", - "58737407075920930096693749632210245280794127876199190949253348332199714210054", - "115792089237316195423570985008687907853269984665640564039457584007913128431336", - "115792089237316195423570985008687907853269984665640564039457584007913129380738", - "41504671482165347584846103287222174319130579613222615088745194098566077611617", - "0", - "39590299132392589184737138068833640165131826767556478003143025413084726840484", - "1636828073493779560152621491074002847609709387720111137750911676859097584502", - "262142", - "1", - "46995738119123743123282428161140493004285235666026628953647859202250191730442", - "33811214160519685654400438720767591502827986970858420988841187408488311483230", - "115792089237316195423570985008687907853269984665640564039457584007913129207916", - "20557653259021005890251421269967042420225955023564768794272035576696478452763", - "115792089237316195423570985008687907853269984665640563909857584007913129639936", - "7367887950809164700104084563884591449786965425123545364576065505479275931200", - "58168524174645209900719041489934173752247098791866719219864340874379345294450", - "65526", - "115792089237316195423570985008687907853269984665640564039457584007913129380736", - "227929974933606291", - "7776000", - "75752327540241786815348607290604056680494387521335977257182003214564422715501" - ], - [ - "563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe", - "27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a", - "9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd06", - "33ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865", - "d5d6866ffb684491364a0853403f689144f5664f5d50de1b1a30d683ff29f21b", - "f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1", - "c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b44", - "98bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01", - "108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef32", - "8d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea", - "94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad8208240", - "1f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade05545", - "94d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056", - "cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae96291", - "d8c581a922d52cd477658fcc2e2ca1f954f274ed2cd833a98e6d1d4455581f9d", - "9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874", - "ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cb", - "ba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c3", - "3f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8f", - "d276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99", - "fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce", - "3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb", - "4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f661723", - "7058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78", - "994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25", - "9a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe26", - "65f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a2", - "19fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c", - "51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb" - ] - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 21265, - "blockTimestampDelay": 360627 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000020000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x161c7318", - "dataAbiValues": { - "methodSignature": "test_debug()", - "inputValues": [] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 15325, - "blockTimestampDelay": 189245 - }, - { - "call": { - "from": "0x00000000000000000000000000000000000a0000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x88b05f294e5c5739570432e46e997185cf2683c287e8339e1ce7ab9502db4f4b4f0c1b77000000000000000000000000000000000000000000000000000000000012750000000000000000000000000000000000000000000000000006f05b59d3b200003c3b20fe3c6474ef6112cec6e2e1e2a66147c502767418c32e65c3bfa035d898948fc45007206ff5c0b2215d0b5c97d5551a84ed653f28e284b8567c463ce3650000000000000000000000000000000000000000000000000000000000069780ffffffffffffffffffffffffffffffffffffffffffffffffffffffec398000000000000000000000000000000000000000000000000000000000000000093a80", - "dataAbiValues": { - "methodSignature": "handleSetDisputeModuleData(uint256,(address,address,uint256,uint256,uint256,uint256,uint256))", - "inputValues": [ - "35443554117267417118592017165536035041230544133048285386578266163756344810359", - { - "accountingExtension": "0x0000000000000000000000000000000000127500", - "bondEscalationDeadline": "432000", - "bondSize": "27243242601887521753615714576112380311306725462768124357416761313244220872856", - "bondToken": "0x00000000000000000000000006f05b59d3b20000", - "disputeWindow": "604800", - "maxNumberOfEscalations": "67196315620416968751812103706326677402054656808860235011842083525495944438629", - "tyingBuffer": "115792089237316195423570985008687907853269984665640564039457584007828194983936" - } - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 24101, - "blockTimestampDelay": 185392 - } -] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803572903000-2dfcb57a-f822-4ba8-935c-c6ef623952cf.json b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803572903000-2dfcb57a-f822-4ba8-935c-c6ef623952cf.json deleted file mode 100755 index 7e992ae..0000000 --- a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803572903000-2dfcb57a-f822-4ba8-935c-c6ef623952cf.json +++ /dev/null @@ -1,49 +0,0 @@ -[ - { - "call": { - "from": "0x0000000000000000000000000000000000040000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x52e3cb9c6b0d264b5add160d5053aa476132c22d6540d3605ad8dfb850790b1ba996569b", - "dataAbiValues": { - "methodSignature": "handleSetMaxUsersToCheck(uint256)", - "inputValues": [ - "48420708108177856443123222644862532857390746786695606854692354379525674915483" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 59698, - "blockTimestampDelay": 331757 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000020000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x62e8fd3500000000000000000000000000000000000000000000000000000000000000124ab950c09e2414c3ec444389b5281e1bdfda8ecfec5392240af8d376f3781e4f", - "dataAbiValues": { - "methodSignature": "handleOnDisputeStatusChange(uint256,uint256)", - "inputValues": [ - "18", - "33798574834817402171861624718400176195923458571787846279113220864863863578191" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 41059, - "blockTimestampDelay": 386818 - } -] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803573530000-e8877634-86e5-4563-9155-7f538767b281.json b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803573530000-e8877634-86e5-4563-9155-7f538767b281.json deleted file mode 100755 index cc9be3f..0000000 --- a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803573530000-e8877634-86e5-4563-9155-7f538767b281.json +++ /dev/null @@ -1,103 +0,0 @@ -[ - { - "call": { - "from": "0x0000000000000000000000000000000000030000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x13a8b80400000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000340000000000000000000000000000000000000000000000000000000000000001700000000000000000000000000000000000000000000000000000000000010e0ffffc0000000000000000000000000000000000000000000000000000000000181dc31bc03ad9bc8a966de91dfc8c49b929f6d5fd44a9c22a7f5bb37cebfc106ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed8ee8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b825bc2cfc37067e378b4feef3f3411136744d0b2851c161c601669654cf27bfe6100000000000000000000000000000000000000000000000000000000000000006cd40d93882a844c2becf361c7579664aef7a6ef6e8b79d6bf6f6f76426e9b14039e696f94058cfd274de97421f65916ac135f4d55083d357b9c1f34820c9376000000000000000000000000000000000000000000000000000000000003fffe000000000000000000000000000000000000000000000000000000000000000167e6a528e0202cf23a36eacf513eee303475d3e4c983b2ae2d616b11c440f70a0000000000000000000000000000000000000000000000000000000000000000fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9686c2d73382b1edfa908bcaeb6b9ac0073f469887a9150c80831642e47e35a614c1bffffffffffffffffffffffffffffffffffffffffffffe48e5eb33a3a7f000000104a13a90c13653470268ea78892361e7e91e706d859aabaaf45ddd18c956640809a37cc7335cdf29b7d988dc8c05e2c1899ad1795364e6fa667088b49487472000000000000000000000000000000000000000000000000000000000000fff6fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b80756993dc4be6ecf1e46c48d6f9cae9255a8b46ef956a3d85442a5f41f70ecf93000000000000000000000000000000000000000000000000000000000076a700a77a4c48695a0407441e86efc633aee092d2ebd99c87fdfeebcd904fe33e086d000000000000000000000000000000000000000000000000000000000000001d563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd0633ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed6958658aad3329b56f2f98187bbaed7351982ae06a00b9382adcb723b8b393d1f5e2def8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b4498bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef328d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad82082401f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade0554594d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e0568fcad889d076bcc6f0b5c84a4f6f334b74f944740b9f88a51f2895e76dd401884f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cbba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c33f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8fd276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f6617237058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25abbc2a768fea28edd1d653edcbaa5cace525564c5330b62b6ed63452f3b221f165f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a219fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb", - "dataAbiValues": { - "methodSignature": "handleCreateRequests(uint256[],bytes32[])", - "inputValues": [ - [ - "4320", - "115791647525550000827488589184312722123641027794666345134718053606362806484993", - "58737407075920930096693749632210245280794127876199190949253348332199714210054", - "115792089237316195423570985008687907853269984665640564039457584007913128431336", - "115792089237316195423570985008687907853269984665640564039457584007913129380738", - "41504671482165347584846103287222174319130579613222615088745194098566077611617", - "0", - "49224452924880417829398231270379785502530069722970149981823851608145893694228", - "1636828073493779560152621491074002847609709387720111137750911676859097584502", - "262142", - "1", - "46995738119123743123282428161140493004285235666026628953647859202250191730442", - "0", - "115792089237316195423570985008687907853269984665640564039457584007913129207916", - "20557653259021005890251421269967042420225955023564768794272035576696478452763", - "115792089237316195423570985008687907853269984665640563909857584007913129639936", - "7367887950809164700104084563884591449786965425123545364576065505479275931200", - "58168524174645209900719041489934173752247098791866719219864340874379345294450", - "65526", - "115792089237316195423570985008687907853269984665640564039457584007913129380736", - "53107142721938561923251317745913031228477959801596843755970727929974933606291", - "7776000", - "75752327540241786815348607290604056680494387521335977257182003214564422715501" - ], - [ - "563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe", - "27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a", - "9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd06", - "33ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865", - "8aad3329b56f2f98187bbaed7351982ae06a00b9382adcb723b8b393d1f5e2de", - "f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1", - "c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b44", - "98bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01", - "108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef32", - "8d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea", - "94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad8208240", - "1f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade05545", - "94d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056", - "8fcad889d076bcc6f0b5c84a4f6f334b74f944740b9f88a51f2895e76dd40188", - "4f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa", - "9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874", - "ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cb", - "ba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c3", - "3f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8f", - "d276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99", - "fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce", - "3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb", - "4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f661723", - "7058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78", - "994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25", - "abbc2a768fea28edd1d653edcbaa5cace525564c5330b62b6ed63452f3b221f1", - "65f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a2", - "19fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c", - "51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb" - ] - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 21265, - "blockTimestampDelay": 360627 - }, - { - "call": { - "from": "0x00000000000000000000000000000000000a0000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x6b125a57f70d7a9f8f7dc147f3c07846c57ff55a159156e04b1aef93f09a50411ed01cac", - "dataAbiValues": { - "methodSignature": "handleRemoveEBORequestCreatorFinalityModule(uint256)", - "inputValues": [ - "111745088926706135766942953021093517459235404528421949148968020375462747315372" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 41182, - "blockTimestampDelay": 251336 - } -] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803573604000-9ce76d8d-3fdf-4be0-a718-67783ed4f0bd.json b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803573604000-9ce76d8d-3fdf-4be0-a718-67783ed4f0bd.json deleted file mode 100755 index 785c842..0000000 --- a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803573604000-9ce76d8d-3fdf-4be0-a718-67783ed4f0bd.json +++ /dev/null @@ -1,150 +0,0 @@ -[ - { - "call": { - "from": "0x0000000000000000000000000000000000030000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x13a8b8040000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000034000000000000000000000000000000000000000000000000000000000000000170000000000000000000000000000000000000000000000000000000000d2f000ffffc0000000000000000000000000000000000000000000000000000000000181dc31bc03ad9bc8a966de91dfc8c49b929f6d5fd44a9c22a7f5bb37cebfc106ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed8ee8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b825bc2cfc37067e378b4feef3f3411136744d0b2851c161c601669654cf27bfe6100000000000000000000000000000000000000000000000000000000000000006cd40d93882a844c2becf361c7579664aef7a6ef6e8b79d6bf6f6f76426e9b14039e696f94058cfd274de97421f65916ac135f4d55083d357b9c1f34820c9376000000000000000000000000000000000000000000000000000000000003fffe000000000000000000000000000000000000000000000000000000000000000167e6a528e0202cf23a36eacf513eee303475d3e4c983b2ae2d616b11c440f70a4ac07813439b9213b22d4d86340307a2982de60c241368ad288dfea742b6eb5efffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9686c2d73382b1edfa908bcaeb6b9ac0073f469887a9150c80831642e47e35a614c1bffffffffffffffffffffffffffffffffffffffffffffe48e5eb33a3a7f000000104a13a90c13653470268ea78892361e7e91e706d859aabaaf45ddd18c956640809a37cc7335cdf29b7d988dc8c05e2c1899ad1795364e6fa667088b49487472ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffee00b4fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b80756993dc4be6ecf1e46c48d6f9cae9255a8b46ef956a3d85442a5f41f70ecf93000000000000000000000000000000000000000000000000000000000076a700a77a4c48695a0407441e86efc633aee092d2ebd99c87fdfeebcd904fe33e086d000000000000000000000000000000000000000000000000000000000000001d563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd0633ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865a46715d7736dde0bcf6527392542031b42d0197ab2c1bb4c4d2d7abaed280007f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b4498bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef328d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad82082401f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade0554594d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae962914f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cbba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c33f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8fd276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f6617237058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf259a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe260d35d19771f7c1af646e114de36d19c25e3fc040b27be76073113bb33db17d5d19fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb", - "dataAbiValues": { - "methodSignature": "handleCreateRequests(uint256[],bytes32[])", - "inputValues": [ - [ - "13824000", - "115791647525550000827488589184312722123641027794666345134718053606362806484993", - "58737407075920930096693749632210245280794127876199190949253348332199714210054", - "115792089237316195423570985008687907853269984665640564039457584007913128431336", - "115792089237316195423570985008687907853269984665640564039457584007913129380738", - "41504671482165347584846103287222174319130579613222615088745194098566077611617", - "0", - "49224452924880417829398231270379785502530069722970149981823851608145893694228", - "1636828073493779560152621491074002847609709387720111137750911676859097584502", - "262142", - "1", - "46995738119123743123282428161140493004285235666026628953647859202250191730442", - "33811214160519685654400438720767591502827986970858420988841187408488311483230", - "115792089237316195423570985008687907853269984665640564039457584007913129207916", - "20557653259021005890251421269967042420225955023564768794272035576696478452763", - "115792089237316195423570985008687907853269984665640563909857584007913129639936", - "7367887950809164700104084563884591449786965425123545364576065505479275931200", - "58168524174645209900719041489934173752247098791866719219864340874379345294450", - "115792089237316195423570985008687907853269984665640564039457584007913128460468", - "115792089237316195423570985008687907853269984665640564039457584007913129380736", - "53107142721938561923251317745913031228477959801596843755970727929974933606291", - "7776000", - "75752327540241786815348607290604056680494387521335977257182003214564422715501" - ], - [ - "563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe", - "27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a", - "9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd06", - "33ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865", - "a46715d7736dde0bcf6527392542031b42d0197ab2c1bb4c4d2d7abaed280007", - "f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1", - "c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b44", - "98bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01", - "108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef32", - "8d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea", - "94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad8208240", - "1f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade05545", - "94d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056", - "cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae96291", - "4f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa", - "9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874", - "ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cb", - "ba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c3", - "3f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8f", - "d276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99", - "fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce", - "3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb", - "4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f661723", - "7058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78", - "994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25", - "9a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe26", - "0d35d19771f7c1af646e114de36d19c25e3fc040b27be76073113bb33db17d5d", - "19fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c", - "51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb" - ] - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 21265, - "blockTimestampDelay": 360627 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000080000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x51b295e3caac5b7c00ae43f0a0d2465bc3a827daefa6255afc3feafd105a01b058af4cc3", - "dataAbiValues": { - "methodSignature": "handleFinalize(uint256)", - "inputValues": [ - "91671724510984325847623981850838041499373483072178023597879983910219265559747" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 616, - "blockTimestampDelay": 245182 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000070000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x62e8fd357410315e284ca2250b236ba99041acd7e7626e3fc66727657ddcb75ed512355238b8e299444e7771cad3e9cc9efbc8237922a7b18f034d56199ddaad5f62f70c", - "dataAbiValues": { - "methodSignature": "handleOnDisputeStatusChange(uint256,uint256)", - "inputValues": [ - "52496900712745351460185096722717982602139275703227615313943886816707427317074", - "25656183307321870319256066529210878052151786525540532817103830451324188817164" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 0, - "blockTimestampDelay": 0 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000010000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x5cc02fa53b4e8ff8cbb94866d057a07c347e0cb79a079e6c49875d6adb448ca8b36b2f93", - "dataAbiValues": { - "methodSignature": "handleSetPendingCouncil(uint256)", - "inputValues": [ - "26825265794714411535119211388793422995701606456004679527746190657884506501011" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 22951, - "blockTimestampDelay": 222797 - } -] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803573691000-2f49b3b2-64e5-483d-8360-df43563d2ae4.json b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803573691000-2f49b3b2-64e5-483d-8360-df43563d2ae4.json deleted file mode 100755 index d6a1853..0000000 --- a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803573691000-2f49b3b2-64e5-483d-8360-df43563d2ae4.json +++ /dev/null @@ -1,149 +0,0 @@ -[ - { - "call": { - "from": "0x0000000000000000000000000000000000030000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x13a8b8040000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000034000000000000000000000000000000000000000000000000000000000000000170000000000000000000000000000000000000000000000000000000000d2f000ffffc0000000000000000000000000000000000000000000000000000000000181dc31bc03ad9bc8a966de91dfc8c49b929f6d5fd44a9c22a7f5bb37cebfc106ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed8ee8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b825bc2cfc37067e378b4feef3f3411136744d0b2851c161c601669654cf27bfe6100000000000000000000000000000000000000000000000000000000000000006cd40d93882a844c2becf361c7579664aef7a6ef6e8b79d6bf6f6f76426e9b14039e696f94058cfd274de97421f65916ac135f4d55083d357b9c1f34820c9376000000000000000000000000000000000000000000000000000000000003fffe000000000000000000000000000000000000000000000000000000000000000167e6a528e0202cf23a36eacf513eee303475d3e4c983b2ae2d616b11c440f70a4ac07813439b9213b22d4d86340307a2982de60c241368ad288dfea742b6eb5efffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9686c2d73382b1edfa908bcaeb6b9ac0073f469887a9150c80831642e47e35a614c1bffffffffffffffffffffffffffffffffffffffffffffe48e5eb33a3a7f000000104a13a90c13653470268ea78892361e7e91e706d859aabaaf45ddd18c956640809a37cc7335cdf29b7d988dc8c05e2c1899ad1795364e6fa667088b49487472000000000000000000000000000000000000000000000000000000000000fff6fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b80756993dc4be6ecf1e46c48d6f9cae9255a8b46ef956a3d85442a5f41f70ecf93000000000000000000000000000000000000000000000000000000000076a700a77a4c48695a0407441e86efc633aee092d2ebd99c87fdfeebcd904fe33e086d000000000000000000000000000000000000000000000000000000000000001d563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd0633ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed6958658aad3329b56f2f98187bbaed7351982ae06a00b9382adcb723b8b393d1f5e2def8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b4498bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef328d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad82082401f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade0554594d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae962914f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cbba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c33f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8fd276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f6617237058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf259a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe2665f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a219fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb", - "dataAbiValues": { - "methodSignature": "handleCreateRequests(uint256[],bytes32[])", - "inputValues": [ - [ - "13824000", - "115791647525550000827488589184312722123641027794666345134718053606362806484993", - "58737407075920930096693749632210245280794127876199190949253348332199714210054", - "115792089237316195423570985008687907853269984665640564039457584007913128431336", - "115792089237316195423570985008687907853269984665640564039457584007913129380738", - "41504671482165347584846103287222174319130579613222615088745194098566077611617", - "0", - "49224452924880417829398231270379785502530069722970149981823851608145893694228", - "1636828073493779560152621491074002847609709387720111137750911676859097584502", - "262142", - "1", - "46995738119123743123282428161140493004285235666026628953647859202250191730442", - "33811214160519685654400438720767591502827986970858420988841187408488311483230", - "115792089237316195423570985008687907853269984665640564039457584007913129207916", - "20557653259021005890251421269967042420225955023564768794272035576696478452763", - "115792089237316195423570985008687907853269984665640563909857584007913129639936", - "7367887950809164700104084563884591449786965425123545364576065505479275931200", - "58168524174645209900719041489934173752247098791866719219864340874379345294450", - "65526", - "115792089237316195423570985008687907853269984665640564039457584007913129380736", - "53107142721938561923251317745913031228477959801596843755970727929974933606291", - "7776000", - "75752327540241786815348607290604056680494387521335977257182003214564422715501" - ], - [ - "563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe", - "27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a", - "9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd06", - "33ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865", - "8aad3329b56f2f98187bbaed7351982ae06a00b9382adcb723b8b393d1f5e2de", - "f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1", - "c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b44", - "98bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01", - "108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef32", - "8d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea", - "94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad8208240", - "1f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade05545", - "94d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056", - "cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae96291", - "4f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa", - "9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874", - "ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cb", - "ba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c3", - "3f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8f", - "d276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99", - "fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce", - "3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb", - "4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f661723", - "7058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78", - "994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25", - "9a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe26", - "65f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a2", - "19fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c", - "51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb" - ] - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 21265, - "blockTimestampDelay": 360627 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000050000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x91e32c74e0613faa5f896b73380078af3c1ee8605eec949aaf9c8f422f264f3de916b58dc905ee964be623d23ba97ccc5a2b838249eaa10a8671d6a68f97b09746107abf", - "dataAbiValues": { - "methodSignature": "handleCreateRequest(uint256,bytes32)", - "inputValues": [ - "101489901651207154401933345705911812335881908306802664469868899807780031346061", - "c905ee964be623d23ba97ccc5a2b838249eaa10a8671d6a68f97b09746107abf" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 23884, - "blockTimestampDelay": 297676 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000020000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x161c7318", - "dataAbiValues": { - "methodSignature": "test_debug()", - "inputValues": [] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 0, - "blockTimestampDelay": 1 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000070000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xaa1a5bd9ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffee2cac1a259bf9695aac61487b4606621f281407f44a6d621116f436e53e00628b", - "dataAbiValues": { - "methodSignature": "handleResolveDispute(uint256,uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913129639918", - "20205843492154653597326893919151713313559584018734749877274787063574636290699" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 23891, - "blockTimestampDelay": 328958 - } -] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803574933000-69edad03-8dfd-4c82-a029-e43ba88f8c78.json b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803574933000-69edad03-8dfd-4c82-a029-e43ba88f8c78.json deleted file mode 100755 index 89f698d..0000000 --- a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803574933000-69edad03-8dfd-4c82-a029-e43ba88f8c78.json +++ /dev/null @@ -1,154 +0,0 @@ -[ - { - "call": { - "from": "0x0000000000000000000000000000000000030000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x13a8b8040000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000034000000000000000000000000000000000000000000000000000000000000000170000000000000000000000000000000000000000000000000000000000d2f000ffffc0000000000000000000000000000000000000000000000000000000000181dc31bc03ad9bc8a966de91dfc8c49b929f6d5fd44a9c22a7f5bb37cebfc106ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed8ee8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6c5805bc2cfc37067e378b4feef3f3411136744d0b2851c161c601669654cf27bfe6100000000000000000000000000000000000000000000000000000000000000006cd40d93882a844c2becf361c7579664aef7a6ef6e8b79d6bf6f6f76426e9b14039e696f94058cfd274de97421f65916ac135f4d55083d357b9c1f34820c9376000000000000000000000000000000000000000000000000000000000003fffe000000000000000000000000000000000000000000000000000000000000000167e6a528e0202cf23a36eacf513eee303475d3e4c983b2ae2d616b11c440f70aaa625827d77aa233df42016988900477ead582090357ec011f404ff1f0aa321bfffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9686c2d73382b1edfa908bcaeb6b9ac0073f469887a9150c80831642e47e35a614c1bffffffffffffffffffffffffffffffffffffffffffffe48e5eb33a3a7f000000104a13a90c13653470268ea78892361e7e91e706d859aabaaf45ddd18c956640809a37cc7335cdf29b7d988dc8c05e2c1899ad1795364e6fa667088b49487472000000000000000000000000000000000000000000000000000000000000fff6fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b80756993dc4be6ecf1e46c48d6f9cae9255a8b46ef956a3d85442a5f41f70ecf93000000000000000000000000000000000000000000000000000000000076a700a77a4c48695a0407441e86efc633aee092d2ebd99c87fdfeebcd904fe33e086d000000000000000000000000000000000000000000000000000000000000001d563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd0633ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed69586530127b846a0115a3e561f49781eea70d4bcc4884906080e6adb068ff5fe13953f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b4498bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef328d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad82082401f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade0554594d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e05648dd821e471bd9a22c1f612735d2d7244c13832c4b0f28993ecafc561bfc52ae4f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cbba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c33f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8fd276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f6617237058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf259a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe2665f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a219fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb", - "dataAbiValues": { - "methodSignature": "handleCreateRequests(uint256[],bytes32[])", - "inputValues": [ - [ - "13824000", - "115791647525550000827488589184312722123641027794666345134718053606362806484993", - "58737407075920930096693749632210245280794127876199190949253348332199714210054", - "115792089237316195423570985008687907853269984665640564039457584007913128431336", - "115792089237316195423570985008687907853269984665640564039457584007913129035136", - "41504671482165347584846103287222174319130579613222615088745194098566077611617", - "0", - "49224452924880417829398231270379785502530069722970149981823851608145893694228", - "1636828073493779560152621491074002847609709387720111137750911676859097584502", - "262142", - "1", - "46995738119123743123282428161140493004285235666026628953647859202250191730442", - "77066943699312596523560233185714836616924754343478096130098486630426813805083", - "115792089237316195423570985008687907853269984665640564039457584007913129207916", - "20557653259021005890251421269967042420225955023564768794272035576696478452763", - "115792089237316195423570985008687907853269984665640563909857584007913129639936", - "7367887950809164700104084563884591449786965425123545364576065505479275931200", - "58168524174645209900719041489934173752247098791866719219864340874379345294450", - "65526", - "115792089237316195423570985008687907853269984665640564039457584007913129380736", - "53107142721938561923251317745913031228477959801596843755970727929974933606291", - "7776000", - "75752327540241786815348607290604056680494387521335977257182003214564422715501" - ], - [ - "563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe", - "27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a", - "9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd06", - "33ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865", - "30127b846a0115a3e561f49781eea70d4bcc4884906080e6adb068ff5fe13953", - "f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1", - "c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b44", - "98bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01", - "108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef32", - "8d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea", - "94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad8208240", - "1f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade05545", - "94d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056", - "48dd821e471bd9a22c1f612735d2d7244c13832c4b0f28993ecafc561bfc52ae", - "4f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa", - "9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874", - "ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cb", - "ba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c3", - "3f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8f", - "d276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99", - "fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce", - "3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb", - "4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f661723", - "7058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78", - "994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25", - "9a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe26", - "65f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a2", - "19fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c", - "51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb" - ] - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 21265, - "blockTimestampDelay": 360627 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000050000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x91e32c74e0613faa5f896b73380078af3c1ee8605eec949aaf9c8f422f264f3de916b58d4b3032484de1fb4c70c2a705584283a0288158e7d201a2526966e049d49acde5", - "dataAbiValues": { - "methodSignature": "handleCreateRequest(uint256,bytes32)", - "inputValues": [ - "101489901651207154401933345705911812335881908306802664469868899807780031346061", - "4b3032484de1fb4c70c2a705584283a0288158e7d201a2526966e049d49acde5" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 23884, - "blockTimestampDelay": 297676 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000080000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x62e8fd350000000000000000000000000000000000000000000000000000000000000000f3e0a4b7d4b9f146c330bf4206493b9644386108e6fb9dbd1ec9e9631656b911", - "dataAbiValues": { - "methodSignature": "handleOnDisputeStatusChange(uint256,uint256)", - "inputValues": [ - "0", - "110308932790717902341334723675742636402013152744066319296234386176011142609169" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 6, - "blockTimestampDelay": 447025 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000060000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xb05752f7000000000000000000000000000000000000000000000000000000000083d600ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff3cb74a490a6b235de22fdba8b11c89c1a75ba52781eaa376b8904d607971473952c39b6854fd2443ddec68f9b401b12b2c3233b939e902ba2cc4b78fc21880c9", - "dataAbiValues": { - "methodSignature": "handleOnSettleBondEscalation(uint256,uint256,uint256,uint256)", - "inputValues": [ - "8640000", - "115792089237316195423570985008687907853269984665640564039457584007913129639935", - "27462616626253393834172180586494418890954476283257859666307992469208736810809", - "37435261344928203651121242557808094327910915308413204917974281668150859169993" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 20576, - "blockTimestampDelay": 441138 - } -] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803575378000-7c923095-534b-4a11-b54e-2d2ef4e1b46b.json b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803575378000-7c923095-534b-4a11-b54e-2d2ef4e1b46b.json deleted file mode 100755 index 2224489..0000000 --- a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803575378000-7c923095-534b-4a11-b54e-2d2ef4e1b46b.json +++ /dev/null @@ -1,156 +0,0 @@ -[ - { - "call": { - "from": "0x0000000000000000000000000000000000030000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x13a8b8040000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000034000000000000000000000000000000000000000000000000000000000000000170000000000000000000000000000000000000000000000000000000000d2f000ffffc0000000000000000000000000000000000000000000000000000000000181dc31bc03ad9bc8a966de91dfc8c49b929f6d5fd44a9c22a7f5bb37cebfc106ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed8ee8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b825bc2cfc37067e378b4feef3f3411136744d0b2851c161c601669654cf27bfe610000000000000000000000000000000000000000000000000000000000000000578750b27e877a957d33dc50d914b1caf972efffa4bb78b85e66dd813a864ca4039e696f94058cfd274de97421f65916ac135f4d55083d357b9c1f34820c9376000000000000000000000000000000000000000000000000000000000003fffe000000000000000000000000000000000000000000000000000000000000000167e6a528e0202cf23a36eacf513eee303475d3e4c983b2ae2d616b11c440f70a4ac07813439b9213b22d4d86340307a2982de60c241368ad288dfea742b6eb5efffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9686c2d73382b1edfa908bcaeb6b9ac0073f469887a9150c80831642e47e35a614c1bffffffffffffffffffffffffffffffffffffffffffffe48e5eb33a3a7f000000104a13a90c13653470268ea78892361e7e91e706d859aabaaf45ddd18c956640809a37cc7335cdf29b7d988dc8c05e2c1899ad1795364e6fa667088b49487472000000000000000000000000000000000000000000000000000000000000fff6fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b800000000000000000000000000000000000000000000000000329c51ac594cf93000000000000000000000000000000000000000000000000000000000076a700a77a4c48695a0407441e86efc633aee092d2ebd99c87fdfeebcd904fe33e086d000000000000000000000000000000000000000000000000000000000000001d563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd0633ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865d5d6866ffb684491364a0853403f689144f5664f5d50de1b1a30d683ff29f21bf8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b4498bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef328d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad82082401f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade0554594d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae96291d8c581a922d52cd477658fcc2e2ca1f954f274ed2cd833a98e6d1d4455581f9d9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cbba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c33f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8fd276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f6617237058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf259a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe2665f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a219fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb", - "dataAbiValues": { - "methodSignature": "handleCreateRequests(uint256[],bytes32[])", - "inputValues": [ - [ - "13824000", - "115791647525550000827488589184312722123641027794666345134718053606362806484993", - "58737407075920930096693749632210245280794127876199190949253348332199714210054", - "115792089237316195423570985008687907853269984665640564039457584007913128431336", - "115792089237316195423570985008687907853269984665640564039457584007913129380738", - "41504671482165347584846103287222174319130579613222615088745194098566077611617", - "0", - "39590299132392589184737138068833640165131826767556478003143025413084726840484", - "1636828073493779560152621491074002847609709387720111137750911676859097584502", - "262142", - "1", - "46995738119123743123282428161140493004285235666026628953647859202250191730442", - "33811214160519685654400438720767591502827986970858420988841187408488311483230", - "115792089237316195423570985008687907853269984665640564039457584007913129207916", - "20557653259021005890251421269967042420225955023564768794272035576696478452763", - "115792089237316195423570985008687907853269984665640563909857584007913129639936", - "7367887950809164700104084563884591449786965425123545364576065505479275931200", - "58168524174645209900719041489934173752247098791866719219864340874379345294450", - "65526", - "115792089237316195423570985008687907853269984665640564039457584007913129380736", - "227929974933606291", - "7776000", - "75752327540241786815348607290604056680494387521335977257182003214564422715501" - ], - [ - "563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe", - "27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a", - "9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd06", - "33ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865", - "d5d6866ffb684491364a0853403f689144f5664f5d50de1b1a30d683ff29f21b", - "f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1", - "c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b44", - "98bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01", - "108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef32", - "8d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea", - "94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad8208240", - "1f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade05545", - "94d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056", - "cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae96291", - "d8c581a922d52cd477658fcc2e2ca1f954f274ed2cd833a98e6d1d4455581f9d", - "9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874", - "ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cb", - "ba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c3", - "3f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8f", - "d276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99", - "fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce", - "3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb", - "4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f661723", - "7058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78", - "994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25", - "9a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe26", - "65f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a2", - "19fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c", - "51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb" - ] - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 21265, - "blockTimestampDelay": 360627 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000020000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x161c7318", - "dataAbiValues": { - "methodSignature": "test_debug()", - "inputValues": [] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 15325, - "blockTimestampDelay": 189245 - }, - { - "call": { - "from": "0x00000000000000000000000000000000000a0000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x88b05f294e5c5739570432e46e997185cf2683c287e8339e1ce7ab9502db4f4b4f0c1b77000000000000000000000000000000000000000000000000000000000012750000000000000000000000000000000000000000000000000006f05b59d3b200003c3b20fe3c6474ef6112cec6e2e1e2a66147c502767418c32e65c3bfa035d898948fc45007206ff5c0b2215d0b5c97d5551a84ed653f28e284b8567c463ce3650000000000000000000000000000000000000000000000000000000000069780ffffffffffffffffffffffffffffffffffffffffffffffffffffffec398000000000000000000000000000000000000000000000000000000000000000093a80", - "dataAbiValues": { - "methodSignature": "handleSetDisputeModuleData(uint256,(address,address,uint256,uint256,uint256,uint256,uint256))", - "inputValues": [ - "35443554117267417118592017165536035041230544133048285386578266163756344810359", - { - "accountingExtension": "0x0000000000000000000000000000000000127500", - "bondEscalationDeadline": "432000", - "bondSize": "27243242601887521753615714576112380311306725462768124357416761313244220872856", - "bondToken": "0x00000000000000000000000006f05b59d3b20000", - "disputeWindow": "604800", - "maxNumberOfEscalations": "67196315620416968751812103706326677402054656808860235011842083525495944438629", - "tyingBuffer": "115792089237316195423570985008687907853269984665640564039457584007828194983936" - } - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 24101, - "blockTimestampDelay": 185392 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000040000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x3c26dcf8000000000000000000000000000000000000000000000853a0d2313c00000000", - "dataAbiValues": { - "methodSignature": "handleSetEpochManager(uint256)", - "inputValues": [ - "39321600000000000000000" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 23050, - "blockTimestampDelay": 360593 - } -] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803575499000-b159dfaa-e3ec-46e5-98f1-23e5b2c960d2.json b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803575499000-b159dfaa-e3ec-46e5-98f1-23e5b2c960d2.json deleted file mode 100755 index db74108..0000000 --- a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803575499000-b159dfaa-e3ec-46e5-98f1-23e5b2c960d2.json +++ /dev/null @@ -1,103 +0,0 @@ -[ - { - "call": { - "from": "0x0000000000000000000000000000000000030000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x13a8b8040000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000034000000000000000000000000000000000000000000000000000000000000000170000000000000000000000000000000000000000000000000000000000d2f000ffffc0000000000000000000000000000000000000000000000000000000000181dc31bc03ad9bc8a966de91dfc8c49b929f6d5fd44a9c22a7f5bb37cebfc106000000000000000000000000000000000000000000007ff72b2c19616ab00000e645df196666f5e4e940c577b9670b086db2c746878e45aae0dbee6c63a0e6a35bc2cfc37067e378b4feef3f3411136744d0b2851c161c601669654cf27bfe6100000000000000000000000000000000000000000000000000000000000000006cd40d93882a844c2becf361c7579664aef7a6ef6e8b79d6bf6f6f76426e9b14039e696f94058cfd274de97421f65916ac135f4d55083d357b9c1f34820c9376000000000000000000000000000000000000000000000000000000000003fffe000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000004ac07813439b9213b22d4d86340307a2982de60c241368ad288dfea742b6eb5efffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9686c2d73382b1edfa908bcaeb6b9ac0073f469887a9150c80831642e47e35a614c1bffffffffffffffffffffffffffffffffffffffffffffe48e5eb33a3a7f000000104a13a90c13653470268ea78892361e7e91e706d859aabaaf45ddd18c956640809a37cc7335cdf29b7d988dc8c05e2c1899ad1795364e6fa667088b49487472000000000000000000000000000000000000000000000000000000000000fff6fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b80756993dc4be6ecf1e46c48d6f9cae9255a8b46ef956a3d85442a5f41f70ecf93000000000000000000000000000000000000000000000000000000000076a700a77a4c48695a0407441e86efc633aee092d2ebd99c87fdfeebcd904fe33e086d000000000000000000000000000000000000000000000000000000000000001d563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd0633ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed6958658aad3329b56f2f98187bbaed7351982ae06a00b9382adcb723b8b393d1f5e2def8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b4498bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a0171bc7dd16f0e277b94f2e46980d7e8e6c3c5187bf68be378e2d72cd0e70293ef8d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad82082401f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade0554594d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae962914f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874465e592f6d3f1d78fbc619b878d95794035829bd9b1285f3eb021d72f8e45638ba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c33f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8fd276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a9925e5ea45a807ae40eb654d82982bacb30bb1da6060d308d0b63004f4e1926b0c3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f6617237058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf259a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe2665f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a219fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb", - "dataAbiValues": { - "methodSignature": "handleCreateRequests(uint256[],bytes32[])", - "inputValues": [ - [ - "13824000", - "115791647525550000827488589184312722123641027794666345134718053606362806484993", - "58737407075920930096693749632210245280794127876199190949253348332199714210054", - "604300000000000000000000", - "104155407395839188072220307346509508179171066778602859964492537460856123877027", - "41504671482165347584846103287222174319130579613222615088745194098566077611617", - "0", - "49224452924880417829398231270379785502530069722970149981823851608145893694228", - "1636828073493779560152621491074002847609709387720111137750911676859097584502", - "262142", - "1", - "0", - "33811214160519685654400438720767591502827986970858420988841187408488311483230", - "115792089237316195423570985008687907853269984665640564039457584007913129207916", - "20557653259021005890251421269967042420225955023564768794272035576696478452763", - "115792089237316195423570985008687907853269984665640563909857584007913129639936", - "7367887950809164700104084563884591449786965425123545364576065505479275931200", - "58168524174645209900719041489934173752247098791866719219864340874379345294450", - "65526", - "115792089237316195423570985008687907853269984665640564039457584007913129380736", - "53107142721938561923251317745913031228477959801596843755970727929974933606291", - "7776000", - "75752327540241786815348607290604056680494387521335977257182003214564422715501" - ], - [ - "563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe", - "27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a", - "9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd06", - "33ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865", - "8aad3329b56f2f98187bbaed7351982ae06a00b9382adcb723b8b393d1f5e2de", - "f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1", - "c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b44", - "98bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01", - "71bc7dd16f0e277b94f2e46980d7e8e6c3c5187bf68be378e2d72cd0e70293ef", - "8d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea", - "94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad8208240", - "1f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade05545", - "94d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056", - "cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae96291", - "4f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa", - "9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874", - "465e592f6d3f1d78fbc619b878d95794035829bd9b1285f3eb021d72f8e45638", - "ba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c3", - "3f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8f", - "d276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99", - "25e5ea45a807ae40eb654d82982bacb30bb1da6060d308d0b63004f4e1926b0c", - "3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb", - "4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f661723", - "7058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78", - "994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25", - "9a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe26", - "65f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a2", - "19fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c", - "51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb" - ] - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 21265, - "blockTimestampDelay": 360627 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000030000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 2, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x0692ea7eeaaa73118d1da2c1db95511517ab896f87445c2331029aecdc7f065f634e6b46", - "dataAbiValues": { - "methodSignature": "handleRemoveChain(uint256)", - "inputValues": [ - "106142364743506859045918558596602602319943607038906547683486076996802461985606" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 2001, - "blockTimestampDelay": 455470 - } -] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803575632000-cdb80630-09f6-4557-a579-1f22c6aad840.json b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803575632000-cdb80630-09f6-4557-a579-1f22c6aad840.json deleted file mode 100755 index 93a7895..0000000 --- a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803575632000-cdb80630-09f6-4557-a579-1f22c6aad840.json +++ /dev/null @@ -1,158 +0,0 @@ -[ - { - "call": { - "from": "0x0000000000000000000000000000000000030000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x13a8b8040000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000034000000000000000000000000000000000000000000000000000000000000000170000000000000000000000000000000000000000000000000000000000d2f000ffffc0000000000000000000000000000000000000000000000000000000000181dc31bc03ad9bc8a966de91dfc8c49b929f6d5fd44a9c22a7f5bb37cebfc106ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed8ee8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b825bc2cfc37067e378b4feef3f3411136744d0b2851c161c601669654cf27afe610000000000000000000000000000000000000000000000000000000000000000578750b27e877a957d33dc50d914b1caf972efffa4bb78b85e66dd813a864ca4039e696f94058cfd274de97421f65916ac135f4d55083d357b9c1f34820c9376000000000000000000000000000000000000000000000000000000000003fffe000000000000000000000000000000000000000000000000000000000000000167e6a528e0202cf23a36eacf513eee303475d3e4c983b2ae2d616b11c440f70a4ac07813439b9213b22d4d86340307a2982de60c241368ad288dfea742b6eb5efffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9686c2d73382b1edfa908bcaeb6b9ac0073f469887a9150c80831642e47e35a614c1bffffffffffffffffffffffffffffffffffffffffffffe48e5eb33a3a7f000000104a13a90c13653470268ea78892361e7e91e706d859aabaaf45ddd18c956640809a37cc7335cdf29b7d988dc8c05e2c1899ad1795364e6fa667088b49487472000000000000000000000000000000000000000000000000000000000000fff6fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b800000000000000000000000000000000000000000000000000329c51ac594cf93000000000000000000000000000000000000000000000000000000000076a700a77a4c48695a0407441e86efc633aee092d2ebd99c87fdfeebcd904fe33e086d000000000000000000000000000000000000000000000000000000000000001d563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd0633ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865d5d6866ffb684491364a0853403f689144f5664f5d50de1b1a30d683ff29f21bf8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b4498bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef328d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad820824094c2949304cd969b5661cff34ece28aab6ca0f3eb707dc756ae848252d66c44a94d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae96291d8c581a922d52cd477658fcc2e2ca1f954f274ed2cd833a98e6d1d4455581f9d9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cbba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c389436d2b9b4dda11f7c2a5c1ca8fb20cba7512c884b100fa143fc24dc6c160eed276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f6617237058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25bcffd3ebd814d0f5e8e8dc7ef0303a14b98e79acfcabb14c9ad4225afd8f18c265f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a219fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c18aad5c04eb3f39ce81189eee664fb350f14bd8ce4dd62972aa7de342f017c7f", - "dataAbiValues": { - "methodSignature": "handleCreateRequests(uint256[],bytes32[])", - "inputValues": [ - [ - "13824000", - "115791647525550000827488589184312722123641027794666345134718053606362806484993", - "58737407075920930096693749632210245280794127876199190949253348332199714210054", - "115792089237316195423570985008687907853269984665640564039457584007913128431336", - "115792089237316195423570985008687907853269984665640564039457584007913129380738", - "41504671482165347584846103287222174319130579613222615088745194098566077546081", - "0", - "39590299132392589184737138068833640165131826767556478003143025413084726840484", - "1636828073493779560152621491074002847609709387720111137750911676859097584502", - "262142", - "1", - "46995738119123743123282428161140493004285235666026628953647859202250191730442", - "33811214160519685654400438720767591502827986970858420988841187408488311483230", - "115792089237316195423570985008687907853269984665640564039457584007913129207916", - "20557653259021005890251421269967042420225955023564768794272035576696478452763", - "115792089237316195423570985008687907853269984665640563909857584007913129639936", - "7367887950809164700104084563884591449786965425123545364576065505479275931200", - "58168524174645209900719041489934173752247098791866719219864340874379345294450", - "65526", - "115792089237316195423570985008687907853269984665640564039457584007913129380736", - "227929974933606291", - "7776000", - "75752327540241786815348607290604056680494387521335977257182003214564422715501" - ], - [ - "563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe", - "27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a", - "9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd06", - "33ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865", - "d5d6866ffb684491364a0853403f689144f5664f5d50de1b1a30d683ff29f21b", - "f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1", - "c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b44", - "98bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01", - "108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef32", - "8d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea", - "94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad8208240", - "94c2949304cd969b5661cff34ece28aab6ca0f3eb707dc756ae848252d66c44a", - "94d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056", - "cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae96291", - "d8c581a922d52cd477658fcc2e2ca1f954f274ed2cd833a98e6d1d4455581f9d", - "9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874", - "ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cb", - "ba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c3", - "89436d2b9b4dda11f7c2a5c1ca8fb20cba7512c884b100fa143fc24dc6c160ee", - "d276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99", - "fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce", - "3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb", - "4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f661723", - "7058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78", - "994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25", - "bcffd3ebd814d0f5e8e8dc7ef0303a14b98e79acfcabb14c9ad4225afd8f18c2", - "65f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a2", - "19fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c", - "18aad5c04eb3f39ce81189eee664fb350f14bd8ce4dd62972aa7de342f017c7f" - ] - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 21265, - "blockTimestampDelay": 360627 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000020000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x161c7318", - "dataAbiValues": { - "methodSignature": "test_debug()", - "inputValues": [] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 15325, - "blockTimestampDelay": 189245 - }, - { - "call": { - "from": "0x00000000000000000000000000000000000a0000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x88b05f294e5c5739570432e46e997185cf2683c287e8339e1ce7ab9502db4f4b4f0c1b77000000000000000000000000000000000000000000000000000000000012750000000000000000000000000000000000000000000000000006f05b59d3b200003c3b20fe3c6474ef6112cec6e2e1e2a66147c502767418c32e65c3bfa035d898948fc45007206ff5c0b2215d0b5c97d5551a84ed653f28e284b8567c463ce3650000000000000000000000000000000000000000000000000000000000069780ffffffffffffffffffffffffffffffffffffffffffffffffffffffec39800000109b1ce09a2caa796f35db2570026fd5d54f3b6f79d72997e7e30411ab7bab5f", - "dataAbiValues": { - "methodSignature": "handleSetDisputeModuleData(uint256,(address,address,uint256,uint256,uint256,uint256,uint256))", - "inputValues": [ - "35443554117267417118592017165536035041230544133048285386578266163756344810359", - { - "accountingExtension": "0x0000000000000000000000000000000000127500", - "bondEscalationDeadline": "432000", - "bondSize": "27243242601887521753615714576112380311306725462768124357416761313244220872856", - "bondToken": "0x00000000000000000000000006f05b59d3b20000", - "disputeWindow": "7511066176535142771400004346711719422194606327049609712661925953610498943839", - "maxNumberOfEscalations": "67196315620416968751812103706326677402054656808860235011842083525495944438629", - "tyingBuffer": "115792089237316195423570985008687907853269984665640564039457584007828194983936" - } - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 24101, - "blockTimestampDelay": 185392 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000010000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xb6c75efa8ba080b8a5e8e7e02b35ca63d619e3bf03ea7ee17a7395426e8c0ae38903a378ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff51e8737b07890aad8af4228017f323f8ee58c58602fe8a95d9a372445358479b", - "dataAbiValues": { - "methodSignature": "handleClaimEscalationReward(uint256,uint256,uint256)", - "inputValues": [ - "63155069885073485423962987089686113899340909970551762747564159406599093592952", - "115792089237316195423570985008687907853269984665640564039457584007913129639935", - "37048046271970045328561159781521571766041874645079829392453863326819299116955" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 7, - "blockTimestampDelay": 32 - } -] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803576501000-457a1374-bc7f-42db-8cbe-f5b69bd2aa06.json b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803576501000-457a1374-bc7f-42db-8cbe-f5b69bd2aa06.json deleted file mode 100755 index 1c2a6ff..0000000 --- a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803576501000-457a1374-bc7f-42db-8cbe-f5b69bd2aa06.json +++ /dev/null @@ -1,127 +0,0 @@ -[ - { - "call": { - "from": "0x0000000000000000000000000000000000030000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x13a8b80400000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000340000000000000000000000000000000000000000000000000000000000000001700000000000000000000000000000000000000000000000000000000000010e0ffffc0000000000000000000000000000000000000000000000000000000000181dc31bc03ad9bc8a966de91dfc8c49b929f6d5fd44a9c22a7f5bb37cebfc106ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed8ee8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b825bc2cfc37067e378b4feef3f3411136744d0b2851c161c601669654cf27bfe6100000000000000000000000000000000000000000000000000000000000000006cd40d93882a844c2becf361c7579664aef7a6ef6e8b79d6bf6f6f76426e9b14039e696f94058cfd274de97421f65916ac135f4d55083d357b9c1f34820c9376000000000000000000000000000000000000000000000000000000000003fffe000000000000000000000000000000000000000000000000000000000000000167e6a528e0202cf23a36eacf513eee303475d3e4c983b2ae2d616b11c440f70a0000000000000000000000000000000000000000000000000000000000000000fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9686c2d73382b1edfa908bcaeb6b9ac0073f469887a9150c80831642e47e35a614c1bffffffffffffffffffffffffffffffffffffffffffffe48e5eb33a3a7f000000104a13a90c13653470268ea78892361e7e91e706d859aabaaf45ddd18c956640809a37cc7335cdf29b7d988dc8c05e2c1899ad1795364e6fa667088b49487472000000000000000000000000000000000000000000000000000000000000fff6fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b80756993dc4be6ecf1e46c48d6f9cae9255a8b46ef956a3d85442a5f41f70ecf93000000000000000000000000000000000000000000000000000000000076a700a77a4c48695a0407441e86efc633aee092d2ebd99c87fdfeebcd904fe33e086d000000000000000000000000000000000000000000000000000000000000001d563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd0633ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed6958658aad3329b56f2f98187bbaed7351982ae06a00b9382adcb723b8b393d1f5e2def8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b4498bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef328d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad82082401f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade0554594d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e0568fcad889d076bcc6f0b5c84a4f6f334b74f944740b9f88a51f2895e76dd401884f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cbba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c33f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8fd276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f6617237058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25abbc2a768fea28edd1d653edcbaa5cace525564c5330b62b6ed63452f3b221f165f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a219fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb", - "dataAbiValues": { - "methodSignature": "handleCreateRequests(uint256[],bytes32[])", - "inputValues": [ - [ - "4320", - "115791647525550000827488589184312722123641027794666345134718053606362806484993", - "58737407075920930096693749632210245280794127876199190949253348332199714210054", - "115792089237316195423570985008687907853269984665640564039457584007913128431336", - "115792089237316195423570985008687907853269984665640564039457584007913129380738", - "41504671482165347584846103287222174319130579613222615088745194098566077611617", - "0", - "49224452924880417829398231270379785502530069722970149981823851608145893694228", - "1636828073493779560152621491074002847609709387720111137750911676859097584502", - "262142", - "1", - "46995738119123743123282428161140493004285235666026628953647859202250191730442", - "0", - "115792089237316195423570985008687907853269984665640564039457584007913129207916", - "20557653259021005890251421269967042420225955023564768794272035576696478452763", - "115792089237316195423570985008687907853269984665640563909857584007913129639936", - "7367887950809164700104084563884591449786965425123545364576065505479275931200", - "58168524174645209900719041489934173752247098791866719219864340874379345294450", - "65526", - "115792089237316195423570985008687907853269984665640564039457584007913129380736", - "53107142721938561923251317745913031228477959801596843755970727929974933606291", - "7776000", - "75752327540241786815348607290604056680494387521335977257182003214564422715501" - ], - [ - "563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe", - "27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a", - "9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd06", - "33ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865", - "8aad3329b56f2f98187bbaed7351982ae06a00b9382adcb723b8b393d1f5e2de", - "f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1", - "c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b44", - "98bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01", - "108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef32", - "8d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea", - "94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad8208240", - "1f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade05545", - "94d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056", - "8fcad889d076bcc6f0b5c84a4f6f334b74f944740b9f88a51f2895e76dd40188", - "4f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa", - "9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874", - "ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cb", - "ba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c3", - "3f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8f", - "d276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99", - "fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce", - "3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb", - "4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f661723", - "7058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78", - "994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25", - "abbc2a768fea28edd1d653edcbaa5cace525564c5330b62b6ed63452f3b221f1", - "65f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a2", - "19fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c", - "51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb" - ] - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 21265, - "blockTimestampDelay": 360627 - }, - { - "call": { - "from": "0x00000000000000000000000000000000000a0000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x6b125a57f70d7a9f8f7dc147f3c07846c57ff55a159156e04b1aef93f09a50411ed01cac", - "dataAbiValues": { - "methodSignature": "handleRemoveEBORequestCreatorFinalityModule(uint256)", - "inputValues": [ - "111745088926706135766942953021093517459235404528421949148968020375462747315372" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 41182, - "blockTimestampDelay": 251336 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000090000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x9f6259e5f758e7d4f100dcc2db3c85b9df5a8759d5abbd1697a1a04ec3af1471f220359a0000000000000000000000007109709ecfa91a80626ff3989d68f67f5b1dd12d", - "dataAbiValues": { - "methodSignature": "handleResolve(uint256,uint256)", - "inputValues": [ - "111878356186062714847010348548460913142200960060168223055923222451354708489626", - "645326474426547203313410069153905908525362434349" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 36881, - "blockTimestampDelay": 523741 - } -] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803576958000-f157d325-29b7-4f9f-bdb5-7e0eba3fcb5c.json b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803576958000-f157d325-29b7-4f9f-bdb5-7e0eba3fcb5c.json deleted file mode 100755 index d28e8d2..0000000 --- a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803576958000-f157d325-29b7-4f9f-bdb5-7e0eba3fcb5c.json +++ /dev/null @@ -1,172 +0,0 @@ -[ - { - "call": { - "from": "0x0000000000000000000000000000000000030000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x13a8b8040000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000034000000000000000000000000000000000000000000000000000000000000000170000000000000000000000000000000000000000000000000000000000d2f000ffffc0000000000000000000000000000000000000000000000000000000000181dc31bc03ad9bc8a966de91dfc8c49b929f6d5fd44a9c22a7f5bb37cebfc106ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed8ee8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b825bc2cfc37067e378b4feef3f3411136744d0b2851c161c601669654cf27bfe6100000000000000000000000000000000000000000000000000000000000000006cd40d93882a844c2becf361c7579664aef7a6ef6e8b79d6bf6f6f76426e9b14039e696f94058cfd274de97421f65916ac135f4d55083d357b9c1f34820c9376000000000000000000000000000000000000000000000000000000000003fffe000000000000000000000000000000000000000000000000000000000000000167e6a528e0202cf23a36eacf513eee303475d3e4c983b2ae2d616b11c440f70a4ac07813439b9213b22d4d86340307a2982de60c241368ad288dfea742b6eb5efffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9686c2d73382b1edfa908bcaeb6b9ac0073f469887a9150c80831642e47e35a614c1bffffffffffffffffffffffffffffffffffffffffffffe48e5eb33a3a7f000000104a13a90c13653470268ea78892361e7e91e706d859aabaaf45ddd18c956640809a37cc7335cdf29b7d988dc8c05e2c1899ad1795364e6fa667088b49487472000000000000000000000000000000000000000000000000000000000000fff6fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b80756993dc4be6ecf1e46c48d6f9cae9255a8b46ef956a3d85442a5f41f70ecf93000000000000000000000000000000000000000000000000000000000076a700a77a4c48695a0407441e86efc633aee092d2ebd99c87fdfeebcd904fe33e086d000000000000000000000000000000000000000000000000000000000000001d563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd0633ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed6958658aad3329b56f2f98187bbaed7351982ae06a00b9382adcb723b8b393d1f5e2def8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b4498bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef328d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad82082401f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade0554594d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae962914f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cbba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c33f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8fd276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f6617237058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf259a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe2665f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a219fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb", - "dataAbiValues": { - "methodSignature": "handleCreateRequests(uint256[],bytes32[])", - "inputValues": [ - [ - "13824000", - "115791647525550000827488589184312722123641027794666345134718053606362806484993", - "58737407075920930096693749632210245280794127876199190949253348332199714210054", - "115792089237316195423570985008687907853269984665640564039457584007913128431336", - "115792089237316195423570985008687907853269984665640564039457584007913129380738", - "41504671482165347584846103287222174319130579613222615088745194098566077611617", - "0", - "49224452924880417829398231270379785502530069722970149981823851608145893694228", - "1636828073493779560152621491074002847609709387720111137750911676859097584502", - "262142", - "1", - "46995738119123743123282428161140493004285235666026628953647859202250191730442", - "33811214160519685654400438720767591502827986970858420988841187408488311483230", - "115792089237316195423570985008687907853269984665640564039457584007913129207916", - "20557653259021005890251421269967042420225955023564768794272035576696478452763", - "115792089237316195423570985008687907853269984665640563909857584007913129639936", - "7367887950809164700104084563884591449786965425123545364576065505479275931200", - "58168524174645209900719041489934173752247098791866719219864340874379345294450", - "65526", - "115792089237316195423570985008687907853269984665640564039457584007913129380736", - "53107142721938561923251317745913031228477959801596843755970727929974933606291", - "7776000", - "75752327540241786815348607290604056680494387521335977257182003214564422715501" - ], - [ - "563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe", - "27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a", - "9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd06", - "33ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865", - "8aad3329b56f2f98187bbaed7351982ae06a00b9382adcb723b8b393d1f5e2de", - "f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1", - "c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b44", - "98bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01", - "108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef32", - "8d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea", - "94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad8208240", - "1f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade05545", - "94d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056", - "cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae96291", - "4f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa", - "9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874", - "ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cb", - "ba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c3", - "3f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8f", - "d276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99", - "fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce", - "3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb", - "4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f661723", - "7058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78", - "994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25", - "9a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe26", - "65f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a2", - "19fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c", - "51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb" - ] - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 21265, - "blockTimestampDelay": 360627 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000050000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x91e32c74e0613faa5f896b73380078af3c1ee8605eec949aaf9c8f422f264f3de916b58dc905ee964be623d23ba97ccc5a2b838249eaa10a8671d6a68f97b09746107abf", - "dataAbiValues": { - "methodSignature": "handleCreateRequest(uint256,bytes32)", - "inputValues": [ - "101489901651207154401933345705911812335881908306802664469868899807780031346061", - "c905ee964be623d23ba97ccc5a2b838249eaa10a8671d6a68f97b09746107abf" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 23884, - "blockTimestampDelay": 297676 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000020000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x161c7318", - "dataAbiValues": { - "methodSignature": "test_debug()", - "inputValues": [] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 0, - "blockTimestampDelay": 1 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000070000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xaa1a5bd9ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffee2cac1a259bf9695aac61487b4606621f281407f44a6d621116f436e53e00628b", - "dataAbiValues": { - "methodSignature": "handleResolveDispute(uint256,uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913129639918", - "20205843492154653597326893919151713313559584018734749877274787063574636290699" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 23891, - "blockTimestampDelay": 328958 - }, - { - "call": { - "from": "0x00000000000000000000000000000000000a0000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xec5bf215fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff60000", - "dataAbiValues": { - "methodSignature": "handleFinalizeRequestResponseModule(uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913128984576" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 23883, - "blockTimestampDelay": 276784 - } -] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803577371000-f0c7f0bf-41b6-4568-9911-e2d805265711.json b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803577371000-f0c7f0bf-41b6-4568-9911-e2d805265711.json deleted file mode 100755 index 1df958b..0000000 --- a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803577371000-f0c7f0bf-41b6-4568-9911-e2d805265711.json +++ /dev/null @@ -1,174 +0,0 @@ -[ - { - "call": { - "from": "0x0000000000000000000000000000000000030000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x13a8b8040000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000034000000000000000000000000000000000000000000000000000000000000000170000000000000000000000000000000000000000000000000000000000d2f000ffffc0000000000000000000000000000000000000000000000000000000000181dc31bc03ad9bc8a966de91dfc8c49b929f6d5fd44a9c22a7f5bb37cebfc106ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed8ee8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b825bc2cfc37067e378b4feef3f3411136744d0b2851c161c601669654cf27bfe6100000000000000000000000000000000000000000000000000000000000000006cd40d93882a844c2becf361c7579664aef7a6ef6e8b79d6bf6f6f76426e9b14039e696f94058cfd274de97421f65916ac135f4d55083d357b9c1f34820c9376000000000000000000000000000000000000000000000000000000000003fffe000000000000000000000000000000000000000000000000000000000000000167e6a528e0202cf23a36eacf513eee303475d3e4c983b2ae2d616b11c440f70a4ac07813439b9213b22d4d86340307a2982de60c241368ad288dfea742b6eb5efffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9686c2d73382b1edfa908bcaeb6b9ac0073f469887a9150c80831642e47e35a614c1bffffffffffffffffffffffffffffffffffffffffffffe48e5eb33a3a7f000000104a13a90c13653470268ea78892361e7e91e706d859aabaaf45ddd18c956640809a37cc7335cdf29b7d988dc8c05e2c1899ad1795364e6fa667088b49487472ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffee00b4fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b80756993dc4be6ecf1e46c48d6f9cae9255a8b46ef956a3d85442a5f41f70ecf93000000000000000000000000000000000000000000000000000000000076a700a77a4c48695a0407441e86efc633aee092d2ebd99c87fdfeebcd904fe33e086d000000000000000000000000000000000000000000000000000000000000001d563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd0633ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865a46715d7736dde0bcf6527392542031b42d0197ab2c1bb4c4d2d7abaed280007f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b4498bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef328d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad82082401f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade0554594d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae962914f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cbba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c33f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8fd276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f6617237058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf259a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe260d35d19771f7c1af646e114de36d19c25e3fc040b27be76073113bb33db17d5d19fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb", - "dataAbiValues": { - "methodSignature": "handleCreateRequests(uint256[],bytes32[])", - "inputValues": [ - [ - "13824000", - "115791647525550000827488589184312722123641027794666345134718053606362806484993", - "58737407075920930096693749632210245280794127876199190949253348332199714210054", - "115792089237316195423570985008687907853269984665640564039457584007913128431336", - "115792089237316195423570985008687907853269984665640564039457584007913129380738", - "41504671482165347584846103287222174319130579613222615088745194098566077611617", - "0", - "49224452924880417829398231270379785502530069722970149981823851608145893694228", - "1636828073493779560152621491074002847609709387720111137750911676859097584502", - "262142", - "1", - "46995738119123743123282428161140493004285235666026628953647859202250191730442", - "33811214160519685654400438720767591502827986970858420988841187408488311483230", - "115792089237316195423570985008687907853269984665640564039457584007913129207916", - "20557653259021005890251421269967042420225955023564768794272035576696478452763", - "115792089237316195423570985008687907853269984665640563909857584007913129639936", - "7367887950809164700104084563884591449786965425123545364576065505479275931200", - "58168524174645209900719041489934173752247098791866719219864340874379345294450", - "115792089237316195423570985008687907853269984665640564039457584007913128460468", - "115792089237316195423570985008687907853269984665640564039457584007913129380736", - "53107142721938561923251317745913031228477959801596843755970727929974933606291", - "7776000", - "75752327540241786815348607290604056680494387521335977257182003214564422715501" - ], - [ - "563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe", - "27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a", - "9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd06", - "33ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865", - "a46715d7736dde0bcf6527392542031b42d0197ab2c1bb4c4d2d7abaed280007", - "f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1", - "c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b44", - "98bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01", - "108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef32", - "8d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea", - "94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad8208240", - "1f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade05545", - "94d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056", - "cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae96291", - "4f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa", - "9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874", - "ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cb", - "ba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c3", - "3f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8f", - "d276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99", - "fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce", - "3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb", - "4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f661723", - "7058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78", - "994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25", - "9a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe26", - "0d35d19771f7c1af646e114de36d19c25e3fc040b27be76073113bb33db17d5d", - "19fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c", - "51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb" - ] - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 21265, - "blockTimestampDelay": 360627 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000080000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x51b295e3caac5b7c00ae43f0a0d2465bc3a827daefa6255afc3feafd105a01b058af4cc3", - "dataAbiValues": { - "methodSignature": "handleFinalize(uint256)", - "inputValues": [ - "91671724510984325847623981850838041499373483072178023597879983910219265559747" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 616, - "blockTimestampDelay": 245182 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000070000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x62e8fd357410315e284ca2250b236ba99041acd7e7626e3fc66727657ddcb75ed512355238b8e299444e7771cad3e9cc9efbc8237922a7b18f034d56199ddaad5f62f70c", - "dataAbiValues": { - "methodSignature": "handleOnDisputeStatusChange(uint256,uint256)", - "inputValues": [ - "52496900712745351460185096722717982602139275703227615313943886816707427317074", - "25656183307321870319256066529210878052151786525540532817103830451324188817164" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 0, - "blockTimestampDelay": 0 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000010000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x5cc02fa53b4e8ff8cbb94866d057a07c347e0cb79a079e6c49875d6adb448ca8b36b2f93", - "dataAbiValues": { - "methodSignature": "handleSetPendingCouncil(uint256)", - "inputValues": [ - "26825265794714411535119211388793422995701606456004679527746190657884506501011" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 22951, - "blockTimestampDelay": 222797 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000090000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x7aeb6faba969b1150e65eb039223322d37083c0f930e9f96e767cfaf888c1440b89042a7ffffffffffffffffffffffffffffffffffffffffffffffffffffffbe15000000", - "dataAbiValues": { - "methodSignature": "handleDisputeResponseBondEscalationModule(uint256,uint256)", - "inputValues": [ - "76627612529152310655938988775485703136714009850335653768166292952282670580391", - "115792089237316195423570985008687907853269984665640564039457584007630014119936" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 23866, - "blockTimestampDelay": 274647 - } -] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803577541000-25d5bdb7-8d18-498d-a97d-d95a6fb8c9a8.json b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803577541000-25d5bdb7-8d18-498d-a97d-d95a6fb8c9a8.json deleted file mode 100755 index e528c6b..0000000 --- a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803577541000-25d5bdb7-8d18-498d-a97d-d95a6fb8c9a8.json +++ /dev/null @@ -1,119 +0,0 @@ -[ - { - "call": { - "from": "0x0000000000000000000000000000000000040000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x52e3cb9c6b0d264b5add160d5053aa476132c22d6540d3605ad8dfb850790b1ba996569b", - "dataAbiValues": { - "methodSignature": "handleSetMaxUsersToCheck(uint256)", - "inputValues": [ - "48420708108177856443123222644862532857390746786695606854692354379525674915483" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 59698, - "blockTimestampDelay": 331757 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000020000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x62e8fd3500000000000000000000000000000000000000000000000000000000000000124ab950c09e2414c3ec444389b5281e1bdfda8ecfec5392240af8d376f3781e4f", - "dataAbiValues": { - "methodSignature": "handleOnDisputeStatusChange(uint256,uint256)", - "inputValues": [ - "18", - "33798574834817402171861624718400176195923458571787846279113220864863863578191" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 41059, - "blockTimestampDelay": 386818 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000040000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x161c7318", - "dataAbiValues": { - "methodSignature": "test_debug()", - "inputValues": [] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 2290, - "blockTimestampDelay": 360593 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000050000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xb05752f700000000000000000000000000000000000000000000000014d1120d7b160000fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa0100ffffe666666666666666666666666666666666666666666666666666666666670000000000000000000000000000000000000000000000000000000000000001", - "dataAbiValues": { - "methodSignature": "handleOnSettleBondEscalation(uint256,uint256,uint256,uint256)", - "inputValues": [ - "1500000000000000000", - "115792089237316195423570985008687907853269984665640564039457584007913129246976", - "115791912552609717585138026678937833561418401917250876477561771847293000377959", - "1" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 35958, - "blockTimestampDelay": 189815 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000080000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xd1a556550000000000000000000000000000000000000000000000000000000000093a80", - "dataAbiValues": { - "methodSignature": "handleRevokeModule(uint256)", - "inputValues": [ - "604800" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 23866, - "blockTimestampDelay": 120766 - } -] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803577723000-1f6f9435-92ad-4363-9f0c-1e54059c5dc4.json b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803577723000-1f6f9435-92ad-4363-9f0c-1e54059c5dc4.json deleted file mode 100755 index 09b99dc..0000000 --- a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803577723000-1f6f9435-92ad-4363-9f0c-1e54059c5dc4.json +++ /dev/null @@ -1,209 +0,0 @@ -[ - { - "call": { - "from": "0x0000000000000000000000000000000000030000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x13a8b8040000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000034000000000000000000000000000000000000000000000000000000000000000170000000000000000000000000000000000000000000000000000000000d2f000ffffc0000000000000000000000000000000000000000000000000000000000181dc31bc03ad9bc8a966de91dfc8c49b929f6d5fd44a9c22a7f5bb37cebfc106ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed8ee8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6c5805bc2cfc37067e378b4feef3f3411136744d0b2851c161c601669654cf27bfe6100000000000000000000000000000000000000000000000000000000000000006cd40d93882a844c2becf361c7579664aef7a6ef6e8b79d6bf6f6f76426e9b14039e696f94058cfd274de97421f65916ac135f4d55083d357b9c1f34820c9376000000000000000000000000000000000000000000000000000000000003fffe000000000000000000000000000000000000000000000000000000000000000167e6a528e0202cf23a36eacf513eee303475d3e4c983b2ae2d616b11c440f70aaa625827d77aa233df42016988900477ead582090357ec011f404ff1f0aa321bfffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9686c2d73382b1edfa908bcaeb6b9ac0073f469887a9150c80831642e47e35a614c1bffffffffffffffffffffffffffffffffffffffffffffe48e5eb33a3a7f000000104a13a90c13653470268ea78892361e7e91e706d859aabaaf45ddd18c956640809a37cc7335cdf29b7d988dc8c05e2c1899ad1795364e6fa667088b49487472000000000000000000000000000000000000000000000000000000000000fff6fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b80756993dc4be6ecf1e46c48d6f9cae9255a8b46ef956a3d85442a5f41f70ecf93000000000000000000000000000000000000000000000000000000000076a700a77a4c48695a0407441e86efc633aee092d2ebd99c87fdfeebcd904fe33e086d000000000000000000000000000000000000000000000000000000000000001d563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd0633ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed69586530127b846a0115a3e561f49781eea70d4bcc4884906080e6adb068ff5fe13953f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b4498bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef328d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad82082401f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade0554594d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e05648dd821e471bd9a22c1f612735d2d7244c13832c4b0f28993ecafc561bfc52ae4f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cbba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c33f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8fd276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f6617237058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf259a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe2665f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a219fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb", - "dataAbiValues": { - "methodSignature": "handleCreateRequests(uint256[],bytes32[])", - "inputValues": [ - [ - "13824000", - "115791647525550000827488589184312722123641027794666345134718053606362806484993", - "58737407075920930096693749632210245280794127876199190949253348332199714210054", - "115792089237316195423570985008687907853269984665640564039457584007913128431336", - "115792089237316195423570985008687907853269984665640564039457584007913129035136", - "41504671482165347584846103287222174319130579613222615088745194098566077611617", - "0", - "49224452924880417829398231270379785502530069722970149981823851608145893694228", - "1636828073493779560152621491074002847609709387720111137750911676859097584502", - "262142", - "1", - "46995738119123743123282428161140493004285235666026628953647859202250191730442", - "77066943699312596523560233185714836616924754343478096130098486630426813805083", - "115792089237316195423570985008687907853269984665640564039457584007913129207916", - "20557653259021005890251421269967042420225955023564768794272035576696478452763", - "115792089237316195423570985008687907853269984665640563909857584007913129639936", - "7367887950809164700104084563884591449786965425123545364576065505479275931200", - "58168524174645209900719041489934173752247098791866719219864340874379345294450", - "65526", - "115792089237316195423570985008687907853269984665640564039457584007913129380736", - "53107142721938561923251317745913031228477959801596843755970727929974933606291", - "7776000", - "75752327540241786815348607290604056680494387521335977257182003214564422715501" - ], - [ - "563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe", - "27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a", - "9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd06", - "33ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865", - "30127b846a0115a3e561f49781eea70d4bcc4884906080e6adb068ff5fe13953", - "f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1", - "c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b44", - "98bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01", - "108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef32", - "8d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea", - "94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad8208240", - "1f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade05545", - "94d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056", - "48dd821e471bd9a22c1f612735d2d7244c13832c4b0f28993ecafc561bfc52ae", - "4f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa", - "9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874", - "ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cb", - "ba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c3", - "3f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8f", - "d276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99", - "fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce", - "3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb", - "4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f661723", - "7058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78", - "994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25", - "9a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe26", - "65f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a2", - "19fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c", - "51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb" - ] - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 21265, - "blockTimestampDelay": 360627 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000050000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x91e32c74e0613faa5f896b73380078af3c1ee8605eec949aaf9c8f422f264f3de916b58d4b3032484de1fb4c70c2a705584283a0288158e7d201a2526966e049d49acde5", - "dataAbiValues": { - "methodSignature": "handleCreateRequest(uint256,bytes32)", - "inputValues": [ - "101489901651207154401933345705911812335881908306802664469868899807780031346061", - "4b3032484de1fb4c70c2a705584283a0288158e7d201a2526966e049d49acde5" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 23884, - "blockTimestampDelay": 297676 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000080000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x62e8fd350000000000000000000000000000000000000000000000000000000000000000f3e0a4b7d4b9f146c330bf4206493b9644386108e6fb9dbd1ec9e9631656b911", - "dataAbiValues": { - "methodSignature": "handleOnDisputeStatusChange(uint256,uint256)", - "inputValues": [ - "0", - "110308932790717902341334723675742636402013152744066319296234386176011142609169" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 6, - "blockTimestampDelay": 447025 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000060000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xb05752f7000000000000000000000000000000000000000000000000000000000083d600ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff3cb74a490a6b235de22fdba8b11c89c1a75ba52781eaa376b8904d607971473952c39b6854fd2443ddec68f9b401b12b2c3233b939e902ba2cc4b78fc21880c9", - "dataAbiValues": { - "methodSignature": "handleOnSettleBondEscalation(uint256,uint256,uint256,uint256)", - "inputValues": [ - "8640000", - "115792089237316195423570985008687907853269984665640564039457584007913129639935", - "27462616626253393834172180586494418890954476283257859666307992469208736810809", - "37435261344928203651121242557808094327910915308413204917974281668150859169993" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 20576, - "blockTimestampDelay": 441138 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000050000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x88b05f29000000000000000000000000000000000000000000000000000000000009fffe000000000000000000000000c43801cd359a82757df4289878ce85539b0fcade000000000000000000000000000000000000000000000000000000000000006434998e76fdd43c55ad90e4a35d96044a3ebe674f5dfa103757d366102ca9f26c00000000000000000000000000000000000000000000000000000000000001000e694122e842adea5277bbbdab0b14091c2583d39824533976734442dab724e2195f41f8193b8fdb454e4c675da554f0f9409064f42db392c9ab9d5e83fad976fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe", - "dataAbiValues": { - "methodSignature": "handleSetDisputeModuleData(uint256,(address,address,uint256,uint256,uint256,uint256,uint256))", - "inputValues": [ - "655358", - { - "accountingExtension": "0xc43801Cd359A82757Df4289878CE85539B0fcAdE", - "bondEscalationDeadline": "6518348376578069825047353184871606747778953752910129049968505915388248663266", - "bondSize": "23791578983227214469447533216306682837879210004146422934780693486186688803436", - "bondToken": "0x0000000000000000000000000000000000000064", - "disputeWindow": "115792089237316195423570985008687907853269984665640564039457584007913129639934", - "maxNumberOfEscalations": "256", - "tyingBuffer": "11476126987972230713107770724661081842991657660629818104854040000448595417462" - } - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 1, - "blockTimestampDelay": 2 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000020000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xf84d6dfc00000000000000000000000000000000000000000000000006f05b59d3ad0000", - "dataAbiValues": { - "methodSignature": "handleAddEBORequestCreatorRequestModule(uint256)", - "inputValues": [ - "499999999999672320" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 12976, - "blockTimestampDelay": 472659 - } -] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803577914000-83d29a38-d185-4da1-bf7c-796c32549172.json b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803577914000-83d29a38-d185-4da1-bf7c-796c32549172.json deleted file mode 100755 index 2366f1d..0000000 --- a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803577914000-83d29a38-d185-4da1-bf7c-796c32549172.json +++ /dev/null @@ -1,187 +0,0 @@ -[ - { - "call": { - "from": "0x0000000000000000000000000000000000030000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x13a8b8040000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000034000000000000000000000000000000000000000000000000000000000000000170000000000000000000000000000000000000000000000000000000000d2f000ffffc0000000000000000000000000000000000000000000000000000000000181dc31bc03ad9bc8a966de91dfc8c49b929f6d5fd44a9c22a7f5bb37cebfc106ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed8ee8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b825bc2cfc37067e378b4feef3f3411136744d0b2851c161c601669654cf27afe610000000000000000000000000000000000000000000000000000000000000000578750b27e877a957d33dc50d914b1caf972efffa4bb78b85e66dd813a864ca4039e696f94058cfd274de97421f65916ac135f4d55083d357b9c1f34820c9376000000000000000000000000000000000000000000000000000000000003fffe000000000000000000000000000000000000000000000000000000000000000167e6a528e0202cf23a36eacf513eee303475d3e4c983b2ae2d616b11c440f70a4ac07813439b9213b22d4d86340307a2982de60c241368ad288dfea742b6eb5efffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9686c2d73382b1edfa908bcaeb6b9ac0073f469887a9150c80831642e47e35a614c1bffffffffffffffffffffffffffffffffffffffffffffe48e5eb33a3a7f000000104a13a90c13653470268ea78892361e7e91e706d859aabaaf45ddd18c956640809a37cc7335cdf29b7d988dc8c05e2c1899ad1795364e6fa667088b49487472000000000000000000000000000000000000000000000000000000000000fff6fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b800000000000000000000000000000000000000000000000000329c51ac594cf93000000000000000000000000000000000000000000000000000000000076a700a77a4c48695a0407441e86efc633aee092d2ebd99c87fdfeebcd904fe33e086d000000000000000000000000000000000000000000000000000000000000001d563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd0633ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865d5d6866ffb684491364a0853403f689144f5664f5d50de1b1a30d683ff29f21bf8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b4498bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef328d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad820824094c2949304cd969b5661cff34ece28aab6ca0f3eb707dc756ae848252d66c44a94d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae96291d8c581a922d52cd477658fcc2e2ca1f954f274ed2cd833a98e6d1d4455581f9d9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cbba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c389436d2b9b4dda11f7c2a5c1ca8fb20cba7512c884b100fa143fc24dc6c160eed276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f6617237058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25bcffd3ebd814d0f5e8e8dc7ef0303a14b98e79acfcabb14c9ad4225afd8f18c265f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a219fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c18aad5c04eb3f39ce81189eee664fb350f14bd8ce4dd62972aa7de342f017c7f", - "dataAbiValues": { - "methodSignature": "handleCreateRequests(uint256[],bytes32[])", - "inputValues": [ - [ - "13824000", - "115791647525550000827488589184312722123641027794666345134718053606362806484993", - "58737407075920930096693749632210245280794127876199190949253348332199714210054", - "115792089237316195423570985008687907853269984665640564039457584007913128431336", - "115792089237316195423570985008687907853269984665640564039457584007913129380738", - "41504671482165347584846103287222174319130579613222615088745194098566077546081", - "0", - "39590299132392589184737138068833640165131826767556478003143025413084726840484", - "1636828073493779560152621491074002847609709387720111137750911676859097584502", - "262142", - "1", - "46995738119123743123282428161140493004285235666026628953647859202250191730442", - "33811214160519685654400438720767591502827986970858420988841187408488311483230", - "115792089237316195423570985008687907853269984665640564039457584007913129207916", - "20557653259021005890251421269967042420225955023564768794272035576696478452763", - "115792089237316195423570985008687907853269984665640563909857584007913129639936", - "7367887950809164700104084563884591449786965425123545364576065505479275931200", - "58168524174645209900719041489934173752247098791866719219864340874379345294450", - "65526", - "115792089237316195423570985008687907853269984665640564039457584007913129380736", - "227929974933606291", - "7776000", - "75752327540241786815348607290604056680494387521335977257182003214564422715501" - ], - [ - "563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe", - "27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a", - "9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd06", - "33ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865", - "d5d6866ffb684491364a0853403f689144f5664f5d50de1b1a30d683ff29f21b", - "f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1", - "c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b44", - "98bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01", - "108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef32", - "8d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea", - "94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad8208240", - "94c2949304cd969b5661cff34ece28aab6ca0f3eb707dc756ae848252d66c44a", - "94d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056", - "cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae96291", - "d8c581a922d52cd477658fcc2e2ca1f954f274ed2cd833a98e6d1d4455581f9d", - "9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874", - "ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cb", - "ba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c3", - "89436d2b9b4dda11f7c2a5c1ca8fb20cba7512c884b100fa143fc24dc6c160ee", - "d276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99", - "fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce", - "3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb", - "4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f661723", - "7058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78", - "994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25", - "bcffd3ebd814d0f5e8e8dc7ef0303a14b98e79acfcabb14c9ad4225afd8f18c2", - "65f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a2", - "19fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c", - "18aad5c04eb3f39ce81189eee664fb350f14bd8ce4dd62972aa7de342f017c7f" - ] - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 21265, - "blockTimestampDelay": 360627 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000020000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x161c7318", - "dataAbiValues": { - "methodSignature": "test_debug()", - "inputValues": [] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 15325, - "blockTimestampDelay": 189245 - }, - { - "call": { - "from": "0x00000000000000000000000000000000000a0000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x88b05f294e5c5739570432e46e997185cf2683c287e8339e1ce7ab9502db4f4b4f0c1b77000000000000000000000000000000000000000000000000000000000012750000000000000000000000000000000000000000000000000006f05b59d3b200003c3b20fe3c6474ef6112cec6e2e1e2a66147c502767418c32e65c3bfa035d898948fc45007206ff5c0b2215d0b5c97d5551a84ed653f28e284b8567c463ce3650000000000000000000000000000000000000000000000000000000000069780ffffffffffffffffffffffffffffffffffffffffffffffffffffffec39800000109b1ce09a2caa796f35db2570026fd5d54f3b6f79d72997e7e30411ab7bab5f", - "dataAbiValues": { - "methodSignature": "handleSetDisputeModuleData(uint256,(address,address,uint256,uint256,uint256,uint256,uint256))", - "inputValues": [ - "35443554117267417118592017165536035041230544133048285386578266163756344810359", - { - "accountingExtension": "0x0000000000000000000000000000000000127500", - "bondEscalationDeadline": "432000", - "bondSize": "27243242601887521753615714576112380311306725462768124357416761313244220872856", - "bondToken": "0x00000000000000000000000006f05b59d3b20000", - "disputeWindow": "7511066176535142771400004346711719422194606327049609712661925953610498943839", - "maxNumberOfEscalations": "67196315620416968751812103706326677402054656808860235011842083525495944438629", - "tyingBuffer": "115792089237316195423570985008687907853269984665640564039457584007828194983936" - } - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 24101, - "blockTimestampDelay": 185392 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000010000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xb6c75efa8ba080b8a5e8e7e02b35ca63d619e3bf03ea7ee17a7395426e8c0ae38903a378ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff51e8737b07890aad8af4228017f323f8ee58c58602fe8a95d9a372445358479b", - "dataAbiValues": { - "methodSignature": "handleClaimEscalationReward(uint256,uint256,uint256)", - "inputValues": [ - "63155069885073485423962987089686113899340909970551762747564159406599093592952", - "115792089237316195423570985008687907853269984665640564039457584007913129639935", - "37048046271970045328561159781521571766041874645079829392453863326819299116955" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 7, - "blockTimestampDelay": 32 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000090000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x223b137400003ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe000000000000000000000000000000000000000000000000000000000000004006807205175b22b301c32b6c5e6ee194bd596681cba8c8638952ec1250f3d6450000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000000000000000000000000000000001518000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000027874838a0b68a875ec0ee81d4c8ef1980254e8ae6eaec10d74722bac9ebd5a49a6c310208a5de1500000000000000000000000000000000000000000000000000", - "dataAbiValues": { - "methodSignature": "handleSetRequestModuleData(uint256,(uint256,string,address,uint256))", - "inputValues": [ - "441711766194596082395824375185729628956870974218904739530401550323154942", - { - "accountingExtension": "0x0000000000000000000000000000000000015180", - "chainId": "\ufffdH8\ufffd\ufffd\ufffd\ufffd^\ufffd\ufffd\ufffd\ufffd\ufffd\ufffd\u0019\ufffd%N\ufffd\ufffd\ufffd\ufffd\u0010\ufffdG\"\ufffd\ufffd\ufffdդ\ufffdl1\u0002\b\ufffd\ufffd\u0015", - "epoch": "2940820452134172681045375212785432443100619197912571245547930807664892958277", - "paymentAmount": "0" - } - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 15253, - "blockTimestampDelay": 492034 - } -] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803579664000-a886f310-136b-4d5e-b32b-512a0240982f.json b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803579664000-a886f310-136b-4d5e-b32b-512a0240982f.json deleted file mode 100755 index c798781..0000000 --- a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803579664000-a886f310-136b-4d5e-b32b-512a0240982f.json +++ /dev/null @@ -1,181 +0,0 @@ -[ - { - "call": { - "from": "0x0000000000000000000000000000000000030000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x13a8b8040000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000034000000000000000000000000000000000000000000000000000000000000000170000000000000000000000000000000000000000000000000000000000d2f000ffffc0000000000000000000000000000000000000000000000000000000000181dc31bc03ad9bc8a966de91dfc8c49b929f6d5fd44a9c22a7f5bb37cebfc106ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed8ee8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b825bc2cfc37067e378b4feef3f3411136744d0b2851c161c601669654cf27bfe610000000000000000000000000000000000000000000000000000000000000000578750b27e877a957d33dc50d914b1caf972efffa4bb78b85e66dd813a864ca4039e696f94058cfd274de97421f65916ac135f4d55083d357b9c1f34820c9376000000000000000000000000000000000000000000000000000000000003fffe000000000000000000000000000000000000000000000000000000000000000167e6a528e0202cf23a36eacf513eee303475d3e4c983b2ae2d616b11c440f70a4ac07813439b9213b22d4d86340307a2982de60c241368ad288dfea742b6eb5efffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9686c2d73382b1edfa908bcaeb6b9ac0073f469887a9150c80831642e47e35a614c1bffffffffffffffffffffffffffffffffffffffffffffe48e5eb33a3a7f000000104a13a90c13653470268ea78892361e7e91e706d859aabaaf45ddd18c956640809a37cc7335cdf29b7d988dc8c05e2c1899ad1795364e6fa667088b49487472000000000000000000000000000000000000000000000000000000000000fff6fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b800000000000000000000000000000000000000000000000000329c51ac594cf93000000000000000000000000000000000000000000000000000000000076a700a77a4c48695a0407441e86efc633aee092d2ebd99c87fdfeebcd904fe33e086d000000000000000000000000000000000000000000000000000000000000001d563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd0633ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865d5d6866ffb684491364a0853403f689144f5664f5d50de1b1a30d683ff29f21bf8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b4498bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef328d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad82082401f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade0554594d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae96291d8c581a922d52cd477658fcc2e2ca1f954f274ed2cd833a98e6d1d4455581f9d9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cbba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c33f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8fd276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f6617237058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf259a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe2665f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a219fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb", - "dataAbiValues": { - "methodSignature": "handleCreateRequests(uint256[],bytes32[])", - "inputValues": [ - [ - "13824000", - "115791647525550000827488589184312722123641027794666345134718053606362806484993", - "58737407075920930096693749632210245280794127876199190949253348332199714210054", - "115792089237316195423570985008687907853269984665640564039457584007913128431336", - "115792089237316195423570985008687907853269984665640564039457584007913129380738", - "41504671482165347584846103287222174319130579613222615088745194098566077611617", - "0", - "39590299132392589184737138068833640165131826767556478003143025413084726840484", - "1636828073493779560152621491074002847609709387720111137750911676859097584502", - "262142", - "1", - "46995738119123743123282428161140493004285235666026628953647859202250191730442", - "33811214160519685654400438720767591502827986970858420988841187408488311483230", - "115792089237316195423570985008687907853269984665640564039457584007913129207916", - "20557653259021005890251421269967042420225955023564768794272035576696478452763", - "115792089237316195423570985008687907853269984665640563909857584007913129639936", - "7367887950809164700104084563884591449786965425123545364576065505479275931200", - "58168524174645209900719041489934173752247098791866719219864340874379345294450", - "65526", - "115792089237316195423570985008687907853269984665640564039457584007913129380736", - "227929974933606291", - "7776000", - "75752327540241786815348607290604056680494387521335977257182003214564422715501" - ], - [ - "563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe", - "27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a", - "9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd06", - "33ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865", - "d5d6866ffb684491364a0853403f689144f5664f5d50de1b1a30d683ff29f21b", - "f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1", - "c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b44", - "98bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01", - "108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef32", - "8d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea", - "94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad8208240", - "1f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade05545", - "94d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056", - "cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae96291", - "d8c581a922d52cd477658fcc2e2ca1f954f274ed2cd833a98e6d1d4455581f9d", - "9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874", - "ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cb", - "ba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c3", - "3f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8f", - "d276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99", - "fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce", - "3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb", - "4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f661723", - "7058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78", - "994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25", - "9a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe26", - "65f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a2", - "19fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c", - "51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb" - ] - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 21265, - "blockTimestampDelay": 360627 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000020000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x161c7318", - "dataAbiValues": { - "methodSignature": "test_debug()", - "inputValues": [] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 15325, - "blockTimestampDelay": 189245 - }, - { - "call": { - "from": "0x00000000000000000000000000000000000a0000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x88b05f294e5c5739570432e46e997185cf2683c287e8339e1ce7ab9502db4f4b4f0c1b77000000000000000000000000000000000000000000000000000000000012750000000000000000000000000000000000000000000000000006f05b59d3b200003c3b20fe3c6474ef6112cec6e2e1e2a66147c502767418c32e65c3bfa035d898948fc45007206ff5c0b2215d0b5c97d5551a84ed653f28e284b8567c463ce3650000000000000000000000000000000000000000000000000000000000069780ffffffffffffffffffffffffffffffffffffffffffffffffffffffec398000000000000000000000000000000000000000000000000000000000000000093a80", - "dataAbiValues": { - "methodSignature": "handleSetDisputeModuleData(uint256,(address,address,uint256,uint256,uint256,uint256,uint256))", - "inputValues": [ - "35443554117267417118592017165536035041230544133048285386578266163756344810359", - { - "accountingExtension": "0x0000000000000000000000000000000000127500", - "bondEscalationDeadline": "432000", - "bondSize": "27243242601887521753615714576112380311306725462768124357416761313244220872856", - "bondToken": "0x00000000000000000000000006f05b59d3b20000", - "disputeWindow": "604800", - "maxNumberOfEscalations": "67196315620416968751812103706326677402054656808860235011842083525495944438629", - "tyingBuffer": "115792089237316195423570985008687907853269984665640564039457584007828194983936" - } - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 24101, - "blockTimestampDelay": 185392 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000040000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x3c26dcf8000000000000000000000000000000000000000000000853a0d2313c00000000", - "dataAbiValues": { - "methodSignature": "handleSetEpochManager(uint256)", - "inputValues": [ - "39321600000000000000000" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 23050, - "blockTimestampDelay": 360593 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000070000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x1c6850cfb0e3106162bbf50b7b4f4127a44fc6dee30686640d85ab8a97c7a387e688d09200000000000000000000000000000000000000000000000000000000000151800000000000000000000000000000000000000000000000000de0b6b3a7640000", - "dataAbiValues": { - "methodSignature": "handleUpdateDisputeStatus(uint256,uint256,uint256)", - "inputValues": [ - "80008248687813878652618995284154503941697939794158322754224777983398987223186", - "86400", - "1000000000000000000" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 17066, - "blockTimestampDelay": 86400 - } -] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803580224000-4d28fe91-5746-4c39-a8f0-ed56ca160a14.json b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803580224000-4d28fe91-5746-4c39-a8f0-ed56ca160a14.json deleted file mode 100755 index e65dea9..0000000 --- a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803580224000-4d28fe91-5746-4c39-a8f0-ed56ca160a14.json +++ /dev/null @@ -1,128 +0,0 @@ -[ - { - "call": { - "from": "0x0000000000000000000000000000000000030000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x13a8b8040000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000034000000000000000000000000000000000000000000000000000000000000000170000000000000000000000000000000000000000000000000000000000d2f000ffffc0000000000000000000000000000000000000000000000000000000000181dc31bc03ad9bc8a966de91dfc8c49b929f6d5fd44a9c22a7f5bb37cebfc106000000000000000000000000000000000000000000007ff72b2c19616ab00000e645df196666f5e4e940c577b9670b086db2c746878e45aae0dbee6c63a0e6a35bc2cfc37067e378b4feef3f3411136744d0b2851c161c601669654cf27bfe6100000000000000000000000000000000000000000000000000000000000000006cd40d93882a844c2becf361c7579664aef7a6ef6e8b79d6bf6f6f76426e9b14039e696f94058cfd274de97421f65916ac135f4d55083d357b9c1f34820c9376000000000000000000000000000000000000000000000000000000000003fffe000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000004ac07813439b9213b22d4d86340307a2982de60c241368ad288dfea742b6eb5efffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9686c2d73382b1edfa908bcaeb6b9ac0073f469887a9150c80831642e47e35a614c1bffffffffffffffffffffffffffffffffffffffffffffe48e5eb33a3a7f000000104a13a90c13653470268ea78892361e7e91e706d859aabaaf45ddd18c956640809a37cc7335cdf29b7d988dc8c05e2c1899ad1795364e6fa667088b49487472000000000000000000000000000000000000000000000000000000000000fff6fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b80756993dc4be6ecf1e46c48d6f9cae9255a8b46ef956a3d85442a5f41f70ecf93000000000000000000000000000000000000000000000000000000000076a700a77a4c48695a0407441e86efc633aee092d2ebd99c87fdfeebcd904fe33e086d000000000000000000000000000000000000000000000000000000000000001d563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd0633ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed6958658aad3329b56f2f98187bbaed7351982ae06a00b9382adcb723b8b393d1f5e2def8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b4498bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a0171bc7dd16f0e277b94f2e46980d7e8e6c3c5187bf68be378e2d72cd0e70293ef8d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad82082401f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade0554594d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae962914f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874465e592f6d3f1d78fbc619b878d95794035829bd9b1285f3eb021d72f8e45638ba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c33f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8fd276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a9925e5ea45a807ae40eb654d82982bacb30bb1da6060d308d0b63004f4e1926b0c3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f6617237058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf259a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe2665f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a219fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb", - "dataAbiValues": { - "methodSignature": "handleCreateRequests(uint256[],bytes32[])", - "inputValues": [ - [ - "13824000", - "115791647525550000827488589184312722123641027794666345134718053606362806484993", - "58737407075920930096693749632210245280794127876199190949253348332199714210054", - "604300000000000000000000", - "104155407395839188072220307346509508179171066778602859964492537460856123877027", - "41504671482165347584846103287222174319130579613222615088745194098566077611617", - "0", - "49224452924880417829398231270379785502530069722970149981823851608145893694228", - "1636828073493779560152621491074002847609709387720111137750911676859097584502", - "262142", - "1", - "0", - "33811214160519685654400438720767591502827986970858420988841187408488311483230", - "115792089237316195423570985008687907853269984665640564039457584007913129207916", - "20557653259021005890251421269967042420225955023564768794272035576696478452763", - "115792089237316195423570985008687907853269984665640563909857584007913129639936", - "7367887950809164700104084563884591449786965425123545364576065505479275931200", - "58168524174645209900719041489934173752247098791866719219864340874379345294450", - "65526", - "115792089237316195423570985008687907853269984665640564039457584007913129380736", - "53107142721938561923251317745913031228477959801596843755970727929974933606291", - "7776000", - "75752327540241786815348607290604056680494387521335977257182003214564422715501" - ], - [ - "563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe", - "27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a", - "9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd06", - "33ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865", - "8aad3329b56f2f98187bbaed7351982ae06a00b9382adcb723b8b393d1f5e2de", - "f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1", - "c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b44", - "98bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01", - "71bc7dd16f0e277b94f2e46980d7e8e6c3c5187bf68be378e2d72cd0e70293ef", - "8d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea", - "94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad8208240", - "1f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade05545", - "94d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056", - "cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae96291", - "4f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa", - "9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874", - "465e592f6d3f1d78fbc619b878d95794035829bd9b1285f3eb021d72f8e45638", - "ba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c3", - "3f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8f", - "d276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99", - "25e5ea45a807ae40eb654d82982bacb30bb1da6060d308d0b63004f4e1926b0c", - "3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb", - "4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f661723", - "7058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78", - "994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25", - "9a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe26", - "65f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a2", - "19fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c", - "51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb" - ] - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 21265, - "blockTimestampDelay": 360627 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000030000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 2, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x0692ea7eeaaa73118d1da2c1db95511517ab896f87445c2331029aecdc7f065f634e6b46", - "dataAbiValues": { - "methodSignature": "handleRemoveChain(uint256)", - "inputValues": [ - "106142364743506859045918558596602602319943607038906547683486076996802461985606" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 2001, - "blockTimestampDelay": 455470 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000090000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x864e2da9fffffffffffffffffffffffffffffffffffffffffffffffff90fa4a62c573a80b81e8d97661fbf779db19fd00793e39f3b40bca612ee408ab75ff1c6439cf047509736e50626b1084ee93f4294000f73db102927cdc7fc34de68c384da900e6c", - "dataAbiValues": { - "methodSignature": "handleArbitrateDispute(uint256,uint256,uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457084007913130244736", - "83279546779206125286340055887058748934887896216240549764862301155730028032071", - "36452200662221151095065482565067302916782446267779931962683895890335455252076" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 41956, - "blockTimestampDelay": 475112 - } -] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803580455000-b20b34f9-5e1b-4d0f-8572-f21362b0e345.json b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803580455000-b20b34f9-5e1b-4d0f-8572-f21362b0e345.json deleted file mode 100755 index aaa0b08..0000000 --- a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803580455000-b20b34f9-5e1b-4d0f-8572-f21362b0e345.json +++ /dev/null @@ -1,173 +0,0 @@ -[ - { - "call": { - "from": "0x0000000000000000000000000000000000030000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x13a8b80400000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000340000000000000000000000000000000000000000000000000000000000000001700000000000000000000000000000000000000000000000000000000000010e0ffffc0000000000000000000000000000000000000000000000000000000000181dc31bc03ad9bc8a966de91dfc8c49b929f6d5fd44a9c22a7f5bb37cebfc106ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed8ee8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b825bc2cfc37067e378b4feef3f3411136744d0b2851c161c601669654cf27bfe6100000000000000000000000000000000000000000000000000000000000000006cd40d93882a844c2becf361c7579664aef7a6ef6e8b79d6bf6f6f76426e9b14039e696f94058cfd274de97421f65916ac135f4d55083d357b9c1f34820c9376000000000000000000000000000000000000000000000000000000000003fffe000000000000000000000000000000000000000000000000000000000000000167e6a528e0202cf23a36eacf513eee303475d3e4c983b2ae2d616b11c440f70a0000000000000000000000000000000000000000000000000000000000000000fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9686c2d73382b1edfa908bcaeb6b9ac0073f469887a9150c80831642e47e35a614c1bffffffffffffffffffffffffffffffffffffffffffffe48e5eb33a3a7f000000104a13a90c13653470268ea78892361e7e91e706d859aabaaf45ddd18c956640809a37cc7335cdf29b7d988dc8c05e2c1899ad1795364e6fa667088b49487472000000000000000000000000000000000000000000000000000000000000fff6fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b80756993dc4be6ecf1e46c48d6f9cae9255a8b46ef956a3d85442a5f41f70ecf93000000000000000000000000000000000000000000000000000000000076a700a77a4c48695a0407441e86efc633aee092d2ebd99c87fdfeebcd904fe33e086d000000000000000000000000000000000000000000000000000000000000001d563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd0633ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed6958658aad3329b56f2f98187bbaed7351982ae06a00b9382adcb723b8b393d1f5e2def8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b4498bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef328d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad82082401f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade0554594d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e0568fcad889d076bcc6f0b5c84a4f6f334b74f944740b9f88a51f2895e76dd401884f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cbba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c33f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8fd276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f6617237058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25abbc2a768fea28edd1d653edcbaa5cace525564c5330b62b6ed63452f3b221f165f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a219fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb", - "dataAbiValues": { - "methodSignature": "handleCreateRequests(uint256[],bytes32[])", - "inputValues": [ - [ - "4320", - "115791647525550000827488589184312722123641027794666345134718053606362806484993", - "58737407075920930096693749632210245280794127876199190949253348332199714210054", - "115792089237316195423570985008687907853269984665640564039457584007913128431336", - "115792089237316195423570985008687907853269984665640564039457584007913129380738", - "41504671482165347584846103287222174319130579613222615088745194098566077611617", - "0", - "49224452924880417829398231270379785502530069722970149981823851608145893694228", - "1636828073493779560152621491074002847609709387720111137750911676859097584502", - "262142", - "1", - "46995738119123743123282428161140493004285235666026628953647859202250191730442", - "0", - "115792089237316195423570985008687907853269984665640564039457584007913129207916", - "20557653259021005890251421269967042420225955023564768794272035576696478452763", - "115792089237316195423570985008687907853269984665640563909857584007913129639936", - "7367887950809164700104084563884591449786965425123545364576065505479275931200", - "58168524174645209900719041489934173752247098791866719219864340874379345294450", - "65526", - "115792089237316195423570985008687907853269984665640564039457584007913129380736", - "53107142721938561923251317745913031228477959801596843755970727929974933606291", - "7776000", - "75752327540241786815348607290604056680494387521335977257182003214564422715501" - ], - [ - "563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe", - "27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a", - "9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd06", - "33ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865", - "8aad3329b56f2f98187bbaed7351982ae06a00b9382adcb723b8b393d1f5e2de", - "f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1", - "c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b44", - "98bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01", - "108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef32", - "8d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea", - "94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad8208240", - "1f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade05545", - "94d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056", - "8fcad889d076bcc6f0b5c84a4f6f334b74f944740b9f88a51f2895e76dd40188", - "4f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa", - "9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874", - "ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cb", - "ba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c3", - "3f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8f", - "d276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99", - "fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce", - "3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb", - "4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f661723", - "7058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78", - "994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25", - "abbc2a768fea28edd1d653edcbaa5cace525564c5330b62b6ed63452f3b221f1", - "65f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a2", - "19fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c", - "51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb" - ] - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 21265, - "blockTimestampDelay": 360627 - }, - { - "call": { - "from": "0x00000000000000000000000000000000000a0000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x6b125a57f70d7a9f8f7dc147f3c07846c57ff55a159156e04b1aef93f09a50411ed01cac", - "dataAbiValues": { - "methodSignature": "handleRemoveEBORequestCreatorFinalityModule(uint256)", - "inputValues": [ - "111745088926706135766942953021093517459235404528421949148968020375462747315372" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 41182, - "blockTimestampDelay": 251336 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000090000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x9f6259e5f758e7d4f100dcc2db3c85b9df5a8759d5abbd1697a1a04ec3af1471f220359a0000000000000000000000007109709ecfa91a80626ff3989d68f67f5b1dd12d", - "dataAbiValues": { - "methodSignature": "handleResolve(uint256,uint256)", - "inputValues": [ - "111878356186062714847010348548460913142200960060168223055923222451354708489626", - "645326474426547203313410069153905908525362434349" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 36881, - "blockTimestampDelay": 523741 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000050000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x0692ea7efffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7fc18", - "dataAbiValues": { - "methodSignature": "handleRemoveChain(uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913129114648" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 6610, - "blockTimestampDelay": 345959 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000060000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x9d2e6a6ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd0000", - "dataAbiValues": { - "methodSignature": "handleRemoveEBORequestCreatorRequestModule(uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913129443328" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 43871, - "blockTimestampDelay": 505590 - } -] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803581400000-be76a133-7392-4cf1-904a-fb9e7463d9ff.json b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803581400000-be76a133-7392-4cf1-904a-fb9e7463d9ff.json deleted file mode 100755 index a106ee1..0000000 --- a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803581400000-be76a133-7392-4cf1-904a-fb9e7463d9ff.json +++ /dev/null @@ -1,221 +0,0 @@ -[ - { - "call": { - "from": "0x0000000000000000000000000000000000030000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x13a8b8040000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000034000000000000000000000000000000000000000000000000000000000000000170000000000000000000000000000000000000000000000000000000000d2f000ffffc0000000000000000000000000000000000000000000000000000000000181dc31bc03ad9bc8a966de91dfc8c49b929f6d5fd44a9c22a7f5bb37cebfc106ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed8ee8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b825bc2cfc37067e378b4feef3f3411136744d0b2851c161c601669654cf27bfe6100000000000000000000000000000000000000000000000000000000000000006cd40d93882a844c2becf361c7579664aef7a6ef6e8b79d6bf6f6f76426e9b14039e696f94058cfd274de97421f65916ac135f4d55083d357b9c1f34820c9376000000000000000000000000000000000000000000000000000000000003fffe000000000000000000000000000000000000000000000000000000000000000167e6a528e0202cf23a36eacf513eee303475d3e4c983b2ae2d616b11c440f70a4ac07813439b9213b22d4d86340307a2982de60c241368ad288dfea742b6eb5efffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9686c2d73382b1edfa908bcaeb6b9ac0073f469887a9150c80831642e47e35a614c1bffffffffffffffffffffffffffffffffffffffffffffe48e5eb33a3a7f000000104a13a90c13653470268ea78892361e7e91e706d859aabaaf45ddd18c956640809a37cc7335cdf29b7d988dc8c05e2c1899ad1795364e6fa667088b49487472000000000000000000000000000000000000000000000000000000000000fff6fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b80756993dc4be6ecf1e46c48d6f9cae9255a8b46ef956a3d85442a5f41f70ecf93000000000000000000000000000000000000000000000000000000000076a700a77a4c48695a0407441e86efc633aee092d2ebd99c87fdfeebcd904fe33e086d000000000000000000000000000000000000000000000000000000000000001d563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd0633ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed6958658aad3329b56f2f98187bbaed7351982ae06a00b9382adcb723b8b393d1f5e2def8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b4498bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef328d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad82082401f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade0554594d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae962914f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cbba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c33f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8fd276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f6617237058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf259a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe2665f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a219fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb", - "dataAbiValues": { - "methodSignature": "handleCreateRequests(uint256[],bytes32[])", - "inputValues": [ - [ - "13824000", - "115791647525550000827488589184312722123641027794666345134718053606362806484993", - "58737407075920930096693749632210245280794127876199190949253348332199714210054", - "115792089237316195423570985008687907853269984665640564039457584007913128431336", - "115792089237316195423570985008687907853269984665640564039457584007913129380738", - "41504671482165347584846103287222174319130579613222615088745194098566077611617", - "0", - "49224452924880417829398231270379785502530069722970149981823851608145893694228", - "1636828073493779560152621491074002847609709387720111137750911676859097584502", - "262142", - "1", - "46995738119123743123282428161140493004285235666026628953647859202250191730442", - "33811214160519685654400438720767591502827986970858420988841187408488311483230", - "115792089237316195423570985008687907853269984665640564039457584007913129207916", - "20557653259021005890251421269967042420225955023564768794272035576696478452763", - "115792089237316195423570985008687907853269984665640563909857584007913129639936", - "7367887950809164700104084563884591449786965425123545364576065505479275931200", - "58168524174645209900719041489934173752247098791866719219864340874379345294450", - "65526", - "115792089237316195423570985008687907853269984665640564039457584007913129380736", - "53107142721938561923251317745913031228477959801596843755970727929974933606291", - "7776000", - "75752327540241786815348607290604056680494387521335977257182003214564422715501" - ], - [ - "563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe", - "27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a", - "9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd06", - "33ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865", - "8aad3329b56f2f98187bbaed7351982ae06a00b9382adcb723b8b393d1f5e2de", - "f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1", - "c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b44", - "98bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01", - "108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef32", - "8d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea", - "94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad8208240", - "1f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade05545", - "94d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056", - "cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae96291", - "4f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa", - "9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874", - "ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cb", - "ba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c3", - "3f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8f", - "d276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99", - "fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce", - "3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb", - "4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f661723", - "7058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78", - "994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25", - "9a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe26", - "65f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a2", - "19fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c", - "51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb" - ] - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 21265, - "blockTimestampDelay": 360627 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000050000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x91e32c74e0613faa5f896b73380078af3c1ee8605eec949aaf9c8f422f264f3de916b58dc905ee964be623d23ba97ccc5a2b838249eaa10a8671d6a68f97b09746107abf", - "dataAbiValues": { - "methodSignature": "handleCreateRequest(uint256,bytes32)", - "inputValues": [ - "101489901651207154401933345705911812335881908306802664469868899807780031346061", - "c905ee964be623d23ba97ccc5a2b838249eaa10a8671d6a68f97b09746107abf" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 23884, - "blockTimestampDelay": 297676 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000020000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x161c7318", - "dataAbiValues": { - "methodSignature": "test_debug()", - "inputValues": [] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 0, - "blockTimestampDelay": 1 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000070000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xaa1a5bd9ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffee2cac1a259bf9695aac61487b4606621f281407f44a6d621116f436e53e00628b", - "dataAbiValues": { - "methodSignature": "handleResolveDispute(uint256,uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913129639918", - "20205843492154653597326893919151713313559584018734749877274787063574636290699" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 23891, - "blockTimestampDelay": 328958 - }, - { - "call": { - "from": "0x00000000000000000000000000000000000a0000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xec5bf215fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff60000", - "dataAbiValues": { - "methodSignature": "handleFinalizeRequestResponseModule(uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913128984576" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 23883, - "blockTimestampDelay": 276784 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000020000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xd1a55655fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe9c", - "dataAbiValues": { - "methodSignature": "handleRevokeModule(uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913129639580" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 14210, - "blockTimestampDelay": 524288 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000060000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x727899fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffb001400000000000000000000000000000000000000000000000000000000001275000000000000000000000000000000000000000000000000000000000000000000a46e28ce399e11c208b07a84e457189f5b64e15f51e128b7baf507642bfef8c6", - "dataAbiValues": { - "methodSignature": "handlePledge(uint256,uint256,uint256,uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913129312276", - "1209600", - "0", - "74373941974452021616102119156230516273735358461823357873191033522071497799878" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 1, - "blockTimestampDelay": 256 - } -] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803581661000-78189ca7-7948-4439-966b-4447023b9d74.json b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803581661000-78189ca7-7948-4439-966b-4447023b9d74.json deleted file mode 100755 index 605ac2d..0000000 --- a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803581661000-78189ca7-7948-4439-966b-4447023b9d74.json +++ /dev/null @@ -1,199 +0,0 @@ -[ - { - "call": { - "from": "0x0000000000000000000000000000000000030000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x13a8b8040000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000034000000000000000000000000000000000000000000000000000000000000000170000000000000000000000000000000000000000000000000000000000d2f000ffffc0000000000000000000000000000000000000000000000000000000000181dc31bc03ad9bc8a966de91dfc8c49b929f6d5fd44a9c22a7f5bb37cebfc106ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed8ee8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b825bc2cfc37067e378b4feef3f3411136744d0b2851c161c601669654cf27bfe6100000000000000000000000000000000000000000000000000000000000000006cd40d93882a844c2becf361c7579664aef7a6ef6e8b79d6bf6f6f76426e9b14039e696f94058cfd274de97421f65916ac135f4d55083d357b9c1f34820c9376000000000000000000000000000000000000000000000000000000000003fffe000000000000000000000000000000000000000000000000000000000000000167e6a528e0202cf23a36eacf513eee303475d3e4c983b2ae2d616b11c440f70a4ac07813439b9213b22d4d86340307a2982de60c241368ad288dfea742b6eb5efffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9686c2d73382b1edfa908bcaeb6b9ac0073f469887a9150c80831642e47e35a614c1bffffffffffffffffffffffffffffffffffffffffffffe48e5eb33a3a7f000000104a13a90c13653470268ea78892361e7e91e706d859aabaaf45ddd18c956640809a37cc7335cdf29b7d988dc8c05e2c1899ad1795364e6fa667088b49487472ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffee00b4fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b80756993dc4be6ecf1e46c48d6f9cae9255a8b46ef956a3d85442a5f41f70ecf93000000000000000000000000000000000000000000000000000000000076a700a77a4c48695a0407441e86efc633aee092d2ebd99c87fdfeebcd904fe33e086d000000000000000000000000000000000000000000000000000000000000001d563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd0633ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865a46715d7736dde0bcf6527392542031b42d0197ab2c1bb4c4d2d7abaed280007f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b4498bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef328d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad82082401f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade0554594d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae962914f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cbba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c33f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8fd276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f6617237058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf259a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe260d35d19771f7c1af646e114de36d19c25e3fc040b27be76073113bb33db17d5d19fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb", - "dataAbiValues": { - "methodSignature": "handleCreateRequests(uint256[],bytes32[])", - "inputValues": [ - [ - "13824000", - "115791647525550000827488589184312722123641027794666345134718053606362806484993", - "58737407075920930096693749632210245280794127876199190949253348332199714210054", - "115792089237316195423570985008687907853269984665640564039457584007913128431336", - "115792089237316195423570985008687907853269984665640564039457584007913129380738", - "41504671482165347584846103287222174319130579613222615088745194098566077611617", - "0", - "49224452924880417829398231270379785502530069722970149981823851608145893694228", - "1636828073493779560152621491074002847609709387720111137750911676859097584502", - "262142", - "1", - "46995738119123743123282428161140493004285235666026628953647859202250191730442", - "33811214160519685654400438720767591502827986970858420988841187408488311483230", - "115792089237316195423570985008687907853269984665640564039457584007913129207916", - "20557653259021005890251421269967042420225955023564768794272035576696478452763", - "115792089237316195423570985008687907853269984665640563909857584007913129639936", - "7367887950809164700104084563884591449786965425123545364576065505479275931200", - "58168524174645209900719041489934173752247098791866719219864340874379345294450", - "115792089237316195423570985008687907853269984665640564039457584007913128460468", - "115792089237316195423570985008687907853269984665640564039457584007913129380736", - "53107142721938561923251317745913031228477959801596843755970727929974933606291", - "7776000", - "75752327540241786815348607290604056680494387521335977257182003214564422715501" - ], - [ - "563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe", - "27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a", - "9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd06", - "33ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865", - "a46715d7736dde0bcf6527392542031b42d0197ab2c1bb4c4d2d7abaed280007", - "f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1", - "c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b44", - "98bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01", - "108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef32", - "8d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea", - "94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad8208240", - "1f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade05545", - "94d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056", - "cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae96291", - "4f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa", - "9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874", - "ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cb", - "ba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c3", - "3f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8f", - "d276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99", - "fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce", - "3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb", - "4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f661723", - "7058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78", - "994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25", - "9a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe26", - "0d35d19771f7c1af646e114de36d19c25e3fc040b27be76073113bb33db17d5d", - "19fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c", - "51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb" - ] - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 21265, - "blockTimestampDelay": 360627 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000080000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x51b295e3caac5b7c00ae43f0a0d2465bc3a827daefa6255afc3feafd105a01b058af4cc3", - "dataAbiValues": { - "methodSignature": "handleFinalize(uint256)", - "inputValues": [ - "91671724510984325847623981850838041499373483072178023597879983910219265559747" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 616, - "blockTimestampDelay": 245182 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000070000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x62e8fd357410315e284ca2250b236ba99041acd7e7626e3fc66727657ddcb75ed512355238b8e299444e7771cad3e9cc9efbc8237922a7b18f034d56199ddaad5f62f70c", - "dataAbiValues": { - "methodSignature": "handleOnDisputeStatusChange(uint256,uint256)", - "inputValues": [ - "52496900712745351460185096722717982602139275703227615313943886816707427317074", - "25656183307321870319256066529210878052151786525540532817103830451324188817164" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 0, - "blockTimestampDelay": 0 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000010000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x5cc02fa53b4e8ff8cbb94866d057a07c347e0cb79a079e6c49875d6adb448ca8b36b2f93", - "dataAbiValues": { - "methodSignature": "handleSetPendingCouncil(uint256)", - "inputValues": [ - "26825265794714411535119211388793422995701606456004679527746190657884506501011" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 22951, - "blockTimestampDelay": 222797 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000090000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x7aeb6faba969b1150e65eb039223322d37083c0f930e9f96e767cfaf888c1440b89042a7ffffffffffffffffffffffffffffffffffffffffffffffffffffffbe15000000", - "dataAbiValues": { - "methodSignature": "handleDisputeResponseBondEscalationModule(uint256,uint256)", - "inputValues": [ - "76627612529152310655938988775485703136714009850335653768166292952282670580391", - "115792089237316195423570985008687907853269984665640564039457584007630014119936" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 23866, - "blockTimestampDelay": 274647 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000030000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 2, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xf4fbbf9b0000000000000000000000000000000000000000000000000000000000000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed8b007c3160c01450d95568fbc7e3fe876965aa411c1bf13d7be2baabf28cedd3012f", - "dataAbiValues": { - "methodSignature": "handleBond(uint256,uint256,uint256)", - "inputValues": [ - "0", - "115792089237316195423570985008687907853269984665640564039457584007913128430336", - "56174036476597730143689219709059961134239333858317208755745576773703517274415" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 0, - "blockTimestampDelay": 404026 - } -] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803582447000-6e98b3d8-7a3c-44ab-886c-20808a9bbc0a.json b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803582447000-6e98b3d8-7a3c-44ab-886c-20808a9bbc0a.json deleted file mode 100755 index 432be13..0000000 --- a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803582447000-6e98b3d8-7a3c-44ab-886c-20808a9bbc0a.json +++ /dev/null @@ -1,145 +0,0 @@ -[ - { - "call": { - "from": "0x0000000000000000000000000000000000040000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x52e3cb9c6b0d264b5add160d5053aa476132c22d6540d3605ad8dfb850790b1ba996569b", - "dataAbiValues": { - "methodSignature": "handleSetMaxUsersToCheck(uint256)", - "inputValues": [ - "48420708108177856443123222644862532857390746786695606854692354379525674915483" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 59698, - "blockTimestampDelay": 331757 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000020000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x62e8fd3500000000000000000000000000000000000000000000000000000000000000124ab950c09e2414c3ec444389b5281e1bdfda8ecfec5392240af8d376f3781e4f", - "dataAbiValues": { - "methodSignature": "handleOnDisputeStatusChange(uint256,uint256)", - "inputValues": [ - "18", - "33798574834817402171861624718400176195923458571787846279113220864863863578191" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 41059, - "blockTimestampDelay": 386818 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000040000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x161c7318", - "dataAbiValues": { - "methodSignature": "test_debug()", - "inputValues": [] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 2290, - "blockTimestampDelay": 360593 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000050000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xb05752f700000000000000000000000000000000000000000000000014d1120d7b160000fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa0100ffffe666666666666666666666666666666666666666666666666666666666670000000000000000000000000000000000000000000000000000000000000001", - "dataAbiValues": { - "methodSignature": "handleOnSettleBondEscalation(uint256,uint256,uint256,uint256)", - "inputValues": [ - "1500000000000000000", - "115792089237316195423570985008687907853269984665640564039457584007913129246976", - "115791912552609717585138026678937833561418401917250876477561771847293000377959", - "1" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 35958, - "blockTimestampDelay": 189815 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000080000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xd1a556550000000000000000000000000000000000000000000000000000000000093a80", - "dataAbiValues": { - "methodSignature": "handleRevokeModule(uint256)", - "inputValues": [ - "604800" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 23866, - "blockTimestampDelay": 120766 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000040000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 2, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xf60285cafffffffffffffffffffffffffffffffffffffffffffffffffffffffffffb00001f6163d95156c50021d434e3914437a6419fd074db58aba632a1165e1049633a3bf295102083f98484e4163605f3f088673969b3a53bced8eb97b90d6679470f0000000000000000000000000000000000000000000000000000000000000014", - "dataAbiValues": { - "methodSignature": "handleBondWithSender(uint256,uint256,uint256,uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913129312256", - "14193771603127510897806160380156132720630156725507671248204049821265402880826", - "27115063851078188957254873925429362151386502274781693755807630999965205612303", - "20" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 14998, - "blockTimestampDelay": 528331 - } -] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803582764000-cfe80931-2a26-43cf-ac19-9333113edb1b.json b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803582764000-cfe80931-2a26-43cf-ac19-9333113edb1b.json deleted file mode 100755 index 90932a8..0000000 --- a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803582764000-cfe80931-2a26-43cf-ac19-9333113edb1b.json +++ /dev/null @@ -1,260 +0,0 @@ -[ - { - "call": { - "from": "0x0000000000000000000000000000000000030000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x13a8b8040000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000034000000000000000000000000000000000000000000000000000000000000000170000000000000000000000000000000000000000000000000000000000d2f000ffffc0000000000000000000000000000000000000000000000000000000000181dc31bc03ad9bc8a966de91dfc8c49b929f6d5fd44a9c22a7f5bb37cebfc106ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed8ee8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b825bc2cfc37067e378b4feef3f3411136744d0b2851c161c601669654cf27afe610000000000000000000000000000000000000000000000000000000000000000578750b27e877a957d33dc50d914b1caf972efffa4bb78b85e66dd813a864ca4039e696f94058cfd274de97421f65916ac135f4d55083d357b9c1f34820c9376000000000000000000000000000000000000000000000000000000000003fffe000000000000000000000000000000000000000000000000000000000000000167e6a528e0202cf23a36eacf513eee303475d3e4c983b2ae2d616b11c440f70a4ac07813439b9213b22d4d86340307a2982de60c241368ad288dfea742b6eb5efffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9686c2d73382b1edfa908bcaeb6b9ac0073f469887a9150c80831642e47e35a614c1bffffffffffffffffffffffffffffffffffffffffffffe48e5eb33a3a7f000000104a13a90c13653470268ea78892361e7e91e706d859aabaaf45ddd18c956640809a37cc7335cdf29b7d988dc8c05e2c1899ad1795364e6fa667088b49487472000000000000000000000000000000000000000000000000000000000000fff6fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b800000000000000000000000000000000000000000000000000329c51ac594cf93000000000000000000000000000000000000000000000000000000000076a700a77a4c48695a0407441e86efc633aee092d2ebd99c87fdfeebcd904fe33e086d000000000000000000000000000000000000000000000000000000000000001d563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd0633ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865d5d6866ffb684491364a0853403f689144f5664f5d50de1b1a30d683ff29f21bf8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b4498bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef328d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad820824094c2949304cd969b5661cff34ece28aab6ca0f3eb707dc756ae848252d66c44a94d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae96291d8c581a922d52cd477658fcc2e2ca1f954f274ed2cd833a98e6d1d4455581f9d9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cbba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c389436d2b9b4dda11f7c2a5c1ca8fb20cba7512c884b100fa143fc24dc6c160eed276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f6617237058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25bcffd3ebd814d0f5e8e8dc7ef0303a14b98e79acfcabb14c9ad4225afd8f18c265f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a219fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c18aad5c04eb3f39ce81189eee664fb350f14bd8ce4dd62972aa7de342f017c7f", - "dataAbiValues": { - "methodSignature": "handleCreateRequests(uint256[],bytes32[])", - "inputValues": [ - [ - "13824000", - "115791647525550000827488589184312722123641027794666345134718053606362806484993", - "58737407075920930096693749632210245280794127876199190949253348332199714210054", - "115792089237316195423570985008687907853269984665640564039457584007913128431336", - "115792089237316195423570985008687907853269984665640564039457584007913129380738", - "41504671482165347584846103287222174319130579613222615088745194098566077546081", - "0", - "39590299132392589184737138068833640165131826767556478003143025413084726840484", - "1636828073493779560152621491074002847609709387720111137750911676859097584502", - "262142", - "1", - "46995738119123743123282428161140493004285235666026628953647859202250191730442", - "33811214160519685654400438720767591502827986970858420988841187408488311483230", - "115792089237316195423570985008687907853269984665640564039457584007913129207916", - "20557653259021005890251421269967042420225955023564768794272035576696478452763", - "115792089237316195423570985008687907853269984665640563909857584007913129639936", - "7367887950809164700104084563884591449786965425123545364576065505479275931200", - "58168524174645209900719041489934173752247098791866719219864340874379345294450", - "65526", - "115792089237316195423570985008687907853269984665640564039457584007913129380736", - "227929974933606291", - "7776000", - "75752327540241786815348607290604056680494387521335977257182003214564422715501" - ], - [ - "563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe", - "27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a", - "9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd06", - "33ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865", - "d5d6866ffb684491364a0853403f689144f5664f5d50de1b1a30d683ff29f21b", - "f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1", - "c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b44", - "98bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01", - "108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef32", - "8d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea", - "94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad8208240", - "94c2949304cd969b5661cff34ece28aab6ca0f3eb707dc756ae848252d66c44a", - "94d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056", - "cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae96291", - "d8c581a922d52cd477658fcc2e2ca1f954f274ed2cd833a98e6d1d4455581f9d", - "9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874", - "ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cb", - "ba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c3", - "89436d2b9b4dda11f7c2a5c1ca8fb20cba7512c884b100fa143fc24dc6c160ee", - "d276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99", - "fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce", - "3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb", - "4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f661723", - "7058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78", - "994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25", - "bcffd3ebd814d0f5e8e8dc7ef0303a14b98e79acfcabb14c9ad4225afd8f18c2", - "65f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a2", - "19fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c", - "18aad5c04eb3f39ce81189eee664fb350f14bd8ce4dd62972aa7de342f017c7f" - ] - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 21265, - "blockTimestampDelay": 360627 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000020000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x161c7318", - "dataAbiValues": { - "methodSignature": "test_debug()", - "inputValues": [] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 15325, - "blockTimestampDelay": 189245 - }, - { - "call": { - "from": "0x00000000000000000000000000000000000a0000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x88b05f294e5c5739570432e46e997185cf2683c287e8339e1ce7ab9502db4f4b4f0c1b77000000000000000000000000000000000000000000000000000000000012750000000000000000000000000000000000000000000000000006f05b59d3b200003c3b20fe3c6474ef6112cec6e2e1e2a66147c502767418c32e65c3bfa035d898948fc45007206ff5c0b2215d0b5c97d5551a84ed653f28e284b8567c463ce3650000000000000000000000000000000000000000000000000000000000069780ffffffffffffffffffffffffffffffffffffffffffffffffffffffec39800000109b1ce09a2caa796f35db2570026fd5d54f3b6f79d72997e7e30411ab7bab5f", - "dataAbiValues": { - "methodSignature": "handleSetDisputeModuleData(uint256,(address,address,uint256,uint256,uint256,uint256,uint256))", - "inputValues": [ - "35443554117267417118592017165536035041230544133048285386578266163756344810359", - { - "accountingExtension": "0x0000000000000000000000000000000000127500", - "bondEscalationDeadline": "432000", - "bondSize": "27243242601887521753615714576112380311306725462768124357416761313244220872856", - "bondToken": "0x00000000000000000000000006f05b59d3b20000", - "disputeWindow": "7511066176535142771400004346711719422194606327049609712661925953610498943839", - "maxNumberOfEscalations": "67196315620416968751812103706326677402054656808860235011842083525495944438629", - "tyingBuffer": "115792089237316195423570985008687907853269984665640564039457584007828194983936" - } - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 24101, - "blockTimestampDelay": 185392 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000010000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xb6c75efa8ba080b8a5e8e7e02b35ca63d619e3bf03ea7ee17a7395426e8c0ae38903a378ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff51e8737b07890aad8af4228017f323f8ee58c58602fe8a95d9a372445358479b", - "dataAbiValues": { - "methodSignature": "handleClaimEscalationReward(uint256,uint256,uint256)", - "inputValues": [ - "63155069885073485423962987089686113899340909970551762747564159406599093592952", - "115792089237316195423570985008687907853269984665640564039457584007913129639935", - "37048046271970045328561159781521571766041874645079829392453863326819299116955" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 7, - "blockTimestampDelay": 32 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000090000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x223b137400003ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe000000000000000000000000000000000000000000000000000000000000004006807205175b22b301c32b6c5e6ee194bd596681cba8c8638952ec1250f3d6450000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000000000000000000000000000000001518000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000027874838a0b68a875ec0ee81d4c8ef1980254e8ae6eaec10d74722bac9ebd5a49a6c310208a5de1500000000000000000000000000000000000000000000000000", - "dataAbiValues": { - "methodSignature": "handleSetRequestModuleData(uint256,(uint256,string,address,uint256))", - "inputValues": [ - "441711766194596082395824375185729628956870974218904739530401550323154942", - { - "accountingExtension": "0x0000000000000000000000000000000000015180", - "chainId": "\ufffdH8\ufffd\ufffd\ufffd\ufffd^\ufffd\ufffd\ufffd\ufffd\ufffd\ufffd\u0019\ufffd%N\ufffd\ufffd\ufffd\ufffd\u0010\ufffdG\"\ufffd\ufffd\ufffdդ\ufffdl1\u0002\b\ufffd\ufffd\u0015", - "epoch": "2940820452134172681045375212785432443100619197912571245547930807664892958277", - "paymentAmount": "0" - } - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 15253, - "blockTimestampDelay": 492034 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000080000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xaa1a5bd900000000000000000000000000000000000000000000000006f05b59d3b2000071f7cd086897aaf2110bd910f953453e7bcc20e82af33eec4c00647f9fb5da5e", - "dataAbiValues": { - "methodSignature": "handleResolveDispute(uint256,uint256)", - "inputValues": [ - "500000000000000000", - "51549178199604899047887187595007193100674999475015380254417935657395983604318" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 53242, - "blockTimestampDelay": 71336 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000070000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x52e3cb9cffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffec", - "dataAbiValues": { - "methodSignature": "handleSetMaxUsersToCheck(uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913129639916" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 45495, - "blockTimestampDelay": 225944 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000090000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xdb106aceffffffffffffffffffffffffffffffffffffffffffffffffffffffec398000001371ca94900c31d8e9be66d7c23f65b05f5d33ff2b30949acfed984f87f269e080baf5544430fe321ebd2409617ef6786f5b994597bc40798f800826b310e4524793f157456609da494af2a02075c03fcf9249185214862d5dd9f0eddb7447ce", - "dataAbiValues": { - "methodSignature": "handleSlash(uint256,uint256,uint256,uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007828194983936", - "8794995999406163856009545368231505849668095829549449500668097316828300339680", - "58226371372378751290891435773627286125304890291737788253576280229276508283986", - "32375604441627796962923040660328673776239995228426910584919203216277625915342" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 49592, - "blockTimestampDelay": 581992 - } -] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803583775000-dca8d182-bcd4-4450-b3b8-ab15f9ec2b20.json b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803583775000-dca8d182-bcd4-4450-b3b8-ab15f9ec2b20.json deleted file mode 100755 index 7b1b84f..0000000 --- a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803583775000-dca8d182-bcd4-4450-b3b8-ab15f9ec2b20.json +++ /dev/null @@ -1,232 +0,0 @@ -[ - { - "call": { - "from": "0x0000000000000000000000000000000000030000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x13a8b8040000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000034000000000000000000000000000000000000000000000000000000000000000170000000000000000000000000000000000000000000000000000000000d2f000ffffc0000000000000000000000000000000000000000000000000000000000181dc31bc03ad9bc8a966de91dfc8c49b929f6d5fd44a9c22a7f5bb37cebfc106ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed8ee8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6c5805bc2cfc37067e378b4feef3f3411136744d0b2851c161c601669654cf27bfe6100000000000000000000000000000000000000000000000000000000000000006cd40d93882a844c2becf361c7579664aef7a6ef6e8b79d6bf6f6f76426e9b14039e696f94058cfd274de97421f65916ac135f4d55083d357b9c1f34820c9376000000000000000000000000000000000000000000000000000000000003fffe000000000000000000000000000000000000000000000000000000000000000167e6a528e0202cf23a36eacf513eee303475d3e4c983b2ae2d616b11c440f70aaa625827d77aa233df42016988900477ead582090357ec011f404ff1f0aa321bfffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9686c2d73382b1edfa908bcaeb6b9ac0073f469887a9150c80831642e47e35a614c1bffffffffffffffffffffffffffffffffffffffffffffe48e5eb33a3a7f000000104a13a90c13653470268ea78892361e7e91e706d859aabaaf45ddd18c956640809a37cc7335cdf29b7d988dc8c05e2c1899ad1795364e6fa667088b49487472000000000000000000000000000000000000000000000000000000000000fff6fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b80756993dc4be6ecf1e46c48d6f9cae9255a8b46ef956a3d85442a5f41f70ecf93000000000000000000000000000000000000000000000000000000000076a700a77a4c48695a0407441e86efc633aee092d2ebd99c87fdfeebcd904fe33e086d000000000000000000000000000000000000000000000000000000000000001d563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd0633ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed69586530127b846a0115a3e561f49781eea70d4bcc4884906080e6adb068ff5fe13953f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b4498bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef328d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad82082401f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade0554594d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e05648dd821e471bd9a22c1f612735d2d7244c13832c4b0f28993ecafc561bfc52ae4f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cbba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c33f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8fd276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f6617237058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf259a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe2665f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a219fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb", - "dataAbiValues": { - "methodSignature": "handleCreateRequests(uint256[],bytes32[])", - "inputValues": [ - [ - "13824000", - "115791647525550000827488589184312722123641027794666345134718053606362806484993", - "58737407075920930096693749632210245280794127876199190949253348332199714210054", - "115792089237316195423570985008687907853269984665640564039457584007913128431336", - "115792089237316195423570985008687907853269984665640564039457584007913129035136", - "41504671482165347584846103287222174319130579613222615088745194098566077611617", - "0", - "49224452924880417829398231270379785502530069722970149981823851608145893694228", - "1636828073493779560152621491074002847609709387720111137750911676859097584502", - "262142", - "1", - "46995738119123743123282428161140493004285235666026628953647859202250191730442", - "77066943699312596523560233185714836616924754343478096130098486630426813805083", - "115792089237316195423570985008687907853269984665640564039457584007913129207916", - "20557653259021005890251421269967042420225955023564768794272035576696478452763", - "115792089237316195423570985008687907853269984665640563909857584007913129639936", - "7367887950809164700104084563884591449786965425123545364576065505479275931200", - "58168524174645209900719041489934173752247098791866719219864340874379345294450", - "65526", - "115792089237316195423570985008687907853269984665640564039457584007913129380736", - "53107142721938561923251317745913031228477959801596843755970727929974933606291", - "7776000", - "75752327540241786815348607290604056680494387521335977257182003214564422715501" - ], - [ - "563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe", - "27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a", - "9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd06", - "33ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865", - "30127b846a0115a3e561f49781eea70d4bcc4884906080e6adb068ff5fe13953", - "f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1", - "c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b44", - "98bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01", - "108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef32", - "8d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea", - "94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad8208240", - "1f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade05545", - "94d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056", - "48dd821e471bd9a22c1f612735d2d7244c13832c4b0f28993ecafc561bfc52ae", - "4f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa", - "9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874", - "ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cb", - "ba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c3", - "3f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8f", - "d276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99", - "fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce", - "3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb", - "4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f661723", - "7058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78", - "994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25", - "9a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe26", - "65f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a2", - "19fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c", - "51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb" - ] - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 21265, - "blockTimestampDelay": 360627 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000050000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x91e32c74e0613faa5f896b73380078af3c1ee8605eec949aaf9c8f422f264f3de916b58d4b3032484de1fb4c70c2a705584283a0288158e7d201a2526966e049d49acde5", - "dataAbiValues": { - "methodSignature": "handleCreateRequest(uint256,bytes32)", - "inputValues": [ - "101489901651207154401933345705911812335881908306802664469868899807780031346061", - "4b3032484de1fb4c70c2a705584283a0288158e7d201a2526966e049d49acde5" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 23884, - "blockTimestampDelay": 297676 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000080000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x62e8fd350000000000000000000000000000000000000000000000000000000000000000f3e0a4b7d4b9f146c330bf4206493b9644386108e6fb9dbd1ec9e9631656b911", - "dataAbiValues": { - "methodSignature": "handleOnDisputeStatusChange(uint256,uint256)", - "inputValues": [ - "0", - "110308932790717902341334723675742636402013152744066319296234386176011142609169" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 6, - "blockTimestampDelay": 447025 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000060000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xb05752f7000000000000000000000000000000000000000000000000000000000083d600ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff3cb74a490a6b235de22fdba8b11c89c1a75ba52781eaa376b8904d607971473952c39b6854fd2443ddec68f9b401b12b2c3233b939e902ba2cc4b78fc21880c9", - "dataAbiValues": { - "methodSignature": "handleOnSettleBondEscalation(uint256,uint256,uint256,uint256)", - "inputValues": [ - "8640000", - "115792089237316195423570985008687907853269984665640564039457584007913129639935", - "27462616626253393834172180586494418890954476283257859666307992469208736810809", - "37435261344928203651121242557808094327910915308413204917974281668150859169993" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 20576, - "blockTimestampDelay": 441138 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000050000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x88b05f29000000000000000000000000000000000000000000000000000000000009fffe000000000000000000000000c43801cd359a82757df4289878ce85539b0fcade000000000000000000000000000000000000000000000000000000000000006434998e76fdd43c55ad90e4a35d96044a3ebe674f5dfa103757d366102ca9f26c00000000000000000000000000000000000000000000000000000000000001000e694122e842adea5277bbbdab0b14091c2583d39824533976734442dab724e2195f41f8193b8fdb454e4c675da554f0f9409064f42db392c9ab9d5e83fad976fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe", - "dataAbiValues": { - "methodSignature": "handleSetDisputeModuleData(uint256,(address,address,uint256,uint256,uint256,uint256,uint256))", - "inputValues": [ - "655358", - { - "accountingExtension": "0xc43801Cd359A82757Df4289878CE85539B0fcAdE", - "bondEscalationDeadline": "6518348376578069825047353184871606747778953752910129049968505915388248663266", - "bondSize": "23791578983227214469447533216306682837879210004146422934780693486186688803436", - "bondToken": "0x0000000000000000000000000000000000000064", - "disputeWindow": "115792089237316195423570985008687907853269984665640564039457584007913129639934", - "maxNumberOfEscalations": "256", - "tyingBuffer": "11476126987972230713107770724661081842991657660629818104854040000448595417462" - } - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 1, - "blockTimestampDelay": 2 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000020000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xf84d6dfc00000000000000000000000000000000000000000000000006f05b59d3ad0000", - "dataAbiValues": { - "methodSignature": "handleAddEBORequestCreatorRequestModule(uint256)", - "inputValues": [ - "499999999999672320" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 12976, - "blockTimestampDelay": 472659 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000010000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x4741f6dcc0e4d0eee56b7f10aa9aefe04c4f650af62be8b532d57f12aa7ac5b950884c3a", - "dataAbiValues": { - "methodSignature": "handleSetFinalityModuleData(uint256)", - "inputValues": [ - "87248350062624793638699702709121271409886681841563726628967995216176035155002" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 29334, - "blockTimestampDelay": 296740 - } -] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803584460000-0934697b-6b99-4564-bc59-fcfff205e7a8.json b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803584460000-0934697b-6b99-4564-bc59-fcfff205e7a8.json deleted file mode 100755 index 3f0e44d..0000000 --- a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803584460000-0934697b-6b99-4564-bc59-fcfff205e7a8.json +++ /dev/null @@ -1,199 +0,0 @@ -[ - { - "call": { - "from": "0x0000000000000000000000000000000000030000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x13a8b8040000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000034000000000000000000000000000000000000000000000000000000000000000170000000000000000000000000000000000000000000000000000000000d2f000ffffc0000000000000000000000000000000000000000000000000000000000181dc31bc03ad9bc8a966de91dfc8c49b929f6d5fd44a9c22a7f5bb37cebfc106000000000000000000000000000000000000000000007ff72b2c19616ab00000e645df196666f5e4e940c577b9670b086db2c746878e45aae0dbee6c63a0e6a35bc2cfc37067e378b4feef3f3411136744d0b2851c161c601669654cf27bfe6100000000000000000000000000000000000000000000000000000000000000006cd40d93882a844c2becf361c7579664aef7a6ef6e8b79d6bf6f6f76426e9b14039e696f94058cfd274de97421f65916ac135f4d55083d357b9c1f34820c9376000000000000000000000000000000000000000000000000000000000003fffe000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000004ac07813439b9213b22d4d86340307a2982de60c241368ad288dfea742b6eb5efffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9686c2d73382b1edfa908bcaeb6b9ac0073f469887a9150c80831642e47e35a614c1bffffffffffffffffffffffffffffffffffffffffffffe48e5eb33a3a7f000000104a13a90c13653470268ea78892361e7e91e706d859aabaaf45ddd18c956640809a37cc7335cdf29b7d988dc8c05e2c1899ad1795364e6fa667088b49487472000000000000000000000000000000000000000000000000000000000000fff6fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b80756993dc4be6ecf1e46c48d6f9cae9255a8b46ef956a3d85442a5f41f70ecf93000000000000000000000000000000000000000000000000000000000076a700a77a4c48695a0407441e86efc633aee092d2ebd99c87fdfeebcd904fe33e086d000000000000000000000000000000000000000000000000000000000000001d563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd0633ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed6958658aad3329b56f2f98187bbaed7351982ae06a00b9382adcb723b8b393d1f5e2def8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b4498bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a0171bc7dd16f0e277b94f2e46980d7e8e6c3c5187bf68be378e2d72cd0e70293ef8d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad82082401f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade0554594d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae962914f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874465e592f6d3f1d78fbc619b878d95794035829bd9b1285f3eb021d72f8e45638ba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c33f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8fd276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a9925e5ea45a807ae40eb654d82982bacb30bb1da6060d308d0b63004f4e1926b0c3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f6617237058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf259a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe2665f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a219fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb", - "dataAbiValues": { - "methodSignature": "handleCreateRequests(uint256[],bytes32[])", - "inputValues": [ - [ - "13824000", - "115791647525550000827488589184312722123641027794666345134718053606362806484993", - "58737407075920930096693749632210245280794127876199190949253348332199714210054", - "604300000000000000000000", - "104155407395839188072220307346509508179171066778602859964492537460856123877027", - "41504671482165347584846103287222174319130579613222615088745194098566077611617", - "0", - "49224452924880417829398231270379785502530069722970149981823851608145893694228", - "1636828073493779560152621491074002847609709387720111137750911676859097584502", - "262142", - "1", - "0", - "33811214160519685654400438720767591502827986970858420988841187408488311483230", - "115792089237316195423570985008687907853269984665640564039457584007913129207916", - "20557653259021005890251421269967042420225955023564768794272035576696478452763", - "115792089237316195423570985008687907853269984665640563909857584007913129639936", - "7367887950809164700104084563884591449786965425123545364576065505479275931200", - "58168524174645209900719041489934173752247098791866719219864340874379345294450", - "65526", - "115792089237316195423570985008687907853269984665640564039457584007913129380736", - "53107142721938561923251317745913031228477959801596843755970727929974933606291", - "7776000", - "75752327540241786815348607290604056680494387521335977257182003214564422715501" - ], - [ - "563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe", - "27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a", - "9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd06", - "33ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865", - "8aad3329b56f2f98187bbaed7351982ae06a00b9382adcb723b8b393d1f5e2de", - "f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1", - "c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b44", - "98bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01", - "71bc7dd16f0e277b94f2e46980d7e8e6c3c5187bf68be378e2d72cd0e70293ef", - "8d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea", - "94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad8208240", - "1f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade05545", - "94d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056", - "cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae96291", - "4f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa", - "9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874", - "465e592f6d3f1d78fbc619b878d95794035829bd9b1285f3eb021d72f8e45638", - "ba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c3", - "3f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8f", - "d276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99", - "25e5ea45a807ae40eb654d82982bacb30bb1da6060d308d0b63004f4e1926b0c", - "3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb", - "4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f661723", - "7058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78", - "994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25", - "9a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe26", - "65f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a2", - "19fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c", - "51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb" - ] - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 21265, - "blockTimestampDelay": 360627 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000030000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 2, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x0692ea7eeaaa73118d1da2c1db95511517ab896f87445c2331029aecdc7f065f634e6b46", - "dataAbiValues": { - "methodSignature": "handleRemoveChain(uint256)", - "inputValues": [ - "106142364743506859045918558596602602319943607038906547683486076996802461985606" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 2001, - "blockTimestampDelay": 455470 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000090000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x864e2da9fffffffffffffffffffffffffffffffffffffffffffffffff90fa4a62c573a80b81e8d97661fbf779db19fd00793e39f3b40bca612ee408ab75ff1c6439cf047509736e50626b1084ee93f4294000f73db102927cdc7fc34de68c384da900e6c", - "dataAbiValues": { - "methodSignature": "handleArbitrateDispute(uint256,uint256,uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457084007913130244736", - "83279546779206125286340055887058748934887896216240549764862301155730028032071", - "36452200662221151095065482565067302916782446267779931962683895890335455252076" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 41956, - "blockTimestampDelay": 475112 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000090000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xb6c75efaab191ad64d8fba3d052ab8ef37a088ba9faf5a1be696a47310de3441525ef897fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe3aaae444ec5312714f03b0566d2b40e5d34f58f068cabf3625fc0d7cfe3db912", - "dataAbiValues": { - "methodSignature": "handleClaimEscalationReward(uint256,uint256,uint256)", - "inputValues": [ - "77389853507359787864882669351213362161735184606551274462865365263877886900375", - "115792089237316195423570985008687907853269984665640564039457584007913129639934", - "26536084675173092165947634556752584404681954305155475174391110206140234709266" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 18699, - "blockTimestampDelay": 240561 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000030000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 3, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xf84d6dfcd2d78e343e1607b919341e2fe248544a49a0028fbd677a717f6a437862ddbc00", - "dataAbiValues": { - "methodSignature": "handleAddEBORequestCreatorRequestModule(uint256)", - "inputValues": [ - "95366551777850189910113500849756061153261920552639335948298155642211775921152" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 16776, - "blockTimestampDelay": 165634 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000060000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x0fb55087cd27e66c1a6365fdd2d452e5a6a582655000c0811d209ba0499f4483caf4b2da", - "dataAbiValues": { - "methodSignature": "handleApproveModule(uint256)", - "inputValues": [ - "92794631311208978202520326772644046682922248037671286389514014341863059010266" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 6256, - "blockTimestampDelay": 488143 - } -] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803584811000-6fd137e0-c5b3-46bf-b7cc-1b9ada70f8cb.json b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803584811000-6fd137e0-c5b3-46bf-b7cc-1b9ada70f8cb.json deleted file mode 100755 index ed0e482..0000000 --- a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803584811000-6fd137e0-c5b3-46bf-b7cc-1b9ada70f8cb.json +++ /dev/null @@ -1,244 +0,0 @@ -[ - { - "call": { - "from": "0x0000000000000000000000000000000000030000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x13a8b8040000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000034000000000000000000000000000000000000000000000000000000000000000170000000000000000000000000000000000000000000000000000000000d2f000ffffc0000000000000000000000000000000000000000000000000000000000181dc31bc03ad9bc8a966de91dfc8c49b929f6d5fd44a9c22a7f5bb37cebfc106ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed8ee8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b825bc2cfc37067e378b4feef3f3411136744d0b2851c161c601669654cf27bfe6100000000000000000000000000000000000000000000000000000000000000006cd40d93882a844c2becf361c7579664aef7a6ef6e8b79d6bf6f6f76426e9b14039e696f94058cfd274de97421f65916ac135f4d55083d357b9c1f34820c9376000000000000000000000000000000000000000000000000000000000003fffe000000000000000000000000000000000000000000000000000000000000000167e6a528e0202cf23a36eacf513eee303475d3e4c983b2ae2d616b11c440f70a4ac07813439b9213b22d4d86340307a2982de60c241368ad288dfea742b6eb5efffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9686c2d73382b1edfa908bcaeb6b9ac0073f469887a9150c80831642e47e35a614c1bffffffffffffffffffffffffffffffffffffffffffffe48e5eb33a3a7f000000104a13a90c13653470268ea78892361e7e91e706d859aabaaf45ddd18c956640809a37cc7335cdf29b7d988dc8c05e2c1899ad1795364e6fa667088b49487472000000000000000000000000000000000000000000000000000000000000fff6fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b80756993dc4be6ecf1e46c48d6f9cae9255a8b46ef956a3d85442a5f41f70ecf93000000000000000000000000000000000000000000000000000000000076a700a77a4c48695a0407441e86efc633aee092d2ebd99c87fdfeebcd904fe33e086d000000000000000000000000000000000000000000000000000000000000001d563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd0633ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed6958658aad3329b56f2f98187bbaed7351982ae06a00b9382adcb723b8b393d1f5e2def8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b4498bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef328d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad82082401f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade0554594d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae962914f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cbba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c33f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8fd276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f6617237058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf259a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe2665f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a219fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb", - "dataAbiValues": { - "methodSignature": "handleCreateRequests(uint256[],bytes32[])", - "inputValues": [ - [ - "13824000", - "115791647525550000827488589184312722123641027794666345134718053606362806484993", - "58737407075920930096693749632210245280794127876199190949253348332199714210054", - "115792089237316195423570985008687907853269984665640564039457584007913128431336", - "115792089237316195423570985008687907853269984665640564039457584007913129380738", - "41504671482165347584846103287222174319130579613222615088745194098566077611617", - "0", - "49224452924880417829398231270379785502530069722970149981823851608145893694228", - "1636828073493779560152621491074002847609709387720111137750911676859097584502", - "262142", - "1", - "46995738119123743123282428161140493004285235666026628953647859202250191730442", - "33811214160519685654400438720767591502827986970858420988841187408488311483230", - "115792089237316195423570985008687907853269984665640564039457584007913129207916", - "20557653259021005890251421269967042420225955023564768794272035576696478452763", - "115792089237316195423570985008687907853269984665640563909857584007913129639936", - "7367887950809164700104084563884591449786965425123545364576065505479275931200", - "58168524174645209900719041489934173752247098791866719219864340874379345294450", - "65526", - "115792089237316195423570985008687907853269984665640564039457584007913129380736", - "53107142721938561923251317745913031228477959801596843755970727929974933606291", - "7776000", - "75752327540241786815348607290604056680494387521335977257182003214564422715501" - ], - [ - "563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe", - "27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a", - "9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd06", - "33ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865", - "8aad3329b56f2f98187bbaed7351982ae06a00b9382adcb723b8b393d1f5e2de", - "f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1", - "c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b44", - "98bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01", - "108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef32", - "8d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea", - "94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad8208240", - "1f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade05545", - "94d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056", - "cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae96291", - "4f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa", - "9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874", - "ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cb", - "ba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c3", - "3f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8f", - "d276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99", - "fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce", - "3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb", - "4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f661723", - "7058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78", - "994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25", - "9a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe26", - "65f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a2", - "19fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c", - "51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb" - ] - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 21265, - "blockTimestampDelay": 360627 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000050000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x91e32c74e0613faa5f896b73380078af3c1ee8605eec949aaf9c8f422f264f3de916b58dc905ee964be623d23ba97ccc5a2b838249eaa10a8671d6a68f97b09746107abf", - "dataAbiValues": { - "methodSignature": "handleCreateRequest(uint256,bytes32)", - "inputValues": [ - "101489901651207154401933345705911812335881908306802664469868899807780031346061", - "c905ee964be623d23ba97ccc5a2b838249eaa10a8671d6a68f97b09746107abf" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 23884, - "blockTimestampDelay": 297676 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000020000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x161c7318", - "dataAbiValues": { - "methodSignature": "test_debug()", - "inputValues": [] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 0, - "blockTimestampDelay": 1 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000070000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xaa1a5bd9ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffee2cac1a259bf9695aac61487b4606621f281407f44a6d621116f436e53e00628b", - "dataAbiValues": { - "methodSignature": "handleResolveDispute(uint256,uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913129639918", - "20205843492154653597326893919151713313559584018734749877274787063574636290699" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 23891, - "blockTimestampDelay": 328958 - }, - { - "call": { - "from": "0x00000000000000000000000000000000000a0000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xec5bf215fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff60000", - "dataAbiValues": { - "methodSignature": "handleFinalizeRequestResponseModule(uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913128984576" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 23883, - "blockTimestampDelay": 276784 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000020000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xd1a55655fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe9c", - "dataAbiValues": { - "methodSignature": "handleRevokeModule(uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913129639580" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 14210, - "blockTimestampDelay": 524288 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000060000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x727899fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffb001400000000000000000000000000000000000000000000000000000000001275000000000000000000000000000000000000000000000000000000000000000000a46e28ce399e11c208b07a84e457189f5b64e15f51e128b7baf507642bfef8c6", - "dataAbiValues": { - "methodSignature": "handlePledge(uint256,uint256,uint256,uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913129312276", - "1209600", - "0", - "74373941974452021616102119156230516273735358461823357873191033522071497799878" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 1, - "blockTimestampDelay": 256 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000040000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xa44b098effffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0003", - "dataAbiValues": { - "methodSignature": "handleSetArbitrator(uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913129574403" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 43748, - "blockTimestampDelay": 541010 - } -] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803585754000-86cd1183-238f-46f1-89fb-e31c381aa9cd.json b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803585754000-86cd1183-238f-46f1-89fb-e31c381aa9cd.json deleted file mode 100755 index d68e201..0000000 --- a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803585754000-86cd1183-238f-46f1-89fb-e31c381aa9cd.json +++ /dev/null @@ -1,224 +0,0 @@ -[ - { - "call": { - "from": "0x0000000000000000000000000000000000030000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x13a8b80400000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000340000000000000000000000000000000000000000000000000000000000000001700000000000000000000000000000000000000000000000000000000000010e0ffffc0000000000000000000000000000000000000000000000000000000000181dc31bc03ad9bc8a966de91dfc8c49b929f6d5fd44a9c22a7f5bb37cebfc106ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed8ee8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b825bc2cfc37067e378b4feef3f3411136744d0b2851c161c601669654cf27bfe6100000000000000000000000000000000000000000000000000000000000000006cd40d93882a844c2becf361c7579664aef7a6ef6e8b79d6bf6f6f76426e9b14039e696f94058cfd274de97421f65916ac135f4d55083d357b9c1f34820c9376000000000000000000000000000000000000000000000000000000000003fffe000000000000000000000000000000000000000000000000000000000000000167e6a528e0202cf23a36eacf513eee303475d3e4c983b2ae2d616b11c440f70a0000000000000000000000000000000000000000000000000000000000000000fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9686c2d73382b1edfa908bcaeb6b9ac0073f469887a9150c80831642e47e35a614c1bffffffffffffffffffffffffffffffffffffffffffffe48e5eb33a3a7f000000104a13a90c13653470268ea78892361e7e91e706d859aabaaf45ddd18c956640809a37cc7335cdf29b7d988dc8c05e2c1899ad1795364e6fa667088b49487472000000000000000000000000000000000000000000000000000000000000fff6fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b80756993dc4be6ecf1e46c48d6f9cae9255a8b46ef956a3d85442a5f41f70ecf93000000000000000000000000000000000000000000000000000000000076a700a77a4c48695a0407441e86efc633aee092d2ebd99c87fdfeebcd904fe33e086d000000000000000000000000000000000000000000000000000000000000001d563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd0633ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed6958658aad3329b56f2f98187bbaed7351982ae06a00b9382adcb723b8b393d1f5e2def8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b4498bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef328d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad82082401f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade0554594d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e0568fcad889d076bcc6f0b5c84a4f6f334b74f944740b9f88a51f2895e76dd401884f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cbba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c33f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8fd276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f6617237058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25abbc2a768fea28edd1d653edcbaa5cace525564c5330b62b6ed63452f3b221f165f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a219fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb", - "dataAbiValues": { - "methodSignature": "handleCreateRequests(uint256[],bytes32[])", - "inputValues": [ - [ - "4320", - "115791647525550000827488589184312722123641027794666345134718053606362806484993", - "58737407075920930096693749632210245280794127876199190949253348332199714210054", - "115792089237316195423570985008687907853269984665640564039457584007913128431336", - "115792089237316195423570985008687907853269984665640564039457584007913129380738", - "41504671482165347584846103287222174319130579613222615088745194098566077611617", - "0", - "49224452924880417829398231270379785502530069722970149981823851608145893694228", - "1636828073493779560152621491074002847609709387720111137750911676859097584502", - "262142", - "1", - "46995738119123743123282428161140493004285235666026628953647859202250191730442", - "0", - "115792089237316195423570985008687907853269984665640564039457584007913129207916", - "20557653259021005890251421269967042420225955023564768794272035576696478452763", - "115792089237316195423570985008687907853269984665640563909857584007913129639936", - "7367887950809164700104084563884591449786965425123545364576065505479275931200", - "58168524174645209900719041489934173752247098791866719219864340874379345294450", - "65526", - "115792089237316195423570985008687907853269984665640564039457584007913129380736", - "53107142721938561923251317745913031228477959801596843755970727929974933606291", - "7776000", - "75752327540241786815348607290604056680494387521335977257182003214564422715501" - ], - [ - "563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe", - "27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a", - "9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd06", - "33ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865", - "8aad3329b56f2f98187bbaed7351982ae06a00b9382adcb723b8b393d1f5e2de", - "f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1", - "c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b44", - "98bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01", - "108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef32", - "8d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea", - "94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad8208240", - "1f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade05545", - "94d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056", - "8fcad889d076bcc6f0b5c84a4f6f334b74f944740b9f88a51f2895e76dd40188", - "4f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa", - "9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874", - "ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cb", - "ba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c3", - "3f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8f", - "d276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99", - "fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce", - "3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb", - "4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f661723", - "7058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78", - "994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25", - "abbc2a768fea28edd1d653edcbaa5cace525564c5330b62b6ed63452f3b221f1", - "65f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a2", - "19fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c", - "51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb" - ] - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 21265, - "blockTimestampDelay": 360627 - }, - { - "call": { - "from": "0x00000000000000000000000000000000000a0000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x6b125a57f70d7a9f8f7dc147f3c07846c57ff55a159156e04b1aef93f09a50411ed01cac", - "dataAbiValues": { - "methodSignature": "handleRemoveEBORequestCreatorFinalityModule(uint256)", - "inputValues": [ - "111745088926706135766942953021093517459235404528421949148968020375462747315372" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 41182, - "blockTimestampDelay": 251336 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000090000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x9f6259e5f758e7d4f100dcc2db3c85b9df5a8759d5abbd1697a1a04ec3af1471f220359a0000000000000000000000007109709ecfa91a80626ff3989d68f67f5b1dd12d", - "dataAbiValues": { - "methodSignature": "handleResolve(uint256,uint256)", - "inputValues": [ - "111878356186062714847010348548460913142200960060168223055923222451354708489626", - "645326474426547203313410069153905908525362434349" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 36881, - "blockTimestampDelay": 523741 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000050000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x0692ea7efffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7fc18", - "dataAbiValues": { - "methodSignature": "handleRemoveChain(uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913129114648" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 6610, - "blockTimestampDelay": 345959 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000060000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x9d2e6a6ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd0000", - "dataAbiValues": { - "methodSignature": "handleRemoveEBORequestCreatorRequestModule(uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913129443328" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 43871, - "blockTimestampDelay": 505590 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000080000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xdb106aceffffffffffffffffffffffffffffffffffffffffffffffffffffffdb16000000fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffafffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6a23f9b5b11f6aa4692c684f075c04d172abcb68f78eb66c92efe082b6a5d503c", - "dataAbiValues": { - "methodSignature": "handleSlash(uint256,uint256,uint256,uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007754584948736", - "115792089237316195423570985008687907853269984665640564039457584007913129639930", - "115792089237316195423570985008687907853269984665640564039457584007913129639926", - "73387065061500873488441831200362672861865918134039727439380329949185011699772" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 3063, - "blockTimestampDelay": 142231 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000090000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xd51b326a000000000000000000000000000000000000000000000000000000000000000afffffffffffffffffffffffffffffffffffffffffffffffff90fa4a62c4e00000000000000000000000000000000000000000000000000000000000000050000", - "dataAbiValues": { - "methodSignature": "handlePledgeForDispute(uint256,uint256,uint256)", - "inputValues": [ - "10", - "115792089237316195423570985008687907853269984665640564039457084007913129639936", - "327680" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 30742, - "blockTimestampDelay": 327371 - } -] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803586882000-dac7fc11-4da0-43b6-a704-b5d5e0f01355.json b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803586882000-dac7fc11-4da0-43b6-a704-b5d5e0f01355.json deleted file mode 100755 index 5d44fc3..0000000 --- a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803586882000-dac7fc11-4da0-43b6-a704-b5d5e0f01355.json +++ /dev/null @@ -1,289 +0,0 @@ -[ - { - "call": { - "from": "0x0000000000000000000000000000000000030000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x13a8b8040000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000034000000000000000000000000000000000000000000000000000000000000000170000000000000000000000000000000000000000000000000000000000d2f000ffffc0000000000000000000000000000000000000000000000000000000000181dc31bc03ad9bc8a966de91dfc8c49b929f6d5fd44a9c22a7f5bb37cebfc106ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed8ee8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b825bc2cfc37067e378b4feef3f3411136744d0b2851c161c601669654cf27afe610000000000000000000000000000000000000000000000000000000000000000578750b27e877a957d33dc50d914b1caf972efffa4bb78b85e66dd813a864ca4039e696f94058cfd274de97421f65916ac135f4d55083d357b9c1f34820c9376000000000000000000000000000000000000000000000000000000000003fffe000000000000000000000000000000000000000000000000000000000000000167e6a528e0202cf23a36eacf513eee303475d3e4c983b2ae2d616b11c440f70a4ac07813439b9213b22d4d86340307a2982de60c241368ad288dfea742b6eb5efffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9686c2d73382b1edfa908bcaeb6b9ac0073f469887a9150c80831642e47e35a614c1bffffffffffffffffffffffffffffffffffffffffffffe48e5eb33a3a7f000000104a13a90c13653470268ea78892361e7e91e706d859aabaaf45ddd18c956640809a37cc7335cdf29b7d988dc8c05e2c1899ad1795364e6fa667088b49487472000000000000000000000000000000000000000000000000000000000000fff6fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b800000000000000000000000000000000000000000000000000329c51ac594cf93000000000000000000000000000000000000000000000000000000000076a700a77a4c48695a0407441e86efc633aee092d2ebd99c87fdfeebcd904fe33e086d000000000000000000000000000000000000000000000000000000000000001d563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd0633ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865d5d6866ffb684491364a0853403f689144f5664f5d50de1b1a30d683ff29f21bf8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b4498bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef328d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad820824094c2949304cd969b5661cff34ece28aab6ca0f3eb707dc756ae848252d66c44a94d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae96291d8c581a922d52cd477658fcc2e2ca1f954f274ed2cd833a98e6d1d4455581f9d9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cbba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c389436d2b9b4dda11f7c2a5c1ca8fb20cba7512c884b100fa143fc24dc6c160eed276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f6617237058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25bcffd3ebd814d0f5e8e8dc7ef0303a14b98e79acfcabb14c9ad4225afd8f18c265f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a219fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c18aad5c04eb3f39ce81189eee664fb350f14bd8ce4dd62972aa7de342f017c7f", - "dataAbiValues": { - "methodSignature": "handleCreateRequests(uint256[],bytes32[])", - "inputValues": [ - [ - "13824000", - "115791647525550000827488589184312722123641027794666345134718053606362806484993", - "58737407075920930096693749632210245280794127876199190949253348332199714210054", - "115792089237316195423570985008687907853269984665640564039457584007913128431336", - "115792089237316195423570985008687907853269984665640564039457584007913129380738", - "41504671482165347584846103287222174319130579613222615088745194098566077546081", - "0", - "39590299132392589184737138068833640165131826767556478003143025413084726840484", - "1636828073493779560152621491074002847609709387720111137750911676859097584502", - "262142", - "1", - "46995738119123743123282428161140493004285235666026628953647859202250191730442", - "33811214160519685654400438720767591502827986970858420988841187408488311483230", - "115792089237316195423570985008687907853269984665640564039457584007913129207916", - "20557653259021005890251421269967042420225955023564768794272035576696478452763", - "115792089237316195423570985008687907853269984665640563909857584007913129639936", - "7367887950809164700104084563884591449786965425123545364576065505479275931200", - "58168524174645209900719041489934173752247098791866719219864340874379345294450", - "65526", - "115792089237316195423570985008687907853269984665640564039457584007913129380736", - "227929974933606291", - "7776000", - "75752327540241786815348607290604056680494387521335977257182003214564422715501" - ], - [ - "563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe", - "27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a", - "9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd06", - "33ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865", - "d5d6866ffb684491364a0853403f689144f5664f5d50de1b1a30d683ff29f21b", - "f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1", - "c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b44", - "98bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01", - "108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef32", - "8d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea", - "94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad8208240", - "94c2949304cd969b5661cff34ece28aab6ca0f3eb707dc756ae848252d66c44a", - "94d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056", - "cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae96291", - "d8c581a922d52cd477658fcc2e2ca1f954f274ed2cd833a98e6d1d4455581f9d", - "9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874", - "ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cb", - "ba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c3", - "89436d2b9b4dda11f7c2a5c1ca8fb20cba7512c884b100fa143fc24dc6c160ee", - "d276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99", - "fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce", - "3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb", - "4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f661723", - "7058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78", - "994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25", - "bcffd3ebd814d0f5e8e8dc7ef0303a14b98e79acfcabb14c9ad4225afd8f18c2", - "65f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a2", - "19fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c", - "18aad5c04eb3f39ce81189eee664fb350f14bd8ce4dd62972aa7de342f017c7f" - ] - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 21265, - "blockTimestampDelay": 360627 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000020000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x161c7318", - "dataAbiValues": { - "methodSignature": "test_debug()", - "inputValues": [] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 15325, - "blockTimestampDelay": 189245 - }, - { - "call": { - "from": "0x00000000000000000000000000000000000a0000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x88b05f294e5c5739570432e46e997185cf2683c287e8339e1ce7ab9502db4f4b4f0c1b77000000000000000000000000000000000000000000000000000000000012750000000000000000000000000000000000000000000000000006f05b59d3b200003c3b20fe3c6474ef6112cec6e2e1e2a66147c502767418c32e65c3bfa035d898948fc45007206ff5c0b2215d0b5c97d5551a84ed653f28e284b8567c463ce3650000000000000000000000000000000000000000000000000000000000069780ffffffffffffffffffffffffffffffffffffffffffffffffffffffec39800000109b1ce09a2caa796f35db2570026fd5d54f3b6f79d72997e7e30411ab7bab5f", - "dataAbiValues": { - "methodSignature": "handleSetDisputeModuleData(uint256,(address,address,uint256,uint256,uint256,uint256,uint256))", - "inputValues": [ - "35443554117267417118592017165536035041230544133048285386578266163756344810359", - { - "accountingExtension": "0x0000000000000000000000000000000000127500", - "bondEscalationDeadline": "432000", - "bondSize": "27243242601887521753615714576112380311306725462768124357416761313244220872856", - "bondToken": "0x00000000000000000000000006f05b59d3b20000", - "disputeWindow": "7511066176535142771400004346711719422194606327049609712661925953610498943839", - "maxNumberOfEscalations": "67196315620416968751812103706326677402054656808860235011842083525495944438629", - "tyingBuffer": "115792089237316195423570985008687907853269984665640564039457584007828194983936" - } - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 24101, - "blockTimestampDelay": 185392 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000010000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xb6c75efa8ba080b8a5e8e7e02b35ca63d619e3bf03ea7ee17a7395426e8c0ae38903a378ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff51e8737b07890aad8af4228017f323f8ee58c58602fe8a95d9a372445358479b", - "dataAbiValues": { - "methodSignature": "handleClaimEscalationReward(uint256,uint256,uint256)", - "inputValues": [ - "63155069885073485423962987089686113899340909970551762747564159406599093592952", - "115792089237316195423570985008687907853269984665640564039457584007913129639935", - "37048046271970045328561159781521571766041874645079829392453863326819299116955" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 7, - "blockTimestampDelay": 32 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000090000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x223b137400003ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe000000000000000000000000000000000000000000000000000000000000004006807205175b22b301c32b6c5e6ee194bd596681cba8c8638952ec1250f3d6450000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000000000000000000000000000000001518000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000027874838a0b68a875ec0ee81d4c8ef1980254e8ae6eaec10d74722bac9ebd5a49a6c310208a5de1500000000000000000000000000000000000000000000000000", - "dataAbiValues": { - "methodSignature": "handleSetRequestModuleData(uint256,(uint256,string,address,uint256))", - "inputValues": [ - "441711766194596082395824375185729628956870974218904739530401550323154942", - { - "accountingExtension": "0x0000000000000000000000000000000000015180", - "chainId": "\ufffdH8\ufffd\ufffd\ufffd\ufffd^\ufffd\ufffd\ufffd\ufffd\ufffd\ufffd\u0019\ufffd%N\ufffd\ufffd\ufffd\ufffd\u0010\ufffdG\"\ufffd\ufffd\ufffdդ\ufffdl1\u0002\b\ufffd\ufffd\u0015", - "epoch": "2940820452134172681045375212785432443100619197912571245547930807664892958277", - "paymentAmount": "0" - } - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 15253, - "blockTimestampDelay": 492034 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000080000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xaa1a5bd900000000000000000000000000000000000000000000000006f05b59d3b2000071f7cd086897aaf2110bd910f953453e7bcc20e82af33eec4c00647f9fb5da5e", - "dataAbiValues": { - "methodSignature": "handleResolveDispute(uint256,uint256)", - "inputValues": [ - "500000000000000000", - "51549178199604899047887187595007193100674999475015380254417935657395983604318" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 53242, - "blockTimestampDelay": 71336 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000070000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x52e3cb9cffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffec", - "dataAbiValues": { - "methodSignature": "handleSetMaxUsersToCheck(uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913129639916" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 45495, - "blockTimestampDelay": 225944 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000090000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xdb106aceffffffffffffffffffffffffffffffffffffffffffffffffffffffec398000001371ca94900c31d8e9be66d7c23f65b05f5d33ff2b30949acfed984f87f269e080baf5544430fe321ebd2409617ef6786f5b994597bc40798f800826b310e4524793f157456609da494af2a02075c03fcf9249185214862d5dd9f0eddb7447ce", - "dataAbiValues": { - "methodSignature": "handleSlash(uint256,uint256,uint256,uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007828194983936", - "8794995999406163856009545368231505849668095829549449500668097316828300339680", - "58226371372378751290891435773627286125304890291737788253576280229276508283986", - "32375604441627796962923040660328673776239995228426910584919203216277625915342" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 49592, - "blockTimestampDelay": 581992 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000080000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x223b1374000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000408986d1481eea494dad550c07436bc6bf24fda1699ae18ac8e867c2bc2cbb811f0000000000000000000000000000000000000000000000000000000000000080000000000000000000000000148bd2b35a0e0ff5f58651fe93524e321532b27500000000000000000000000000000000000000000000000000000000001274fe000000000000000000000000000000000000000000000000000000000000001419d972fb93584a547a564eb672065531206d2c71000000000000000000000000", - "dataAbiValues": { - "methodSignature": "handleSetRequestModuleData(uint256,(uint256,string,address,uint256))", - "inputValues": [ - "0", - { - "accountingExtension": "0x148bd2b35a0e0ff5f58651fe93524E321532b275", - "chainId": "\u0019\ufffdr\ufffd\ufffdXJTzVN\ufffdr\u0006U1 m,q", - "epoch": "62205062171946186530711375116649708949236787489916806320076639634871891493151", - "paymentAmount": "1209598" - } - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 57406, - "blockTimestampDelay": 508192 - } -] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803587294000-bdb9aaa4-0806-4b34-a670-488774d109df.json b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803587294000-bdb9aaa4-0806-4b34-a670-488774d109df.json deleted file mode 100755 index 816b319..0000000 --- a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803587294000-bdb9aaa4-0806-4b34-a670-488774d109df.json +++ /dev/null @@ -1,194 +0,0 @@ -[ - { - "call": { - "from": "0x0000000000000000000000000000000000040000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x52e3cb9c6b0d264b5add160d5053aa476132c22d6540d3605ad8dfb850790b1ba996569b", - "dataAbiValues": { - "methodSignature": "handleSetMaxUsersToCheck(uint256)", - "inputValues": [ - "48420708108177856443123222644862532857390746786695606854692354379525674915483" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 59698, - "blockTimestampDelay": 331757 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000020000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x62e8fd3500000000000000000000000000000000000000000000000000000000000000124ab950c09e2414c3ec444389b5281e1bdfda8ecfec5392240af8d376f3781e4f", - "dataAbiValues": { - "methodSignature": "handleOnDisputeStatusChange(uint256,uint256)", - "inputValues": [ - "18", - "33798574834817402171861624718400176195923458571787846279113220864863863578191" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 41059, - "blockTimestampDelay": 386818 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000040000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x161c7318", - "dataAbiValues": { - "methodSignature": "test_debug()", - "inputValues": [] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 2290, - "blockTimestampDelay": 360593 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000050000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xb05752f700000000000000000000000000000000000000000000000014d1120d7b160000fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa0100ffffe666666666666666666666666666666666666666666666666666666666670000000000000000000000000000000000000000000000000000000000000001", - "dataAbiValues": { - "methodSignature": "handleOnSettleBondEscalation(uint256,uint256,uint256,uint256)", - "inputValues": [ - "1500000000000000000", - "115792089237316195423570985008687907853269984665640564039457584007913129246976", - "115791912552609717585138026678937833561418401917250876477561771847293000377959", - "1" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 35958, - "blockTimestampDelay": 189815 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000080000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xd1a556550000000000000000000000000000000000000000000000000000000000093a80", - "dataAbiValues": { - "methodSignature": "handleRevokeModule(uint256)", - "inputValues": [ - "604800" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 23866, - "blockTimestampDelay": 120766 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000040000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 2, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xf60285cafffffffffffffffffffffffffffffffffffffffffffffffffffffffffffb00001f6163d95156c50021d434e3914437a6419fd074db58aba632a1165e1049633a3bf295102083f98484e4163605f3f088673969b3a53bced8eb97b90d6679470f0000000000000000000000000000000000000000000000000000000000000014", - "dataAbiValues": { - "methodSignature": "handleBondWithSender(uint256,uint256,uint256,uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913129312256", - "14193771603127510897806160380156132720630156725507671248204049821265402880826", - "27115063851078188957254873925429362151386502274781693755807630999965205612303", - "20" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 14998, - "blockTimestampDelay": 528331 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000050000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x51b295e3fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc18", - "dataAbiValues": { - "methodSignature": "handleFinalize(uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913129638936" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 23876, - "blockTimestampDelay": 327680 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000060000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x2047c4493b1bb599e967df2247a0bde0e15c19a16d95520dbb9eb811b647dd1c5a50d970bda0d1adb4d017dcf6513d613392f361bfe0847acfbe5bbfd267240bef7125cd61ebaebab2bac3aa4819e2caf8f85c718565871747241e292cc36db91888e520d873b789d8f47c6606b2d5358f69133b1dd4937cee526c90ac095190af102de2", - "dataAbiValues": { - "methodSignature": "handlePay(uint256,uint256,uint256,uint256)", - "inputValues": [ - "26735416302702836720504774004574936090245153519362370366870156849631651223920", - "85771271060700958624081931951489906403580871476691194667860842730768850560461", - "44290761310036599938494988979380191776366734083697389368196279735913800066336", - "97904029442377240838501909618781928147909909174040210570358457032104622435810" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 54628, - "blockTimestampDelay": 362209 - } -] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803587717000-df75f9a7-1493-4f85-933b-41e16a40a9aa.json b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803587717000-df75f9a7-1493-4f85-933b-41e16a40a9aa.json deleted file mode 100755 index 7c595c7..0000000 --- a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803587717000-df75f9a7-1493-4f85-933b-41e16a40a9aa.json +++ /dev/null @@ -1,277 +0,0 @@ -[ - { - "call": { - "from": "0x0000000000000000000000000000000000030000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x13a8b8040000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000034000000000000000000000000000000000000000000000000000000000000000170000000000000000000000000000000000000000000000000000000000d2f000ffffc0000000000000000000000000000000000000000000000000000000000181dc31bc03ad9bc8a966de91dfc8c49b929f6d5fd44a9c22a7f5bb37cebfc106ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed8ee8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b825bc2cfc37067e378b4feef3f3411136744d0b2851c161c601669654cf27bfe610000000000000000000000000000000000000000000000000000000000000000578750b27e877a957d33dc50d914b1caf972efffa4bb78b85e66dd813a864ca4039e696f94058cfd274de97421f65916ac135f4d55083d357b9c1f34820c9376000000000000000000000000000000000000000000000000000000000003fffe000000000000000000000000000000000000000000000000000000000000000167e6a528e0202cf23a36eacf513eee303475d3e4c983b2ae2d616b11c440f70a4ac07813439b9213b22d4d86340307a2982de60c241368ad288dfea742b6eb5efffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9686c2d73382b1edfa908bcaeb6b9ac0073f469887a9150c80831642e47e35a614c1bffffffffffffffffffffffffffffffffffffffffffffe48e5eb33a3a7f000000104a13a90c13653470268ea78892361e7e91e706d859aabaaf45ddd18c956640809a37cc7335cdf29b7d988dc8c05e2c1899ad1795364e6fa667088b49487472000000000000000000000000000000000000000000000000000000000000fff6fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b800000000000000000000000000000000000000000000000000329c51ac594cf93000000000000000000000000000000000000000000000000000000000076a700a77a4c48695a0407441e86efc633aee092d2ebd99c87fdfeebcd904fe33e086d000000000000000000000000000000000000000000000000000000000000001d563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd0633ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865d5d6866ffb684491364a0853403f689144f5664f5d50de1b1a30d683ff29f21bf8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b4498bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef328d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad82082401f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade0554594d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae96291d8c581a922d52cd477658fcc2e2ca1f954f274ed2cd833a98e6d1d4455581f9d9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cbba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c33f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8fd276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f6617237058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf259a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe2665f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a219fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb", - "dataAbiValues": { - "methodSignature": "handleCreateRequests(uint256[],bytes32[])", - "inputValues": [ - [ - "13824000", - "115791647525550000827488589184312722123641027794666345134718053606362806484993", - "58737407075920930096693749632210245280794127876199190949253348332199714210054", - "115792089237316195423570985008687907853269984665640564039457584007913128431336", - "115792089237316195423570985008687907853269984665640564039457584007913129380738", - "41504671482165347584846103287222174319130579613222615088745194098566077611617", - "0", - "39590299132392589184737138068833640165131826767556478003143025413084726840484", - "1636828073493779560152621491074002847609709387720111137750911676859097584502", - "262142", - "1", - "46995738119123743123282428161140493004285235666026628953647859202250191730442", - "33811214160519685654400438720767591502827986970858420988841187408488311483230", - "115792089237316195423570985008687907853269984665640564039457584007913129207916", - "20557653259021005890251421269967042420225955023564768794272035576696478452763", - "115792089237316195423570985008687907853269984665640563909857584007913129639936", - "7367887950809164700104084563884591449786965425123545364576065505479275931200", - "58168524174645209900719041489934173752247098791866719219864340874379345294450", - "65526", - "115792089237316195423570985008687907853269984665640564039457584007913129380736", - "227929974933606291", - "7776000", - "75752327540241786815348607290604056680494387521335977257182003214564422715501" - ], - [ - "563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe", - "27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a", - "9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd06", - "33ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865", - "d5d6866ffb684491364a0853403f689144f5664f5d50de1b1a30d683ff29f21b", - "f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1", - "c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b44", - "98bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01", - "108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef32", - "8d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea", - "94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad8208240", - "1f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade05545", - "94d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056", - "cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae96291", - "d8c581a922d52cd477658fcc2e2ca1f954f274ed2cd833a98e6d1d4455581f9d", - "9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874", - "ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cb", - "ba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c3", - "3f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8f", - "d276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99", - "fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce", - "3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb", - "4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f661723", - "7058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78", - "994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25", - "9a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe26", - "65f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a2", - "19fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c", - "51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb" - ] - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 21265, - "blockTimestampDelay": 360627 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000020000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x161c7318", - "dataAbiValues": { - "methodSignature": "test_debug()", - "inputValues": [] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 15325, - "blockTimestampDelay": 189245 - }, - { - "call": { - "from": "0x00000000000000000000000000000000000a0000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x88b05f294e5c5739570432e46e997185cf2683c287e8339e1ce7ab9502db4f4b4f0c1b77000000000000000000000000000000000000000000000000000000000012750000000000000000000000000000000000000000000000000006f05b59d3b200003c3b20fe3c6474ef6112cec6e2e1e2a66147c502767418c32e65c3bfa035d898948fc45007206ff5c0b2215d0b5c97d5551a84ed653f28e284b8567c463ce3650000000000000000000000000000000000000000000000000000000000069780ffffffffffffffffffffffffffffffffffffffffffffffffffffffec398000000000000000000000000000000000000000000000000000000000000000093a80", - "dataAbiValues": { - "methodSignature": "handleSetDisputeModuleData(uint256,(address,address,uint256,uint256,uint256,uint256,uint256))", - "inputValues": [ - "35443554117267417118592017165536035041230544133048285386578266163756344810359", - { - "accountingExtension": "0x0000000000000000000000000000000000127500", - "bondEscalationDeadline": "432000", - "bondSize": "27243242601887521753615714576112380311306725462768124357416761313244220872856", - "bondToken": "0x00000000000000000000000006f05b59d3b20000", - "disputeWindow": "604800", - "maxNumberOfEscalations": "67196315620416968751812103706326677402054656808860235011842083525495944438629", - "tyingBuffer": "115792089237316195423570985008687907853269984665640564039457584007828194983936" - } - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 24101, - "blockTimestampDelay": 185392 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000040000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x3c26dcf8000000000000000000000000000000000000000000000853a0d2313c00000000", - "dataAbiValues": { - "methodSignature": "handleSetEpochManager(uint256)", - "inputValues": [ - "39321600000000000000000" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 23050, - "blockTimestampDelay": 360593 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000070000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x1c6850cfb0e3106162bbf50b7b4f4127a44fc6dee30686640d85ab8a97c7a387e688d09200000000000000000000000000000000000000000000000000000000000151800000000000000000000000000000000000000000000000000de0b6b3a7640000", - "dataAbiValues": { - "methodSignature": "handleUpdateDisputeStatus(uint256,uint256,uint256)", - "inputValues": [ - "80008248687813878652618995284154503941697939794158322754224777983398987223186", - "86400", - "1000000000000000000" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 17066, - "blockTimestampDelay": 86400 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000020000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xc0106a6cce21db24dd246f08ad02e64e7a8e8742fa9607e8fdf81425d16e85c70f3de5d85907be10f550a4ab3f84480cf0ea723b2a74da20322f8a7c02918a70cdb15ac9", - "dataAbiValues": { - "methodSignature": "handleCreateRequest(uint256,uint256)", - "inputValues": [ - "93236265237587594263022487768855356786420509345912517467786824227481808922072", - "40269523242363880299786798295795090179015741572111778996238876869560403843785" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 0, - "blockTimestampDelay": 101426 - }, - { - "call": { - "from": "0x00000000000000000000000000000000000a0000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x9d2e6a6f998e4550a0de435d19cec4771f09fda88c2b7664624260171a192d839c6e2a65", - "dataAbiValues": { - "methodSignature": "handleRemoveEBORequestCreatorRequestModule(uint256)", - "inputValues": [ - "69455236510673350336024647478873143438234265695463592178397393693034284984933" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 35869, - "blockTimestampDelay": 315170 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000020000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 2, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xd1a55655fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6c580", - "dataAbiValues": { - "methodSignature": "handleRevokeModule(uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913129035136" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 55790, - "blockTimestampDelay": 111616 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000010000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x55438465815bedc734908418031caab89516e183218d7f0edf8e3c493ab40a8fcacc98210000000000000000000000001260c0c92cc0a0b1b5b54cb0501ed367353befeb", - "dataAbiValues": { - "methodSignature": "handleSetResolutionModuleData(uint256,(address))", - "inputValues": [ - "58510781634585462798122964402259920591361435129587016659431711127985600632865", - { - "arbitrator": "0x1260c0c92cc0A0b1B5b54cb0501eD367353befeB" - } - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 25042, - "blockTimestampDelay": 70452 - } -] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803588141000-9a69c5d6-6e9c-4112-b48d-c967ce827264.json b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803588141000-9a69c5d6-6e9c-4112-b48d-c967ce827264.json deleted file mode 100755 index eeb8fad..0000000 --- a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803588141000-9a69c5d6-6e9c-4112-b48d-c967ce827264.json +++ /dev/null @@ -1,267 +0,0 @@ -[ - { - "call": { - "from": "0x0000000000000000000000000000000000030000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x13a8b8040000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000034000000000000000000000000000000000000000000000000000000000000000170000000000000000000000000000000000000000000000000000000000d2f000ffffc0000000000000000000000000000000000000000000000000000000000181dc31bc03ad9bc8a966de91dfc8c49b929f6d5fd44a9c22a7f5bb37cebfc106ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed8ee8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b825bc2cfc37067e378b4feef3f3411136744d0b2851c161c601669654cf27bfe6100000000000000000000000000000000000000000000000000000000000000006cd40d93882a844c2becf361c7579664aef7a6ef6e8b79d6bf6f6f76426e9b14039e696f94058cfd274de97421f65916ac135f4d55083d357b9c1f34820c9376000000000000000000000000000000000000000000000000000000000003fffe000000000000000000000000000000000000000000000000000000000000000167e6a528e0202cf23a36eacf513eee303475d3e4c983b2ae2d616b11c440f70a4ac07813439b9213b22d4d86340307a2982de60c241368ad288dfea742b6eb5efffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9686c2d73382b1edfa908bcaeb6b9ac0073f469887a9150c80831642e47e35a614c1bffffffffffffffffffffffffffffffffffffffffffffe48e5eb33a3a7f000000104a13a90c13653470268ea78892361e7e91e706d859aabaaf45ddd18c956640809a37cc7335cdf29b7d988dc8c05e2c1899ad1795364e6fa667088b49487472000000000000000000000000000000000000000000000000000000000000fff6fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b80756993dc4be6ecf1e46c48d6f9cae9255a8b46ef956a3d85442a5f41f70ecf93000000000000000000000000000000000000000000000000000000000076a700a77a4c48695a0407441e86efc633aee092d2ebd99c87fdfeebcd904fe33e086d000000000000000000000000000000000000000000000000000000000000001d563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd0633ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed6958658aad3329b56f2f98187bbaed7351982ae06a00b9382adcb723b8b393d1f5e2def8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b4498bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef328d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad82082401f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade0554594d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae962914f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cbba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c33f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8fd276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f6617237058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf259a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe2665f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a219fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb", - "dataAbiValues": { - "methodSignature": "handleCreateRequests(uint256[],bytes32[])", - "inputValues": [ - [ - "13824000", - "115791647525550000827488589184312722123641027794666345134718053606362806484993", - "58737407075920930096693749632210245280794127876199190949253348332199714210054", - "115792089237316195423570985008687907853269984665640564039457584007913128431336", - "115792089237316195423570985008687907853269984665640564039457584007913129380738", - "41504671482165347584846103287222174319130579613222615088745194098566077611617", - "0", - "49224452924880417829398231270379785502530069722970149981823851608145893694228", - "1636828073493779560152621491074002847609709387720111137750911676859097584502", - "262142", - "1", - "46995738119123743123282428161140493004285235666026628953647859202250191730442", - "33811214160519685654400438720767591502827986970858420988841187408488311483230", - "115792089237316195423570985008687907853269984665640564039457584007913129207916", - "20557653259021005890251421269967042420225955023564768794272035576696478452763", - "115792089237316195423570985008687907853269984665640563909857584007913129639936", - "7367887950809164700104084563884591449786965425123545364576065505479275931200", - "58168524174645209900719041489934173752247098791866719219864340874379345294450", - "65526", - "115792089237316195423570985008687907853269984665640564039457584007913129380736", - "53107142721938561923251317745913031228477959801596843755970727929974933606291", - "7776000", - "75752327540241786815348607290604056680494387521335977257182003214564422715501" - ], - [ - "563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe", - "27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a", - "9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd06", - "33ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865", - "8aad3329b56f2f98187bbaed7351982ae06a00b9382adcb723b8b393d1f5e2de", - "f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1", - "c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b44", - "98bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01", - "108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef32", - "8d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea", - "94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad8208240", - "1f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade05545", - "94d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056", - "cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae96291", - "4f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa", - "9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874", - "ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cb", - "ba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c3", - "3f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8f", - "d276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99", - "fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce", - "3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb", - "4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f661723", - "7058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78", - "994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25", - "9a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe26", - "65f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a2", - "19fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c", - "51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb" - ] - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 21265, - "blockTimestampDelay": 360627 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000050000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x91e32c74e0613faa5f896b73380078af3c1ee8605eec949aaf9c8f422f264f3de916b58dc905ee964be623d23ba97ccc5a2b838249eaa10a8671d6a68f97b09746107abf", - "dataAbiValues": { - "methodSignature": "handleCreateRequest(uint256,bytes32)", - "inputValues": [ - "101489901651207154401933345705911812335881908306802664469868899807780031346061", - "c905ee964be623d23ba97ccc5a2b838249eaa10a8671d6a68f97b09746107abf" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 23884, - "blockTimestampDelay": 297676 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000020000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x161c7318", - "dataAbiValues": { - "methodSignature": "test_debug()", - "inputValues": [] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 0, - "blockTimestampDelay": 1 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000070000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xaa1a5bd9ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffee2cac1a259bf9695aac61487b4606621f281407f44a6d621116f436e53e00628b", - "dataAbiValues": { - "methodSignature": "handleResolveDispute(uint256,uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913129639918", - "20205843492154653597326893919151713313559584018734749877274787063574636290699" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 23891, - "blockTimestampDelay": 328958 - }, - { - "call": { - "from": "0x00000000000000000000000000000000000a0000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xec5bf215fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff60000", - "dataAbiValues": { - "methodSignature": "handleFinalizeRequestResponseModule(uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913128984576" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 23883, - "blockTimestampDelay": 276784 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000020000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xd1a55655fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe9c", - "dataAbiValues": { - "methodSignature": "handleRevokeModule(uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913129639580" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 14210, - "blockTimestampDelay": 524288 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000060000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x727899fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffb001400000000000000000000000000000000000000000000000000000000001275000000000000000000000000000000000000000000000000000000000000000000a46e28ce399e11c208b07a84e457189f5b64e15f51e128b7baf507642bfef8c6", - "dataAbiValues": { - "methodSignature": "handlePledge(uint256,uint256,uint256,uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913129312276", - "1209600", - "0", - "74373941974452021616102119156230516273735358461823357873191033522071497799878" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 1, - "blockTimestampDelay": 256 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000040000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xa44b098effffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0003", - "dataAbiValues": { - "methodSignature": "handleSetArbitrator(uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913129574403" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 43748, - "blockTimestampDelay": 541010 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000010000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x8f790139ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0", - "dataAbiValues": { - "methodSignature": "handleReleaseUnutilizedResponse(uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913129639904" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 11833, - "blockTimestampDelay": 213928 - } -] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803590022000-aa14cc9b-89e7-4ad3-bd27-cebd20d762fd.json b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803590022000-aa14cc9b-89e7-4ad3-bd27-cebd20d762fd.json deleted file mode 100755 index e6bf6c5..0000000 --- a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803590022000-aa14cc9b-89e7-4ad3-bd27-cebd20d762fd.json +++ /dev/null @@ -1,255 +0,0 @@ -[ - { - "call": { - "from": "0x0000000000000000000000000000000000030000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x13a8b8040000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000034000000000000000000000000000000000000000000000000000000000000000170000000000000000000000000000000000000000000000000000000000d2f000ffffc0000000000000000000000000000000000000000000000000000000000181dc31bc03ad9bc8a966de91dfc8c49b929f6d5fd44a9c22a7f5bb37cebfc106ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed8ee8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6c5805bc2cfc37067e378b4feef3f3411136744d0b2851c161c601669654cf27bfe6100000000000000000000000000000000000000000000000000000000000000006cd40d93882a844c2becf361c7579664aef7a6ef6e8b79d6bf6f6f76426e9b14039e696f94058cfd274de97421f65916ac135f4d55083d357b9c1f34820c9376000000000000000000000000000000000000000000000000000000000003fffe000000000000000000000000000000000000000000000000000000000000000167e6a528e0202cf23a36eacf513eee303475d3e4c983b2ae2d616b11c440f70aaa625827d77aa233df42016988900477ead582090357ec011f404ff1f0aa321bfffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9686c2d73382b1edfa908bcaeb6b9ac0073f469887a9150c80831642e47e35a614c1bffffffffffffffffffffffffffffffffffffffffffffe48e5eb33a3a7f000000104a13a90c13653470268ea78892361e7e91e706d859aabaaf45ddd18c956640809a37cc7335cdf29b7d988dc8c05e2c1899ad1795364e6fa667088b49487472000000000000000000000000000000000000000000000000000000000000fff6fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b80756993dc4be6ecf1e46c48d6f9cae9255a8b46ef956a3d85442a5f41f70ecf93000000000000000000000000000000000000000000000000000000000076a700a77a4c48695a0407441e86efc633aee092d2ebd99c87fdfeebcd904fe33e086d000000000000000000000000000000000000000000000000000000000000001d563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd0633ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed69586530127b846a0115a3e561f49781eea70d4bcc4884906080e6adb068ff5fe13953f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b4498bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef328d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad82082401f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade0554594d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e05648dd821e471bd9a22c1f612735d2d7244c13832c4b0f28993ecafc561bfc52ae4f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cbba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c33f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8fd276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f6617237058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf259a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe2665f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a219fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb", - "dataAbiValues": { - "methodSignature": "handleCreateRequests(uint256[],bytes32[])", - "inputValues": [ - [ - "13824000", - "115791647525550000827488589184312722123641027794666345134718053606362806484993", - "58737407075920930096693749632210245280794127876199190949253348332199714210054", - "115792089237316195423570985008687907853269984665640564039457584007913128431336", - "115792089237316195423570985008687907853269984665640564039457584007913129035136", - "41504671482165347584846103287222174319130579613222615088745194098566077611617", - "0", - "49224452924880417829398231270379785502530069722970149981823851608145893694228", - "1636828073493779560152621491074002847609709387720111137750911676859097584502", - "262142", - "1", - "46995738119123743123282428161140493004285235666026628953647859202250191730442", - "77066943699312596523560233185714836616924754343478096130098486630426813805083", - "115792089237316195423570985008687907853269984665640564039457584007913129207916", - "20557653259021005890251421269967042420225955023564768794272035576696478452763", - "115792089237316195423570985008687907853269984665640563909857584007913129639936", - "7367887950809164700104084563884591449786965425123545364576065505479275931200", - "58168524174645209900719041489934173752247098791866719219864340874379345294450", - "65526", - "115792089237316195423570985008687907853269984665640564039457584007913129380736", - "53107142721938561923251317745913031228477959801596843755970727929974933606291", - "7776000", - "75752327540241786815348607290604056680494387521335977257182003214564422715501" - ], - [ - "563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe", - "27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a", - "9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd06", - "33ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865", - "30127b846a0115a3e561f49781eea70d4bcc4884906080e6adb068ff5fe13953", - "f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1", - "c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b44", - "98bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01", - "108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef32", - "8d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea", - "94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad8208240", - "1f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade05545", - "94d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056", - "48dd821e471bd9a22c1f612735d2d7244c13832c4b0f28993ecafc561bfc52ae", - "4f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa", - "9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874", - "ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cb", - "ba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c3", - "3f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8f", - "d276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99", - "fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce", - "3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb", - "4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f661723", - "7058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78", - "994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25", - "9a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe26", - "65f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a2", - "19fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c", - "51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb" - ] - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 21265, - "blockTimestampDelay": 360627 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000050000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x91e32c74e0613faa5f896b73380078af3c1ee8605eec949aaf9c8f422f264f3de916b58d4b3032484de1fb4c70c2a705584283a0288158e7d201a2526966e049d49acde5", - "dataAbiValues": { - "methodSignature": "handleCreateRequest(uint256,bytes32)", - "inputValues": [ - "101489901651207154401933345705911812335881908306802664469868899807780031346061", - "4b3032484de1fb4c70c2a705584283a0288158e7d201a2526966e049d49acde5" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 23884, - "blockTimestampDelay": 297676 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000080000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x62e8fd350000000000000000000000000000000000000000000000000000000000000000f3e0a4b7d4b9f146c330bf4206493b9644386108e6fb9dbd1ec9e9631656b911", - "dataAbiValues": { - "methodSignature": "handleOnDisputeStatusChange(uint256,uint256)", - "inputValues": [ - "0", - "110308932790717902341334723675742636402013152744066319296234386176011142609169" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 6, - "blockTimestampDelay": 447025 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000060000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xb05752f7000000000000000000000000000000000000000000000000000000000083d600ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff3cb74a490a6b235de22fdba8b11c89c1a75ba52781eaa376b8904d607971473952c39b6854fd2443ddec68f9b401b12b2c3233b939e902ba2cc4b78fc21880c9", - "dataAbiValues": { - "methodSignature": "handleOnSettleBondEscalation(uint256,uint256,uint256,uint256)", - "inputValues": [ - "8640000", - "115792089237316195423570985008687907853269984665640564039457584007913129639935", - "27462616626253393834172180586494418890954476283257859666307992469208736810809", - "37435261344928203651121242557808094327910915308413204917974281668150859169993" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 20576, - "blockTimestampDelay": 441138 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000050000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x88b05f29000000000000000000000000000000000000000000000000000000000009fffe000000000000000000000000c43801cd359a82757df4289878ce85539b0fcade000000000000000000000000000000000000000000000000000000000000006434998e76fdd43c55ad90e4a35d96044a3ebe674f5dfa103757d366102ca9f26c00000000000000000000000000000000000000000000000000000000000001000e694122e842adea5277bbbdab0b14091c2583d39824533976734442dab724e2195f41f8193b8fdb454e4c675da554f0f9409064f42db392c9ab9d5e83fad976fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe", - "dataAbiValues": { - "methodSignature": "handleSetDisputeModuleData(uint256,(address,address,uint256,uint256,uint256,uint256,uint256))", - "inputValues": [ - "655358", - { - "accountingExtension": "0xc43801Cd359A82757Df4289878CE85539B0fcAdE", - "bondEscalationDeadline": "6518348376578069825047353184871606747778953752910129049968505915388248663266", - "bondSize": "23791578983227214469447533216306682837879210004146422934780693486186688803436", - "bondToken": "0x0000000000000000000000000000000000000064", - "disputeWindow": "115792089237316195423570985008687907853269984665640564039457584007913129639934", - "maxNumberOfEscalations": "256", - "tyingBuffer": "11476126987972230713107770724661081842991657660629818104854040000448595417462" - } - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 1, - "blockTimestampDelay": 2 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000020000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xf84d6dfc00000000000000000000000000000000000000000000000006f05b59d3ad0000", - "dataAbiValues": { - "methodSignature": "handleAddEBORequestCreatorRequestModule(uint256)", - "inputValues": [ - "499999999999672320" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 12976, - "blockTimestampDelay": 472659 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000010000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x4741f6dcc0e4d0eee56b7f10aa9aefe04c4f650af62be8b532d57f12aa7ac5b950884c3a", - "dataAbiValues": { - "methodSignature": "handleSetFinalityModuleData(uint256)", - "inputValues": [ - "87248350062624793638699702709121271409886681841563726628967995216176035155002" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 29334, - "blockTimestampDelay": 296740 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000020000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x5356b681bebfb0dc367f431af08687c084e9c844567359d9793a12e0818425b7df16682a", - "dataAbiValues": { - "methodSignature": "handleAddEBORequestCreatorFinalityModule(uint256)", - "inputValues": [ - "86278129664477803463997658766424154744739678303000950581784606393529462581290" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 3566, - "blockTimestampDelay": 274227 - } -] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803590829000-913a5283-6ee7-4539-b536-25e88067c71c.json b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803590829000-913a5283-6ee7-4539-b536-25e88067c71c.json deleted file mode 100755 index 2084ce2..0000000 --- a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803590829000-913a5283-6ee7-4539-b536-25e88067c71c.json +++ /dev/null @@ -1,302 +0,0 @@ -[ - { - "call": { - "from": "0x0000000000000000000000000000000000030000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x13a8b8040000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000034000000000000000000000000000000000000000000000000000000000000000170000000000000000000000000000000000000000000000000000000000d2f000ffffc0000000000000000000000000000000000000000000000000000000000181dc31bc03ad9bc8a966de91dfc8c49b929f6d5fd44a9c22a7f5bb37cebfc106000000000000000000000000000000000000000000007ff72b2c19616ab00000e645df196666f5e4e940c577b9670b086db2c746878e45aae0dbee6c63a0e6a35bc2cfc37067e378b4feef3f3411136744d0b2851c161c601669654cf27bfe6100000000000000000000000000000000000000000000000000000000000000006cd40d93882a844c2becf361c7579664aef7a6ef6e8b79d6bf6f6f76426e9b14039e696f94058cfd274de97421f65916ac135f4d55083d357b9c1f34820c9376000000000000000000000000000000000000000000000000000000000003fffe000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000004ac07813439b9213b22d4d86340307a2982de60c241368ad288dfea742b6eb5efffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9686c2d73382b1edfa908bcaeb6b9ac0073f469887a9150c80831642e47e35a614c1bffffffffffffffffffffffffffffffffffffffffffffe48e5eb33a3a7f000000104a13a90c13653470268ea78892361e7e91e706d859aabaaf45ddd18c956640809a37cc7335cdf29b7d988dc8c05e2c1899ad1795364e6fa667088b49487472000000000000000000000000000000000000000000000000000000000000fff6fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b80756993dc4be6ecf1e46c48d6f9cae9255a8b46ef956a3d85442a5f41f70ecf93000000000000000000000000000000000000000000000000000000000076a700a77a4c48695a0407441e86efc633aee092d2ebd99c87fdfeebcd904fe33e086d000000000000000000000000000000000000000000000000000000000000001d563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd0633ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed6958658aad3329b56f2f98187bbaed7351982ae06a00b9382adcb723b8b393d1f5e2def8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b4498bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a0171bc7dd16f0e277b94f2e46980d7e8e6c3c5187bf68be378e2d72cd0e70293ef8d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad82082401f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade0554594d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae962914f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874465e592f6d3f1d78fbc619b878d95794035829bd9b1285f3eb021d72f8e45638ba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c33f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8fd276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a9925e5ea45a807ae40eb654d82982bacb30bb1da6060d308d0b63004f4e1926b0c3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f6617237058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf259a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe2665f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a219fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb", - "dataAbiValues": { - "methodSignature": "handleCreateRequests(uint256[],bytes32[])", - "inputValues": [ - [ - "13824000", - "115791647525550000827488589184312722123641027794666345134718053606362806484993", - "58737407075920930096693749632210245280794127876199190949253348332199714210054", - "604300000000000000000000", - "104155407395839188072220307346509508179171066778602859964492537460856123877027", - "41504671482165347584846103287222174319130579613222615088745194098566077611617", - "0", - "49224452924880417829398231270379785502530069722970149981823851608145893694228", - "1636828073493779560152621491074002847609709387720111137750911676859097584502", - "262142", - "1", - "0", - "33811214160519685654400438720767591502827986970858420988841187408488311483230", - "115792089237316195423570985008687907853269984665640564039457584007913129207916", - "20557653259021005890251421269967042420225955023564768794272035576696478452763", - "115792089237316195423570985008687907853269984665640563909857584007913129639936", - "7367887950809164700104084563884591449786965425123545364576065505479275931200", - "58168524174645209900719041489934173752247098791866719219864340874379345294450", - "65526", - "115792089237316195423570985008687907853269984665640564039457584007913129380736", - "53107142721938561923251317745913031228477959801596843755970727929974933606291", - "7776000", - "75752327540241786815348607290604056680494387521335977257182003214564422715501" - ], - [ - "563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe", - "27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a", - "9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd06", - "33ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865", - "8aad3329b56f2f98187bbaed7351982ae06a00b9382adcb723b8b393d1f5e2de", - "f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1", - "c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b44", - "98bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01", - "71bc7dd16f0e277b94f2e46980d7e8e6c3c5187bf68be378e2d72cd0e70293ef", - "8d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea", - "94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad8208240", - "1f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade05545", - "94d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056", - "cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae96291", - "4f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa", - "9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874", - "465e592f6d3f1d78fbc619b878d95794035829bd9b1285f3eb021d72f8e45638", - "ba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c3", - "3f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8f", - "d276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99", - "25e5ea45a807ae40eb654d82982bacb30bb1da6060d308d0b63004f4e1926b0c", - "3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb", - "4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f661723", - "7058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78", - "994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25", - "9a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe26", - "65f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a2", - "19fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c", - "51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb" - ] - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 21265, - "blockTimestampDelay": 360627 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000030000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 2, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x0692ea7eeaaa73118d1da2c1db95511517ab896f87445c2331029aecdc7f065f634e6b46", - "dataAbiValues": { - "methodSignature": "handleRemoveChain(uint256)", - "inputValues": [ - "106142364743506859045918558596602602319943607038906547683486076996802461985606" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 2001, - "blockTimestampDelay": 455470 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000090000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x864e2da9fffffffffffffffffffffffffffffffffffffffffffffffff90fa4a62c573a80b81e8d97661fbf779db19fd00793e39f3b40bca612ee408ab75ff1c6439cf047509736e50626b1084ee93f4294000f73db102927cdc7fc34de68c384da900e6c", - "dataAbiValues": { - "methodSignature": "handleArbitrateDispute(uint256,uint256,uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457084007913130244736", - "83279546779206125286340055887058748934887896216240549764862301155730028032071", - "36452200662221151095065482565067302916782446267779931962683895890335455252076" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 41956, - "blockTimestampDelay": 475112 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000090000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xb6c75efaab191ad64d8fba3d052ab8ef37a088ba9faf5a1be696a47310de3441525ef897fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe3aaae444ec5312714f03b0566d2b40e5d34f58f068cabf3625fc0d7cfe3db912", - "dataAbiValues": { - "methodSignature": "handleClaimEscalationReward(uint256,uint256,uint256)", - "inputValues": [ - "77389853507359787864882669351213362161735184606551274462865365263877886900375", - "115792089237316195423570985008687907853269984665640564039457584007913129639934", - "26536084675173092165947634556752584404681954305155475174391110206140234709266" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 18699, - "blockTimestampDelay": 240561 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000030000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 3, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xf84d6dfcd2d78e343e1607b919341e2fe248544a49a0028fbd677a717f6a437862ddbc00", - "dataAbiValues": { - "methodSignature": "handleAddEBORequestCreatorRequestModule(uint256)", - "inputValues": [ - "95366551777850189910113500849756061153261920552639335948298155642211775921152" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 16776, - "blockTimestampDelay": 165634 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000060000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x0fb55087cd27e66c1a6365fdd2d452e5a6a582655000c0811d209ba0499f4483caf4b2da", - "dataAbiValues": { - "methodSignature": "handleApproveModule(uint256)", - "inputValues": [ - "92794631311208978202520326772644046682922248037671286389514014341863059010266" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 6256, - "blockTimestampDelay": 488143 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000060000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xaa1a5bd9128a1b5b9d7d3061f14bea63c8830170dadc5f154b01425336f91cc6d8611588ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00", - "dataAbiValues": { - "methodSignature": "handleResolveDispute(uint256,uint256)", - "inputValues": [ - "8385644986530251641334144830118419649455771804161689778824132977763480049032", - "115792089237316195423570985008687907853269984665640564039457584007913129639680" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 35699, - "blockTimestampDelay": 65536 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000020000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x51b295e30000000000000000000000000000000000000000000000000de0b6b3a7640000", - "dataAbiValues": { - "methodSignature": "handleFinalize(uint256)", - "inputValues": [ - "1000000000000000000" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 41252, - "blockTimestampDelay": 375602 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000020000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xf60285caff44fb6a2363fac767b088aff222c3143f1ed041c9b3e47d6474ee4922e1979fec9d178675775c3aa5161a5a209a68597466d991483528cc71c8d6ac533d0955a137b7e6f635f28c37dc46d14755f62f1ce7b659dc1873b04e1744e54dc225b665dad307139d75a132cdb60e373e4b35bba44673f5ee3d0bfbf1ac491c3d0e75", - "dataAbiValues": { - "methodSignature": "handleBondWithSender(uint256,uint256,uint256,uint256)", - "inputValues": [ - "115461657188952309751477762153544746327107707569543270374831352475679717431199", - "107023389619990543669223297468939824753654796115418022982959364890624175966549", - "72920814456766912229072746410044959713398794893085675262607692768311068730806", - "46070226826296101107756227560930518318774961046515756120293728876851585945205" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 39447, - "blockTimestampDelay": 175903 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000040000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xa59d317d37645351a8f36eba3b366024eafac86b09ad5a52e0d3cf42eb52112344ab3206000000000000000000000000d12fb9f7a711eb0caf6aac68aeaf04277804b39e000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000000000000000000000000000000000000003200000fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffb00000b2104824bc90dc4bcf1e407a769278e1c443fdba6cf324b44962e4fea636424", - "dataAbiValues": { - "methodSignature": "handleSetResponseModuleData(uint256,(address,address,uint256,uint256,uint256))", - "inputValues": [ - "25054466425052560783839884851311066245042877293899029878022208182382616064518", - { - "accountingExtension": "0xd12fb9f7A711Eb0caF6aaC68AEaF04277804B39e", - "bondSize": "52428800", - "bondToken": "0x000000000000000000000000000000000000000A", - "deadline": "115792089237316195423570985008687907853269984665640564039457584007913129312256", - "disputeWindow": "5033778407313201451107747851099848118306043382601391308246767880599192691748" - } - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 26656, - "blockTimestampDelay": 604799 - } -] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803591721000-aa3d9573-1529-4050-b0e3-d3a2c82060ad.json b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803591721000-aa3d9573-1529-4050-b0e3-d3a2c82060ad.json deleted file mode 100755 index edb4731..0000000 --- a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803591721000-aa3d9573-1529-4050-b0e3-d3a2c82060ad.json +++ /dev/null @@ -1,275 +0,0 @@ -[ - { - "call": { - "from": "0x0000000000000000000000000000000000030000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x13a8b80400000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000340000000000000000000000000000000000000000000000000000000000000001700000000000000000000000000000000000000000000000000000000000010e0ffffc0000000000000000000000000000000000000000000000000000000000181dc31bc03ad9bc8a966de91dfc8c49b929f6d5fd44a9c22a7f5bb37cebfc106ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed8ee8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b825bc2cfc37067e378b4feef3f3411136744d0b2851c161c601669654cf27bfe6100000000000000000000000000000000000000000000000000000000000000006cd40d93882a844c2becf361c7579664aef7a6ef6e8b79d6bf6f6f76426e9b14039e696f94058cfd274de97421f65916ac135f4d55083d357b9c1f34820c9376000000000000000000000000000000000000000000000000000000000003fffe000000000000000000000000000000000000000000000000000000000000000167e6a528e0202cf23a36eacf513eee303475d3e4c983b2ae2d616b11c440f70a0000000000000000000000000000000000000000000000000000000000000000fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9686c2d73382b1edfa908bcaeb6b9ac0073f469887a9150c80831642e47e35a614c1bffffffffffffffffffffffffffffffffffffffffffffe48e5eb33a3a7f000000104a13a90c13653470268ea78892361e7e91e706d859aabaaf45ddd18c956640809a37cc7335cdf29b7d988dc8c05e2c1899ad1795364e6fa667088b49487472000000000000000000000000000000000000000000000000000000000000fff6fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b80756993dc4be6ecf1e46c48d6f9cae9255a8b46ef956a3d85442a5f41f70ecf93000000000000000000000000000000000000000000000000000000000076a700a77a4c48695a0407441e86efc633aee092d2ebd99c87fdfeebcd904fe33e086d000000000000000000000000000000000000000000000000000000000000001d563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd0633ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed6958658aad3329b56f2f98187bbaed7351982ae06a00b9382adcb723b8b393d1f5e2def8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b4498bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef328d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad82082401f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade0554594d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e0568fcad889d076bcc6f0b5c84a4f6f334b74f944740b9f88a51f2895e76dd401884f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cbba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c33f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8fd276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f6617237058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25abbc2a768fea28edd1d653edcbaa5cace525564c5330b62b6ed63452f3b221f165f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a219fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb", - "dataAbiValues": { - "methodSignature": "handleCreateRequests(uint256[],bytes32[])", - "inputValues": [ - [ - "4320", - "115791647525550000827488589184312722123641027794666345134718053606362806484993", - "58737407075920930096693749632210245280794127876199190949253348332199714210054", - "115792089237316195423570985008687907853269984665640564039457584007913128431336", - "115792089237316195423570985008687907853269984665640564039457584007913129380738", - "41504671482165347584846103287222174319130579613222615088745194098566077611617", - "0", - "49224452924880417829398231270379785502530069722970149981823851608145893694228", - "1636828073493779560152621491074002847609709387720111137750911676859097584502", - "262142", - "1", - "46995738119123743123282428161140493004285235666026628953647859202250191730442", - "0", - "115792089237316195423570985008687907853269984665640564039457584007913129207916", - "20557653259021005890251421269967042420225955023564768794272035576696478452763", - "115792089237316195423570985008687907853269984665640563909857584007913129639936", - "7367887950809164700104084563884591449786965425123545364576065505479275931200", - "58168524174645209900719041489934173752247098791866719219864340874379345294450", - "65526", - "115792089237316195423570985008687907853269984665640564039457584007913129380736", - "53107142721938561923251317745913031228477959801596843755970727929974933606291", - "7776000", - "75752327540241786815348607290604056680494387521335977257182003214564422715501" - ], - [ - "563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe", - "27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a", - "9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd06", - "33ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865", - "8aad3329b56f2f98187bbaed7351982ae06a00b9382adcb723b8b393d1f5e2de", - "f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1", - "c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b44", - "98bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01", - "108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef32", - "8d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea", - "94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad8208240", - "1f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade05545", - "94d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056", - "8fcad889d076bcc6f0b5c84a4f6f334b74f944740b9f88a51f2895e76dd40188", - "4f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa", - "9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874", - "ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cb", - "ba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c3", - "3f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8f", - "d276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99", - "fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce", - "3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb", - "4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f661723", - "7058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78", - "994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25", - "abbc2a768fea28edd1d653edcbaa5cace525564c5330b62b6ed63452f3b221f1", - "65f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a2", - "19fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c", - "51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb" - ] - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 21265, - "blockTimestampDelay": 360627 - }, - { - "call": { - "from": "0x00000000000000000000000000000000000a0000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x6b125a57f70d7a9f8f7dc147f3c07846c57ff55a159156e04b1aef93f09a50411ed01cac", - "dataAbiValues": { - "methodSignature": "handleRemoveEBORequestCreatorFinalityModule(uint256)", - "inputValues": [ - "111745088926706135766942953021093517459235404528421949148968020375462747315372" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 41182, - "blockTimestampDelay": 251336 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000090000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x9f6259e5f758e7d4f100dcc2db3c85b9df5a8759d5abbd1697a1a04ec3af1471f220359a0000000000000000000000007109709ecfa91a80626ff3989d68f67f5b1dd12d", - "dataAbiValues": { - "methodSignature": "handleResolve(uint256,uint256)", - "inputValues": [ - "111878356186062714847010348548460913142200960060168223055923222451354708489626", - "645326474426547203313410069153905908525362434349" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 36881, - "blockTimestampDelay": 523741 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000050000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x0692ea7efffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7fc18", - "dataAbiValues": { - "methodSignature": "handleRemoveChain(uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913129114648" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 6610, - "blockTimestampDelay": 345959 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000060000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x9d2e6a6ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd0000", - "dataAbiValues": { - "methodSignature": "handleRemoveEBORequestCreatorRequestModule(uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913129443328" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 43871, - "blockTimestampDelay": 505590 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000080000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xdb106aceffffffffffffffffffffffffffffffffffffffffffffffffffffffdb16000000fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffafffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6a23f9b5b11f6aa4692c684f075c04d172abcb68f78eb66c92efe082b6a5d503c", - "dataAbiValues": { - "methodSignature": "handleSlash(uint256,uint256,uint256,uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007754584948736", - "115792089237316195423570985008687907853269984665640564039457584007913129639930", - "115792089237316195423570985008687907853269984665640564039457584007913129639926", - "73387065061500873488441831200362672861865918134039727439380329949185011699772" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 3063, - "blockTimestampDelay": 142231 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000090000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xd51b326a000000000000000000000000000000000000000000000000000000000000000afffffffffffffffffffffffffffffffffffffffffffffffff90fa4a62c4e00000000000000000000000000000000000000000000000000000000000000050000", - "dataAbiValues": { - "methodSignature": "handlePledgeForDispute(uint256,uint256,uint256)", - "inputValues": [ - "10", - "115792089237316195423570985008687907853269984665640564039457084007913129639936", - "327680" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 30742, - "blockTimestampDelay": 327371 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000050000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xdb106acedde5aa2b18247560fc1884f651a16aa87d39e393fba6b34aabbf8a91cb385dfcfffffffffffffffffffffffffffffffffffffffffffffffffffffffffff60000843cd2add879d57e8f0aed34ab13caad0caf471b1135b4b168d69edad56713fd3584b63683c5725b9668691d6e5ef4449bd9293600a6bb52896061ae72902454", - "dataAbiValues": { - "methodSignature": "handleSlash(uint256,uint256,uint256,uint256)", - "inputValues": [ - "100366921973435276086896168354134063395714770959453851558374627032108927311356", - "115792089237316195423570985008687907853269984665640564039457584007913128984576", - "59812760890479040346002793760866213267959709503641590677485959242158816302077", - "24207062375013236297905391945117914944555470909794312387449976114680249197652" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 23786, - "blockTimestampDelay": 256720 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000090000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 2, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x64d6e6d3e1ce6a1ddae133deb1d439cee384b8f5f1fc4f3fd0c36441f5efed119f24e24900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000069780", - "dataAbiValues": { - "methodSignature": "handlePledgeAgainstDispute(uint256,uint256,uint256)", - "inputValues": [ - "102135093816581220269834099028023316090001883482696692672153861645213823722057", - "0", - "432000" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 54088, - "blockTimestampDelay": 60993 - } -] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803592555000-4f7eeec0-56e3-48d7-b30c-79fd53ad3971.json b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803592555000-4f7eeec0-56e3-48d7-b30c-79fd53ad3971.json deleted file mode 100755 index f55a668..0000000 --- a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803592555000-4f7eeec0-56e3-48d7-b30c-79fd53ad3971.json +++ /dev/null @@ -1,314 +0,0 @@ -[ - { - "call": { - "from": "0x0000000000000000000000000000000000030000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x13a8b8040000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000034000000000000000000000000000000000000000000000000000000000000000170000000000000000000000000000000000000000000000000000000000d2f000ffffc0000000000000000000000000000000000000000000000000000000000181dc31bc03ad9bc8a966de91dfc8c49b929f6d5fd44a9c22a7f5bb37cebfc106ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed8ee8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b825bc2cfc37067e378b4feef3f3411136744d0b2851c161c601669654cf27afe610000000000000000000000000000000000000000000000000000000000000000578750b27e877a957d33dc50d914b1caf972efffa4bb78b85e66dd813a864ca4039e696f94058cfd274de97421f65916ac135f4d55083d357b9c1f34820c9376000000000000000000000000000000000000000000000000000000000003fffe000000000000000000000000000000000000000000000000000000000000000167e6a528e0202cf23a36eacf513eee303475d3e4c983b2ae2d616b11c440f70a4ac07813439b9213b22d4d86340307a2982de60c241368ad288dfea742b6eb5efffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9686c2d73382b1edfa908bcaeb6b9ac0073f469887a9150c80831642e47e35a614c1bffffffffffffffffffffffffffffffffffffffffffffe48e5eb33a3a7f000000104a13a90c13653470268ea78892361e7e91e706d859aabaaf45ddd18c956640809a37cc7335cdf29b7d988dc8c05e2c1899ad1795364e6fa667088b49487472000000000000000000000000000000000000000000000000000000000000fff6fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b800000000000000000000000000000000000000000000000000329c51ac594cf93000000000000000000000000000000000000000000000000000000000076a700a77a4c48695a0407441e86efc633aee092d2ebd99c87fdfeebcd904fe33e086d000000000000000000000000000000000000000000000000000000000000001d563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd0633ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865d5d6866ffb684491364a0853403f689144f5664f5d50de1b1a30d683ff29f21bf8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b4498bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef328d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad820824094c2949304cd969b5661cff34ece28aab6ca0f3eb707dc756ae848252d66c44a94d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae96291d8c581a922d52cd477658fcc2e2ca1f954f274ed2cd833a98e6d1d4455581f9d9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cbba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c389436d2b9b4dda11f7c2a5c1ca8fb20cba7512c884b100fa143fc24dc6c160eed276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f6617237058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25bcffd3ebd814d0f5e8e8dc7ef0303a14b98e79acfcabb14c9ad4225afd8f18c265f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a219fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c18aad5c04eb3f39ce81189eee664fb350f14bd8ce4dd62972aa7de342f017c7f", - "dataAbiValues": { - "methodSignature": "handleCreateRequests(uint256[],bytes32[])", - "inputValues": [ - [ - "13824000", - "115791647525550000827488589184312722123641027794666345134718053606362806484993", - "58737407075920930096693749632210245280794127876199190949253348332199714210054", - "115792089237316195423570985008687907853269984665640564039457584007913128431336", - "115792089237316195423570985008687907853269984665640564039457584007913129380738", - "41504671482165347584846103287222174319130579613222615088745194098566077546081", - "0", - "39590299132392589184737138068833640165131826767556478003143025413084726840484", - "1636828073493779560152621491074002847609709387720111137750911676859097584502", - "262142", - "1", - "46995738119123743123282428161140493004285235666026628953647859202250191730442", - "33811214160519685654400438720767591502827986970858420988841187408488311483230", - "115792089237316195423570985008687907853269984665640564039457584007913129207916", - "20557653259021005890251421269967042420225955023564768794272035576696478452763", - "115792089237316195423570985008687907853269984665640563909857584007913129639936", - "7367887950809164700104084563884591449786965425123545364576065505479275931200", - "58168524174645209900719041489934173752247098791866719219864340874379345294450", - "65526", - "115792089237316195423570985008687907853269984665640564039457584007913129380736", - "227929974933606291", - "7776000", - "75752327540241786815348607290604056680494387521335977257182003214564422715501" - ], - [ - "563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe", - "27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a", - "9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd06", - "33ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865", - "d5d6866ffb684491364a0853403f689144f5664f5d50de1b1a30d683ff29f21b", - "f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1", - "c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b44", - "98bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01", - "108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef32", - "8d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea", - "94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad8208240", - "94c2949304cd969b5661cff34ece28aab6ca0f3eb707dc756ae848252d66c44a", - "94d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056", - "cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae96291", - "d8c581a922d52cd477658fcc2e2ca1f954f274ed2cd833a98e6d1d4455581f9d", - "9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874", - "ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cb", - "ba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c3", - "89436d2b9b4dda11f7c2a5c1ca8fb20cba7512c884b100fa143fc24dc6c160ee", - "d276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99", - "fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce", - "3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb", - "4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f661723", - "7058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78", - "994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25", - "bcffd3ebd814d0f5e8e8dc7ef0303a14b98e79acfcabb14c9ad4225afd8f18c2", - "65f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a2", - "19fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c", - "18aad5c04eb3f39ce81189eee664fb350f14bd8ce4dd62972aa7de342f017c7f" - ] - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 21265, - "blockTimestampDelay": 360627 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000020000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x161c7318", - "dataAbiValues": { - "methodSignature": "test_debug()", - "inputValues": [] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 15325, - "blockTimestampDelay": 189245 - }, - { - "call": { - "from": "0x00000000000000000000000000000000000a0000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x88b05f294e5c5739570432e46e997185cf2683c287e8339e1ce7ab9502db4f4b4f0c1b77000000000000000000000000000000000000000000000000000000000012750000000000000000000000000000000000000000000000000006f05b59d3b200003c3b20fe3c6474ef6112cec6e2e1e2a66147c502767418c32e65c3bfa035d898948fc45007206ff5c0b2215d0b5c97d5551a84ed653f28e284b8567c463ce3650000000000000000000000000000000000000000000000000000000000069780ffffffffffffffffffffffffffffffffffffffffffffffffffffffec39800000109b1ce09a2caa796f35db2570026fd5d54f3b6f79d72997e7e30411ab7bab5f", - "dataAbiValues": { - "methodSignature": "handleSetDisputeModuleData(uint256,(address,address,uint256,uint256,uint256,uint256,uint256))", - "inputValues": [ - "35443554117267417118592017165536035041230544133048285386578266163756344810359", - { - "accountingExtension": "0x0000000000000000000000000000000000127500", - "bondEscalationDeadline": "432000", - "bondSize": "27243242601887521753615714576112380311306725462768124357416761313244220872856", - "bondToken": "0x00000000000000000000000006f05b59d3b20000", - "disputeWindow": "7511066176535142771400004346711719422194606327049609712661925953610498943839", - "maxNumberOfEscalations": "67196315620416968751812103706326677402054656808860235011842083525495944438629", - "tyingBuffer": "115792089237316195423570985008687907853269984665640564039457584007828194983936" - } - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 24101, - "blockTimestampDelay": 185392 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000010000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xb6c75efa8ba080b8a5e8e7e02b35ca63d619e3bf03ea7ee17a7395426e8c0ae38903a378ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff51e8737b07890aad8af4228017f323f8ee58c58602fe8a95d9a372445358479b", - "dataAbiValues": { - "methodSignature": "handleClaimEscalationReward(uint256,uint256,uint256)", - "inputValues": [ - "63155069885073485423962987089686113899340909970551762747564159406599093592952", - "115792089237316195423570985008687907853269984665640564039457584007913129639935", - "37048046271970045328561159781521571766041874645079829392453863326819299116955" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 7, - "blockTimestampDelay": 32 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000090000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x223b137400003ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe000000000000000000000000000000000000000000000000000000000000004006807205175b22b301c32b6c5e6ee194bd596681cba8c8638952ec1250f3d6450000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000000000000000000000000000000001518000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000027874838a0b68a875ec0ee81d4c8ef1980254e8ae6eaec10d74722bac9ebd5a49a6c310208a5de1500000000000000000000000000000000000000000000000000", - "dataAbiValues": { - "methodSignature": "handleSetRequestModuleData(uint256,(uint256,string,address,uint256))", - "inputValues": [ - "441711766194596082395824375185729628956870974218904739530401550323154942", - { - "accountingExtension": "0x0000000000000000000000000000000000015180", - "chainId": "\ufffdH8\ufffd\ufffd\ufffd\ufffd^\ufffd\ufffd\ufffd\ufffd\ufffd\ufffd\u0019\ufffd%N\ufffd\ufffd\ufffd\ufffd\u0010\ufffdG\"\ufffd\ufffd\ufffdդ\ufffdl1\u0002\b\ufffd\ufffd\u0015", - "epoch": "2940820452134172681045375212785432443100619197912571245547930807664892958277", - "paymentAmount": "0" - } - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 15253, - "blockTimestampDelay": 492034 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000080000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xaa1a5bd900000000000000000000000000000000000000000000000006f05b59d3b2000071f7cd086897aaf2110bd910f953453e7bcc20e82af33eec4c00647f9fb5da5e", - "dataAbiValues": { - "methodSignature": "handleResolveDispute(uint256,uint256)", - "inputValues": [ - "500000000000000000", - "51549178199604899047887187595007193100674999475015380254417935657395983604318" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 53242, - "blockTimestampDelay": 71336 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000070000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x52e3cb9cffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffec", - "dataAbiValues": { - "methodSignature": "handleSetMaxUsersToCheck(uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913129639916" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 45495, - "blockTimestampDelay": 225944 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000090000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xdb106aceffffffffffffffffffffffffffffffffffffffffffffffffffffffec398000001371ca94900c31d8e9be66d7c23f65b05f5d33ff2b30949acfed984f87f269e080baf5544430fe321ebd2409617ef6786f5b994597bc40798f800826b310e4524793f157456609da494af2a02075c03fcf9249185214862d5dd9f0eddb7447ce", - "dataAbiValues": { - "methodSignature": "handleSlash(uint256,uint256,uint256,uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007828194983936", - "8794995999406163856009545368231505849668095829549449500668097316828300339680", - "58226371372378751290891435773627286125304890291737788253576280229276508283986", - "32375604441627796962923040660328673776239995228426910584919203216277625915342" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 49592, - "blockTimestampDelay": 581992 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000080000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x223b1374000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000408986d1481eea494dad550c07436bc6bf24fda1699ae18ac8e867c2bc2cbb811f0000000000000000000000000000000000000000000000000000000000000080000000000000000000000000148bd2b35a0e0ff5f58651fe93524e321532b27500000000000000000000000000000000000000000000000000000000001274fe000000000000000000000000000000000000000000000000000000000000001419d972fb93584a547a564eb672065531206d2c71000000000000000000000000", - "dataAbiValues": { - "methodSignature": "handleSetRequestModuleData(uint256,(uint256,string,address,uint256))", - "inputValues": [ - "0", - { - "accountingExtension": "0x148bd2b35a0e0ff5f58651fe93524E321532b275", - "chainId": "\u0019\ufffdr\ufffd\ufffdXJTzVN\ufffdr\u0006U1 m,q", - "epoch": "62205062171946186530711375116649708949236787489916806320076639634871891493151", - "paymentAmount": "1209598" - } - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 57406, - "blockTimestampDelay": 508192 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000090000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 2, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x3f60f9cc0000000000000000000000000000000000000000000000000000000000000000235c58e45e6b448123df4ec75c527147b56e207c4815f37193cfafc12fe9143343aa8e00e44758769fcba79ddc533615c240383088eacc520788ca11f978270a", - "dataAbiValues": { - "methodSignature": "handleRelease(uint256,uint256,uint256)", - "inputValues": [ - "0", - "15994113140863775377512613840889015859198326455210825118094249343807524508723", - "30606304928112969978587259490316563804100123622315096384733063005977978611466" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 14222, - "blockTimestampDelay": 506677 - } -] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803595622000-8d816111-c114-4b60-9a27-9562e7740699.json b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803595622000-8d816111-c114-4b60-9a27-9562e7740699.json deleted file mode 100755 index e503da6..0000000 --- a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803595622000-8d816111-c114-4b60-9a27-9562e7740699.json +++ /dev/null @@ -1,327 +0,0 @@ -[ - { - "call": { - "from": "0x0000000000000000000000000000000000030000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x13a8b8040000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000034000000000000000000000000000000000000000000000000000000000000000170000000000000000000000000000000000000000000000000000000000d2f000ffffc0000000000000000000000000000000000000000000000000000000000181dc31bc03ad9bc8a966de91dfc8c49b929f6d5fd44a9c22a7f5bb37cebfc106ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed8ee8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6c5805bc2cfc37067e378b4feef3f3411136744d0b2851c161c601669654cf27bfe6100000000000000000000000000000000000000000000000000000000000000006cd40d93882a844c2becf361c7579664aef7a6ef6e8b79d6bf6f6f76426e9b14039e696f94058cfd274de97421f65916ac135f4d55083d357b9c1f34820c9376000000000000000000000000000000000000000000000000000000000003fffe000000000000000000000000000000000000000000000000000000000000000167e6a528e0202cf23a36eacf513eee303475d3e4c983b2ae2d616b11c440f70aaa625827d77aa233df42016988900477ead582090357ec011f404ff1f0aa321bfffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9686c2d73382b1edfa908bcaeb6b9ac0073f469887a9150c80831642e47e35a614c1bffffffffffffffffffffffffffffffffffffffffffffe48e5eb33a3a7f000000104a13a90c13653470268ea78892361e7e91e706d859aabaaf45ddd18c956640809a37cc7335cdf29b7d988dc8c05e2c1899ad1795364e6fa667088b49487472000000000000000000000000000000000000000000000000000000000000fff6fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b80756993dc4be6ecf1e46c48d6f9cae9255a8b46ef956a3d85442a5f41f70ecf93000000000000000000000000000000000000000000000000000000000076a700a77a4c48695a0407441e86efc633aee092d2ebd99c87fdfeebcd904fe33e086d000000000000000000000000000000000000000000000000000000000000001d563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd0633ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed69586530127b846a0115a3e561f49781eea70d4bcc4884906080e6adb068ff5fe13953f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b4498bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef328d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad82082401f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade0554594d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e05648dd821e471bd9a22c1f612735d2d7244c13832c4b0f28993ecafc561bfc52ae4f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cbba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c33f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8fd276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f6617237058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf259a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe2665f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a219fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb", - "dataAbiValues": { - "methodSignature": "handleCreateRequests(uint256[],bytes32[])", - "inputValues": [ - [ - "13824000", - "115791647525550000827488589184312722123641027794666345134718053606362806484993", - "58737407075920930096693749632210245280794127876199190949253348332199714210054", - "115792089237316195423570985008687907853269984665640564039457584007913128431336", - "115792089237316195423570985008687907853269984665640564039457584007913129035136", - "41504671482165347584846103287222174319130579613222615088745194098566077611617", - "0", - "49224452924880417829398231270379785502530069722970149981823851608145893694228", - "1636828073493779560152621491074002847609709387720111137750911676859097584502", - "262142", - "1", - "46995738119123743123282428161140493004285235666026628953647859202250191730442", - "77066943699312596523560233185714836616924754343478096130098486630426813805083", - "115792089237316195423570985008687907853269984665640564039457584007913129207916", - "20557653259021005890251421269967042420225955023564768794272035576696478452763", - "115792089237316195423570985008687907853269984665640563909857584007913129639936", - "7367887950809164700104084563884591449786965425123545364576065505479275931200", - "58168524174645209900719041489934173752247098791866719219864340874379345294450", - "65526", - "115792089237316195423570985008687907853269984665640564039457584007913129380736", - "53107142721938561923251317745913031228477959801596843755970727929974933606291", - "7776000", - "75752327540241786815348607290604056680494387521335977257182003214564422715501" - ], - [ - "563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe", - "27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a", - "9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd06", - "33ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865", - "30127b846a0115a3e561f49781eea70d4bcc4884906080e6adb068ff5fe13953", - "f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1", - "c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b44", - "98bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01", - "108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef32", - "8d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea", - "94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad8208240", - "1f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade05545", - "94d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056", - "48dd821e471bd9a22c1f612735d2d7244c13832c4b0f28993ecafc561bfc52ae", - "4f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa", - "9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874", - "ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cb", - "ba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c3", - "3f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8f", - "d276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99", - "fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce", - "3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb", - "4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f661723", - "7058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78", - "994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25", - "9a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe26", - "65f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a2", - "19fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c", - "51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb" - ] - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 21265, - "blockTimestampDelay": 360627 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000050000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x91e32c74e0613faa5f896b73380078af3c1ee8605eec949aaf9c8f422f264f3de916b58d4b3032484de1fb4c70c2a705584283a0288158e7d201a2526966e049d49acde5", - "dataAbiValues": { - "methodSignature": "handleCreateRequest(uint256,bytes32)", - "inputValues": [ - "101489901651207154401933345705911812335881908306802664469868899807780031346061", - "4b3032484de1fb4c70c2a705584283a0288158e7d201a2526966e049d49acde5" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 23884, - "blockTimestampDelay": 297676 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000080000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x62e8fd350000000000000000000000000000000000000000000000000000000000000000f3e0a4b7d4b9f146c330bf4206493b9644386108e6fb9dbd1ec9e9631656b911", - "dataAbiValues": { - "methodSignature": "handleOnDisputeStatusChange(uint256,uint256)", - "inputValues": [ - "0", - "110308932790717902341334723675742636402013152744066319296234386176011142609169" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 6, - "blockTimestampDelay": 447025 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000060000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xb05752f7000000000000000000000000000000000000000000000000000000000083d600ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff3cb74a490a6b235de22fdba8b11c89c1a75ba52781eaa376b8904d607971473952c39b6854fd2443ddec68f9b401b12b2c3233b939e902ba2cc4b78fc21880c9", - "dataAbiValues": { - "methodSignature": "handleOnSettleBondEscalation(uint256,uint256,uint256,uint256)", - "inputValues": [ - "8640000", - "115792089237316195423570985008687907853269984665640564039457584007913129639935", - "27462616626253393834172180586494418890954476283257859666307992469208736810809", - "37435261344928203651121242557808094327910915308413204917974281668150859169993" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 20576, - "blockTimestampDelay": 441138 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000050000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x88b05f29000000000000000000000000000000000000000000000000000000000009fffe000000000000000000000000c43801cd359a82757df4289878ce85539b0fcade000000000000000000000000000000000000000000000000000000000000006434998e76fdd43c55ad90e4a35d96044a3ebe674f5dfa103757d366102ca9f26c00000000000000000000000000000000000000000000000000000000000001000e694122e842adea5277bbbdab0b14091c2583d39824533976734442dab724e2195f41f8193b8fdb454e4c675da554f0f9409064f42db392c9ab9d5e83fad976fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe", - "dataAbiValues": { - "methodSignature": "handleSetDisputeModuleData(uint256,(address,address,uint256,uint256,uint256,uint256,uint256))", - "inputValues": [ - "655358", - { - "accountingExtension": "0xc43801Cd359A82757Df4289878CE85539B0fcAdE", - "bondEscalationDeadline": "6518348376578069825047353184871606747778953752910129049968505915388248663266", - "bondSize": "23791578983227214469447533216306682837879210004146422934780693486186688803436", - "bondToken": "0x0000000000000000000000000000000000000064", - "disputeWindow": "115792089237316195423570985008687907853269984665640564039457584007913129639934", - "maxNumberOfEscalations": "256", - "tyingBuffer": "11476126987972230713107770724661081842991657660629818104854040000448595417462" - } - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 1, - "blockTimestampDelay": 2 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000020000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xf84d6dfc00000000000000000000000000000000000000000000000006f05b59d3ad0000", - "dataAbiValues": { - "methodSignature": "handleAddEBORequestCreatorRequestModule(uint256)", - "inputValues": [ - "499999999999672320" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 12976, - "blockTimestampDelay": 472659 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000010000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x4741f6dcc0e4d0eee56b7f10aa9aefe04c4f650af62be8b532d57f12aa7ac5b950884c3a", - "dataAbiValues": { - "methodSignature": "handleSetFinalityModuleData(uint256)", - "inputValues": [ - "87248350062624793638699702709121271409886681841563726628967995216176035155002" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 29334, - "blockTimestampDelay": 296740 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000020000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x5356b681bebfb0dc367f431af08687c084e9c844567359d9793a12e0818425b7df16682a", - "dataAbiValues": { - "methodSignature": "handleAddEBORequestCreatorFinalityModule(uint256)", - "inputValues": [ - "86278129664477803463997658766424154744739678303000950581784606393529462581290" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 3566, - "blockTimestampDelay": 274227 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000040000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xaa1a5bd9ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffee0000000000000000000000000000000000000000000000000000000000000001", - "dataAbiValues": { - "methodSignature": "handleResolveDispute(uint256,uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913129639918", - "1" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 38128, - "blockTimestampDelay": 65536 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000080000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x864e2da9000000000000000000000000000000000000000000000000000000000004ff00bfa47f0f3034e3c5b418dac09c339f53fbdf69ff4b147e91a872420a6f7ed6e20000000000000000000000000000000000000000000000000000000000040000", - "dataAbiValues": { - "methodSignature": "handleArbitrateDispute(uint256,uint256,uint256)", - "inputValues": [ - "327424", - "86682393929289525193494153568452559356866521755790133919226203303415723775714", - "262144" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 28049, - "blockTimestampDelay": 147436 - }, - { - "call": { - "from": "0x00000000000000000000000000000000000a0000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x5356b681000000000000000000000000000000000000000000000000000000000000000a", - "dataAbiValues": { - "methodSignature": "handleAddEBORequestCreatorFinalityModule(uint256)", - "inputValues": [ - "10" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 21572, - "blockTimestampDelay": 167216 - } -] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803597300000-642c65dc-71fa-4e6a-a148-f2dc8dbd48fd.json b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803597300000-642c65dc-71fa-4e6a-a148-f2dc8dbd48fd.json deleted file mode 100755 index 851e27d..0000000 --- a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803597300000-642c65dc-71fa-4e6a-a148-f2dc8dbd48fd.json +++ /dev/null @@ -1,449 +0,0 @@ -[ - { - "call": { - "from": "0x0000000000000000000000000000000000030000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x13a8b80400000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000340000000000000000000000000000000000000000000000000000000000000001700000000000000000000000000000000000000000000000000000000000010e0ffffc0000000000000000000000000000000000000000000000000000000000181dc31bc03ad9bc8a966de91dfc8c49b929f6d5fd44a9c22a7f5bb37cebfc106ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed8ee8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b825bc2cfc37067e378b4feef3f3411136744d0b2851c161c601669654cf27bfe6100000000000000000000000000000000000000000000000000000000000000006cd40d93882a844c2becf361c7579664aef7a6ef6e8b79d6bf6f6f76426e9b14039e696f94058cfd274de97421f65916ac135f4d55083d357b9c1f34820c9376000000000000000000000000000000000000000000000000000000000003fffe000000000000000000000000000000000000000000000000000000000000000167e6a528e0202cf23a36eacf513eee303475d3e4c983b2ae2d616b11c440f70a0000000000000000000000000000000000000000000000000000000000000000fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9686c2d73382b1edfa908bcaeb6b9ac0073f469887a9150c80831642e47e35a614c1bffffffffffffffffffffffffffffffffffffffffffffe48e5eb33a3a7f000000104a13a90c13653470268ea78892361e7e91e706d859aabaaf45ddd18c956640809a37cc7335cdf29b7d988dc8c05e2c1899ad1795364e6fa667088b49487472000000000000000000000000000000000000000000000000000000000000fff6fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b80756993dc4be6ecf1e46c48d6f9cae9255a8b46ef956a3d85442a5f41f70ecf93000000000000000000000000000000000000000000000000000000000076a700a77a4c48695a0407441e86efc633aee092d2ebd99c87fdfeebcd904fe33e086d000000000000000000000000000000000000000000000000000000000000001d563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd0633ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed6958658aad3329b56f2f98187bbaed7351982ae06a00b9382adcb723b8b393d1f5e2def8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b4498bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef328d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad82082401f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade0554594d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e0568fcad889d076bcc6f0b5c84a4f6f334b74f944740b9f88a51f2895e76dd401884f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cbba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c33f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8fd276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f6617237058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25abbc2a768fea28edd1d653edcbaa5cace525564c5330b62b6ed63452f3b221f165f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a219fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb", - "dataAbiValues": { - "methodSignature": "handleCreateRequests(uint256[],bytes32[])", - "inputValues": [ - [ - "4320", - "115791647525550000827488589184312722123641027794666345134718053606362806484993", - "58737407075920930096693749632210245280794127876199190949253348332199714210054", - "115792089237316195423570985008687907853269984665640564039457584007913128431336", - "115792089237316195423570985008687907853269984665640564039457584007913129380738", - "41504671482165347584846103287222174319130579613222615088745194098566077611617", - "0", - "49224452924880417829398231270379785502530069722970149981823851608145893694228", - "1636828073493779560152621491074002847609709387720111137750911676859097584502", - "262142", - "1", - "46995738119123743123282428161140493004285235666026628953647859202250191730442", - "0", - "115792089237316195423570985008687907853269984665640564039457584007913129207916", - "20557653259021005890251421269967042420225955023564768794272035576696478452763", - "115792089237316195423570985008687907853269984665640563909857584007913129639936", - "7367887950809164700104084563884591449786965425123545364576065505479275931200", - "58168524174645209900719041489934173752247098791866719219864340874379345294450", - "65526", - "115792089237316195423570985008687907853269984665640564039457584007913129380736", - "53107142721938561923251317745913031228477959801596843755970727929974933606291", - "7776000", - "75752327540241786815348607290604056680494387521335977257182003214564422715501" - ], - [ - "563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe", - "27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a", - "9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd06", - "33ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865", - "8aad3329b56f2f98187bbaed7351982ae06a00b9382adcb723b8b393d1f5e2de", - "f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1", - "c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b44", - "98bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01", - "108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef32", - "8d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea", - "94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad8208240", - "1f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade05545", - "94d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056", - "8fcad889d076bcc6f0b5c84a4f6f334b74f944740b9f88a51f2895e76dd40188", - "4f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa", - "9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874", - "ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cb", - "ba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c3", - "3f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8f", - "d276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99", - "fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce", - "3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb", - "4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f661723", - "7058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78", - "994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25", - "abbc2a768fea28edd1d653edcbaa5cace525564c5330b62b6ed63452f3b221f1", - "65f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a2", - "19fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c", - "51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb" - ] - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 21265, - "blockTimestampDelay": 360627 - }, - { - "call": { - "from": "0x00000000000000000000000000000000000a0000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x6b125a57f70d7a9f8f7dc147f3c07846c57ff55a159156e04b1aef93f09a50411ed01cac", - "dataAbiValues": { - "methodSignature": "handleRemoveEBORequestCreatorFinalityModule(uint256)", - "inputValues": [ - "111745088926706135766942953021093517459235404528421949148968020375462747315372" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 41182, - "blockTimestampDelay": 251336 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000090000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x9f6259e5f758e7d4f100dcc2db3c85b9df5a8759d5abbd1697a1a04ec3af1471f220359a0000000000000000000000007109709ecfa91a80626ff3989d68f67f5b1dd12d", - "dataAbiValues": { - "methodSignature": "handleResolve(uint256,uint256)", - "inputValues": [ - "111878356186062714847010348548460913142200960060168223055923222451354708489626", - "645326474426547203313410069153905908525362434349" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 36881, - "blockTimestampDelay": 523741 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000050000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x0692ea7efffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7fc18", - "dataAbiValues": { - "methodSignature": "handleRemoveChain(uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913129114648" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 6610, - "blockTimestampDelay": 345959 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000060000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x9d2e6a6ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd0000", - "dataAbiValues": { - "methodSignature": "handleRemoveEBORequestCreatorRequestModule(uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913129443328" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 43871, - "blockTimestampDelay": 505590 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000080000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xdb106aceffffffffffffffffffffffffffffffffffffffffffffffffffffffdb16000000fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffafffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6a23f9b5b11f6aa4692c684f075c04d172abcb68f78eb66c92efe082b6a5d503c", - "dataAbiValues": { - "methodSignature": "handleSlash(uint256,uint256,uint256,uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007754584948736", - "115792089237316195423570985008687907853269984665640564039457584007913129639930", - "115792089237316195423570985008687907853269984665640564039457584007913129639926", - "73387065061500873488441831200362672861865918134039727439380329949185011699772" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 3063, - "blockTimestampDelay": 142231 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000090000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xd51b326a000000000000000000000000000000000000000000000000000000000000000afffffffffffffffffffffffffffffffffffffffffffffffff90fa4a62c4e00000000000000000000000000000000000000000000000000000000000000050000", - "dataAbiValues": { - "methodSignature": "handlePledgeForDispute(uint256,uint256,uint256)", - "inputValues": [ - "10", - "115792089237316195423570985008687907853269984665640564039457084007913129639936", - "327680" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 30742, - "blockTimestampDelay": 327371 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000050000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xdb106acedde5aa2b18247560fc1884f651a16aa87d39e393fba6b34aabbf8a91cb385dfcfffffffffffffffffffffffffffffffffffffffffffffffffffffffffff60000843cd2add879d57e8f0aed34ab13caad0caf471b1135b4b168d69edad56713fd3584b63683c5725b9668691d6e5ef4449bd9293600a6bb52896061ae72902454", - "dataAbiValues": { - "methodSignature": "handleSlash(uint256,uint256,uint256,uint256)", - "inputValues": [ - "100366921973435276086896168354134063395714770959453851558374627032108927311356", - "115792089237316195423570985008687907853269984665640564039457584007913128984576", - "59812760890479040346002793760866213267959709503641590677485959242158816302077", - "24207062375013236297905391945117914944555470909794312387449976114680249197652" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 23786, - "blockTimestampDelay": 256720 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000090000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 2, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x64d6e6d3e1ce6a1ddae133deb1d439cee384b8f5f1fc4f3fd0c36441f5efed119f24e24900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000069780", - "dataAbiValues": { - "methodSignature": "handlePledgeAgainstDispute(uint256,uint256,uint256)", - "inputValues": [ - "102135093816581220269834099028023316090001883482696692672153861645213823722057", - "0", - "432000" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 54088, - "blockTimestampDelay": 60993 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000080000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x88b05f291ec0602b5c739f9738efe0bde4ca76ba494249d121556e799bbad7dc9a0214ac00000000000000000000000077ce8638a76f158cfa43742a7f21929ac8169c3c000000000000000000000000a08534f616b19b6082e9ce685e382798a347252e000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000300000000000000000000000000007109709ecfa91a80626ff3989d68f67f5b1dd515ffffffffffffffffffffffff8ef68f613056e57f9d900c6762970980a4e22ed0bb42504ab1d2fcf8e234d7d9a79b5766efe1d758290dae5e11c063dbbb14a531", - "dataAbiValues": { - "methodSignature": "handleSetDisputeModuleData(uint256,(address,address,uint256,uint256,uint256,uint256,uint256))", - "inputValues": [ - "13909283830598735565998559648493088494620572641148929697427872120853391086764", - { - "accountingExtension": "0x77CE8638a76f158cFA43742A7f21929ac8169C3C", - "bondEscalationDeadline": "645326474426547203313410069153905908525362435349", - "bondSize": "2", - "bondToken": "0xA08534f616b19b6082E9ce685E382798a347252e", - "disputeWindow": "84699668744817055731063389426064727133389651057449241071743005766536647714097", - "maxNumberOfEscalations": "196608", - "tyingBuffer": "115792089237316195423570985008042581378843437462327153970303678099387767205584" - } - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 49450, - "blockTimestampDelay": 499595 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000030000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 2, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x6b125a57ffffcccccccccccccccccccccccccccccccccccccccccccccccccda1f67b6b53", - "dataAbiValues": { - "methodSignature": "handleRemoveEBORequestCreatorFinalityModule(uint256)", - "inputValues": [ - "115791735867903239746705068349187759269566819168861188915665959687588398459731" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 186, - "blockTimestampDelay": 50159 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000030000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 3, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x91e32c74fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc000051361b53804bb017fc35228eb622ebb20c303d99c341631bb01645b525e7b621", - "dataAbiValues": { - "methodSignature": "handleCreateRequest(uint256,bytes32)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913129377792", - "51361b53804bb017fc35228eb622ebb20c303d99c341631bb01645b525e7b621" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 256, - "blockTimestampDelay": 448826 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000070000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xd1a5565579828f0ddc4a050d8f5f122a91d6b8c9d500a874223d262c5d48d32c4b3ecae9", - "dataAbiValues": { - "methodSignature": "handleRevokeModule(uint256)", - "inputValues": [ - "54960532120402474800798995585759036389486552453926935697297472107042154924777" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 25939, - "blockTimestampDelay": 360525 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000050000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 2, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x6b125a570000000000000000000000000000000000000000000000000000000000000000", - "dataAbiValues": { - "methodSignature": "handleRemoveEBORequestCreatorFinalityModule(uint256)", - "inputValues": [ - "0" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 19488, - "blockTimestampDelay": 147049 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000050000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 3, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x9f6259e586d14dd089c6fe1d2572155eee2a525feeae1f4c0ecb91e1a612f162ec3583b4f1156467ea6a8c0338667ffedaddcf4137cf467747b19e5311216f7091a749ee", - "dataAbiValues": { - "methodSignature": "handleResolve(uint256,uint256)", - "inputValues": [ - "60979729803343632787050147183220966217514607539790862047603897794404042507188", - "109045193273123638554538842844369038784499304185614563586658579653420359567854" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 13776, - "blockTimestampDelay": 51933 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000030000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 4, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xf6424e9b246da0c4ed7c52c6ed248463cdf2d45ab01cd349e3a5ca837e1caa750a7df073fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6000054166ccfd9b1ba2138f6992ca376d6d98294647dfd371a4e977342beaabbff3b", - "dataAbiValues": { - "methodSignature": "handleProposeResponse(uint256,uint256,uint256)", - "inputValues": [ - "16476958467633623909421142727437546795556354559550203566377601934832405704819", - "115792089237316195423570985008687907853269984665640564039457584007913128984576", - "38033900908659794527437240204354666486003018258831101524347263218449313955643" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 44438, - "blockTimestampDelay": 97125 - } -] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803598316000-078046e8-41b1-4d52-9ec7-cba3101036d7.json b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803598316000-078046e8-41b1-4d52-9ec7-cba3101036d7.json deleted file mode 100755 index 0db540f..0000000 --- a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803598316000-078046e8-41b1-4d52-9ec7-cba3101036d7.json +++ /dev/null @@ -1,401 +0,0 @@ -[ - { - "call": { - "from": "0x0000000000000000000000000000000000030000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x13a8b8040000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000034000000000000000000000000000000000000000000000000000000000000000170000000000000000000000000000000000000000000000000000000000d2f000ffffc0000000000000000000000000000000000000000000000000000000000181dc31bc03ad9bc8a966de91dfc8c49b929f6d5fd44a9c22a7f5bb37cebfc106ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed8ee8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b825bc2cfc37067e378b4feef3f3411136744d0b2851c161c601669654cf27bfe610000000000000000000000000000000000000000000000000000000000000000578750b27e877a957d33dc50d914b1caf972efffa4bb78b85e66dd813a864ca4039e696f94058cfd274de97421f65916ac135f4d55083d357b9c1f34820c9376000000000000000000000000000000000000000000000000000000000003fffe000000000000000000000000000000000000000000000000000000000000000167e6a528e0202cf23a36eacf513eee303475d3e4c983b2ae2d616b11c440f70a4ac07813439b9213b22d4d86340307a2982de60c241368ad288dfea742b6eb5efffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9686c2d73382b1edfa908bcaeb6b9ac0073f469887a9150c80831642e47e35a614c1bffffffffffffffffffffffffffffffffffffffffffffe48e5eb33a3a7f000000104a13a90c13653470268ea78892361e7e91e706d859aabaaf45ddd18c956640809a37cc7335cdf29b7d988dc8c05e2c1899ad1795364e6fa667088b49487472000000000000000000000000000000000000000000000000000000000000fff6fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b800000000000000000000000000000000000000000000000000329c51ac594cf93000000000000000000000000000000000000000000000000000000000076a700a77a4c48695a0407441e86efc633aee092d2ebd99c87fdfeebcd904fe33e086d000000000000000000000000000000000000000000000000000000000000001d563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd0633ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865d5d6866ffb684491364a0853403f689144f5664f5d50de1b1a30d683ff29f21bf8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b4498bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef328d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad82082401f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade0554594d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae96291d8c581a922d52cd477658fcc2e2ca1f954f274ed2cd833a98e6d1d4455581f9d9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cbba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c33f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8fd276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f6617237058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf259a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe2665f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a219fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb", - "dataAbiValues": { - "methodSignature": "handleCreateRequests(uint256[],bytes32[])", - "inputValues": [ - [ - "13824000", - "115791647525550000827488589184312722123641027794666345134718053606362806484993", - "58737407075920930096693749632210245280794127876199190949253348332199714210054", - "115792089237316195423570985008687907853269984665640564039457584007913128431336", - "115792089237316195423570985008687907853269984665640564039457584007913129380738", - "41504671482165347584846103287222174319130579613222615088745194098566077611617", - "0", - "39590299132392589184737138068833640165131826767556478003143025413084726840484", - "1636828073493779560152621491074002847609709387720111137750911676859097584502", - "262142", - "1", - "46995738119123743123282428161140493004285235666026628953647859202250191730442", - "33811214160519685654400438720767591502827986970858420988841187408488311483230", - "115792089237316195423570985008687907853269984665640564039457584007913129207916", - "20557653259021005890251421269967042420225955023564768794272035576696478452763", - "115792089237316195423570985008687907853269984665640563909857584007913129639936", - "7367887950809164700104084563884591449786965425123545364576065505479275931200", - "58168524174645209900719041489934173752247098791866719219864340874379345294450", - "65526", - "115792089237316195423570985008687907853269984665640564039457584007913129380736", - "227929974933606291", - "7776000", - "75752327540241786815348607290604056680494387521335977257182003214564422715501" - ], - [ - "563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe", - "27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a", - "9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd06", - "33ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865", - "d5d6866ffb684491364a0853403f689144f5664f5d50de1b1a30d683ff29f21b", - "f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1", - "c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b44", - "98bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01", - "108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef32", - "8d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea", - "94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad8208240", - "1f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade05545", - "94d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056", - "cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae96291", - "d8c581a922d52cd477658fcc2e2ca1f954f274ed2cd833a98e6d1d4455581f9d", - "9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874", - "ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cb", - "ba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c3", - "3f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8f", - "d276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99", - "fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce", - "3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb", - "4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f661723", - "7058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78", - "994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25", - "9a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe26", - "65f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a2", - "19fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c", - "51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb" - ] - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 21265, - "blockTimestampDelay": 360627 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000020000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x161c7318", - "dataAbiValues": { - "methodSignature": "test_debug()", - "inputValues": [] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 15325, - "blockTimestampDelay": 189245 - }, - { - "call": { - "from": "0x00000000000000000000000000000000000a0000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x88b05f294e5c5739570432e46e997185cf2683c287e8339e1ce7ab9502db4f4b4f0c1b77000000000000000000000000000000000000000000000000000000000012750000000000000000000000000000000000000000000000000006f05b59d3b200003c3b20fe3c6474ef6112cec6e2e1e2a66147c502767418c32e65c3bfa035d898948fc45007206ff5c0b2215d0b5c97d5551a84ed653f28e284b8567c463ce3650000000000000000000000000000000000000000000000000000000000069780ffffffffffffffffffffffffffffffffffffffffffffffffffffffec398000000000000000000000000000000000000000000000000000000000000000093a80", - "dataAbiValues": { - "methodSignature": "handleSetDisputeModuleData(uint256,(address,address,uint256,uint256,uint256,uint256,uint256))", - "inputValues": [ - "35443554117267417118592017165536035041230544133048285386578266163756344810359", - { - "accountingExtension": "0x0000000000000000000000000000000000127500", - "bondEscalationDeadline": "432000", - "bondSize": "27243242601887521753615714576112380311306725462768124357416761313244220872856", - "bondToken": "0x00000000000000000000000006f05b59d3b20000", - "disputeWindow": "604800", - "maxNumberOfEscalations": "67196315620416968751812103706326677402054656808860235011842083525495944438629", - "tyingBuffer": "115792089237316195423570985008687907853269984665640564039457584007828194983936" - } - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 24101, - "blockTimestampDelay": 185392 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000040000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x3c26dcf8000000000000000000000000000000000000000000000853a0d2313c00000000", - "dataAbiValues": { - "methodSignature": "handleSetEpochManager(uint256)", - "inputValues": [ - "39321600000000000000000" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 23050, - "blockTimestampDelay": 360593 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000070000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x1c6850cfb0e3106162bbf50b7b4f4127a44fc6dee30686640d85ab8a97c7a387e688d09200000000000000000000000000000000000000000000000000000000000151800000000000000000000000000000000000000000000000000de0b6b3a7640000", - "dataAbiValues": { - "methodSignature": "handleUpdateDisputeStatus(uint256,uint256,uint256)", - "inputValues": [ - "80008248687813878652618995284154503941697939794158322754224777983398987223186", - "86400", - "1000000000000000000" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 17066, - "blockTimestampDelay": 86400 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000020000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xc0106a6cce21db24dd246f08ad02e64e7a8e8742fa9607e8fdf81425d16e85c70f3de5d85907be10f550a4ab3f84480cf0ea723b2a74da20322f8a7c02918a70cdb15ac9", - "dataAbiValues": { - "methodSignature": "handleCreateRequest(uint256,uint256)", - "inputValues": [ - "93236265237587594263022487768855356786420509345912517467786824227481808922072", - "40269523242363880299786798295795090179015741572111778996238876869560403843785" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 0, - "blockTimestampDelay": 101426 - }, - { - "call": { - "from": "0x00000000000000000000000000000000000a0000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x9d2e6a6f998e4550a0de435d19cec4771f09fda88c2b7664624260171a192d839c6e2a65", - "dataAbiValues": { - "methodSignature": "handleRemoveEBORequestCreatorRequestModule(uint256)", - "inputValues": [ - "69455236510673350336024647478873143438234265695463592178397393693034284984933" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 35869, - "blockTimestampDelay": 315170 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000020000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 2, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xd1a55655fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6c580", - "dataAbiValues": { - "methodSignature": "handleRevokeModule(uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913129035136" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 55790, - "blockTimestampDelay": 111616 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000010000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x55438465815bedc734908418031caab89516e183218d7f0edf8e3c493ab40a8fcacc98210000000000000000000000001260c0c92cc0a0b1b5b54cb0501ed367353befeb", - "dataAbiValues": { - "methodSignature": "handleSetResolutionModuleData(uint256,(address))", - "inputValues": [ - "58510781634585462798122964402259920591361435129587016659431711127985600632865", - { - "arbitrator": "0x1260c0c92cc0A0b1B5b54cb0501eD367353befeB" - } - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 25042, - "blockTimestampDelay": 70452 - }, - { - "call": { - "from": "0x00000000000000000000000000000000000a0000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 2, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x9d2e6a6ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6c580", - "dataAbiValues": { - "methodSignature": "handleRemoveEBORequestCreatorRequestModule(uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913129035136" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 25184, - "blockTimestampDelay": 168977 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000050000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x7aeb6fabc80cc1410f822f39c5490f53cdc96dd08eb43974e7995e4657ae6b6bf548e7f2871b07795e307166d3b23beb0529cf4a4051c8b01210b5127b57c6be3cac11f1", - "dataAbiValues": { - "methodSignature": "handleDisputeResponseBondEscalationModule(uint256,uint256)", - "inputValues": [ - "90485105672505321392083992946066544751897224405196443707030040081777413384178", - "61109991013787236767457822530506378720905044490242359531817392410759292260849" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 41797, - "blockTimestampDelay": 101425 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000090000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xa59d317dfffffffffffffffffffffffffffffffffffffffffffffffffffffffffff90000000000000000000000000000ca826f8feadcf20b2c0d50019199cea2b62c4cc700000000000000000000000075f502741def771b94c656bf8b5b7b7f148a930e00000000000000000000000000000000000000000000000006f05b59d3b20003f8dd5e39a09165ac6f78d6e4e38c07ee1b85cd9c0c109e3875dd38c411542ff4f3b3ccb415be6bb6735532f53ea67d407e49e0d5d7b99fe0de0f5c49f9da3fad", - "dataAbiValues": { - "methodSignature": "handleSetResponseModuleData(uint256,(address,address,uint256,uint256,uint256))", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913129181184", - { - "accountingExtension": "0xCA826F8feAdcF20b2c0d50019199ceA2B62C4cC7", - "bondSize": "500000000000000003", - "bondToken": "0x75f502741def771B94c656BF8b5b7b7F148a930e", - "deadline": "112564709967749425184314086071684882232174773517983829235624129600201071800308", - "disputeWindow": "110229700641664101210984642912501714027284836539036269317787492668732763422637" - } - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 38892, - "blockTimestampDelay": 395331 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000030000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 2, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x5356b681ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed8b00", - "dataAbiValues": { - "methodSignature": "handleAddEBORequestCreatorFinalityModule(uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913128430336" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 1, - "blockTimestampDelay": 4 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000020000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 3, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xc82f34f9fffffffffffffffffffffffffffffffffffffffffffffffff90fa4a62c4e0000fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffb0000", - "dataAbiValues": { - "methodSignature": "handleSettleBondEscalation(uint256,uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457084007913129639936", - "115792089237316195423570985008687907853269984665640564039457584007913129312256" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 23866, - "blockTimestampDelay": 113161 - } -] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803599309000-e006588c-7192-4449-bd09-0abc99a17369.json b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803599309000-e006588c-7192-4449-bd09-0abc99a17369.json deleted file mode 100755 index cff5b46..0000000 --- a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803599309000-e006588c-7192-4449-bd09-0abc99a17369.json +++ /dev/null @@ -1,385 +0,0 @@ -[ - { - "call": { - "from": "0x0000000000000000000000000000000000040000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x52e3cb9c6b0d264b5add160d5053aa476132c22d6540d3605ad8dfb850790b1ba996569b", - "dataAbiValues": { - "methodSignature": "handleSetMaxUsersToCheck(uint256)", - "inputValues": [ - "48420708108177856443123222644862532857390746786695606854692354379525674915483" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 59698, - "blockTimestampDelay": 331757 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000020000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x62e8fd3500000000000000000000000000000000000000000000000000000000000000124ab950c09e2414c3ec444389b5281e1bdfda8ecfec5392240af8d376f3781e4f", - "dataAbiValues": { - "methodSignature": "handleOnDisputeStatusChange(uint256,uint256)", - "inputValues": [ - "18", - "33798574834817402171861624718400176195923458571787846279113220864863863578191" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 41059, - "blockTimestampDelay": 386818 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000040000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x161c7318", - "dataAbiValues": { - "methodSignature": "test_debug()", - "inputValues": [] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 2290, - "blockTimestampDelay": 360593 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000050000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xb05752f700000000000000000000000000000000000000000000000014d1120d7b160000fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa0100ffffe666666666666666666666666666666666666666666666666666666666670000000000000000000000000000000000000000000000000000000000000001", - "dataAbiValues": { - "methodSignature": "handleOnSettleBondEscalation(uint256,uint256,uint256,uint256)", - "inputValues": [ - "1500000000000000000", - "115792089237316195423570985008687907853269984665640564039457584007913129246976", - "115791912552609717585138026678937833561418401917250876477561771847293000377959", - "1" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 35958, - "blockTimestampDelay": 189815 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000080000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xd1a556550000000000000000000000000000000000000000000000000000000000093a80", - "dataAbiValues": { - "methodSignature": "handleRevokeModule(uint256)", - "inputValues": [ - "604800" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 23866, - "blockTimestampDelay": 120766 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000040000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 2, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xf60285cafffffffffffffffffffffffffffffffffffffffffffffffffffffffffffb00001f6163d95156c50021d434e3914437a6419fd074db58aba632a1165e1049633a3bf295102083f98484e4163605f3f088673969b3a53bced8eb97b90d6679470f0000000000000000000000000000000000000000000000000000000000000014", - "dataAbiValues": { - "methodSignature": "handleBondWithSender(uint256,uint256,uint256,uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913129312256", - "14193771603127510897806160380156132720630156725507671248204049821265402880826", - "27115063851078188957254873925429362151386502274781693755807630999965205612303", - "20" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 14998, - "blockTimestampDelay": 528331 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000050000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x51b295e3fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc18", - "dataAbiValues": { - "methodSignature": "handleFinalize(uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913129638936" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 23876, - "blockTimestampDelay": 327680 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000060000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x2047c4493b1bb599e967df2247a0bde0e15c19a16d95520dbb9eb811b647dd1c5a50d970bda0d1adb4d017dcf6513d613392f361bfe0847acfbe5bbfd267240bef7125cd61ebaebab2bac3aa4819e2caf8f85c718565871747241e292cc36db91888e520d873b789d8f47c6606b2d5358f69133b1dd4937cee526c90ac095190af102de2", - "dataAbiValues": { - "methodSignature": "handlePay(uint256,uint256,uint256,uint256)", - "inputValues": [ - "26735416302702836720504774004574936090245153519362370366870156849631651223920", - "85771271060700958624081931951489906403580871476691194667860842730768850560461", - "44290761310036599938494988979380191776366734083697389368196279735913800066336", - "97904029442377240838501909618781928147909909174040210570358457032104622435810" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 54628, - "blockTimestampDelay": 362209 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000020000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x9f6259e57cf479b021a816743ff5b53a6f3e5c2c247b2adb9311a44237c3858abd44df0e0000000000000000000000000000000000000000000000000000000000127118", - "dataAbiValues": { - "methodSignature": "handleResolve(uint256,uint256)", - "inputValues": [ - "56518743767933985910260346386765678340564227438862784222762849925209918856974", - "1208600" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 35385, - "blockTimestampDelay": 50692 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000050000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 2, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x0fb55087fffffffffffffffffffffffffffffffffffffffffffffffffffffff400000000", - "dataAbiValues": { - "methodSignature": "handleApproveModule(uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007861590032384" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 1, - "blockTimestampDelay": 57134 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000050000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 3, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x5356b6811b3175568497fde3c31fe069ccc7985311b0506f3b43e70969ab59ea722d2599", - "dataAbiValues": { - "methodSignature": "handleAddEBORequestCreatorFinalityModule(uint256)", - "inputValues": [ - "12299832254764069471447641000592064088020729744720327828938364394997925356953" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 0, - "blockTimestampDelay": 0 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000050000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 4, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xa44b098ea6e532d597161bf414844541b5281607abc0fedcfbe19700823ca81bfeffd5da", - "dataAbiValues": { - "methodSignature": "handleSetArbitrator(uint256)", - "inputValues": [ - "75488891688353701349182521546099519030572206284453220585196006136091846366682" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 13249, - "blockTimestampDelay": 486500 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000090000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x727899ff000000000000000000000000000000000000000000000000000000000009688043d2cc6bee2c75afbb0a2d8e686ed8d850d35e4220dab9eaaad8c1f2bbd315eb000040ba1702262dc3924484fe5b466a7207d688c9429f8aaeb64c1acd0d86e1fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff70000", - "dataAbiValues": { - "methodSignature": "handlePledge(uint256,uint256,uint256,uint256)", - "inputValues": [ - "616576", - "30677409604733962472433633135176719636373390531562919397962760076773674915307", - "446728739341497667529209047101419397582060126024847855090499938302133985", - "115792089237316195423570985008687907853269984665640564039457584007913129050112" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 28736, - "blockTimestampDelay": 576650 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000040000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 3, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x52e3cb9cfffffffffffffffffffffffffffffffffffffffffffffffff90fa4a62c4e0000", - "dataAbiValues": { - "methodSignature": "handleSetMaxUsersToCheck(uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457084007913129639936" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 14857, - "blockTimestampDelay": 578411 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000070000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x91e32c74fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8000053817ae4082823f7b7ef4f21ea8eaf2d55883b146199ee5cd9707c39a3f025ab", - "dataAbiValues": { - "methodSignature": "handleCreateRequest(uint256,bytes32)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913129115648", - "53817ae4082823f7b7ef4f21ea8eaf2d55883b146199ee5cd9707c39a3f025ab" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 23, - "blockTimestampDelay": 32 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000070000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x48a41c2700db944f945348b4c6cffca09ace97414e862af57bfe67d15e8f4ba3813ede4b3d688e69cd534e15f8ccc3765fd50e2ab30d2b740b3ff6d5865213182fe783c63b4bac2923dad06e124a6e05ae7aa5ae1b3e8edff0154acd1de94e5fe6e26732", - "dataAbiValues": { - "methodSignature": "handlePropose(uint256,uint256,uint256)", - "inputValues": [ - "387963111102058097323071002434237761651493831039740349958407635767455047243", - "27775818758715135462630212585325327395456425224261459780030383525521640620998", - "26820159805776502209708934821205059577225837408551437026198979884765463865138" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 25200, - "blockTimestampDelay": 27983 - } -] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803600377000-22ecd0b6-4fd9-4521-9067-46171675f011.json b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803600377000-22ecd0b6-4fd9-4521-9067-46171675f011.json deleted file mode 100755 index a0ee61d..0000000 --- a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803600377000-22ecd0b6-4fd9-4521-9067-46171675f011.json +++ /dev/null @@ -1,718 +0,0 @@ -[ - { - "call": { - "from": "0x0000000000000000000000000000000000030000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x13a8b8040000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000034000000000000000000000000000000000000000000000000000000000000000170000000000000000000000000000000000000000000000000000000000d2f000ffffc0000000000000000000000000000000000000000000000000000000000181dc31bc03ad9bc8a966de91dfc8c49b929f6d5fd44a9c22a7f5bb37cebfc106ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed8ee8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b825bc2cfc37067e378b4feef3f3411136744d0b2851c161c601669654cf27bfe6100000000000000000000000000000000000000000000000000000000000000006cd40d93882a844c2becf361c7579664aef7a6ef6e8b79d6bf6f6f76426e9b14039e696f94058cfd274de97421f65916ac135f4d55083d357b9c1f34820c9376000000000000000000000000000000000000000000000000000000000003fffe000000000000000000000000000000000000000000000000000000000000000167e6a528e0202cf23a36eacf513eee303475d3e4c983b2ae2d616b11c440f70a4ac07813439b9213b22d4d86340307a2982de60c241368ad288dfea742b6eb5efffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9686c2d73382b1edfa908bcaeb6b9ac0073f469887a9150c80831642e47e35a614c1bffffffffffffffffffffffffffffffffffffffffffffe48e5eb33a3a7f000000104a13a90c13653470268ea78892361e7e91e706d859aabaaf45ddd18c956640809a37cc7335cdf29b7d988dc8c05e2c1899ad1795364e6fa667088b49487472ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffee00b4fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b80756993dc4be6ecf1e46c48d6f9cae9255a8b46ef956a3d85442a5f41f70ecf93000000000000000000000000000000000000000000000000000000000076a700a77a4c48695a0407441e86efc633aee092d2ebd99c87fdfeebcd904fe33e086d000000000000000000000000000000000000000000000000000000000000001d563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd0633ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865a46715d7736dde0bcf6527392542031b42d0197ab2c1bb4c4d2d7abaed280007f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b4498bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef328d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad82082401f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade0554594d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae962914f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cbba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c33f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8fd276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f6617237058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf259a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe260d35d19771f7c1af646e114de36d19c25e3fc040b27be76073113bb33db17d5d19fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb", - "dataAbiValues": { - "methodSignature": "handleCreateRequests(uint256[],bytes32[])", - "inputValues": [ - [ - "13824000", - "115791647525550000827488589184312722123641027794666345134718053606362806484993", - "58737407075920930096693749632210245280794127876199190949253348332199714210054", - "115792089237316195423570985008687907853269984665640564039457584007913128431336", - "115792089237316195423570985008687907853269984665640564039457584007913129380738", - "41504671482165347584846103287222174319130579613222615088745194098566077611617", - "0", - "49224452924880417829398231270379785502530069722970149981823851608145893694228", - "1636828073493779560152621491074002847609709387720111137750911676859097584502", - "262142", - "1", - "46995738119123743123282428161140493004285235666026628953647859202250191730442", - "33811214160519685654400438720767591502827986970858420988841187408488311483230", - "115792089237316195423570985008687907853269984665640564039457584007913129207916", - "20557653259021005890251421269967042420225955023564768794272035576696478452763", - "115792089237316195423570985008687907853269984665640563909857584007913129639936", - "7367887950809164700104084563884591449786965425123545364576065505479275931200", - "58168524174645209900719041489934173752247098791866719219864340874379345294450", - "115792089237316195423570985008687907853269984665640564039457584007913128460468", - "115792089237316195423570985008687907853269984665640564039457584007913129380736", - "53107142721938561923251317745913031228477959801596843755970727929974933606291", - "7776000", - "75752327540241786815348607290604056680494387521335977257182003214564422715501" - ], - [ - "563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe", - "27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a", - "9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd06", - "33ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865", - "a46715d7736dde0bcf6527392542031b42d0197ab2c1bb4c4d2d7abaed280007", - "f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1", - "c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b44", - "98bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01", - "108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef32", - "8d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea", - "94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad8208240", - "1f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade05545", - "94d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056", - "cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae96291", - "4f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa", - "9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874", - "ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cb", - "ba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c3", - "3f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8f", - "d276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99", - "fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce", - "3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb", - "4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f661723", - "7058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78", - "994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25", - "9a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe26", - "0d35d19771f7c1af646e114de36d19c25e3fc040b27be76073113bb33db17d5d", - "19fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c", - "51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb" - ] - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 21265, - "blockTimestampDelay": 360627 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000080000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x51b295e3caac5b7c00ae43f0a0d2465bc3a827daefa6255afc3feafd105a01b058af4cc3", - "dataAbiValues": { - "methodSignature": "handleFinalize(uint256)", - "inputValues": [ - "91671724510984325847623981850838041499373483072178023597879983910219265559747" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 616, - "blockTimestampDelay": 245182 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000070000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x62e8fd357410315e284ca2250b236ba99041acd7e7626e3fc66727657ddcb75ed512355238b8e299444e7771cad3e9cc9efbc8237922a7b18f034d56199ddaad5f62f70c", - "dataAbiValues": { - "methodSignature": "handleOnDisputeStatusChange(uint256,uint256)", - "inputValues": [ - "52496900712745351460185096722717982602139275703227615313943886816707427317074", - "25656183307321870319256066529210878052151786525540532817103830451324188817164" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 0, - "blockTimestampDelay": 0 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000010000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x5cc02fa53b4e8ff8cbb94866d057a07c347e0cb79a079e6c49875d6adb448ca8b36b2f93", - "dataAbiValues": { - "methodSignature": "handleSetPendingCouncil(uint256)", - "inputValues": [ - "26825265794714411535119211388793422995701606456004679527746190657884506501011" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 22951, - "blockTimestampDelay": 222797 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000090000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x7aeb6faba969b1150e65eb039223322d37083c0f930e9f96e767cfaf888c1440b89042a7ffffffffffffffffffffffffffffffffffffffffffffffffffffffbe15000000", - "dataAbiValues": { - "methodSignature": "handleDisputeResponseBondEscalationModule(uint256,uint256)", - "inputValues": [ - "76627612529152310655938988775485703136714009850335653768166292952282670580391", - "115792089237316195423570985008687907853269984665640564039457584007630014119936" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 23866, - "blockTimestampDelay": 274647 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000030000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 2, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xf4fbbf9b0000000000000000000000000000000000000000000000000000000000000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed8b007c3160c01450d95568fbc7e3fe876965aa411c1bf13d7be2baabf28cedd3012f", - "dataAbiValues": { - "methodSignature": "handleBond(uint256,uint256,uint256)", - "inputValues": [ - "0", - "115792089237316195423570985008687907853269984665640564039457584007913128430336", - "56174036476597730143689219709059961134239333858317208755745576773703517274415" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 0, - "blockTimestampDelay": 404026 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000060000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x94ae6f8c0000000000000000000000000000000000000000000000000000000000000120", - "dataAbiValues": { - "methodSignature": "handleValidateArbitrator(uint256)", - "inputValues": [ - "288" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 28898, - "blockTimestampDelay": 360593 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000020000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x0692ea7e0000000000000000000000000000000000000000000000000000000000000100", - "dataAbiValues": { - "methodSignature": "handleRemoveChain(uint256)", - "inputValues": [ - "256" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 10120, - "blockTimestampDelay": 442746 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000030000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 3, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xb05752f77477db96404997c322ba9a11ba66d9f58fa471415b5c82afcf1965a16b52aa310000000000000000000000000000000000000000000000000000000000060000a3d04e821fd24d173d46c5c6591bac6f9d3ee4250e38f6752d158a2114dae86a7312ea15e2dc75c19cc06e815ad4c43b0e39987ce5ac5a5bac39cbb127f734e6", - "dataAbiValues": { - "methodSignature": "handleOnSettleBondEscalation(uint256,uint256,uint256,uint256)", - "inputValues": [ - "52680060769579736990081276342150508425883578818293859365287572298297987213873", - "393216", - "74095040352905635550053635482030730013005988265241047193937642446333545212010", - "52049396432936944477776417116733628414171704893437425841548460736384299644134" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 23866, - "blockTimestampDelay": 360369 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000020000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x9d2e6a6fb7ab9b804f5e3b07b64589457afe860d64ca8a1102a99dc3b01e9042b84b54c8", - "dataAbiValues": { - "methodSignature": "handleRemoveEBORequestCreatorRequestModule(uint256)", - "inputValues": [ - "83076455368730213982012688072579720945989878255995701383969604691644153287880" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 3912, - "blockTimestampDelay": 284189 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000050000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x13a8b80400000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000001dfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b820000000000000000000000000000000000000000000000000000000000000000ce675a74f87f83662332b39024ab66f66d3ad8159fb92d1081e73d8747ac44a2fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa0000f99ab80a56afb5cf2d406681086184fa568b2c59b23b9eed0fb97babbdd70dcb987572aba5f9d1eb2bdfd7db4a60daa53ab31e663abe9ea14abc72f369d5dae3d49d00025d7681398c1ac8e5b18d32589a9d3aee941f68217de08b573fb0ef22270657897cfb0e6dff27bde358d9cd33988862a59eafeb150f97e1fb0bd5db1eb09668549dc88efb456b69b806d30443b7484266af42ae24fadce2ada2bf2e00ffffffffffffffffffffffff8ef68f613056e57f9d900c6762970980a4e22ed300000000000000000000000000000000000000000000000000000000000100006558973ea0cf6ef065af511cdd91dcf8ebf51e410d0e710b8482f875357b01e5a82a9a69bb78fc7065db036b90eebef2590e8a9797d50a66dfb4ab86433720e10000000000000000000000000000000000000000000000000000000000002700fffffffffffffffffffffffffffffffffffffffffffffffff90fa4a62c4e00000000000000000000000000000000000000000000000000000000000000010000688ad2bfdd1982f027350b11d5a66e4eb674020afc643610b6411864c705684cbaab39a71efe2422fd2229cf398d057b9b06ccfbe74bc3a4994ba9deed6f93052af9415df05e3b4e4bb3efd2328b1fac61e86adbbb1f32d9fe4d9fa96ef608ab9d48454c637331b80fc8bdfe0b16c68d224ae00eca2bc8b6b5b82eeb5dbb05bdffffffffffffffffffffffff8ef68f613056e57f9d900c6762970980a4e22ed3aaa89e9ec9968c5d9717eac26037a4e7abb9cc9d43af24edb06275ca7126a4c8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff2d0f6000000000000000000000000000000000000000000000000000000000009000056db5811b60eafc5a06420c40941879ca1aae8ba576dbb8f9dd9cbe1e4e187fb14c4c80ff0fa9624d2a9e63be6e238aa088864d7cd2780d36bc6dee000c42d1b000000000000000000000000000000000000000000000000000000000003f48058825231460c027d950a84d667bec6ad5f4731e0cfaef9f9b65d7008ad39ff50fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa0000000000000000000000000000000000000000000000000000000000000029f87ffe759d510e1c1d646f2c46946d2e09cce6ece48d285eecbab28b6da0aaafbe4233335f0868c51a18ff4b577aba2300ff0e1110fe6ebcf65aab5b22a0cd7af45a3243de6773b2ac820589df08ee53500a017476ffbb1bc4ceb09189a3a8688430464e8052902c1bf8131a3b65b1b8579578c0674f6b54e6508ebe3e773f92f62a3923b7d048bd00e06c64c9764f411dd42925c5a3bc087d2acf2dd45670afee5922c58e2ab2a48008017cf695319fc8f68540c785800cac4fb40071265bc6c57dd1da3996638b1d193cb3f0de7290b528e8c2553b44fdb00bd2f7afeb507f780ecfa7e55b67e34060e5a3ab3fc7c2fd6270fb027a69d0e3430e553adf6819c8dbcc8fe9ee062b2c79b12ff5516725f8025598c75085e7022536add4c3462e067f6eb57330f4a2635836735eb4e0053c2a02ad8f30b1ebb63d99a2cd2153db645c350fe8e5c04c29094fa388abef6a8faa96395cb0ff0901d9a9031f7631b22558fb38048fa6c225997c825a3070205c6bcc28d8335499c58531230e56b3a4aec270fc970dd1c77c0c5296114545b189f9c61f42ccea793f3b2f3b6c3b46fd6fb449fc87916235c006bf56db0c5c21f31410623781ece548911499cc23d8ac091676bc100d89c7174c55fa0bd83529b7e4cd0d2fb4476413f61972f0f860f6c403befbb5f69d0e304161de4e70ca3042a1d04835a72006a53c3175c5109baf4182d0da9a3e83b98e43af1ad858e630be26febe27f2c8a4f67eec52f53b0d005a92a11a1dd559351c3b253a1d1a70c23193b67441c058e70e67ac3f8ac4aee50ed009392925b73b400df2177c6a10fe1f591984b99794e9156c3bd0b4a2ed7517c12532c97966b24ef7deb1cf9e6cf37ab8f578cfd25cc9f82f16474fe7e1bde4298cc60088e914f35d7d5a66ef30363aca7be4e251f53e2f64b81e00b44a4f3ed31e5f1f4a517d25b06946975a9d79df88cf56c616ae4c81922660d533aa9317d842f948b3d2a5cab98f377cd1b719e1be52bfb774c70bd5ed589e3a4bff539f55e90e58abc8536ecc396cd34b566e938f0f4864fe1d6ff24fb8e3e3ab1b4c42b42c06700cd46a831b567bbdea115be603b7703579c8280ed0e5d4f20a9e510271e5bb61a194d5b0b205124c05d8991782e8e73158b0fd60717823b82eb7b4dd90cf778f8607913cad2914c4dfe829100903d1830199c1fbf569d6e37e2adb5d073c66fd3991eb8187063de6745dcedadabd41f6a70c7b2bc8e61d100de94b032f6d262a2e7a314c8a07740f33d9c56d018c1e78418ac315f32e91eed3eacbcded8e609c83aef09642cbfb3b717abe19c73fd5e49e008e320b3ee4ccaed6c353284dc811b9981746d05d363d35325d6f5e61340a544bf9b32b7b6cec1644b91e0b92085ff64c8d92b30f5ad1033570b6077b8bc2bb7a44a70045644d7bccb31cd1d59dc43541430d346d2a743381036d2f2e2a7a59e07c0c65de024350786615d3e7aa2c597a5d7e035e9d109e65d7d4badc94bc4bd2e55e3bc724b748e74a0fcacb73a2a9ee52f36347a5ae6072f300d6fd2f62bf08605016a6931767f353ac73babce9625b51569ab81df833bee00d3ff2bbb3badef2878a170d7d7109f33ab0f46bc96f4fc89ca727c7d8bc4282604b5bf3bbf0eea2bab4f7798601d86277e09f88645c1d56a4cae35b59d720e8b57f7e4abc5ea43a53526265c5cc4dedc5b72f127134d3d97a31a652f905f82ee74953598bf2a05f52dd89152ca9400523884d909d0469c6a966a2d841f4f01b74e98660ea5a28534174638ba83bf16343fcc653aaed6743963ad798004516fca1ba790701142e7b44788e2b9a4c6744", - "dataAbiValues": { - "methodSignature": "handleCreateRequests(uint256[],bytes32[])", - "inputValues": [ - [ - "115792089237316195423570985008687907853269984665640564039457584007913129380738", - "0", - "93359056366519978384575301215212766084552195127475241400321367131381031519394", - "115792089237316195423570985008687907853269984665640564039457584007913129246720", - "112899263945265618091091185689767054075036928377626216345331905228274830609867", - "68959065517949274316588826283101587750558165013430347817640346533866916666083", - "96167718952585367175045237006581483249627268288674080939511722496406722768674", - "17651406335742926396690394648438989354403684618877496125906122976087978138398", - "79872808473243763044716704952744950461935635665535412421360192734135943376384", - "115792089237316195423570985008042581378843437462327153970303678099387767205587", - "65536", - "45840124100760761585173752354748948632868900822901326367871013022630665716197", - "76063831858184420518861268628451249077285698597102935859033978034718219116769", - "9984", - "115792089237316195423570985008687907853269984665640564039457084007913129639936", - "65536", - "47285815686966272144121693505188799597744533049049783177959832040536684193868", - "84432718589681428792934245815119003114976466487051385221334973405702499832581", - "19437535705728302099767088929537200823274258212636994203273729259332963797163", - "71140808496164046925239908329887697304458696034799907436633500076327881606589", - "115792089237316195423570985008042581378843437462327153970303678099387767205587", - "77191109322862123514795600886680155988643876662484090273820952307332291142856", - "115792089237316195423570985008687907853269984665640564039457584007913128775926", - "589824", - "39286452316517865283766389032392547299789935223147165990478078739011264940027", - "9393939775408484523215953034946785494006122941999182174070733730995117501723", - "259200", - "40033788065363256588949523368348146912228695325379481069044606228254426791760", - "115792089237316195423570985008687907853269984665640564039457584007913129639930" - ], - [ - "f87ffe759d510e1c1d646f2c46946d2e09cce6ece48d285eecbab28b6da0aaaf", - "be4233335f0868c51a18ff4b577aba2300ff0e1110fe6ebcf65aab5b22a0cd7a", - "f45a3243de6773b2ac820589df08ee53500a017476ffbb1bc4ceb09189a3a868", - "8430464e8052902c1bf8131a3b65b1b8579578c0674f6b54e6508ebe3e773f92", - "f62a3923b7d048bd00e06c64c9764f411dd42925c5a3bc087d2acf2dd45670af", - "ee5922c58e2ab2a48008017cf695319fc8f68540c785800cac4fb40071265bc6", - "c57dd1da3996638b1d193cb3f0de7290b528e8c2553b44fdb00bd2f7afeb507f", - "780ecfa7e55b67e34060e5a3ab3fc7c2fd6270fb027a69d0e3430e553adf6819", - "c8dbcc8fe9ee062b2c79b12ff5516725f8025598c75085e7022536add4c3462e", - "067f6eb57330f4a2635836735eb4e0053c2a02ad8f30b1ebb63d99a2cd2153db", - "645c350fe8e5c04c29094fa388abef6a8faa96395cb0ff0901d9a9031f7631b2", - "2558fb38048fa6c225997c825a3070205c6bcc28d8335499c58531230e56b3a4", - "aec270fc970dd1c77c0c5296114545b189f9c61f42ccea793f3b2f3b6c3b46fd", - "6fb449fc87916235c006bf56db0c5c21f31410623781ece548911499cc23d8ac", - "091676bc100d89c7174c55fa0bd83529b7e4cd0d2fb4476413f61972f0f860f6", - "c403befbb5f69d0e304161de4e70ca3042a1d04835a72006a53c3175c5109baf", - "4182d0da9a3e83b98e43af1ad858e630be26febe27f2c8a4f67eec52f53b0d00", - "5a92a11a1dd559351c3b253a1d1a70c23193b67441c058e70e67ac3f8ac4aee5", - "0ed009392925b73b400df2177c6a10fe1f591984b99794e9156c3bd0b4a2ed75", - "17c12532c97966b24ef7deb1cf9e6cf37ab8f578cfd25cc9f82f16474fe7e1bd", - "e4298cc60088e914f35d7d5a66ef30363aca7be4e251f53e2f64b81e00b44a4f", - "3ed31e5f1f4a517d25b06946975a9d79df88cf56c616ae4c81922660d533aa93", - "17d842f948b3d2a5cab98f377cd1b719e1be52bfb774c70bd5ed589e3a4bff53", - "9f55e90e58abc8536ecc396cd34b566e938f0f4864fe1d6ff24fb8e3e3ab1b4c", - "42b42c06700cd46a831b567bbdea115be603b7703579c8280ed0e5d4f20a9e51", - "0271e5bb61a194d5b0b205124c05d8991782e8e73158b0fd60717823b82eb7b4", - "dd90cf778f8607913cad2914c4dfe829100903d1830199c1fbf569d6e37e2adb", - "5d073c66fd3991eb8187063de6745dcedadabd41f6a70c7b2bc8e61d100de94b", - "032f6d262a2e7a314c8a07740f33d9c56d018c1e78418ac315f32e91eed3eacb", - "cded8e609c83aef09642cbfb3b717abe19c73fd5e49e008e320b3ee4ccaed6c3", - "53284dc811b9981746d05d363d35325d6f5e61340a544bf9b32b7b6cec1644b9", - "1e0b92085ff64c8d92b30f5ad1033570b6077b8bc2bb7a44a70045644d7bccb3", - "1cd1d59dc43541430d346d2a743381036d2f2e2a7a59e07c0c65de0243507866", - "15d3e7aa2c597a5d7e035e9d109e65d7d4badc94bc4bd2e55e3bc724b748e74a", - "0fcacb73a2a9ee52f36347a5ae6072f300d6fd2f62bf08605016a6931767f353", - "ac73babce9625b51569ab81df833bee00d3ff2bbb3badef2878a170d7d7109f3", - "3ab0f46bc96f4fc89ca727c7d8bc4282604b5bf3bbf0eea2bab4f7798601d862", - "77e09f88645c1d56a4cae35b59d720e8b57f7e4abc5ea43a53526265c5cc4ded", - "c5b72f127134d3d97a31a652f905f82ee74953598bf2a05f52dd89152ca94005", - "23884d909d0469c6a966a2d841f4f01b74e98660ea5a28534174638ba83bf163", - "43fcc653aaed6743963ad798004516fca1ba790701142e7b44788e2b9a4c6744" - ] - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 18813, - "blockTimestampDelay": 166386 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000050000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xb6c75efa21e47192f11d3f380576fd394ec9e1b4eb90a89bceb9b651bba78bf6ab564d9dfffffffffffffffffffffffffffffffffffffffffffffffff90fa4a62c4d00002c95da414ee489142bbc6e001fef7a12692a3b9d1210170c80e8d07cec96b7c5", - "dataAbiValues": { - "methodSignature": "handleClaimEscalationReward(uint256,uint256,uint256)", - "inputValues": [ - "15329948992898956970077422041464151575333773433396765238718102692294303305117", - "115792089237316195423570985008687907853269984665640564039457084007913129574400", - "20166531891724206848272694213144022190042376042953875838430089970096862050245" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 7764, - "blockTimestampDelay": 145528 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000090000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x161c7318", - "dataAbiValues": { - "methodSignature": "test_debug()", - "inputValues": [] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 15165, - "blockTimestampDelay": 79666 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000050000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 2, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x94c9ca03", - "dataAbiValues": { - "methodSignature": "handleConfirmCouncil()", - "inputValues": [] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 18, - "blockTimestampDelay": 12967 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000080000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x9d2e6a6fb9725d6fa85600a910792fa1036f0fc5f7aeee3d8a3c5f020c4eee7ab3acd4d2", - "dataAbiValues": { - "methodSignature": "handleRemoveEBORequestCreatorRequestModule(uint256)", - "inputValues": [ - "83879942425981193648324846942207323156479086214801606686020480705403632276690" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 34946, - "blockTimestampDelay": 577539 - }, - { - "call": { - "from": "0x00000000000000000000000000000000000a0000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x3f60f9ccfffffffffffffffffffffffffffffffffffffffffffffffff90fa4a62c4dff000000000000000000000000000000000000000000000000000000000000015180106377bcc6e3833de20fde0dec86034d72977efc56ce65d621eec9aef2e6254e", - "dataAbiValues": { - "methodSignature": "handleRelease(uint256,uint256,uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457084007913129639680", - "86400", - "7412749833975990795345248015108177440376656993723510144021351295583332476238" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 16720, - "blockTimestampDelay": 129266 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000020000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 2, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xdb106ace485fa72019613288a4d464af2e38b993bd6f4e91917334b0d1a52c61978ac8a8d2d39b6fe2ce149b4c141eb36a6107fd82a5e7526b6b0b9060ad19f590c521250000000000000000000000000000000000000000000000000000000000069780341dd0fd9f3ef23b5f0565845080e00f95f62e8508ba20febb8b8b6308593a55", - "dataAbiValues": { - "methodSignature": "handleSlash(uint256,uint256,uint256,uint256)", - "inputValues": [ - "32735529026180125829021357241527250244118779294171178089592553115267256469672", - "95359575720277367758421281161102555105495114724495679053042926100061433962789", - "432000", - "23572949092085613514975120988405477088071192393031085611716095677121225636437" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 40389, - "blockTimestampDelay": 599734 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000040000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x52e3cb9c5d04a79d586d6e202ac0bf3b7e68f4375a1303a65babaf4944016b6481419266", - "dataAbiValues": { - "methodSignature": "handleSetMaxUsersToCheck(uint256)", - "inputValues": [ - "42073319140166927053960887268496944931506674334749535415241953198096253031014" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 53112, - "blockTimestampDelay": 602139 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000080000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 2, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x40605c3faf2cf332d4be6aa3f13f683b2f3927dcfd17bd3f54a714dce4631f08661b5a3e00000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000000000003c000000000000000000000000000000000000000000001b71a14cc5c581000000fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8000008f83e5e1824c2e7448d4275eb1478eab6171c49a682fbaca44925028ba6b634ac3e77046f1673cfe53d1613ee88d823fd8aad7fdbe164cb637dfd93231185710000000000000000000000000000000000000000000000000000000000090000fffffffffffffffffffffffffffffffffffffffffffffffff21f494c589c00009f6eee7e10961fd4bdef3767d64c40c41041a44c6addeb15c424f8d94e48bc0f0000000000000000000000000000000000000000000000000de0b6b3a7640000ca36abf2deffed0c5066b5dff652794584689a6c7e705862ae7f597d1feb13e000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000000000012700f8cec1bca23ec15d783db7ef8f8cd2b323c5e0d231dab89cdd395bab8f65bac2c3edd48e36942610f12c56fdc9357fb10b3a3e19be3a4066f231966c6406cf5effffffffffffffffffffffffffffffffffffffffffffc87d253162700000000093df552fbae09922d5e1344f074adbf47a846017eb175b4402261497333a2055a4d33262e07685ce10e34f6961b25194b96689b2a080e5978b2503a001cff5246a2026be7cf65c6125395dd3bc1eb0c4f1cb378693a5f9b0d7b6653b198dafb7dfd2097d05560b48c451fde495c0ce47901168cca4573e1d273864cea467a8554643a7c00f45a9c007353f2f8ca155cafb190aa7ee8bc474573d7373c863ab3700000000000000000000000000000000000000000000000000000000000000230000000000000000000000000000000000000000000000000000000000000000fffffffffffffffffffffffffffffffffffffffffffffffff90fa4a62c4e0000fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc00007c26e68c22654056c9c7702aad1aa4eb1e874e2c5a7a20dcd3ccc3235bfaca46000000000000000000000000000000000000000000000000000000460000000071ecfe0fc25f5a80cc385509ba80f4ffb79779b42f787513c5d5695172cacf5bd11c1220171fc7f914eff9884727a5769f2b8e2d87e0c22f70fc2eedec98f47971cfcf2f40fd975cf40b591f12bcad2627a1d305e669ab648a6d1d6e9e8ba228db79eb5fdad89f08678f0421eebe41120e329edf9435dd8993b8f86fa6a5e606b92565b5ec953a8bdc7dcfadf6dc773c57ec40957931aff64bf580bd469d73f5fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff900000b23ad6af11c884d96e499df75402570d05d525bf13bffdd005aba9c2f4d4d1e0000000000000012725dd1d243aba0e75fe645cc4873f9e65afe688c928e1f2100000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000030000088ea18fb122584b1efa4d9e532c2d7376b9f0c47ff2eadf136d21989711216eb9716cdd484bb8bbe02ab9174b86bd7b509bd2eeb30877a23d529a1a43c1292a0000000000000000000000000000000000000000000000000000000000000020256038ae865306af96b60f1ff7f5f081cf29f9d852b575755ccb4accb34c440effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00f1e89b7d2ae0d60246f6b9863d6666883f2d35880bb617df8c197ea6a6f3bac319717d397a1e43d1ec8630e471a8adeb41f8ffa88fe8815a4248d755c19e6c2b00000000000000000000000000000000000000000000000000000000000000c47e910dd1a6977f98a111add8eb5444304438c90e3a7966b0e784c222e1e04f360000000000000000000000000000000000000000000000000000000000070000f3657bb93d92c779a7b3185266b8f8f8dab51c3837de27303ce3ed22b7c8232a6a906f04eb8e4039b614701bfea32b7ba4a2f3552a2c30f4c306ab2f2ed00e61fffffffffffffffffffffffffffffffffffffffffffffffff21f494c589c0000f2aeddbdc99b983797d26060078418723a7fc368f920516f8db6a0f8da37726c31373ee7f75e203fd4190399cec9ec1168f34323e93b89896930b25dd042c4ca5227a0cf23b80943a5950a8a918993cbb07a34c40b95fba67d521e49532ec56e00000000000000000000000000000000000000000000000000000000000d2f00fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9649800000000000000000000000000000000000000000000000000000000001fa400ea8aafc25424af88048ec96fd9ff8565e5e76a86744505329081bc2f1c426e797f666785d36b7006166b3640a4320dffa47ca2708b45eeef576d547c61209b9fffffffffffffffffffffffff8ef68f613056e57f9d900c6762970980a4e22ed3000000000000000000000000000000000000000000000000000003824430f69e028f5c28f5c28f5c28f5c28f5c28f5c28f5c28f5c28f5c28f5c28f5c28f5c28f0000000000000000000000000000000000000000000000000429d069189e0000000000000000000000000000000000000000000000000000000000000000004dffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffee000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000800004ba0f6427e3508d8bd04b36abd26f824e48305823859cb7b5564c67168d0017b4085526fc18f9177aff8ce39103da1f9971495b564928a93c75f38b11297ab7bfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc000000000000000000000000000000000000000000000000000000000000000697802f6423a89ba203deca11a1e637c14b3cd81945e8ddefaf89925c08901762555895622042fb9be61a1c172f8bc46ed4e946fc0edec8916bd330f619d53d9159ccffffffffffffffc282c7449873c3e7a76b006cac63d2bf0026054e2b6cd0ed9191f4242dbc893426f41de7e20a15eaa229434100aa190cbfdfa26c71bebabe061b711e33c5a2626a21641421aae78ad10302c3e4b68e0084326ce1a976ecd9d2fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc18fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa0000ffffffffffffffffffffffffffffffffffffffffffffffffffffff7942924169a2701b17adb49021260199c82feb263dae20dfb1f06f6d7b0e281b9bdd61fd2775ce3ef9f0b5c0c01dc8a2a4816283877ed45116d47568bec7b63dd5138de5014c131120b22f2a6188fc709abab26e2493c64a0a47d68524e454a808e9d68a4d0000000000000000000000000000000000000000000000000000000000000012eb70cfbcdc4cd24d362862bb16dd8354de5c369027336f4ddbea81c90fc5ff5e0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008fffe0000000000000000000000000000000000000000000000000000000000000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed8b007d78952ef91d5b6abe516ac64db444e3979fd26dca0df8c7995a2c199d038c3e3551972009bb26ba918f6da4305f8f74758d7998388287d7bc569f242db37bed53737eadc62c4e9c12e0eaeb0d3f291ca3d6a6736abe2fff500d5995b84a6dd600763808282f4724a7f5980b0fde1691a8ec464e20d6161bf3806d15f485866c000000000000000000000000000000000000000000000000000000000001000200000000000000000000000000000000000000000000000000000000000000033fcea3b0db78d1875e79b1354a2407d71f81529bd4b8d9e53648947656a923690000000000000000000000000000000000000000000000000000000000007500ffffffffffffffffffffffffffffffffffffffffffffffffffffffee0000000000000000000000000000000000000000000000000000000000000000000500000000000000000000000000000000000000000000000000000000000000032700502bd6e947dd8d5f04af7e204d2f8fda4599e101b7d8f26a70b66100ed50c83cef29af6267e45562d930be4d012c9990e9f3ec312fd1fb1250d2f24941337e02fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6c58070c1359629497822e1f9451d29df743ae330181bc9e2b10c549974773e8036dca08ff75ee457748096c6c1f4780e2f123afe03bd9044610c1f6bf171c8ea1918a9933ec858ef5823627e1952d0f024adf07d4fb760118799b53f281c64e36fca909fc08433a01c2f761ec47689e0e4afcf53553aa23a009cdf034acc2cc28ce800000000000000000000000000000000000000000000000006f05b59d3a90000000000000000000000000000000000000000000000000000000000000000000024888890ead6a3fa688eea15c1fb851c542c73063e36b474f733e77cc1e3dffe3770af29006695416eb06d59ee21b71f351d172b306175ce5098c4dafc5ceacdffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed8b000000000000000000000000000000000000000000000000000000000000000064332aa14fde53e1900e8b9e18e67ebbe584887125c7c87df20e55e7d2ccc596958ccb77c59cf7412d78e3502ca4ed593c96d7889d3aa7e2f35af20e45fb3f30b0447a0bce98c36c3f1464d030d94e1faa4cf1282192d66dc267208a05c20417fdeb27ec9d62517b40aa048bad057b792ea4b5570140d61938df4e248e9f41d224d826ba696696ef5c2f84a5bfa22440b058ead7b89ee23930cf5834e89ffae31d40baaf432a54fdc1149e61a4c275de983dc6e109fdee048e1db1fceec55312c62876f266ef80348000d46774154ffe91a79395f18511d8e4dbf5524576e1ecef96da03c301964363dd537b3d196514d16428949f3e7677accc3a4cb7b53eabffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffecd3262809b86aae0f6733691180bc3d4d28aa37b824be525776cf70cf5dfa1249fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffffffffffffffffffffffffffffffffffffffffffffffffffffffffb0000fa64731c4bac6932747b966f080ff4b69feea1ff4b5a34c11a499e46984b98adb45ac57345fa90da513dba9ee818309393b78a691fea587e6709af7e00c33ee2c8eaac2a564ea749c4f885df3f46c1b11bde75aa4c71483d327a89c0a107aea5ffffffffffffffffffffffffffffffffffffffffffffffffffffffe450800000a93976c1ea3eab6d00cc0755bddd65e8d9fdc33a21c2244a148af731cccb4ab7fffffffffffffffffffffffffffffffffffffffffffffffff90fa4a62c51f4809b16aa6fd5ddc427ff517fc492793a03d0d1053e9c7d646d348b1f6c819ec8bcffffffffffffffffffffffff8ef68f613056e57f9d900c6762970980a4e22f37f35b3bc1a21297e47c7ffb746b9f0392c95c41bffc375673d43fbb56fb3db54fce3d5d19c16c9ebb75ad9e08868f532e1c3cef92c2c9815209447828bae8fb8dfffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600008000000000000000000000000000000000000000000000000000000000008000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffec0000000000000000000000000000000000000000000000000000000000000003000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000001005069ce6545751092cbc2eff7f8a196368084a8d6575e723789a0a8550ab98fff", - "dataAbiValues": { - "methodSignature": "handleAmendEpoch(uint256,uint256[],uint256[])", - "inputValues": [ - "79234168267686009005088260694588693407234102385107460922602254484253129267774", - [ - "129600000000000000000000", - "115792089237316195423570985008687907853269984665640564039457584007913129115648", - "4057111305782275886571448300120152255027125755784863430760218107684929844788", - "77908175901692034127470361839288991262578550865601348498225359157260673189233", - "589824", - "115792089237316195423570985008687907853269984665640564039456584007913129639936", - "72113742116195548480853306837104241632999023982387119790698814234496216906767", - "1000000000000000000", - "91463791901734848429633524612431015587287462192412548639048745950508510548960", - "524288", - "75520", - "112538894066595722788315856528659501863855106263622911153991922780102220692162", - "88621215232375177742539071784431089817151237292122275030738334703048582418270", - "115792089237316195423570985008687907853269984665640563777313584007913129639936", - "66884583572423189936125899179878352008538100011771012405602043541671303061589", - "74552459651354750430174029843320369767657394133388412894085302753361367397668", - "48001968457810261411432527469825735958997723895879576113893948479301808402359", - "101236868603944277764776604371323779743105874173437918010876456299226217293909", - "31781435923726815159842015427101927434769505588009900572451953949977556003639", - "35", - "0", - "115792089237316195423570985008687907853269984665640564039457084007913129639936", - "115792089237316195423570985008687907853269984665640564039457584007913129377792", - "56155524592461176289193537074028160427039803039682165510113327887820869257798", - "300647710720", - "51530081265637896148265832957451117723923258375630496683253581940896230461275", - "94582982168304262223100306942296660289078495773942778513563741163193733018745", - "51478519167773814506353660548389024638097489026918201160503420063837816857128", - "99271926829207145105184311505618387825667524547266582325691221310367712273926", - "83743952310347544629337739241152284883214803800419070987633781806314039374837", - "115792089237316195423570985008687907853269984665640564039457584007913129181184", - "5038477866947515063779293836246906523661855668185302495208724210093145279774", - "115792089237316195423570985008687907853269984665640564039457", - "393216", - "196608", - "3870510126953272661260638544693110069552065422800236658373254995620968604014", - "83878282060591541165988934124893916466315011269761026377742732144499153250602", - "32", - "16905583918771723668203985488747601465300647358530698843745608175382153675790", - "115792089237316195423570985008687907853269984665640564039457584007913129639680", - "109418378172788479097976565158528463610367949333061091923009466030448721509059", - "11508339200772475836942584238735894096008812481055785241282078323770931440683", - "196", - "57247707120759955627861231083084937748463087404077160699542249942796596170550", - "458752", - "110091327668151569106656212371076950581517323424359657707275495659861304681258", - "48200354153645512092405378017278029286888535380384921634095420105910299659873", - "115792089237316195423570985008687907853269984665640564039456584007913129639936", - "109768671149026244196282058166387480657505063313740248501133168879717647348332", - "22260940331214902517078698554353337789774274525293014376850280696039113671882", - "37159670483240285730959311945893306683001739244975476702270549393749637514606", - "864000", - "115792089237316195423570985008687907853269984665640564039457584007913129206936", - "2073600", - "106086244508125417801857301639214534862807360304915830734311681226400224931449", - "57624664658493943488382046526502123636674525999134370480877318121633255299999", - "115792089237316195423570985008042581378843437462327153970303678099387767205587", - "3858024691358", - "1157920892373161954235709850086879078532699846656405640394575840079131296399", - "300000000000000000" - ], - [ - "115792089237316195423570985008687907853269984665640564039457584007913129639918", - "0", - "524288", - "34207858796358477032982332199103227800680963682113900705888576394651738571131", - "29183581925083423688941024243556918472240950106681870258114121065667818400635", - "115792089237316195423570985008687907853269984665640564039457584007913129377792", - "432000", - "21435634696674590800027916253531217193574632436428147040687748880920643523928", - "67567988112992069131955541420455057704257803104991654918452448815861751437772", - "115792089237316195037597354217633923108033367970014204528557635122444582841745", - "66016723424300789742696363044751745847457905496214292633421867648266750574086", - "12412309078229156196316056744446162391428261427606540221918756082497195137490", - "115792089237316195423570985008687907853269984665640564039457584007913129638936", - "115792089237316195423570985008687907853269984665640564039457584007913129246720", - "115792089237316195423570985008687907853269984665640564039457584007334425936233", - "73472755327267776421973308026127877254448753235279241337722751419352711560487", - "53285008426236454566748051132682028847339819413115705816936981301928320165121", - "34409464797730214306226898492491677276600003951317999613796828717384507755085", - "18", - "106492840041486846078994543683459419558759103786120915856380467923469092650846", - "0", - "589822", - "0", - "115792089237316195423570985008687907853269984665640564039457584007913128430336", - "56752157347279760584061988459896466632251204665298637164382967127040309038142", - "24116738614601626636262316706834351425780113827152737585691601622391363697645", - "37746028149841154082348966465882482073739327117181144174744035728330047778262", - "208874671350783627654011619176166943532470262436182909541616019327963989612", - "65538", - "3", - "28860809708808363631733710670448367504969159117079683355777824792248834401129", - "29952", - "115792089237316195423570985008687907853269984665640564039457584007835820228608", - "327680", - "206592", - "36262485573400882232750948645659881895505511249913352717491315900047208532028", - "108176421999683139320006814703476022389868388800359599546504170566370496577026", - "115792089237316195423570985008687907853269984665640564039457584007913129035136", - "51000410365724471114008171615480931417094146778501429531564914421877702670044", - "72624422193215754516809871724903902483456835817665995577449383577115760924952", - "76701031238723218773417768598239405779816635996681302996616590477272306380746", - "65415307578738459235868647833202766791924105994209683509064890500902214077672", - "499999999999410176", - "0", - "16524496294274308083629695117967514973992333081230357627998700327075389366270", - "25076302454345532317991179453975588392049298002395798453167346953400308525773", - "115792089237316195423570985008687907853269984665640564039457584007913128430336", - "100", - "23143276188878733369855721787300701595409365797703421949038175060940957259413", - "63683295391262500040053660345123134963003649787555382418829139948715282215088", - "30972910534611766052885009708331548806574709113778432448704108758892053534717", - "106364059507797551682376345505614661870178866851126703545554566351126735737380", - "97768002048865966396787282783599486347509804181797120543182022396104440210205", - "29277865479763023002045455033991214767156294025312250057192566611586697073350", - "18302674894727366470512727863237702326500252143132806070327522819073946807535", - "68232125910207413510190944879114302259660552503671705522015289130982393687039", - "115792089237316195423570985008687907853269984665640564039457584007913129639916", - "95505427571445525419893056846665506702282003017637153120937485582407915147849", - "115792089237316195423570985008687907853269984665640564039457584007913129639934", - "115792089237316195423570985008687907853269984665640564039457584007913129312256", - "113255691315972170737655322937944226254953141932784329941672505990365420689581", - "81576691732611813889692146194915255816437478366258821000512042635575890755298", - "90877200171590040849160843100203605841964938473240840015812931459296799469221", - "115792089237316195423570985008687907853269984665640564039457584007794221121536", - "76542401327271872630188488589529724892881472353281299693975843146660569631415", - "115792089237316195423570985008687907853269984665640564039457084007913129899136", - "70148538477787196565799666202731000647153111455354485542162922151222404106428", - "115792089237316195423570985008042581378843437462327153970303678099387767205687", - "110073217712000972854737607884891458488668168943622259050931618568476051748175", - "93284867035883231638201272367118637038182490523078318328091268509490756516749", - "115792089237316195423570985008687907853269984665640564039457584007913128984576", - "57896044618658097711785492504343953926634992332820282019728792003956564852736", - "115792089237316195423570985008687907853269984665640564039457584007913129639916", - "3", - "1", - "256", - "36371971318479799428720879351150229460299372035807030410998706812223634378751" - ] - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 14210, - "blockTimestampDelay": 400573 - } -] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803601066000-a3361f1b-c64e-4877-b104-9e005664b987.json b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803601066000-a3361f1b-c64e-4877-b104-9e005664b987.json deleted file mode 100755 index befe1ae..0000000 --- a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803601066000-a3361f1b-c64e-4877-b104-9e005664b987.json +++ /dev/null @@ -1,490 +0,0 @@ -[ - { - "call": { - "from": "0x0000000000000000000000000000000000030000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x13a8b8040000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000034000000000000000000000000000000000000000000000000000000000000000170000000000000000000000000000000000000000000000000000000000d2f000ffffc0000000000000000000000000000000000000000000000000000000000181dc31bc03ad9bc8a966de91dfc8c49b929f6d5fd44a9c22a7f5bb37cebfc106ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed8ee8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6c5805bc2cfc37067e378b4feef3f3411136744d0b2851c161c601669654cf27bfe6100000000000000000000000000000000000000000000000000000000000000006cd40d93882a844c2becf361c7579664aef7a6ef6e8b79d6bf6f6f76426e9b14039e696f94058cfd274de97421f65916ac135f4d55083d357b9c1f34820c9376000000000000000000000000000000000000000000000000000000000003fffe000000000000000000000000000000000000000000000000000000000000000167e6a528e0202cf23a36eacf513eee303475d3e4c983b2ae2d616b11c440f70aaa625827d77aa233df42016988900477ead582090357ec011f404ff1f0aa321bfffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9686c2d73382b1edfa908bcaeb6b9ac0073f469887a9150c80831642e47e35a614c1bffffffffffffffffffffffffffffffffffffffffffffe48e5eb33a3a7f000000104a13a90c13653470268ea78892361e7e91e706d859aabaaf45ddd18c956640809a37cc7335cdf29b7d988dc8c05e2c1899ad1795364e6fa667088b49487472000000000000000000000000000000000000000000000000000000000000fff6fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b80756993dc4be6ecf1e46c48d6f9cae9255a8b46ef956a3d85442a5f41f70ecf93000000000000000000000000000000000000000000000000000000000076a700a77a4c48695a0407441e86efc633aee092d2ebd99c87fdfeebcd904fe33e086d000000000000000000000000000000000000000000000000000000000000001d563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd0633ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed69586530127b846a0115a3e561f49781eea70d4bcc4884906080e6adb068ff5fe13953f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b4498bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef328d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad82082401f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade0554594d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e05648dd821e471bd9a22c1f612735d2d7244c13832c4b0f28993ecafc561bfc52ae4f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cbba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c33f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8fd276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f6617237058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf259a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe2665f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a219fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb", - "dataAbiValues": { - "methodSignature": "handleCreateRequests(uint256[],bytes32[])", - "inputValues": [ - [ - "13824000", - "115791647525550000827488589184312722123641027794666345134718053606362806484993", - "58737407075920930096693749632210245280794127876199190949253348332199714210054", - "115792089237316195423570985008687907853269984665640564039457584007913128431336", - "115792089237316195423570985008687907853269984665640564039457584007913129035136", - "41504671482165347584846103287222174319130579613222615088745194098566077611617", - "0", - "49224452924880417829398231270379785502530069722970149981823851608145893694228", - "1636828073493779560152621491074002847609709387720111137750911676859097584502", - "262142", - "1", - "46995738119123743123282428161140493004285235666026628953647859202250191730442", - "77066943699312596523560233185714836616924754343478096130098486630426813805083", - "115792089237316195423570985008687907853269984665640564039457584007913129207916", - "20557653259021005890251421269967042420225955023564768794272035576696478452763", - "115792089237316195423570985008687907853269984665640563909857584007913129639936", - "7367887950809164700104084563884591449786965425123545364576065505479275931200", - "58168524174645209900719041489934173752247098791866719219864340874379345294450", - "65526", - "115792089237316195423570985008687907853269984665640564039457584007913129380736", - "53107142721938561923251317745913031228477959801596843755970727929974933606291", - "7776000", - "75752327540241786815348607290604056680494387521335977257182003214564422715501" - ], - [ - "563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe", - "27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a", - "9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd06", - "33ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865", - "30127b846a0115a3e561f49781eea70d4bcc4884906080e6adb068ff5fe13953", - "f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1", - "c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b44", - "98bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01", - "108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef32", - "8d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea", - "94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad8208240", - "1f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade05545", - "94d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056", - "48dd821e471bd9a22c1f612735d2d7244c13832c4b0f28993ecafc561bfc52ae", - "4f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa", - "9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874", - "ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cb", - "ba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c3", - "3f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8f", - "d276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99", - "fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce", - "3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb", - "4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f661723", - "7058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78", - "994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25", - "9a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe26", - "65f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a2", - "19fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c", - "51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb" - ] - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 21265, - "blockTimestampDelay": 360627 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000050000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x91e32c74e0613faa5f896b73380078af3c1ee8605eec949aaf9c8f422f264f3de916b58d4b3032484de1fb4c70c2a705584283a0288158e7d201a2526966e049d49acde5", - "dataAbiValues": { - "methodSignature": "handleCreateRequest(uint256,bytes32)", - "inputValues": [ - "101489901651207154401933345705911812335881908306802664469868899807780031346061", - "4b3032484de1fb4c70c2a705584283a0288158e7d201a2526966e049d49acde5" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 23884, - "blockTimestampDelay": 297676 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000080000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x62e8fd350000000000000000000000000000000000000000000000000000000000000000f3e0a4b7d4b9f146c330bf4206493b9644386108e6fb9dbd1ec9e9631656b911", - "dataAbiValues": { - "methodSignature": "handleOnDisputeStatusChange(uint256,uint256)", - "inputValues": [ - "0", - "110308932790717902341334723675742636402013152744066319296234386176011142609169" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 6, - "blockTimestampDelay": 447025 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000060000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xb05752f7000000000000000000000000000000000000000000000000000000000083d600ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff3cb74a490a6b235de22fdba8b11c89c1a75ba52781eaa376b8904d607971473952c39b6854fd2443ddec68f9b401b12b2c3233b939e902ba2cc4b78fc21880c9", - "dataAbiValues": { - "methodSignature": "handleOnSettleBondEscalation(uint256,uint256,uint256,uint256)", - "inputValues": [ - "8640000", - "115792089237316195423570985008687907853269984665640564039457584007913129639935", - "27462616626253393834172180586494418890954476283257859666307992469208736810809", - "37435261344928203651121242557808094327910915308413204917974281668150859169993" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 20576, - "blockTimestampDelay": 441138 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000050000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x88b05f29000000000000000000000000000000000000000000000000000000000009fffe000000000000000000000000c43801cd359a82757df4289878ce85539b0fcade000000000000000000000000000000000000000000000000000000000000006434998e76fdd43c55ad90e4a35d96044a3ebe674f5dfa103757d366102ca9f26c00000000000000000000000000000000000000000000000000000000000001000e694122e842adea5277bbbdab0b14091c2583d39824533976734442dab724e2195f41f8193b8fdb454e4c675da554f0f9409064f42db392c9ab9d5e83fad976fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe", - "dataAbiValues": { - "methodSignature": "handleSetDisputeModuleData(uint256,(address,address,uint256,uint256,uint256,uint256,uint256))", - "inputValues": [ - "655358", - { - "accountingExtension": "0xc43801Cd359A82757Df4289878CE85539B0fcAdE", - "bondEscalationDeadline": "6518348376578069825047353184871606747778953752910129049968505915388248663266", - "bondSize": "23791578983227214469447533216306682837879210004146422934780693486186688803436", - "bondToken": "0x0000000000000000000000000000000000000064", - "disputeWindow": "115792089237316195423570985008687907853269984665640564039457584007913129639934", - "maxNumberOfEscalations": "256", - "tyingBuffer": "11476126987972230713107770724661081842991657660629818104854040000448595417462" - } - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 1, - "blockTimestampDelay": 2 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000020000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xf84d6dfc00000000000000000000000000000000000000000000000006f05b59d3ad0000", - "dataAbiValues": { - "methodSignature": "handleAddEBORequestCreatorRequestModule(uint256)", - "inputValues": [ - "499999999999672320" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 12976, - "blockTimestampDelay": 472659 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000010000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x4741f6dcc0e4d0eee56b7f10aa9aefe04c4f650af62be8b532d57f12aa7ac5b950884c3a", - "dataAbiValues": { - "methodSignature": "handleSetFinalityModuleData(uint256)", - "inputValues": [ - "87248350062624793638699702709121271409886681841563726628967995216176035155002" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 29334, - "blockTimestampDelay": 296740 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000020000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x5356b681bebfb0dc367f431af08687c084e9c844567359d9793a12e0818425b7df16682a", - "dataAbiValues": { - "methodSignature": "handleAddEBORequestCreatorFinalityModule(uint256)", - "inputValues": [ - "86278129664477803463997658766424154744739678303000950581784606393529462581290" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 3566, - "blockTimestampDelay": 274227 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000040000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xaa1a5bd9ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffee0000000000000000000000000000000000000000000000000000000000000001", - "dataAbiValues": { - "methodSignature": "handleResolveDispute(uint256,uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913129639918", - "1" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 38128, - "blockTimestampDelay": 65536 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000080000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x864e2da9000000000000000000000000000000000000000000000000000000000004ff00bfa47f0f3034e3c5b418dac09c339f53fbdf69ff4b147e91a872420a6f7ed6e20000000000000000000000000000000000000000000000000000000000040000", - "dataAbiValues": { - "methodSignature": "handleArbitrateDispute(uint256,uint256,uint256)", - "inputValues": [ - "327424", - "86682393929289525193494153568452559356866521755790133919226203303415723775714", - "262144" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 28049, - "blockTimestampDelay": 147436 - }, - { - "call": { - "from": "0x00000000000000000000000000000000000a0000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x5356b681000000000000000000000000000000000000000000000000000000000000000a", - "dataAbiValues": { - "methodSignature": "handleAddEBORequestCreatorFinalityModule(uint256)", - "inputValues": [ - "10" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 21572, - "blockTimestampDelay": 167216 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000010000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xf84d6dfc87e2e521510210bb9f1efbff2cd79d7cd5675b7d503c446b0017b6bbcd5d492f", - "dataAbiValues": { - "methodSignature": "handleAddEBORequestCreatorRequestModule(uint256)", - "inputValues": [ - "61463123393503677610123184398943346662098674670775488627974437033537892600111" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 1005, - "blockTimestampDelay": 436171 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000090000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xec5bf215564402b8b5f207f4eed188f382ae7d299d56800cfcdbfbdd380f5d111164d7f3", - "dataAbiValues": { - "methodSignature": "handleFinalizeRequestResponseModule(uint256)", - "inputValues": [ - "39019069361849810475124568581956515548187837436962789536769612725416477644787" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 29390, - "blockTimestampDelay": 405151 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000050000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 2, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x2047c44964af5d348042810c6713f567b2ae0a1329f9a41a31dd65689466b80ed86a98102cf683f24338dbd0d0b4e969d552adaa1cb2ba854e7981b39db6aa7a4eb4733a4406bfd9ab92f3b803843d5137445ebcd4035dd79b752232dceb1e4a553a7fc90bc23f646eb8405f9865cad125e2b67c4cb5be6b00c8cbfeb79ac596e5fee34b", - "dataAbiValues": { - "methodSignature": "handlePay(uint256,uint256,uint256,uint256)", - "inputValues": [ - "45541126372497665840906508174782686333425760491760126897278402501345182128144", - "20337320375757040483596893633798835084481932414588544316829844888167896085306", - "30769198887980302917418981166398434808730110615619342329624446156192224018377", - "5318647182657600089902655701709793773207260177110878862668649309798760637259" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 23482, - "blockTimestampDelay": 51930 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000040000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x161c7318", - "dataAbiValues": { - "methodSignature": "test_debug()", - "inputValues": [] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 0, - "blockTimestampDelay": 0 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000070000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xf84d6dfcf6cf88d9f37a86121908cb039be9cc51a5103895c84fc649276df49538afcbad", - "dataAbiValues": { - "methodSignature": "handleAddEBORequestCreatorRequestModule(uint256)", - "inputValues": [ - "111635642607345537592182708073224837457339443516741764226233323948854559624109" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 23896, - "blockTimestampDelay": 360604 - }, - { - "call": { - "from": "0x00000000000000000000000000000000000a0000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xd1a55655000000000000000000000000000000000000000000000000000000000004839c", - "dataAbiValues": { - "methodSignature": "handleRevokeModule(uint256)", - "inputValues": [ - "295836" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 55339, - "blockTimestampDelay": 85204 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000090000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xefe223c58670cef9c731503eed4776ba6fad6b3696fa16be2eb18b465fbafeeaa0fe7be70000000000000000000000000000000000000000000000000000000000000064", - "dataAbiValues": { - "methodSignature": "handleDisputeResponseOracle(uint256,uint256)", - "inputValues": [ - "60809237075164466486500268418905379284411433772615587007980463004965951929319", - "100" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 38872, - "blockTimestampDelay": 360628 - } -] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803601793000-336e2810-dd51-4d25-9729-a91266346caf.json b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803601793000-336e2810-dd51-4d25-9729-a91266346caf.json deleted file mode 100755 index 71f1799..0000000 --- a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803601793000-336e2810-dd51-4d25-9729-a91266346caf.json +++ /dev/null @@ -1,394 +0,0 @@ -[ - { - "call": { - "from": "0x0000000000000000000000000000000000030000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x13a8b8040000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000034000000000000000000000000000000000000000000000000000000000000000170000000000000000000000000000000000000000000000000000000000d2f000ffffc0000000000000000000000000000000000000000000000000000000000181dc31bc03ad9bc8a966de91dfc8c49b929f6d5fd44a9c22a7f5bb37cebfc106ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed8ee8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b825bc2cfc37067e378b4feef3f3411136744d0b2851c161c601669654cf27bfe6100000000000000000000000000000000000000000000000000000000000000006cd40d93882a844c2becf361c7579664aef7a6ef6e8b79d6bf6f6f76426e9b14039e696f94058cfd274de97421f65916ac135f4d55083d357b9c1f34820c9376000000000000000000000000000000000000000000000000000000000003fffe000000000000000000000000000000000000000000000000000000000000000167e6a528e0202cf23a36eacf513eee303475d3e4c983b2ae2d616b11c440f70a4ac07813439b9213b22d4d86340307a2982de60c241368ad288dfea742b6eb5efffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9686c2d73382b1edfa908bcaeb6b9ac0073f469887a9150c80831642e47e35a614c1bffffffffffffffffffffffffffffffffffffffffffffe48e5eb33a3a7f000000104a13a90c13653470268ea78892361e7e91e706d859aabaaf45ddd18c956640809a37cc7335cdf29b7d988dc8c05e2c1899ad1795364e6fa667088b49487472000000000000000000000000000000000000000000000000000000000000fff6fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b80756993dc4be6ecf1e46c48d6f9cae9255a8b46ef956a3d85442a5f41f70ecf93000000000000000000000000000000000000000000000000000000000076a700a77a4c48695a0407441e86efc633aee092d2ebd99c87fdfeebcd904fe33e086d000000000000000000000000000000000000000000000000000000000000001d563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd0633ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed6958658aad3329b56f2f98187bbaed7351982ae06a00b9382adcb723b8b393d1f5e2def8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b4498bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef328d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad82082401f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade0554594d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae962914f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cbba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c33f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8fd276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f6617237058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf259a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe2665f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a219fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb", - "dataAbiValues": { - "methodSignature": "handleCreateRequests(uint256[],bytes32[])", - "inputValues": [ - [ - "13824000", - "115791647525550000827488589184312722123641027794666345134718053606362806484993", - "58737407075920930096693749632210245280794127876199190949253348332199714210054", - "115792089237316195423570985008687907853269984665640564039457584007913128431336", - "115792089237316195423570985008687907853269984665640564039457584007913129380738", - "41504671482165347584846103287222174319130579613222615088745194098566077611617", - "0", - "49224452924880417829398231270379785502530069722970149981823851608145893694228", - "1636828073493779560152621491074002847609709387720111137750911676859097584502", - "262142", - "1", - "46995738119123743123282428161140493004285235666026628953647859202250191730442", - "33811214160519685654400438720767591502827986970858420988841187408488311483230", - "115792089237316195423570985008687907853269984665640564039457584007913129207916", - "20557653259021005890251421269967042420225955023564768794272035576696478452763", - "115792089237316195423570985008687907853269984665640563909857584007913129639936", - "7367887950809164700104084563884591449786965425123545364576065505479275931200", - "58168524174645209900719041489934173752247098791866719219864340874379345294450", - "65526", - "115792089237316195423570985008687907853269984665640564039457584007913129380736", - "53107142721938561923251317745913031228477959801596843755970727929974933606291", - "7776000", - "75752327540241786815348607290604056680494387521335977257182003214564422715501" - ], - [ - "563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe", - "27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a", - "9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd06", - "33ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865", - "8aad3329b56f2f98187bbaed7351982ae06a00b9382adcb723b8b393d1f5e2de", - "f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1", - "c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b44", - "98bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01", - "108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef32", - "8d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea", - "94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad8208240", - "1f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade05545", - "94d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056", - "cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae96291", - "4f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa", - "9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874", - "ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cb", - "ba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c3", - "3f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8f", - "d276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99", - "fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce", - "3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb", - "4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f661723", - "7058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78", - "994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25", - "9a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe26", - "65f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a2", - "19fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c", - "51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb" - ] - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 21265, - "blockTimestampDelay": 360627 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000050000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x91e32c74e0613faa5f896b73380078af3c1ee8605eec949aaf9c8f422f264f3de916b58dc905ee964be623d23ba97ccc5a2b838249eaa10a8671d6a68f97b09746107abf", - "dataAbiValues": { - "methodSignature": "handleCreateRequest(uint256,bytes32)", - "inputValues": [ - "101489901651207154401933345705911812335881908306802664469868899807780031346061", - "c905ee964be623d23ba97ccc5a2b838249eaa10a8671d6a68f97b09746107abf" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 23884, - "blockTimestampDelay": 297676 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000020000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x161c7318", - "dataAbiValues": { - "methodSignature": "test_debug()", - "inputValues": [] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 0, - "blockTimestampDelay": 1 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000070000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xaa1a5bd9ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffee2cac1a259bf9695aac61487b4606621f281407f44a6d621116f436e53e00628b", - "dataAbiValues": { - "methodSignature": "handleResolveDispute(uint256,uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913129639918", - "20205843492154653597326893919151713313559584018734749877274787063574636290699" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 23891, - "blockTimestampDelay": 328958 - }, - { - "call": { - "from": "0x00000000000000000000000000000000000a0000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xec5bf215fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff60000", - "dataAbiValues": { - "methodSignature": "handleFinalizeRequestResponseModule(uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913128984576" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 23883, - "blockTimestampDelay": 276784 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000020000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xd1a55655fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe9c", - "dataAbiValues": { - "methodSignature": "handleRevokeModule(uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913129639580" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 14210, - "blockTimestampDelay": 524288 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000060000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x727899fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffb001400000000000000000000000000000000000000000000000000000000001275000000000000000000000000000000000000000000000000000000000000000000a46e28ce399e11c208b07a84e457189f5b64e15f51e128b7baf507642bfef8c6", - "dataAbiValues": { - "methodSignature": "handlePledge(uint256,uint256,uint256,uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913129312276", - "1209600", - "0", - "74373941974452021616102119156230516273735358461823357873191033522071497799878" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 1, - "blockTimestampDelay": 256 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000040000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xa44b098effffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0003", - "dataAbiValues": { - "methodSignature": "handleSetArbitrator(uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913129574403" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 43748, - "blockTimestampDelay": 541010 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000010000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x8f790139ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0", - "dataAbiValues": { - "methodSignature": "handleReleaseUnutilizedResponse(uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913129639904" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 11833, - "blockTimestampDelay": 213928 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000090000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xa59d317d7f4bab9c72ef04decea93d5f106890883b64be0e4f50aa1ceebd5a435a7fa13a0000000000000000000000001302f0402bb094e65a1c38fc8979628fa7cb7eb80000000000000000000000000000000000000000000000000000000000093a8000000000000000000000000000000000000000000000000000000000000d2f00fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff70000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff", - "dataAbiValues": { - "methodSignature": "handleSetResponseModuleData(uint256,(address,address,uint256,uint256,uint256))", - "inputValues": [ - "57577429716414119383889913852992200380066446236494108346454295294682507223354", - { - "accountingExtension": "0x1302F0402bb094e65a1c38fC8979628FA7cb7eB8", - "bondSize": "864000", - "bondToken": "0x0000000000000000000000000000000000093A80", - "deadline": "115792089237316195423570985008687907853269984665640564039457584007913129050112", - "disputeWindow": "115792089237316195423570985008687907853269984665640564039457584007913129639935" - } - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 30759, - "blockTimestampDelay": 56734 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000060000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x864e2da9ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff30838cd661e07d4920a4bce6f00da019a66f1a0c976d396f8827e2cc52ed8ce1fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff80000", - "dataAbiValues": { - "methodSignature": "handleArbitrateDispute(uint256,uint256,uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913129639935", - "21943445721707534311606538764242968064099548519492097564976924267444655983841", - "115792089237316195423570985008687907853269984665640564039457584007913129115648" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 1, - "blockTimestampDelay": 2 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000090000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x9f6259e5fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd0000ffff800000000000000000000000000000000000000000000000000000000007", - "dataAbiValues": { - "methodSignature": "handleResolve(uint256,uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913129443328", - "115791205813783806231406193359937536394012070923692126229978523204812483330055" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 23928, - "blockTimestampDelay": 603784 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000050000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x91e32c7440906eb1080127929789d55c169cd890ff51930058d460b835803e947a1382a9e3a84eb76ecf8f296e15f27686df9d7107dae93af0929c31ee8d76fd38476ee4", - "dataAbiValues": { - "methodSignature": "handleCreateRequest(uint256,bytes32)", - "inputValues": [ - "29203212251508816547276680880804676973046658682524638891611434720618890887849", - "e3a84eb76ecf8f296e15f27686df9d7107dae93af0929c31ee8d76fd38476ee4" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 8633, - "blockTimestampDelay": 384652 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000070000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xcd10417afffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00000e9d23751886f170e2b576c9a16ce5725aaa7d6b5a51829b582417606f258a52e", - "dataAbiValues": { - "methodSignature": "handleEscalateDispute(uint256,uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913128591360", - "105760313397677454187313767699264694345051805328600745402406216015374137730350" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 0, - "blockTimestampDelay": 0 - } -] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803602532000-1be16f79-52f8-40fb-91c4-ea3d3e097ca0.json b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803602532000-1be16f79-52f8-40fb-91c4-ea3d3e097ca0.json deleted file mode 100755 index dbf1328..0000000 --- a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803602532000-1be16f79-52f8-40fb-91c4-ea3d3e097ca0.json +++ /dev/null @@ -1,485 +0,0 @@ -[ - { - "call": { - "from": "0x0000000000000000000000000000000000030000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x13a8b8040000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000034000000000000000000000000000000000000000000000000000000000000000170000000000000000000000000000000000000000000000000000000000d2f000ffffc0000000000000000000000000000000000000000000000000000000000181dc31bc03ad9bc8a966de91dfc8c49b929f6d5fd44a9c22a7f5bb37cebfc106ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed8ee8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b825bc2cfc37067e378b4feef3f3411136744d0b2851c161c601669654cf27afe610000000000000000000000000000000000000000000000000000000000000000578750b27e877a957d33dc50d914b1caf972efffa4bb78b85e66dd813a864ca4039e696f94058cfd274de97421f65916ac135f4d55083d357b9c1f34820c9376000000000000000000000000000000000000000000000000000000000003fffe000000000000000000000000000000000000000000000000000000000000000167e6a528e0202cf23a36eacf513eee303475d3e4c983b2ae2d616b11c440f70a4ac07813439b9213b22d4d86340307a2982de60c241368ad288dfea742b6eb5efffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9686c2d73382b1edfa908bcaeb6b9ac0073f469887a9150c80831642e47e35a614c1bffffffffffffffffffffffffffffffffffffffffffffe48e5eb33a3a7f000000104a13a90c13653470268ea78892361e7e91e706d859aabaaf45ddd18c956640809a37cc7335cdf29b7d988dc8c05e2c1899ad1795364e6fa667088b49487472000000000000000000000000000000000000000000000000000000000000fff6fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b800000000000000000000000000000000000000000000000000329c51ac594cf93000000000000000000000000000000000000000000000000000000000076a700a77a4c48695a0407441e86efc633aee092d2ebd99c87fdfeebcd904fe33e086d000000000000000000000000000000000000000000000000000000000000001d563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd0633ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865d5d6866ffb684491364a0853403f689144f5664f5d50de1b1a30d683ff29f21bf8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b4498bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef328d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad820824094c2949304cd969b5661cff34ece28aab6ca0f3eb707dc756ae848252d66c44a94d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae96291d8c581a922d52cd477658fcc2e2ca1f954f274ed2cd833a98e6d1d4455581f9d9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cbba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c389436d2b9b4dda11f7c2a5c1ca8fb20cba7512c884b100fa143fc24dc6c160eed276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f6617237058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25bcffd3ebd814d0f5e8e8dc7ef0303a14b98e79acfcabb14c9ad4225afd8f18c265f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a219fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c18aad5c04eb3f39ce81189eee664fb350f14bd8ce4dd62972aa7de342f017c7f", - "dataAbiValues": { - "methodSignature": "handleCreateRequests(uint256[],bytes32[])", - "inputValues": [ - [ - "13824000", - "115791647525550000827488589184312722123641027794666345134718053606362806484993", - "58737407075920930096693749632210245280794127876199190949253348332199714210054", - "115792089237316195423570985008687907853269984665640564039457584007913128431336", - "115792089237316195423570985008687907853269984665640564039457584007913129380738", - "41504671482165347584846103287222174319130579613222615088745194098566077546081", - "0", - "39590299132392589184737138068833640165131826767556478003143025413084726840484", - "1636828073493779560152621491074002847609709387720111137750911676859097584502", - "262142", - "1", - "46995738119123743123282428161140493004285235666026628953647859202250191730442", - "33811214160519685654400438720767591502827986970858420988841187408488311483230", - "115792089237316195423570985008687907853269984665640564039457584007913129207916", - "20557653259021005890251421269967042420225955023564768794272035576696478452763", - "115792089237316195423570985008687907853269984665640563909857584007913129639936", - "7367887950809164700104084563884591449786965425123545364576065505479275931200", - "58168524174645209900719041489934173752247098791866719219864340874379345294450", - "65526", - "115792089237316195423570985008687907853269984665640564039457584007913129380736", - "227929974933606291", - "7776000", - "75752327540241786815348607290604056680494387521335977257182003214564422715501" - ], - [ - "563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe", - "27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a", - "9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd06", - "33ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865", - "d5d6866ffb684491364a0853403f689144f5664f5d50de1b1a30d683ff29f21b", - "f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1", - "c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b44", - "98bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01", - "108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef32", - "8d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea", - "94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad8208240", - "94c2949304cd969b5661cff34ece28aab6ca0f3eb707dc756ae848252d66c44a", - "94d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056", - "cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae96291", - "d8c581a922d52cd477658fcc2e2ca1f954f274ed2cd833a98e6d1d4455581f9d", - "9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874", - "ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cb", - "ba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c3", - "89436d2b9b4dda11f7c2a5c1ca8fb20cba7512c884b100fa143fc24dc6c160ee", - "d276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99", - "fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce", - "3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb", - "4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f661723", - "7058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78", - "994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25", - "bcffd3ebd814d0f5e8e8dc7ef0303a14b98e79acfcabb14c9ad4225afd8f18c2", - "65f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a2", - "19fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c", - "18aad5c04eb3f39ce81189eee664fb350f14bd8ce4dd62972aa7de342f017c7f" - ] - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 21265, - "blockTimestampDelay": 360627 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000020000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x161c7318", - "dataAbiValues": { - "methodSignature": "test_debug()", - "inputValues": [] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 15325, - "blockTimestampDelay": 189245 - }, - { - "call": { - "from": "0x00000000000000000000000000000000000a0000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x88b05f294e5c5739570432e46e997185cf2683c287e8339e1ce7ab9502db4f4b4f0c1b77000000000000000000000000000000000000000000000000000000000012750000000000000000000000000000000000000000000000000006f05b59d3b200003c3b20fe3c6474ef6112cec6e2e1e2a66147c502767418c32e65c3bfa035d898948fc45007206ff5c0b2215d0b5c97d5551a84ed653f28e284b8567c463ce3650000000000000000000000000000000000000000000000000000000000069780ffffffffffffffffffffffffffffffffffffffffffffffffffffffec39800000109b1ce09a2caa796f35db2570026fd5d54f3b6f79d72997e7e30411ab7bab5f", - "dataAbiValues": { - "methodSignature": "handleSetDisputeModuleData(uint256,(address,address,uint256,uint256,uint256,uint256,uint256))", - "inputValues": [ - "35443554117267417118592017165536035041230544133048285386578266163756344810359", - { - "accountingExtension": "0x0000000000000000000000000000000000127500", - "bondEscalationDeadline": "432000", - "bondSize": "27243242601887521753615714576112380311306725462768124357416761313244220872856", - "bondToken": "0x00000000000000000000000006f05b59d3b20000", - "disputeWindow": "7511066176535142771400004346711719422194606327049609712661925953610498943839", - "maxNumberOfEscalations": "67196315620416968751812103706326677402054656808860235011842083525495944438629", - "tyingBuffer": "115792089237316195423570985008687907853269984665640564039457584007828194983936" - } - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 24101, - "blockTimestampDelay": 185392 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000010000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xb6c75efa8ba080b8a5e8e7e02b35ca63d619e3bf03ea7ee17a7395426e8c0ae38903a378ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff51e8737b07890aad8af4228017f323f8ee58c58602fe8a95d9a372445358479b", - "dataAbiValues": { - "methodSignature": "handleClaimEscalationReward(uint256,uint256,uint256)", - "inputValues": [ - "63155069885073485423962987089686113899340909970551762747564159406599093592952", - "115792089237316195423570985008687907853269984665640564039457584007913129639935", - "37048046271970045328561159781521571766041874645079829392453863326819299116955" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 7, - "blockTimestampDelay": 32 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000090000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x223b137400003ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe000000000000000000000000000000000000000000000000000000000000004006807205175b22b301c32b6c5e6ee194bd596681cba8c8638952ec1250f3d6450000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000000000000000000000000000000001518000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000027874838a0b68a875ec0ee81d4c8ef1980254e8ae6eaec10d74722bac9ebd5a49a6c310208a5de1500000000000000000000000000000000000000000000000000", - "dataAbiValues": { - "methodSignature": "handleSetRequestModuleData(uint256,(uint256,string,address,uint256))", - "inputValues": [ - "441711766194596082395824375185729628956870974218904739530401550323154942", - { - "accountingExtension": "0x0000000000000000000000000000000000015180", - "chainId": "\ufffdH8\ufffd\ufffd\ufffd\ufffd^\ufffd\ufffd\ufffd\ufffd\ufffd\ufffd\u0019\ufffd%N\ufffd\ufffd\ufffd\ufffd\u0010\ufffdG\"\ufffd\ufffd\ufffdդ\ufffdl1\u0002\b\ufffd\ufffd\u0015", - "epoch": "2940820452134172681045375212785432443100619197912571245547930807664892958277", - "paymentAmount": "0" - } - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 15253, - "blockTimestampDelay": 492034 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000080000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xaa1a5bd900000000000000000000000000000000000000000000000006f05b59d3b2000071f7cd086897aaf2110bd910f953453e7bcc20e82af33eec4c00647f9fb5da5e", - "dataAbiValues": { - "methodSignature": "handleResolveDispute(uint256,uint256)", - "inputValues": [ - "500000000000000000", - "51549178199604899047887187595007193100674999475015380254417935657395983604318" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 53242, - "blockTimestampDelay": 71336 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000070000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x52e3cb9cffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffec", - "dataAbiValues": { - "methodSignature": "handleSetMaxUsersToCheck(uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913129639916" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 45495, - "blockTimestampDelay": 225944 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000090000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xdb106aceffffffffffffffffffffffffffffffffffffffffffffffffffffffec398000001371ca94900c31d8e9be66d7c23f65b05f5d33ff2b30949acfed984f87f269e080baf5544430fe321ebd2409617ef6786f5b994597bc40798f800826b310e4524793f157456609da494af2a02075c03fcf9249185214862d5dd9f0eddb7447ce", - "dataAbiValues": { - "methodSignature": "handleSlash(uint256,uint256,uint256,uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007828194983936", - "8794995999406163856009545368231505849668095829549449500668097316828300339680", - "58226371372378751290891435773627286125304890291737788253576280229276508283986", - "32375604441627796962923040660328673776239995228426910584919203216277625915342" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 49592, - "blockTimestampDelay": 581992 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000080000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x223b1374000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000408986d1481eea494dad550c07436bc6bf24fda1699ae18ac8e867c2bc2cbb811f0000000000000000000000000000000000000000000000000000000000000080000000000000000000000000148bd2b35a0e0ff5f58651fe93524e321532b27500000000000000000000000000000000000000000000000000000000001274fe000000000000000000000000000000000000000000000000000000000000001419d972fb93584a547a564eb672065531206d2c71000000000000000000000000", - "dataAbiValues": { - "methodSignature": "handleSetRequestModuleData(uint256,(uint256,string,address,uint256))", - "inputValues": [ - "0", - { - "accountingExtension": "0x148bd2b35a0e0ff5f58651fe93524E321532b275", - "chainId": "\u0019\ufffdr\ufffd\ufffdXJTzVN\ufffdr\u0006U1 m,q", - "epoch": "62205062171946186530711375116649708949236787489916806320076639634871891493151", - "paymentAmount": "1209598" - } - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 57406, - "blockTimestampDelay": 508192 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000090000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 2, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x3f60f9cc0000000000000000000000000000000000000000000000000000000000000000235c58e45e6b448123df4ec75c527147b56e207c4815f37193cfafc12fe9143343aa8e00e44758769fcba79ddc533615c240383088eacc520788ca11f978270a", - "dataAbiValues": { - "methodSignature": "handleRelease(uint256,uint256,uint256)", - "inputValues": [ - "0", - "15994113140863775377512613840889015859198326455210825118094249343807524508723", - "30606304928112969978587259490316563804100123622315096384733063005977978611466" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 14222, - "blockTimestampDelay": 506677 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000010000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xa59d317d236b70e2ac17ad29db7127993a74e4044f47fe8ce7ed46db3cd8a16c797dd6a800000000000000000000000007743aecbf6a16d4951507d7551e5a420748d15000000000000000000000000000000000000000000000000000000000000003e8a4204edf78d831e0da05471c75e00fd5486a22d4239d68dbd4e843fd299ace8efffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc00000000000000000000000000007109709ecfa91a80626ff398ab49ad330281d12d", - "dataAbiValues": { - "methodSignature": "handleSetResponseModuleData(uint256,(address,address,uint256,uint256,uint256))", - "inputValues": [ - "16020781443007852116740508170121164524726566377185661961033510726941712176808", - { - "accountingExtension": "0x07743AecBF6a16d4951507D7551e5A420748D150", - "bondSize": "74236390634738164828042936817328106253978822253810691447408898961590657404558", - "bondToken": "0x00000000000000000000000000000000000003e8", - "deadline": "115792089237316195423570985008687907853269984665640564039457584007913129377792", - "disputeWindow": "645326474426547203313410069154905908525362434349" - } - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 4534, - "blockTimestampDelay": 153607 - }, - { - "call": { - "from": "0x00000000000000000000000000000000000a0000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x3c26dcf8ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0", - "dataAbiValues": { - "methodSignature": "handleSetEpochManager(uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913129639904" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 23786, - "blockTimestampDelay": 327680 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000030000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 2, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xc5c17157bbc9215b06808392dcec2e0c7851767c42bcbb477c1c8c8d2f6788a5f1c33d9d", - "dataAbiValues": { - "methodSignature": "handleAddChain(uint256)", - "inputValues": [ - "84937869156760602001974346264518001642163336959320593474760511948578749627805" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 1000, - "blockTimestampDelay": 604800 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000070000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x0692ea7effffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0000", - "dataAbiValues": { - "methodSignature": "handleRemoveChain(uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913129574400" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 36805, - "blockTimestampDelay": 229553 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000030000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 3, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xb6c75efa91f1b7da6044090f2bc54454fe4b82551e6e3fe26925710e360197150ba6c5040000000000000000000000000000000000000000000000000000000000069780fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b80", - "dataAbiValues": { - "methodSignature": "handleClaimEscalationReward(uint256,uint256,uint256)", - "inputValues": [ - "66012442094173021184902279859918771353213111919353305006878331952590280377604", - "432000", - "115792089237316195423570985008687907853269984665640564039457584007913129380736" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 26105, - "blockTimestampDelay": 563160 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000060000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xefe223c5ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc1eab46d9a71b9fc6196bc66df97ad0229e4ed4df31cb14738c45729db851061", - "dataAbiValues": { - "methodSignature": "handleDisputeResponseOracle(uint256,uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913129639935", - "87711067258970041198538357174074530315975071051269236784798286206430053994593" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 22062, - "blockTimestampDelay": 533426 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000090000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 3, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x3edc7cbdffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9c", - "dataAbiValues": { - "methodSignature": "handleFinalizeRequestFinalityModule(uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913129639836" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 58571, - "blockTimestampDelay": 448941 - } -] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803615385000-3017e126-f28b-4de3-a2d0-55924f78cb18.json b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803615385000-3017e126-f28b-4de3-a2d0-55924f78cb18.json deleted file mode 100755 index 1d5751d..0000000 --- a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803615385000-3017e126-f28b-4de3-a2d0-55924f78cb18.json +++ /dev/null @@ -1,865 +0,0 @@ -[ - { - "call": { - "from": "0x0000000000000000000000000000000000030000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x13a8b8040000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000034000000000000000000000000000000000000000000000000000000000000000170000000000000000000000000000000000000000000000000000000000d2f000ffffc0000000000000000000000000000000000000000000000000000000000181dc31bc03ad9bc8a966de91dfc8c49b929f6d5fd44a9c22a7f5bb37cebfc106ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed8ee8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b825bc2cfc37067e378b4feef3f3411136744d0b2851c161c601669654cf27afe610000000000000000000000000000000000000000000000000000000000000000578750b27e877a957d33dc50d914b1caf972efffa4bb78b85e66dd813a864ca4039e696f94058cfd274de97421f65916ac135f4d55083d357b9c1f34820c9376000000000000000000000000000000000000000000000000000000000003fffe000000000000000000000000000000000000000000000000000000000000000167e6a528e0202cf23a36eacf513eee303475d3e4c983b2ae2d616b11c440f70a4ac07813439b9213b22d4d86340307a2982de60c241368ad288dfea742b6eb5efffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9686c2d73382b1edfa908bcaeb6b9ac0073f469887a9150c80831642e47e35a614c1bffffffffffffffffffffffffffffffffffffffffffffe48e5eb33a3a7f000000104a13a90c13653470268ea78892361e7e91e706d859aabaaf45ddd18c956640809a37cc7335cdf29b7d988dc8c05e2c1899ad1795364e6fa667088b49487472000000000000000000000000000000000000000000000000000000000000fff6fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b800000000000000000000000000000000000000000000000000329c51ac594cf93000000000000000000000000000000000000000000000000000000000076a700a77a4c48695a0407441e86efc633aee092d2ebd99c87fdfeebcd904fe33e086d000000000000000000000000000000000000000000000000000000000000001d563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd0633ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865d5d6866ffb684491364a0853403f689144f5664f5d50de1b1a30d683ff29f21bf8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b4498bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef328d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad820824094c2949304cd969b5661cff34ece28aab6ca0f3eb707dc756ae848252d66c44a94d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae96291d8c581a922d52cd477658fcc2e2ca1f954f274ed2cd833a98e6d1d4455581f9d9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cbba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c389436d2b9b4dda11f7c2a5c1ca8fb20cba7512c884b100fa143fc24dc6c160eed276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f6617237058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25bcffd3ebd814d0f5e8e8dc7ef0303a14b98e79acfcabb14c9ad4225afd8f18c265f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a219fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c18aad5c04eb3f39ce81189eee664fb350f14bd8ce4dd62972aa7de342f017c7f", - "dataAbiValues": { - "methodSignature": "handleCreateRequests(uint256[],bytes32[])", - "inputValues": [ - [ - "13824000", - "115791647525550000827488589184312722123641027794666345134718053606362806484993", - "58737407075920930096693749632210245280794127876199190949253348332199714210054", - "115792089237316195423570985008687907853269984665640564039457584007913128431336", - "115792089237316195423570985008687907853269984665640564039457584007913129380738", - "41504671482165347584846103287222174319130579613222615088745194098566077546081", - "0", - "39590299132392589184737138068833640165131826767556478003143025413084726840484", - "1636828073493779560152621491074002847609709387720111137750911676859097584502", - "262142", - "1", - "46995738119123743123282428161140493004285235666026628953647859202250191730442", - "33811214160519685654400438720767591502827986970858420988841187408488311483230", - "115792089237316195423570985008687907853269984665640564039457584007913129207916", - "20557653259021005890251421269967042420225955023564768794272035576696478452763", - "115792089237316195423570985008687907853269984665640563909857584007913129639936", - "7367887950809164700104084563884591449786965425123545364576065505479275931200", - "58168524174645209900719041489934173752247098791866719219864340874379345294450", - "65526", - "115792089237316195423570985008687907853269984665640564039457584007913129380736", - "227929974933606291", - "7776000", - "75752327540241786815348607290604056680494387521335977257182003214564422715501" - ], - [ - "563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe", - "27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a", - "9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd06", - "33ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865", - "d5d6866ffb684491364a0853403f689144f5664f5d50de1b1a30d683ff29f21b", - "f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1", - "c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b44", - "98bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01", - "108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef32", - "8d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea", - "94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad8208240", - "94c2949304cd969b5661cff34ece28aab6ca0f3eb707dc756ae848252d66c44a", - "94d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056", - "cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae96291", - "d8c581a922d52cd477658fcc2e2ca1f954f274ed2cd833a98e6d1d4455581f9d", - "9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874", - "ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cb", - "ba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c3", - "89436d2b9b4dda11f7c2a5c1ca8fb20cba7512c884b100fa143fc24dc6c160ee", - "d276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99", - "fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce", - "3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb", - "4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f661723", - "7058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78", - "994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25", - "bcffd3ebd814d0f5e8e8dc7ef0303a14b98e79acfcabb14c9ad4225afd8f18c2", - "65f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a2", - "19fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c", - "18aad5c04eb3f39ce81189eee664fb350f14bd8ce4dd62972aa7de342f017c7f" - ] - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 21265, - "blockTimestampDelay": 360627 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000020000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x161c7318", - "dataAbiValues": { - "methodSignature": "test_debug()", - "inputValues": [] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 15325, - "blockTimestampDelay": 189245 - }, - { - "call": { - "from": "0x00000000000000000000000000000000000a0000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x88b05f294e5c5739570432e46e997185cf2683c287e8339e1ce7ab9502db4f4b4f0c1b77000000000000000000000000000000000000000000000000000000000012750000000000000000000000000000000000000000000000000006f05b59d3b200003c3b20fe3c6474ef6112cec6e2e1e2a66147c502767418c32e65c3bfa035d898948fc45007206ff5c0b2215d0b5c97d5551a84ed653f28e284b8567c463ce3650000000000000000000000000000000000000000000000000000000000069780ffffffffffffffffffffffffffffffffffffffffffffffffffffffec39800000109b1ce09a2caa796f35db2570026fd5d54f3b6f79d72997e7e30411ab7bab5f", - "dataAbiValues": { - "methodSignature": "handleSetDisputeModuleData(uint256,(address,address,uint256,uint256,uint256,uint256,uint256))", - "inputValues": [ - "35443554117267417118592017165536035041230544133048285386578266163756344810359", - { - "accountingExtension": "0x0000000000000000000000000000000000127500", - "bondEscalationDeadline": "432000", - "bondSize": "27243242601887521753615714576112380311306725462768124357416761313244220872856", - "bondToken": "0x00000000000000000000000006f05b59d3b20000", - "disputeWindow": "7511066176535142771400004346711719422194606327049609712661925953610498943839", - "maxNumberOfEscalations": "67196315620416968751812103706326677402054656808860235011842083525495944438629", - "tyingBuffer": "115792089237316195423570985008687907853269984665640564039457584007828194983936" - } - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 24101, - "blockTimestampDelay": 185392 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000010000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xb6c75efa8ba080b8a5e8e7e02b35ca63d619e3bf03ea7ee17a7395426e8c0ae38903a378ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff51e8737b07890aad8af4228017f323f8ee58c58602fe8a95d9a372445358479b", - "dataAbiValues": { - "methodSignature": "handleClaimEscalationReward(uint256,uint256,uint256)", - "inputValues": [ - "63155069885073485423962987089686113899340909970551762747564159406599093592952", - "115792089237316195423570985008687907853269984665640564039457584007913129639935", - "37048046271970045328561159781521571766041874645079829392453863326819299116955" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 7, - "blockTimestampDelay": 32 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000090000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x223b137400003ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe000000000000000000000000000000000000000000000000000000000000004006807205175b22b301c32b6c5e6ee194bd596681cba8c8638952ec1250f3d6450000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000000000000000000000000000000001518000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000027874838a0b68a875ec0ee81d4c8ef1980254e8ae6eaec10d74722bac9ebd5a49a6c310208a5de1500000000000000000000000000000000000000000000000000", - "dataAbiValues": { - "methodSignature": "handleSetRequestModuleData(uint256,(uint256,string,address,uint256))", - "inputValues": [ - "441711766194596082395824375185729628956870974218904739530401550323154942", - { - "accountingExtension": "0x0000000000000000000000000000000000015180", - "chainId": "\ufffdH8\ufffd\ufffd\ufffd\ufffd^\ufffd\ufffd\ufffd\ufffd\ufffd\ufffd\u0019\ufffd%N\ufffd\ufffd\ufffd\ufffd\u0010\ufffdG\"\ufffd\ufffd\ufffdդ\ufffdl1\u0002\b\ufffd\ufffd\u0015", - "epoch": "2940820452134172681045375212785432443100619197912571245547930807664892958277", - "paymentAmount": "0" - } - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 15253, - "blockTimestampDelay": 492034 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000080000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xaa1a5bd900000000000000000000000000000000000000000000000006f05b59d3b2000071f7cd086897aaf2110bd910f953453e7bcc20e82af33eec4c00647f9fb5da5e", - "dataAbiValues": { - "methodSignature": "handleResolveDispute(uint256,uint256)", - "inputValues": [ - "500000000000000000", - "51549178199604899047887187595007193100674999475015380254417935657395983604318" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 53242, - "blockTimestampDelay": 71336 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000070000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x52e3cb9cffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffec", - "dataAbiValues": { - "methodSignature": "handleSetMaxUsersToCheck(uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913129639916" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 45495, - "blockTimestampDelay": 225944 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000090000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xdb106aceffffffffffffffffffffffffffffffffffffffffffffffffffffffec398000001371ca94900c31d8e9be66d7c23f65b05f5d33ff2b30949acfed984f87f269e080baf5544430fe321ebd2409617ef6786f5b994597bc40798f800826b310e4524793f157456609da494af2a02075c03fcf9249185214862d5dd9f0eddb7447ce", - "dataAbiValues": { - "methodSignature": "handleSlash(uint256,uint256,uint256,uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007828194983936", - "8794995999406163856009545368231505849668095829549449500668097316828300339680", - "58226371372378751290891435773627286125304890291737788253576280229276508283986", - "32375604441627796962923040660328673776239995228426910584919203216277625915342" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 49592, - "blockTimestampDelay": 581992 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000080000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x223b1374000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000408986d1481eea494dad550c07436bc6bf24fda1699ae18ac8e867c2bc2cbb811f0000000000000000000000000000000000000000000000000000000000000080000000000000000000000000148bd2b35a0e0ff5f58651fe93524e321532b27500000000000000000000000000000000000000000000000000000000001274fe000000000000000000000000000000000000000000000000000000000000001419d972fb93584a547a564eb672065531206d2c71000000000000000000000000", - "dataAbiValues": { - "methodSignature": "handleSetRequestModuleData(uint256,(uint256,string,address,uint256))", - "inputValues": [ - "0", - { - "accountingExtension": "0x148bd2b35a0e0ff5f58651fe93524E321532b275", - "chainId": "\u0019\ufffdr\ufffd\ufffdXJTzVN\ufffdr\u0006U1 m,q", - "epoch": "62205062171946186530711375116649708949236787489916806320076639634871891493151", - "paymentAmount": "1209598" - } - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 57406, - "blockTimestampDelay": 508192 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000090000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 2, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x3f60f9cc0000000000000000000000000000000000000000000000000000000000000000235c58e45e6b448123df4ec75c527147b56e207c4815f37193cfafc12fe9143343aa8e00e44758769fcba79ddc533615c240383088eacc520788ca11f978270a", - "dataAbiValues": { - "methodSignature": "handleRelease(uint256,uint256,uint256)", - "inputValues": [ - "0", - "15994113140863775377512613840889015859198326455210825118094249343807524508723", - "30606304928112969978587259490316563804100123622315096384733063005977978611466" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 14222, - "blockTimestampDelay": 506677 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000010000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xa59d317d236b70e2ac17ad29db7127993a74e4044f47fe8ce7ed46db3cd8a16c797dd6a800000000000000000000000007743aecbf6a16d4951507d7551e5a420748d15000000000000000000000000000000000000000000000000000000000000003e8a4204edf78d831e0da05471c75e00fd5486a22d4239d68dbd4e843fd299ace8efffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc00000000000000000000000000007109709ecfa91a80626ff398ab49ad330281d12d", - "dataAbiValues": { - "methodSignature": "handleSetResponseModuleData(uint256,(address,address,uint256,uint256,uint256))", - "inputValues": [ - "16020781443007852116740508170121164524726566377185661961033510726941712176808", - { - "accountingExtension": "0x07743AecBF6a16d4951507D7551e5A420748D150", - "bondSize": "74236390634738164828042936817328106253978822253810691447408898961590657404558", - "bondToken": "0x00000000000000000000000000000000000003e8", - "deadline": "115792089237316195423570985008687907853269984665640564039457584007913129377792", - "disputeWindow": "645326474426547203313410069154905908525362434349" - } - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 4534, - "blockTimestampDelay": 153607 - }, - { - "call": { - "from": "0x00000000000000000000000000000000000a0000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x3c26dcf8ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0", - "dataAbiValues": { - "methodSignature": "handleSetEpochManager(uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913129639904" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 23786, - "blockTimestampDelay": 327680 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000030000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 2, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xc5c17157bbc9215b06808392dcec2e0c7851767c42bcbb477c1c8c8d2f6788a5f1c33d9d", - "dataAbiValues": { - "methodSignature": "handleAddChain(uint256)", - "inputValues": [ - "84937869156760602001974346264518001642163336959320593474760511948578749627805" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 1000, - "blockTimestampDelay": 604800 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000070000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x0692ea7effffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0000", - "dataAbiValues": { - "methodSignature": "handleRemoveChain(uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913129574400" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 36805, - "blockTimestampDelay": 229553 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000030000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 3, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xb6c75efa91f1b7da6044090f2bc54454fe4b82551e6e3fe26925710e360197150ba6c5040000000000000000000000000000000000000000000000000000000000069780fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b80", - "dataAbiValues": { - "methodSignature": "handleClaimEscalationReward(uint256,uint256,uint256)", - "inputValues": [ - "66012442094173021184902279859918771353213111919353305006878331952590280377604", - "432000", - "115792089237316195423570985008687907853269984665640564039457584007913129380736" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 26105, - "blockTimestampDelay": 563160 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000060000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xefe223c5ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc1eab46d9a71b9fc6196bc66df97ad0229e4ed4df31cb14738c45729db851061", - "dataAbiValues": { - "methodSignature": "handleDisputeResponseOracle(uint256,uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913129639935", - "87711067258970041198538357174074530315975071051269236784798286206430053994593" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 22062, - "blockTimestampDelay": 533426 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000090000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 3, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x3edc7cbdffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9c", - "dataAbiValues": { - "methodSignature": "handleFinalizeRequestFinalityModule(uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913129639836" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 58571, - "blockTimestampDelay": 448941 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000090000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 4, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x9d2e6a6f9ad1b274a36d6422204cb38284e52c1e394b76dd420c12b133c0f54555fa8725", - "dataAbiValues": { - "methodSignature": "handleRemoveEBORequestCreatorRequestModule(uint256)", - "inputValues": [ - "70026681373776152693382902846792773999381205621007041991972413057813542766373" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 55128, - "blockTimestampDelay": 223499 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000040000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xcd10417aa9b7c8ba23219e921c8c24f084b211b31e9da2b176051da47b11bff8ff5c33212de575b81bb2e58ba5f1b8efa82a2605f4006b905e5e2cc82173eaf76a20add4", - "dataAbiValues": { - "methodSignature": "handleEscalateDispute(uint256,uint256)", - "inputValues": [ - "76765589790945662604547244204216214155946252006571676315847820028747638911777", - "20759498631951024433205069293438925811645138406748362097890303052587796049364" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 17266, - "blockTimestampDelay": 47869 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000040000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xf84d6dfc2e0a2c2d27894539cfe61cf1aa3dce6fa4cc0182d8a4f96446b30c16dcdb4280", - "dataAbiValues": { - "methodSignature": "handleAddEBORequestCreatorRequestModule(uint256)", - "inputValues": [ - "20824364399678545662833682292547392236236046121352715060387808748443780465280" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 8422, - "blockTimestampDelay": 175942 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000070000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 2, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x7aeb6fab0000000000000000000000000000000000000000000000000000000000080000861226f42b4f83fda125862408777203fcf059cc4d6afa3d8b5f14cbd0503cba", - "dataAbiValues": { - "methodSignature": "handleDisputeResponseBondEscalationModule(uint256,uint256)", - "inputValues": [ - "524288", - "60641993806473011143834861665095605796555276187455692014587155889705714728122" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 5058, - "blockTimestampDelay": 564562 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000030000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 4, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x9f6259e500000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000060000", - "dataAbiValues": { - "methodSignature": "handleResolve(uint256,uint256)", - "inputValues": [ - "262144", - "393216" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 54349, - "blockTimestampDelay": 446424 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000070000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 3, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xefe223c5ad8117bd6793da9372ee7a9f184c1f229a994a23f82083eb6803cf5612a5e084994694c28b481c29ef6ab1024c7f7ad48917e7b3644de29036693dfa1f6557a0", - "dataAbiValues": { - "methodSignature": "handleDisputeResponseOracle(uint256,uint256)", - "inputValues": [ - "78478209922765382613928019011452160112457201279089481808494135837808952467588", - "69328571831131295636312210863921518104963878476144420959825437715154096969632" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 356, - "blockTimestampDelay": 94684 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000010000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 2, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xec5bf215ffffffffffffffffffffffff8ef68f613056e57f9d900c6762970980a4e22ed3", - "dataAbiValues": { - "methodSignature": "handleFinalizeRequestResponseModule(uint256)", - "inputValues": [ - "115792089237316195423570985008042581378843437462327153970303678099387767205587" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 26236, - "blockTimestampDelay": 172938 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000040000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 2, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x727899fff514b534b61c375c439f68b334317ec7ad1c81896f2e7f7d9e2bf248e8b86bb80269a17e974e3f307c7b602e63a3a5f54ab7520e1ce48c185b85068b23a50c370000000000000000000000007109709ecfa91a80626ff3989d68f67f5b1dd12d0ce9ae7037dff0632bada0555a4b2a1709ee25a0f6d47ff213ef7dab06f13492", - "dataAbiValues": { - "methodSignature": "handlePledge(uint256,uint256,uint256,uint256)", - "inputValues": [ - "110853235481380273198257434098634459560730545434260276739156884901825263201208", - "1091259233017721395373144204062272118708516766005316865622853242594359839799", - "645326474426547203313410069153905908525362434349", - "5840633478355227696719452384365761985173515625270275222857093897003304301714" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 48302, - "blockTimestampDelay": 98481 - }, - { - "call": { - "from": "0x00000000000000000000000000000000000a0000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 2, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xc82f34f9ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffec00009c3ade46c6a10c03646645dceced151803cfed4a76a69d888d9528938805d33e", - "dataAbiValues": { - "methodSignature": "handleSettleBondEscalation(uint256,uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913128329216", - "70664815604550041696416122873938953675815643014153596578083942850550877770558" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 21405, - "blockTimestampDelay": 224071 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000070000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 4, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xd51b326a4f11ce728964fd5cfe4e67e0a4108fd7bd12e31d80bee3e9fd7503b25943d86bfffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600002fbcb13722d80a133f1e093640349fcea5017c8025ac70c52fefa1f32bef4147", - "dataAbiValues": { - "methodSignature": "handlePledgeForDispute(uint256,uint256,uint256)", - "inputValues": [ - "35764176285829964837988166432096626338604401112435149938249800147871318923371", - "115792089237316195423570985008687907853269984665640564039457584007913128984576", - "21592094227161796483602757534726537598958165417486369280358722180410608927047" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 30001, - "blockTimestampDelay": 418139 - }, - { - "call": { - "from": "0x00000000000000000000000000000000000a0000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 3, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x51b295e300000000000000000000000000000000000000000000000000000000000003a8", - "dataAbiValues": { - "methodSignature": "handleFinalize(uint256)", - "inputValues": [ - "936" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 23854, - "blockTimestampDelay": 283267 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000020000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x6b125a57fffffffffffffffffffe3bda3d84c15b95fe7640319d8a5c26029388bb4c0000", - "dataAbiValues": { - "methodSignature": "handleRemoveEBORequestCreatorFinalityModule(uint256)", - "inputValues": [ - "115792089237316195423570815840224595780479919275071395757947099535303139655680" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 132, - "blockTimestampDelay": 172800 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000050000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x6b125a57439c4dea175c1f4dc2283a0dca8df089ec1e32de1a71e6049937ba0ef888023b", - "dataAbiValues": { - "methodSignature": "handleRemoveEBORequestCreatorFinalityModule(uint256)", - "inputValues": [ - "30581126742740578579461185375868096517298438186402910784813700598662223626811" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 27956, - "blockTimestampDelay": 447027 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000070000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 5, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x64d6e6d3179a67678bb838478c44926fbd26493474eb791516d81ee5baa3765643a7f0f13935c24452e2a5faa498fca2a6c4ae1b3a3c6a9976af2868354336a0b5eae4a3df8b40fb6fcf686f1659e51d90d962d5cbfd1a55d1a1db345acbb7978cd9bd61", - "dataAbiValues": { - "methodSignature": "handlePledgeAgainstDispute(uint256,uint256,uint256)", - "inputValues": [ - "10676003636853416453138572180884583936897901964655062312574559468487432466673", - "25876816044475934884764655838030328364254713960717807302331158298975447737507", - "101111805466560395134870514718984948651558312084779106319072364710585748274529" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 9230, - "blockTimestampDelay": 259200 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000040000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 3, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x4741f6dc97ea50d8c074d187de7cfc88d0f1c34dc24db2642bef23ec1b88370e17145d67", - "dataAbiValues": { - "methodSignature": "handleSetFinalityModuleData(uint256)", - "inputValues": [ - "68713240332555606262576304945776648453307986915064085044793172925635856981351" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 12052, - "blockTimestampDelay": 19785 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000090000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 5, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x9d2e6a6f0000000000000000000000000000000000000000000006f05b59d3b200000000", - "dataAbiValues": { - "methodSignature": "handleRemoveEBORequestCreatorRequestModule(uint256)", - "inputValues": [ - "32768000000000000000000" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 0, - "blockTimestampDelay": 3 - } -] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803619106000-1075c611-326d-47eb-b752-8450c62dbeff.json b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803619106000-1075c611-326d-47eb-b752-8450c62dbeff.json deleted file mode 100755 index 9799367..0000000 --- a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803619106000-1075c611-326d-47eb-b752-8450c62dbeff.json +++ /dev/null @@ -1,1226 +0,0 @@ -[ - { - "call": { - "from": "0x0000000000000000000000000000000000030000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x13a8b8040000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000034000000000000000000000000000000000000000000000000000000000000000170000000000000000000000000000000000000000000000000000000000d2f000ffffc0000000000000000000000000000000000000000000000000000000000181dc31bc03ad9bc8a966de91dfc8c49b929f6d5fd44a9c22a7f5bb37cebfc106ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed8ee8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b825bc2cfc37067e378b4feef3f3411136744d0b2851c161c601669654cf27bfe6100000000000000000000000000000000000000000000000000000000000000006cd40d93882a844c2becf361c7579664aef7a6ef6e8b79d6bf6f6f76426e9b14039e696f94058cfd274de97421f65916ac135f4d55083d357b9c1f34820c9376000000000000000000000000000000000000000000000000000000000003fffe000000000000000000000000000000000000000000000000000000000000000167e6a528e0202cf23a36eacf513eee303475d3e4c983b2ae2d616b11c440f70a4ac07813439b9213b22d4d86340307a2982de60c241368ad288dfea742b6eb5efffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9686c2d73382b1edfa908bcaeb6b9ac0073f469887a9150c80831642e47e35a614c1bffffffffffffffffffffffffffffffffffffffffffffe48e5eb33a3a7f000000104a13a90c13653470268ea78892361e7e91e706d859aabaaf45ddd18c956640809a37cc7335cdf29b7d988dc8c05e2c1899ad1795364e6fa667088b49487472ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffee00b4fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b80756993dc4be6ecf1e46c48d6f9cae9255a8b46ef956a3d85442a5f41f70ecf93000000000000000000000000000000000000000000000000000000000076a700a77a4c48695a0407441e86efc633aee092d2ebd99c87fdfeebcd904fe33e086d000000000000000000000000000000000000000000000000000000000000001d563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd0633ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865a46715d7736dde0bcf6527392542031b42d0197ab2c1bb4c4d2d7abaed280007f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b4498bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef328d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad82082401f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade0554594d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae962914f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cbba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c33f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8fd276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f6617237058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf259a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe260d35d19771f7c1af646e114de36d19c25e3fc040b27be76073113bb33db17d5d19fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb", - "dataAbiValues": { - "methodSignature": "handleCreateRequests(uint256[],bytes32[])", - "inputValues": [ - [ - "13824000", - "115791647525550000827488589184312722123641027794666345134718053606362806484993", - "58737407075920930096693749632210245280794127876199190949253348332199714210054", - "115792089237316195423570985008687907853269984665640564039457584007913128431336", - "115792089237316195423570985008687907853269984665640564039457584007913129380738", - "41504671482165347584846103287222174319130579613222615088745194098566077611617", - "0", - "49224452924880417829398231270379785502530069722970149981823851608145893694228", - "1636828073493779560152621491074002847609709387720111137750911676859097584502", - "262142", - "1", - "46995738119123743123282428161140493004285235666026628953647859202250191730442", - "33811214160519685654400438720767591502827986970858420988841187408488311483230", - "115792089237316195423570985008687907853269984665640564039457584007913129207916", - "20557653259021005890251421269967042420225955023564768794272035576696478452763", - "115792089237316195423570985008687907853269984665640563909857584007913129639936", - "7367887950809164700104084563884591449786965425123545364576065505479275931200", - "58168524174645209900719041489934173752247098791866719219864340874379345294450", - "115792089237316195423570985008687907853269984665640564039457584007913128460468", - "115792089237316195423570985008687907853269984665640564039457584007913129380736", - "53107142721938561923251317745913031228477959801596843755970727929974933606291", - "7776000", - "75752327540241786815348607290604056680494387521335977257182003214564422715501" - ], - [ - "563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe", - "27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a", - "9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd06", - "33ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865", - "a46715d7736dde0bcf6527392542031b42d0197ab2c1bb4c4d2d7abaed280007", - "f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1", - "c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b44", - "98bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01", - "108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef32", - "8d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea", - "94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad8208240", - "1f75609c507c173f5aae6c5b095b7467bc3c68f537b152a4098190d3ade05545", - "94d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056", - "cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae96291", - "4f70566ee9124b8b992b340fa37e1a1bb22b58d6f8b369b4324445225af88baa", - "9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874", - "ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cb", - "ba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c3", - "3f80f6286a0451515f85ed4ac73ec0b08e91c2544aa6ec094cb76ae8f0ed2a8f", - "d276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99", - "fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce", - "3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb", - "4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f661723", - "7058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78", - "994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25", - "9a35f7475262524456d237345e6adf9fd3234c941242bba32a3c1c079af7fe26", - "0d35d19771f7c1af646e114de36d19c25e3fc040b27be76073113bb33db17d5d", - "19fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c", - "51732741bef3d4aaf33269e2500fef3844fbab06c790899ddc230e09110a37fb" - ] - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 21265, - "blockTimestampDelay": 360627 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000080000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x51b295e3caac5b7c00ae43f0a0d2465bc3a827daefa6255afc3feafd105a01b058af4cc3", - "dataAbiValues": { - "methodSignature": "handleFinalize(uint256)", - "inputValues": [ - "91671724510984325847623981850838041499373483072178023597879983910219265559747" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 616, - "blockTimestampDelay": 245182 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000070000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x62e8fd357410315e284ca2250b236ba99041acd7e7626e3fc66727657ddcb75ed512355238b8e299444e7771cad3e9cc9efbc8237922a7b18f034d56199ddaad5f62f70c", - "dataAbiValues": { - "methodSignature": "handleOnDisputeStatusChange(uint256,uint256)", - "inputValues": [ - "52496900712745351460185096722717982602139275703227615313943886816707427317074", - "25656183307321870319256066529210878052151786525540532817103830451324188817164" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 0, - "blockTimestampDelay": 0 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000010000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x5cc02fa53b4e8ff8cbb94866d057a07c347e0cb79a079e6c49875d6adb448ca8b36b2f93", - "dataAbiValues": { - "methodSignature": "handleSetPendingCouncil(uint256)", - "inputValues": [ - "26825265794714411535119211388793422995701606456004679527746190657884506501011" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 22951, - "blockTimestampDelay": 222797 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000090000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x7aeb6faba969b1150e65eb039223322d37083c0f930e9f96e767cfaf888c1440b89042a7ffffffffffffffffffffffffffffffffffffffffffffffffffffffbe15000000", - "dataAbiValues": { - "methodSignature": "handleDisputeResponseBondEscalationModule(uint256,uint256)", - "inputValues": [ - "76627612529152310655938988775485703136714009850335653768166292952282670580391", - "115792089237316195423570985008687907853269984665640564039457584007630014119936" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 23866, - "blockTimestampDelay": 274647 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000030000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 2, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xf4fbbf9b0000000000000000000000000000000000000000000000000000000000000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed8b007c3160c01450d95568fbc7e3fe876965aa411c1bf13d7be2baabf28cedd3012f", - "dataAbiValues": { - "methodSignature": "handleBond(uint256,uint256,uint256)", - "inputValues": [ - "0", - "115792089237316195423570985008687907853269984665640564039457584007913128430336", - "56174036476597730143689219709059961134239333858317208755745576773703517274415" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 0, - "blockTimestampDelay": 404026 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000060000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x94ae6f8c0000000000000000000000000000000000000000000000000000000000000120", - "dataAbiValues": { - "methodSignature": "handleValidateArbitrator(uint256)", - "inputValues": [ - "288" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 28898, - "blockTimestampDelay": 360593 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000020000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x0692ea7e0000000000000000000000000000000000000000000000000000000000000100", - "dataAbiValues": { - "methodSignature": "handleRemoveChain(uint256)", - "inputValues": [ - "256" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 10120, - "blockTimestampDelay": 442746 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000030000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 3, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xb05752f77477db96404997c322ba9a11ba66d9f58fa471415b5c82afcf1965a16b52aa310000000000000000000000000000000000000000000000000000000000060000a3d04e821fd24d173d46c5c6591bac6f9d3ee4250e38f6752d158a2114dae86a7312ea15e2dc75c19cc06e815ad4c43b0e39987ce5ac5a5bac39cbb127f734e6", - "dataAbiValues": { - "methodSignature": "handleOnSettleBondEscalation(uint256,uint256,uint256,uint256)", - "inputValues": [ - "52680060769579736990081276342150508425883578818293859365287572298297987213873", - "393216", - "74095040352905635550053635482030730013005988265241047193937642446333545212010", - "52049396432936944477776417116733628414171704893437425841548460736384299644134" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 23866, - "blockTimestampDelay": 360369 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000020000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x9d2e6a6fb7ab9b804f5e3b07b64589457afe860d64ca8a1102a99dc3b01e9042b84b54c8", - "dataAbiValues": { - "methodSignature": "handleRemoveEBORequestCreatorRequestModule(uint256)", - "inputValues": [ - "83076455368730213982012688072579720945989878255995701383969604691644153287880" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 3912, - "blockTimestampDelay": 284189 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000050000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x13a8b80400000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000001dfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b820000000000000000000000000000000000000000000000000000000000000000ce675a74f87f83662332b39024ab66f66d3ad8159fb92d1081e73d8747ac44a2fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa0000f99ab80a56afb5cf2d406681086184fa568b2c59b23b9eed0fb97babbdd70dcb987572aba5f9d1eb2bdfd7db4a60daa53ab31e663abe9ea14abc72f369d5dae3d49d00025d7681398c1ac8e5b18d32589a9d3aee941f68217de08b573fb0ef22270657897cfb0e6dff27bde358d9cd33988862a59eafeb150f97e1fb0bd5db1eb09668549dc88efb456b69b806d30443b7484266af42ae24fadce2ada2bf2e00ffffffffffffffffffffffff8ef68f613056e57f9d900c6762970980a4e22ed300000000000000000000000000000000000000000000000000000000000100006558973ea0cf6ef065af511cdd91dcf8ebf51e410d0e710b8482f875357b01e5a82a9a69bb78fc7065db036b90eebef2590e8a9797d50a66dfb4ab86433720e10000000000000000000000000000000000000000000000000000000000002700fffffffffffffffffffffffffffffffffffffffffffffffff90fa4a62c4e00000000000000000000000000000000000000000000000000000000000000010000688ad2bfdd1982f027350b11d5a66e4eb674020afc643610b6411864c705684cbaab39a71efe2422fd2229cf398d057b9b06ccfbe74bc3a4994ba9deed6f93052af9415df05e3b4e4bb3efd2328b1fac61e86adbbb1f32d9fe4d9fa96ef608ab9d48454c637331b80fc8bdfe0b16c68d224ae00eca2bc8b6b5b82eeb5dbb05bdffffffffffffffffffffffff8ef68f613056e57f9d900c6762970980a4e22ed3aaa89e9ec9968c5d9717eac26037a4e7abb9cc9d43af24edb06275ca7126a4c8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff2d0f6000000000000000000000000000000000000000000000000000000000009000056db5811b60eafc5a06420c40941879ca1aae8ba576dbb8f9dd9cbe1e4e187fb14c4c80ff0fa9624d2a9e63be6e238aa088864d7cd2780d36bc6dee000c42d1b000000000000000000000000000000000000000000000000000000000003f48058825231460c027d950a84d667bec6ad5f4731e0cfaef9f9b65d7008ad39ff50fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa0000000000000000000000000000000000000000000000000000000000000029f87ffe759d510e1c1d646f2c46946d2e09cce6ece48d285eecbab28b6da0aaafbe4233335f0868c51a18ff4b577aba2300ff0e1110fe6ebcf65aab5b22a0cd7af45a3243de6773b2ac820589df08ee53500a017476ffbb1bc4ceb09189a3a8688430464e8052902c1bf8131a3b65b1b8579578c0674f6b54e6508ebe3e773f92f62a3923b7d048bd00e06c64c9764f411dd42925c5a3bc087d2acf2dd45670afee5922c58e2ab2a48008017cf695319fc8f68540c785800cac4fb40071265bc6c57dd1da3996638b1d193cb3f0de7290b528e8c2553b44fdb00bd2f7afeb507f780ecfa7e55b67e34060e5a3ab3fc7c2fd6270fb027a69d0e3430e553adf6819c8dbcc8fe9ee062b2c79b12ff5516725f8025598c75085e7022536add4c3462e067f6eb57330f4a2635836735eb4e0053c2a02ad8f30b1ebb63d99a2cd2153db645c350fe8e5c04c29094fa388abef6a8faa96395cb0ff0901d9a9031f7631b22558fb38048fa6c225997c825a3070205c6bcc28d8335499c58531230e56b3a4aec270fc970dd1c77c0c5296114545b189f9c61f42ccea793f3b2f3b6c3b46fd6fb449fc87916235c006bf56db0c5c21f31410623781ece548911499cc23d8ac091676bc100d89c7174c55fa0bd83529b7e4cd0d2fb4476413f61972f0f860f6c403befbb5f69d0e304161de4e70ca3042a1d04835a72006a53c3175c5109baf4182d0da9a3e83b98e43af1ad858e630be26febe27f2c8a4f67eec52f53b0d005a92a11a1dd559351c3b253a1d1a70c23193b67441c058e70e67ac3f8ac4aee50ed009392925b73b400df2177c6a10fe1f591984b99794e9156c3bd0b4a2ed7517c12532c97966b24ef7deb1cf9e6cf37ab8f578cfd25cc9f82f16474fe7e1bde4298cc60088e914f35d7d5a66ef30363aca7be4e251f53e2f64b81e00b44a4f3ed31e5f1f4a517d25b06946975a9d79df88cf56c616ae4c81922660d533aa9317d842f948b3d2a5cab98f377cd1b719e1be52bfb774c70bd5ed589e3a4bff539f55e90e58abc8536ecc396cd34b566e938f0f4864fe1d6ff24fb8e3e3ab1b4c42b42c06700cd46a831b567bbdea115be603b7703579c8280ed0e5d4f20a9e510271e5bb61a194d5b0b205124c05d8991782e8e73158b0fd60717823b82eb7b4dd90cf778f8607913cad2914c4dfe829100903d1830199c1fbf569d6e37e2adb5d073c66fd3991eb8187063de6745dcedadabd41f6a70c7b2bc8e61d100de94b032f6d262a2e7a314c8a07740f33d9c56d018c1e78418ac315f32e91eed3eacbcded8e609c83aef09642cbfb3b717abe19c73fd5e49e008e320b3ee4ccaed6c353284dc811b9981746d05d363d35325d6f5e61340a544bf9b32b7b6cec1644b91e0b92085ff64c8d92b30f5ad1033570b6077b8bc2bb7a44a70045644d7bccb31cd1d59dc43541430d346d2a743381036d2f2e2a7a59e07c0c65de024350786615d3e7aa2c597a5d7e035e9d109e65d7d4badc94bc4bd2e55e3bc724b748e74a0fcacb73a2a9ee52f36347a5ae6072f300d6fd2f62bf08605016a6931767f353ac73babce9625b51569ab81df833bee00d3ff2bbb3badef2878a170d7d7109f33ab0f46bc96f4fc89ca727c7d8bc4282604b5bf3bbf0eea2bab4f7798601d86277e09f88645c1d56a4cae35b59d720e8b57f7e4abc5ea43a53526265c5cc4dedc5b72f127134d3d97a31a652f905f82ee74953598bf2a05f52dd89152ca9400523884d909d0469c6a966a2d841f4f01b74e98660ea5a28534174638ba83bf16343fcc653aaed6743963ad798004516fca1ba790701142e7b44788e2b9a4c6744", - "dataAbiValues": { - "methodSignature": "handleCreateRequests(uint256[],bytes32[])", - "inputValues": [ - [ - "115792089237316195423570985008687907853269984665640564039457584007913129380738", - "0", - "93359056366519978384575301215212766084552195127475241400321367131381031519394", - "115792089237316195423570985008687907853269984665640564039457584007913129246720", - "112899263945265618091091185689767054075036928377626216345331905228274830609867", - "68959065517949274316588826283101587750558165013430347817640346533866916666083", - "96167718952585367175045237006581483249627268288674080939511722496406722768674", - "17651406335742926396690394648438989354403684618877496125906122976087978138398", - "79872808473243763044716704952744950461935635665535412421360192734135943376384", - "115792089237316195423570985008042581378843437462327153970303678099387767205587", - "65536", - "45840124100760761585173752354748948632868900822901326367871013022630665716197", - "76063831858184420518861268628451249077285698597102935859033978034718219116769", - "9984", - "115792089237316195423570985008687907853269984665640564039457084007913129639936", - "65536", - "47285815686966272144121693505188799597744533049049783177959832040536684193868", - "84432718589681428792934245815119003114976466487051385221334973405702499832581", - "19437535705728302099767088929537200823274258212636994203273729259332963797163", - "71140808496164046925239908329887697304458696034799907436633500076327881606589", - "115792089237316195423570985008042581378843437462327153970303678099387767205587", - "77191109322862123514795600886680155988643876662484090273820952307332291142856", - "115792089237316195423570985008687907853269984665640564039457584007913128775926", - "589824", - "39286452316517865283766389032392547299789935223147165990478078739011264940027", - "9393939775408484523215953034946785494006122941999182174070733730995117501723", - "259200", - "40033788065363256588949523368348146912228695325379481069044606228254426791760", - "115792089237316195423570985008687907853269984665640564039457584007913129639930" - ], - [ - "f87ffe759d510e1c1d646f2c46946d2e09cce6ece48d285eecbab28b6da0aaaf", - "be4233335f0868c51a18ff4b577aba2300ff0e1110fe6ebcf65aab5b22a0cd7a", - "f45a3243de6773b2ac820589df08ee53500a017476ffbb1bc4ceb09189a3a868", - "8430464e8052902c1bf8131a3b65b1b8579578c0674f6b54e6508ebe3e773f92", - "f62a3923b7d048bd00e06c64c9764f411dd42925c5a3bc087d2acf2dd45670af", - "ee5922c58e2ab2a48008017cf695319fc8f68540c785800cac4fb40071265bc6", - "c57dd1da3996638b1d193cb3f0de7290b528e8c2553b44fdb00bd2f7afeb507f", - "780ecfa7e55b67e34060e5a3ab3fc7c2fd6270fb027a69d0e3430e553adf6819", - "c8dbcc8fe9ee062b2c79b12ff5516725f8025598c75085e7022536add4c3462e", - "067f6eb57330f4a2635836735eb4e0053c2a02ad8f30b1ebb63d99a2cd2153db", - "645c350fe8e5c04c29094fa388abef6a8faa96395cb0ff0901d9a9031f7631b2", - "2558fb38048fa6c225997c825a3070205c6bcc28d8335499c58531230e56b3a4", - "aec270fc970dd1c77c0c5296114545b189f9c61f42ccea793f3b2f3b6c3b46fd", - "6fb449fc87916235c006bf56db0c5c21f31410623781ece548911499cc23d8ac", - "091676bc100d89c7174c55fa0bd83529b7e4cd0d2fb4476413f61972f0f860f6", - "c403befbb5f69d0e304161de4e70ca3042a1d04835a72006a53c3175c5109baf", - "4182d0da9a3e83b98e43af1ad858e630be26febe27f2c8a4f67eec52f53b0d00", - "5a92a11a1dd559351c3b253a1d1a70c23193b67441c058e70e67ac3f8ac4aee5", - "0ed009392925b73b400df2177c6a10fe1f591984b99794e9156c3bd0b4a2ed75", - "17c12532c97966b24ef7deb1cf9e6cf37ab8f578cfd25cc9f82f16474fe7e1bd", - "e4298cc60088e914f35d7d5a66ef30363aca7be4e251f53e2f64b81e00b44a4f", - "3ed31e5f1f4a517d25b06946975a9d79df88cf56c616ae4c81922660d533aa93", - "17d842f948b3d2a5cab98f377cd1b719e1be52bfb774c70bd5ed589e3a4bff53", - "9f55e90e58abc8536ecc396cd34b566e938f0f4864fe1d6ff24fb8e3e3ab1b4c", - "42b42c06700cd46a831b567bbdea115be603b7703579c8280ed0e5d4f20a9e51", - "0271e5bb61a194d5b0b205124c05d8991782e8e73158b0fd60717823b82eb7b4", - "dd90cf778f8607913cad2914c4dfe829100903d1830199c1fbf569d6e37e2adb", - "5d073c66fd3991eb8187063de6745dcedadabd41f6a70c7b2bc8e61d100de94b", - "032f6d262a2e7a314c8a07740f33d9c56d018c1e78418ac315f32e91eed3eacb", - "cded8e609c83aef09642cbfb3b717abe19c73fd5e49e008e320b3ee4ccaed6c3", - "53284dc811b9981746d05d363d35325d6f5e61340a544bf9b32b7b6cec1644b9", - "1e0b92085ff64c8d92b30f5ad1033570b6077b8bc2bb7a44a70045644d7bccb3", - "1cd1d59dc43541430d346d2a743381036d2f2e2a7a59e07c0c65de0243507866", - "15d3e7aa2c597a5d7e035e9d109e65d7d4badc94bc4bd2e55e3bc724b748e74a", - "0fcacb73a2a9ee52f36347a5ae6072f300d6fd2f62bf08605016a6931767f353", - "ac73babce9625b51569ab81df833bee00d3ff2bbb3badef2878a170d7d7109f3", - "3ab0f46bc96f4fc89ca727c7d8bc4282604b5bf3bbf0eea2bab4f7798601d862", - "77e09f88645c1d56a4cae35b59d720e8b57f7e4abc5ea43a53526265c5cc4ded", - "c5b72f127134d3d97a31a652f905f82ee74953598bf2a05f52dd89152ca94005", - "23884d909d0469c6a966a2d841f4f01b74e98660ea5a28534174638ba83bf163", - "43fcc653aaed6743963ad798004516fca1ba790701142e7b44788e2b9a4c6744" - ] - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 18813, - "blockTimestampDelay": 166386 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000050000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xb6c75efa21e47192f11d3f380576fd394ec9e1b4eb90a89bceb9b651bba78bf6ab564d9dfffffffffffffffffffffffffffffffffffffffffffffffff90fa4a62c4d00002c95da414ee489142bbc6e001fef7a12692a3b9d1210170c80e8d07cec96b7c5", - "dataAbiValues": { - "methodSignature": "handleClaimEscalationReward(uint256,uint256,uint256)", - "inputValues": [ - "15329948992898956970077422041464151575333773433396765238718102692294303305117", - "115792089237316195423570985008687907853269984665640564039457084007913129574400", - "20166531891724206848272694213144022190042376042953875838430089970096862050245" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 7764, - "blockTimestampDelay": 145528 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000090000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x161c7318", - "dataAbiValues": { - "methodSignature": "test_debug()", - "inputValues": [] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 15165, - "blockTimestampDelay": 79666 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000050000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 2, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x94c9ca03", - "dataAbiValues": { - "methodSignature": "handleConfirmCouncil()", - "inputValues": [] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 18, - "blockTimestampDelay": 12967 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000080000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x9d2e6a6fb9725d6fa85600a910792fa1036f0fc5f7aeee3d8a3c5f020c4eee7ab3acd4d2", - "dataAbiValues": { - "methodSignature": "handleRemoveEBORequestCreatorRequestModule(uint256)", - "inputValues": [ - "83879942425981193648324846942207323156479086214801606686020480705403632276690" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 34946, - "blockTimestampDelay": 577539 - }, - { - "call": { - "from": "0x00000000000000000000000000000000000a0000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x3f60f9ccfffffffffffffffffffffffffffffffffffffffffffffffff90fa4a62c4dff000000000000000000000000000000000000000000000000000000000000015180106377bcc6e3833de20fde0dec86034d72977efc56ce65d621eec9aef2e6254e", - "dataAbiValues": { - "methodSignature": "handleRelease(uint256,uint256,uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457084007913129639680", - "86400", - "7412749833975990795345248015108177440376656993723510144021351295583332476238" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 16720, - "blockTimestampDelay": 129266 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000020000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 2, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xdb106ace485fa72019613288a4d464af2e38b993bd6f4e91917334b0d1a52c61978ac8a8d2d39b6fe2ce149b4c141eb36a6107fd82a5e7526b6b0b9060ad19f590c521250000000000000000000000000000000000000000000000000000000000069780341dd0fd9f3ef23b5f0565845080e00f95f62e8508ba20febb8b8b6308593a55", - "dataAbiValues": { - "methodSignature": "handleSlash(uint256,uint256,uint256,uint256)", - "inputValues": [ - "32735529026180125829021357241527250244118779294171178089592553115267256469672", - "95359575720277367758421281161102555105495114724495679053042926100061433962789", - "432000", - "23572949092085613514975120988405477088071192393031085611716095677121225636437" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 40389, - "blockTimestampDelay": 599734 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000040000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x52e3cb9c5d04a79d586d6e202ac0bf3b7e68f4375a1303a65babaf4944016b6481419266", - "dataAbiValues": { - "methodSignature": "handleSetMaxUsersToCheck(uint256)", - "inputValues": [ - "42073319140166927053960887268496944931506674334749535415241953198096253031014" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 53112, - "blockTimestampDelay": 602139 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000080000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 2, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x40605c3faf2cf332d4be6aa3f13f683b2f3927dcfd17bd3f54a714dce4631f08661b5a3e00000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000000000003c000000000000000000000000000000000000000000001b71a14cc5c581000000fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8000008f83e5e1824c2e7448d4275eb1478eab6171c49a682fbaca44925028ba6b634ac3e77046f1673cfe53d1613ee88d823fd8aad7fdbe164cb637dfd93231185710000000000000000000000000000000000000000000000000000000000090000fffffffffffffffffffffffffffffffffffffffffffffffff21f494c589c00009f6eee7e10961fd4bdef3767d64c40c41041a44c6addeb15c424f8d94e48bc0f0000000000000000000000000000000000000000000000000de0b6b3a7640000ca36abf2deffed0c5066b5dff652794584689a6c7e705862ae7f597d1feb13e000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000000000012700f8cec1bca23ec15d783db7ef8f8cd2b323c5e0d231dab89cdd395bab8f65bac2c3edd48e36942610f12c56fdc9357fb10b3a3e19be3a4066f231966c6406cf5effffffffffffffffffffffffffffffffffffffffffffc87d253162700000000093df552fbae09922d5e1344f074adbf47a846017eb175b4402261497333a2055a4d33262e07685ce10e34f6961b25194b96689b2a080e5978b2503a001cff5246a2026be7cf65c6125395dd3bc1eb0c4f1cb378693a5f9b0d7b6653b198dafb7dfd2097d05560b48c451fde495c0ce47901168cca4573e1d273864cea467a8554643a7c00f45a9c007353f2f8ca155cafb190aa7ee8bc474573d7373c863ab3700000000000000000000000000000000000000000000000000000000000000230000000000000000000000000000000000000000000000000000000000000000fffffffffffffffffffffffffffffffffffffffffffffffff90fa4a62c4e0000fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc00007c26e68c22654056c9c7702aad1aa4eb1e874e2c5a7a20dcd3ccc3235bfaca46000000000000000000000000000000000000000000000000000000460000000071ecfe0fc25f5a80cc385509ba80f4ffb79779b42f787513c5d5695172cacf5bd11c1220171fc7f914eff9884727a5769f2b8e2d87e0c22f70fc2eedec98f47971cfcf2f40fd975cf40b591f12bcad2627a1d305e669ab648a6d1d6e9e8ba228db79eb5fdad89f08678f0421eebe41120e329edf9435dd8993b8f86fa6a5e606b92565b5ec953a8bdc7dcfadf6dc773c57ec40957931aff64bf580bd469d73f5fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff900000b23ad6af11c884d96e499df75402570d05d525bf13bffdd005aba9c2f4d4d1e0000000000000012725dd1d243aba0e75fe645cc4873f9e65afe688c928e1f2100000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000030000088ea18fb122584b1efa4d9e532c2d7376b9f0c47ff2eadf136d21989711216eb9716cdd484bb8bbe02ab9174b86bd7b509bd2eeb30877a23d529a1a43c1292a0000000000000000000000000000000000000000000000000000000000000020256038ae865306af96b60f1ff7f5f081cf29f9d852b575755ccb4accb34c440effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00f1e89b7d2ae0d60246f6b9863d6666883f2d35880bb617df8c197ea6a6f3bac319717d397a1e43d1ec8630e471a8adeb41f8ffa88fe8815a4248d755c19e6c2b00000000000000000000000000000000000000000000000000000000000000c47e910dd1a6977f98a111add8eb5444304438c90e3a7966b0e784c222e1e04f360000000000000000000000000000000000000000000000000000000000070000f3657bb93d92c779a7b3185266b8f8f8dab51c3837de27303ce3ed22b7c8232a6a906f04eb8e4039b614701bfea32b7ba4a2f3552a2c30f4c306ab2f2ed00e61fffffffffffffffffffffffffffffffffffffffffffffffff21f494c589c0000f2aeddbdc99b983797d26060078418723a7fc368f920516f8db6a0f8da37726c31373ee7f75e203fd4190399cec9ec1168f34323e93b89896930b25dd042c4ca5227a0cf23b80943a5950a8a918993cbb07a34c40b95fba67d521e49532ec56e00000000000000000000000000000000000000000000000000000000000d2f00fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9649800000000000000000000000000000000000000000000000000000000001fa400ea8aafc25424af88048ec96fd9ff8565e5e76a86744505329081bc2f1c426e797f666785d36b7006166b3640a4320dffa47ca2708b45eeef576d547c61209b9fffffffffffffffffffffffff8ef68f613056e57f9d900c6762970980a4e22ed3000000000000000000000000000000000000000000000000000003824430f69e028f5c28f5c28f5c28f5c28f5c28f5c28f5c28f5c28f5c28f5c28f5c28f5c28f0000000000000000000000000000000000000000000000000429d069189e0000000000000000000000000000000000000000000000000000000000000000004dffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffee000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000800004ba0f6427e3508d8bd04b36abd26f824e48305823859cb7b5564c67168d0017b4085526fc18f9177aff8ce39103da1f9971495b564928a93c75f38b11297ab7bfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc000000000000000000000000000000000000000000000000000000000000000697802f6423a89ba203deca11a1e637c14b3cd81945e8ddefaf89925c08901762555895622042fb9be61a1c172f8bc46ed4e946fc0edec8916bd330f619d53d9159ccffffffffffffffc282c7449873c3e7a76b006cac63d2bf0026054e2b6cd0ed9191f4242dbc893426f41de7e20a15eaa229434100aa190cbfdfa26c71bebabe061b711e33c5a2626a21641421aae78ad10302c3e4b68e0084326ce1a976ecd9d2fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc18fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa0000ffffffffffffffffffffffffffffffffffffffffffffffffffffff7942924169a2701b17adb49021260199c82feb263dae20dfb1f06f6d7b0e281b9bdd61fd2775ce3ef9f0b5c0c01dc8a2a4816283877ed45116d47568bec7b63dd5138de5014c131120b22f2a6188fc709abab26e2493c64a0a47d68524e454a808e9d68a4d0000000000000000000000000000000000000000000000000000000000000012eb70cfbcdc4cd24d362862bb16dd8354de5c369027336f4ddbea81c90fc5ff5e0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008fffe0000000000000000000000000000000000000000000000000000000000000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed8b007d78952ef91d5b6abe516ac64db444e3979fd26dca0df8c7995a2c199d038c3e3551972009bb26ba918f6da4305f8f74758d7998388287d7bc569f242db37bed53737eadc62c4e9c12e0eaeb0d3f291ca3d6a6736abe2fff500d5995b84a6dd600763808282f4724a7f5980b0fde1691a8ec464e20d6161bf3806d15f485866c000000000000000000000000000000000000000000000000000000000001000200000000000000000000000000000000000000000000000000000000000000033fcea3b0db78d1875e79b1354a2407d71f81529bd4b8d9e53648947656a923690000000000000000000000000000000000000000000000000000000000007500ffffffffffffffffffffffffffffffffffffffffffffffffffffffee0000000000000000000000000000000000000000000000000000000000000000000500000000000000000000000000000000000000000000000000000000000000032700502bd6e947dd8d5f04af7e204d2f8fda4599e101b7d8f26a70b66100ed50c83cef29af6267e45562d930be4d012c9990e9f3ec312fd1fb1250d2f24941337e02fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6c58070c1359629497822e1f9451d29df743ae330181bc9e2b10c549974773e8036dca08ff75ee457748096c6c1f4780e2f123afe03bd9044610c1f6bf171c8ea1918a9933ec858ef5823627e1952d0f024adf07d4fb760118799b53f281c64e36fca909fc08433a01c2f761ec47689e0e4afcf53553aa23a009cdf034acc2cc28ce800000000000000000000000000000000000000000000000006f05b59d3a90000000000000000000000000000000000000000000000000000000000000000000024888890ead6a3fa688eea15c1fb851c542c73063e36b474f733e77cc1e3dffe3770af29006695416eb06d59ee21b71f351d172b306175ce5098c4dafc5ceacdffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed8b000000000000000000000000000000000000000000000000000000000000000064332aa14fde53e1900e8b9e18e67ebbe584887125c7c87df20e55e7d2ccc596958ccb77c59cf7412d78e3502ca4ed593c96d7889d3aa7e2f35af20e45fb3f30b0447a0bce98c36c3f1464d030d94e1faa4cf1282192d66dc267208a05c20417fdeb27ec9d62517b40aa048bad057b792ea4b5570140d61938df4e248e9f41d224d826ba696696ef5c2f84a5bfa22440b058ead7b89ee23930cf5834e89ffae31d40baaf432a54fdc1149e61a4c275de983dc6e109fdee048e1db1fceec55312c62876f266ef80348000d46774154ffe91a79395f18511d8e4dbf5524576e1ecef96da03c301964363dd537b3d196514d16428949f3e7677accc3a4cb7b53eabffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffecd3262809b86aae0f6733691180bc3d4d28aa37b824be525776cf70cf5dfa1249fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffffffffffffffffffffffffffffffffffffffffffffffffffffffffb0000fa64731c4bac6932747b966f080ff4b69feea1ff4b5a34c11a499e46984b98adb45ac57345fa90da513dba9ee818309393b78a691fea587e6709af7e00c33ee2c8eaac2a564ea749c4f885df3f46c1b11bde75aa4c71483d327a89c0a107aea5ffffffffffffffffffffffffffffffffffffffffffffffffffffffe450800000a93976c1ea3eab6d00cc0755bddd65e8d9fdc33a21c2244a148af731cccb4ab7fffffffffffffffffffffffffffffffffffffffffffffffff90fa4a62c51f4809b16aa6fd5ddc427ff517fc492793a03d0d1053e9c7d646d348b1f6c819ec8bcffffffffffffffffffffffff8ef68f613056e57f9d900c6762970980a4e22f37f35b3bc1a21297e47c7ffb746b9f0392c95c41bffc375673d43fbb56fb3db54fce3d5d19c16c9ebb75ad9e08868f532e1c3cef92c2c9815209447828bae8fb8dfffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600008000000000000000000000000000000000000000000000000000000000008000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffec0000000000000000000000000000000000000000000000000000000000000003000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000001005069ce6545751092cbc2eff7f8a196368084a8d6575e723789a0a8550ab98fff", - "dataAbiValues": { - "methodSignature": "handleAmendEpoch(uint256,uint256[],uint256[])", - "inputValues": [ - "79234168267686009005088260694588693407234102385107460922602254484253129267774", - [ - "129600000000000000000000", - "115792089237316195423570985008687907853269984665640564039457584007913129115648", - "4057111305782275886571448300120152255027125755784863430760218107684929844788", - "77908175901692034127470361839288991262578550865601348498225359157260673189233", - "589824", - "115792089237316195423570985008687907853269984665640564039456584007913129639936", - "72113742116195548480853306837104241632999023982387119790698814234496216906767", - "1000000000000000000", - "91463791901734848429633524612431015587287462192412548639048745950508510548960", - "524288", - "75520", - "112538894066595722788315856528659501863855106263622911153991922780102220692162", - "88621215232375177742539071784431089817151237292122275030738334703048582418270", - "115792089237316195423570985008687907853269984665640563777313584007913129639936", - "66884583572423189936125899179878352008538100011771012405602043541671303061589", - "74552459651354750430174029843320369767657394133388412894085302753361367397668", - "48001968457810261411432527469825735958997723895879576113893948479301808402359", - "101236868603944277764776604371323779743105874173437918010876456299226217293909", - "31781435923726815159842015427101927434769505588009900572451953949977556003639", - "35", - "0", - "115792089237316195423570985008687907853269984665640564039457084007913129639936", - "115792089237316195423570985008687907853269984665640564039457584007913129377792", - "56155524592461176289193537074028160427039803039682165510113327887820869257798", - "300647710720", - "51530081265637896148265832957451117723923258375630496683253581940896230461275", - "94582982168304262223100306942296660289078495773942778513563741163193733018745", - "51478519167773814506353660548389024638097489026918201160503420063837816857128", - "99271926829207145105184311505618387825667524547266582325691221310367712273926", - "83743952310347544629337739241152284883214803800419070987633781806314039374837", - "115792089237316195423570985008687907853269984665640564039457584007913129181184", - "5038477866947515063779293836246906523661855668185302495208724210093145279774", - "115792089237316195423570985008687907853269984665640564039457", - "393216", - "196608", - "3870510126953272661260638544693110069552065422800236658373254995620968604014", - "83878282060591541165988934124893916466315011269761026377742732144499153250602", - "32", - "16905583918771723668203985488747601465300647358530698843745608175382153675790", - "115792089237316195423570985008687907853269984665640564039457584007913129639680", - "109418378172788479097976565158528463610367949333061091923009466030448721509059", - "11508339200772475836942584238735894096008812481055785241282078323770931440683", - "196", - "57247707120759955627861231083084937748463087404077160699542249942796596170550", - "458752", - "110091327668151569106656212371076950581517323424359657707275495659861304681258", - "48200354153645512092405378017278029286888535380384921634095420105910299659873", - "115792089237316195423570985008687907853269984665640564039456584007913129639936", - "109768671149026244196282058166387480657505063313740248501133168879717647348332", - "22260940331214902517078698554353337789774274525293014376850280696039113671882", - "37159670483240285730959311945893306683001739244975476702270549393749637514606", - "864000", - "115792089237316195423570985008687907853269984665640564039457584007913129206936", - "2073600", - "106086244508125417801857301639214534862807360304915830734311681226400224931449", - "57624664658493943488382046526502123636674525999134370480877318121633255299999", - "115792089237316195423570985008042581378843437462327153970303678099387767205587", - "3858024691358", - "1157920892373161954235709850086879078532699846656405640394575840079131296399", - "300000000000000000" - ], - [ - "115792089237316195423570985008687907853269984665640564039457584007913129639918", - "0", - "524288", - "34207858796358477032982332199103227800680963682113900705888576394651738571131", - "29183581925083423688941024243556918472240950106681870258114121065667818400635", - "115792089237316195423570985008687907853269984665640564039457584007913129377792", - "432000", - "21435634696674590800027916253531217193574632436428147040687748880920643523928", - "67567988112992069131955541420455057704257803104991654918452448815861751437772", - "115792089237316195037597354217633923108033367970014204528557635122444582841745", - "66016723424300789742696363044751745847457905496214292633421867648266750574086", - "12412309078229156196316056744446162391428261427606540221918756082497195137490", - "115792089237316195423570985008687907853269984665640564039457584007913129638936", - "115792089237316195423570985008687907853269984665640564039457584007913129246720", - "115792089237316195423570985008687907853269984665640564039457584007334425936233", - "73472755327267776421973308026127877254448753235279241337722751419352711560487", - "53285008426236454566748051132682028847339819413115705816936981301928320165121", - "34409464797730214306226898492491677276600003951317999613796828717384507755085", - "18", - "106492840041486846078994543683459419558759103786120915856380467923469092650846", - "0", - "589822", - "0", - "115792089237316195423570985008687907853269984665640564039457584007913128430336", - "56752157347279760584061988459896466632251204665298637164382967127040309038142", - "24116738614601626636262316706834351425780113827152737585691601622391363697645", - "37746028149841154082348966465882482073739327117181144174744035728330047778262", - "208874671350783627654011619176166943532470262436182909541616019327963989612", - "65538", - "3", - "28860809708808363631733710670448367504969159117079683355777824792248834401129", - "29952", - "115792089237316195423570985008687907853269984665640564039457584007835820228608", - "327680", - "206592", - "36262485573400882232750948645659881895505511249913352717491315900047208532028", - "108176421999683139320006814703476022389868388800359599546504170566370496577026", - "115792089237316195423570985008687907853269984665640564039457584007913129035136", - "51000410365724471114008171615480931417094146778501429531564914421877702670044", - "72624422193215754516809871724903902483456835817665995577449383577115760924952", - "76701031238723218773417768598239405779816635996681302996616590477272306380746", - "65415307578738459235868647833202766791924105994209683509064890500902214077672", - "499999999999410176", - "0", - "16524496294274308083629695117967514973992333081230357627998700327075389366270", - "25076302454345532317991179453975588392049298002395798453167346953400308525773", - "115792089237316195423570985008687907853269984665640564039457584007913128430336", - "100", - "23143276188878733369855721787300701595409365797703421949038175060940957259413", - "63683295391262500040053660345123134963003649787555382418829139948715282215088", - "30972910534611766052885009708331548806574709113778432448704108758892053534717", - "106364059507797551682376345505614661870178866851126703545554566351126735737380", - "97768002048865966396787282783599486347509804181797120543182022396104440210205", - "29277865479763023002045455033991214767156294025312250057192566611586697073350", - "18302674894727366470512727863237702326500252143132806070327522819073946807535", - "68232125910207413510190944879114302259660552503671705522015289130982393687039", - "115792089237316195423570985008687907853269984665640564039457584007913129639916", - "95505427571445525419893056846665506702282003017637153120937485582407915147849", - "115792089237316195423570985008687907853269984665640564039457584007913129639934", - "115792089237316195423570985008687907853269984665640564039457584007913129312256", - "113255691315972170737655322937944226254953141932784329941672505990365420689581", - "81576691732611813889692146194915255816437478366258821000512042635575890755298", - "90877200171590040849160843100203605841964938473240840015812931459296799469221", - "115792089237316195423570985008687907853269984665640564039457584007794221121536", - "76542401327271872630188488589529724892881472353281299693975843146660569631415", - "115792089237316195423570985008687907853269984665640564039457084007913129899136", - "70148538477787196565799666202731000647153111455354485542162922151222404106428", - "115792089237316195423570985008042581378843437462327153970303678099387767205687", - "110073217712000972854737607884891458488668168943622259050931618568476051748175", - "93284867035883231638201272367118637038182490523078318328091268509490756516749", - "115792089237316195423570985008687907853269984665640564039457584007913128984576", - "57896044618658097711785492504343953926634992332820282019728792003956564852736", - "115792089237316195423570985008687907853269984665640564039457584007913129639916", - "3", - "1", - "256", - "36371971318479799428720879351150229460299372035807030410998706812223634378751" - ] - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 14210, - "blockTimestampDelay": 400573 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000080000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 3, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xefe223c53a081d828024921fb3e3683ee9c830c9ef8fe7170b756ea62bd96e34e3b5815efcd959d04e5e2bb935b8d78af63ef65d615f65b47539442594d9d77842991252", - "dataAbiValues": { - "methodSignature": "handleDisputeResponseOracle(uint256,uint256)", - "inputValues": [ - "26248483663279818942769151459442293438689108851134711186925856570646541467998", - "114366863527386908765268916558662682870996281964872496749692396286780789822034" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 22904, - "blockTimestampDelay": 426359 - }, - { - "call": { - "from": "0x00000000000000000000000000000000000a0000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x94c9ca03", - "dataAbiValues": { - "methodSignature": "handleConfirmCouncil()", - "inputValues": [] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 47590, - "blockTimestampDelay": 385660 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000030000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 4, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x161c7318", - "dataAbiValues": { - "methodSignature": "test_debug()", - "inputValues": [] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 21016, - "blockTimestampDelay": 327698 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000090000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 2, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xa59d317db0e96ec45f70ab1a6b185bc8774865b3d4442a4eae0912cd756a58dd44ddc85600000000000000000000000002dbda51f6437fdf1e44affb97108ea687053adc000000000000000000000000e106fb87761caff2d1021dae243c793900fe4fd3fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeae800000000000000000000000000000000000000000000000000000000000020000fffffffffffffffffffffffffffffffffffffffffffffffff21f494c5892c580", - "dataAbiValues": { - "methodSignature": "handleSetResponseModuleData(uint256,(address,address,uint256,uint256,uint256))", - "inputValues": [ - "80019501203046958414394083451296369194874809996177420511204869599524250568790", - { - "accountingExtension": "0x02DBdA51F6437FDF1e44Affb97108ea687053adC", - "bondSize": "115792089237316195423570985008687907853269984665640564039457584007913129553536", - "bondToken": "0xE106Fb87761CAff2D1021dae243C793900FE4fD3", - "deadline": "131072", - "disputeWindow": "115792089237316195423570985008687907853269984665640564039456584007913129035136" - } - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 58748, - "blockTimestampDelay": 468302 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000090000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 3, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x5356b68100002aaaaaaaaaaaaaaaaaaaaaaa97d3c29032b9263fef9802113b192c401b7b", - "dataAbiValues": { - "methodSignature": "handleAddEBORequestCreatorFinalityModule(uint256)", - "inputValues": [ - "294474510796397388263882916788845269212960402075010055466470535531076475" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 31003, - "blockTimestampDelay": 360622 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000050000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 3, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x8f7901394925ff1fabdf3b9d527631e86f50c69fb786e3cc228f43c5735c956e5508d302", - "dataAbiValues": { - "methodSignature": "handleReleaseUnutilizedResponse(uint256)", - "inputValues": [ - "33085972087152259398148350074173106701657181330427390166930419516768067834626" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 26544, - "blockTimestampDelay": 136959 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000020000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 3, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xf6424e9bffffe00000000000000000000000000000000000000000000000000000000001ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffb800002aee4fcf576c5dea63797d217f235698ebd8cdd524db712f1296991b09598746", - "dataAbiValues": { - "methodSignature": "handleProposeResponse(uint256,uint256,uint256)", - "inputValues": [ - "115791868381433098125529787096500314988455506230153454587087818807137968062465", - "115792089237316195423570985008687907853269984665640564039457584007913124921344", - "19418200069791549251573263598653038858089745834953586683332351663093031995206" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 4532, - "blockTimestampDelay": 17718 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000050000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 4, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x48a41c27e43b2b1d328dee8e830879ac3e2b9df761fc4a14a6ae5ee3b89af83d2aeef730000000000000000000000000000000000000000000000000000000000003f4806b57ef5c3a635d84449b97cd66554b160268e4143a35cef59db2db750a404fc0", - "dataAbiValues": { - "methodSignature": "handlePropose(uint256,uint256,uint256)", - "inputValues": [ - "103231871016062028531064071152861392754600756700206012478131799386887709194032", - "259200", - "48552842496886188745291309869104770288336858018271129304343490604919439773632" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 8721, - "blockTimestampDelay": 360624 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000070000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xf6424e9b00000000000000000000000000000000000000000000000000000000000000120000000000000000000000000000000000000000000000000000000000000001a1d0a78419e659224765d2783070264b6e3cbdeebe5a666256d4c0d90dac2a90", - "dataAbiValues": { - "methodSignature": "handleProposeResponse(uint256,uint256,uint256)", - "inputValues": [ - "18", - "1", - "73191028964460233593113434797713296606570423639561929865580574633996067809936" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 5055, - "blockTimestampDelay": 327680 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000070000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 2, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x3edc7cbd6958e2a8bec647797b1b8d67b5b689a06e4b0ebe48b60c0c3236339998b513c1", - "dataAbiValues": { - "methodSignature": "handleFinalizeRequestFinalityModule(uint256)", - "inputValues": [ - "47649895986979786096688120517291916155931486675728401123136021757509814784961" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 1, - "blockTimestampDelay": 8 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000080000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 4, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x0fb550870000000000000000000000000000000000000000000000000000000000020000", - "dataAbiValues": { - "methodSignature": "handleApproveModule(uint256)", - "inputValues": [ - "131072" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 50125, - "blockTimestampDelay": 572210 - }, - { - "call": { - "from": "0x00000000000000000000000000000000000a0000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 2, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x161c7318", - "dataAbiValues": { - "methodSignature": "test_debug()", - "inputValues": [] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 15166, - "blockTimestampDelay": 501398 - }, - { - "call": { - "from": "0x00000000000000000000000000000000000a0000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 3, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x88b05f29fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff2d100000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000006f05b59d3b20000fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6c580fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff80002fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0a80000000000000000000000000000000000000000000000000000000000005ae80fffffffffffffffffffffffffffffffffffffffffffffffffbd62f96e761fffe", - "dataAbiValues": { - "methodSignature": "handleSetDisputeModuleData(uint256,(address,address,uint256,uint256,uint256,uint256,uint256))", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913128775936", - { - "accountingExtension": "0x0000000000000000000000000000000000020000", - "bondEscalationDeadline": "115792089237316195423570985008687907853269984665640564039457584007913129380480", - "bondSize": "115792089237316195423570985008687907853269984665640564039457584007913129035136", - "bondToken": "0x00000000000000000000000006f05b59d3b20000", - "disputeWindow": "115792089237316195423570985008687907853269984665640564039457284007913129639934", - "maxNumberOfEscalations": "115792089237316195423570985008687907853269984665640564039457584007913129115650", - "tyingBuffer": "372352" - } - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 8721, - "blockTimestampDelay": 164017 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000040000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x52e3cb9c0000000000000000000000000000000000000000000000000000000000026880", - "dataAbiValues": { - "methodSignature": "handleSetMaxUsersToCheck(uint256)", - "inputValues": [ - "157824" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 29918, - "blockTimestampDelay": 360626 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000090000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 4, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x91e32c74fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd00008b2f504a4886d33cd469df19bfc32eba3779a7310ec1722a15121f5054513179", - "dataAbiValues": { - "methodSignature": "handleCreateRequest(uint256,bytes32)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913129443328", - "8b2f504a4886d33cd469df19bfc32eba3779a7310ec1722a15121f5054513179" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 377, - "blockTimestampDelay": 1000 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000070000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 3, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x864e2da90000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000003f480de6deef4c262a02d1f4bda352984d86fd869a14691a94439107158d74c5c1fd7", - "dataAbiValues": { - "methodSignature": "handleArbitrateDispute(uint256,uint256,uint256)", - "inputValues": [ - "2", - "259200", - "100607687929874661888418568661020325420350303704691485588886032412608028221399" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 4369, - "blockTimestampDelay": 453266 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000060000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x864e2da9604929f514cd72e1360f1d390baf51677176a6697e70e82bb9ce3146e15f3aa200000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000", - "dataAbiValues": { - "methodSignature": "handleArbitrateDispute(uint256,uint256,uint256)", - "inputValues": [ - "43551302878700309751465049940172781782590258137281385509759150610741639199394", - "2", - "0" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 0, - "blockTimestampDelay": 0 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000060000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 2, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xc5c17157f4be88a44d136c69ee53db4fd74b38e9bf32139950068f561dbef47ed1bd8973", - "dataAbiValues": { - "methodSignature": "handleAddChain(uint256)", - "inputValues": [ - "110700979063676345534466355249276805376668590527194368940538449802091952966003" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 57589, - "blockTimestampDelay": 423465 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000010000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xdb106acefffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed4858b9e35f1b33c1f713b9d02d61a28d487272d8586e5fbfe7544f0604a9e7c64fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffaf480000000000000000000000000000000000000000000004563918244f400000000", - "dataAbiValues": { - "methodSignature": "handleSlash(uint256,uint256,uint256,uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913129639636", - "60404292533832586578238192527676098722506526996609456400172227640449105296484", - "115792089237316195423570985008687907853269984665640564039457584007913129309312", - "327680000000000000000000" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 51115, - "blockTimestampDelay": 495910 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000040000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 2, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x4741f6dc00000000000000000000000000000000000000000000000000000000000d2f00", - "dataAbiValues": { - "methodSignature": "handleSetFinalityModuleData(uint256)", - "inputValues": [ - "864000" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 48291, - "blockTimestampDelay": 575782 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000030000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 5, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x52e3cb9c6a282d9143762774ef58fb6edafdc2e9c4160dc11640a5c6518a3577ec00aa58", - "dataAbiValues": { - "methodSignature": "handleSetMaxUsersToCheck(uint256)", - "inputValues": [ - "48016150327299774183799517909410866737169299315003449758719295823099925146200" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 60205, - "blockTimestampDelay": 321792 - } -] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803628684000-d5281764-a7b2-4459-a57a-1d3573814c84.json b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803628684000-d5281764-a7b2-4459-a57a-1d3573814c84.json deleted file mode 100755 index 3d9e87b..0000000 --- a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803628684000-d5281764-a7b2-4459-a57a-1d3573814c84.json +++ /dev/null @@ -1,1623 +0,0 @@ -[ - { - "call": { - "from": "0x0000000000000000000000000000000000030000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x13a8b8040000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000034000000000000000000000000000000000000000000000000000000000000000170000000000000000000000000000000000000000000000000000000000d2f000ffffc0000000000000000000000000000000000000000000000000000000000181dc31bc03ad9bc8a966de91dfc8c49b929f6d5fd44a9c22a7f5bb37cebfc106ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed8ee8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b825bc2cfc37067e378b4feef3f3411136744d0b2851c161c601669654cf27afe610000000000000000000000000000000000000000000000000000000000000000578750b27e877a957d33dc50d914b1caf972efffa4bb78b85e66dd813a864ca4039e696f94058cfd274de97421f65916ac135f4d55083d357b9c1f34820c9376000000000000000000000000000000000000000000000000000000000003fffe000000000000000000000000000000000000000000000000000000000000000167e6a528e0202cf23a36eacf513eee303475d3e4c983b2ae2d616b11c440f70a4ac07813439b9213b22d4d86340307a2982de60c241368ad288dfea742b6eb5efffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9686c2d73382b1edfa908bcaeb6b9ac0073f469887a9150c80831642e47e35a614c1bffffffffffffffffffffffffffffffffffffffffffffe48e5eb33a3a7f000000104a13a90c13653470268ea78892361e7e91e706d859aabaaf45ddd18c956640809a37cc7335cdf29b7d988dc8c05e2c1899ad1795364e6fa667088b49487472000000000000000000000000000000000000000000000000000000000000fff6fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b800000000000000000000000000000000000000000000000000329c51ac594cf93000000000000000000000000000000000000000000000000000000000076a700a77a4c48695a0407441e86efc633aee092d2ebd99c87fdfeebcd904fe33e086d000000000000000000000000000000000000000000000000000000000000001d563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd0633ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865d5d6866ffb684491364a0853403f689144f5664f5d50de1b1a30d683ff29f21bf8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b4498bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef328d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad820824094c2949304cd969b5661cff34ece28aab6ca0f3eb707dc756ae848252d66c44a94d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae96291d8c581a922d52cd477658fcc2e2ca1f954f274ed2cd833a98e6d1d4455581f9d9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cbba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c389436d2b9b4dda11f7c2a5c1ca8fb20cba7512c884b100fa143fc24dc6c160eed276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f6617237058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25bcffd3ebd814d0f5e8e8dc7ef0303a14b98e79acfcabb14c9ad4225afd8f18c265f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a219fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c18aad5c04eb3f39ce81189eee664fb350f14bd8ce4dd62972aa7de342f017c7f", - "dataAbiValues": { - "methodSignature": "handleCreateRequests(uint256[],bytes32[])", - "inputValues": [ - [ - "13824000", - "115791647525550000827488589184312722123641027794666345134718053606362806484993", - "58737407075920930096693749632210245280794127876199190949253348332199714210054", - "115792089237316195423570985008687907853269984665640564039457584007913128431336", - "115792089237316195423570985008687907853269984665640564039457584007913129380738", - "41504671482165347584846103287222174319130579613222615088745194098566077546081", - "0", - "39590299132392589184737138068833640165131826767556478003143025413084726840484", - "1636828073493779560152621491074002847609709387720111137750911676859097584502", - "262142", - "1", - "46995738119123743123282428161140493004285235666026628953647859202250191730442", - "33811214160519685654400438720767591502827986970858420988841187408488311483230", - "115792089237316195423570985008687907853269984665640564039457584007913129207916", - "20557653259021005890251421269967042420225955023564768794272035576696478452763", - "115792089237316195423570985008687907853269984665640563909857584007913129639936", - "7367887950809164700104084563884591449786965425123545364576065505479275931200", - "58168524174645209900719041489934173752247098791866719219864340874379345294450", - "65526", - "115792089237316195423570985008687907853269984665640564039457584007913129380736", - "227929974933606291", - "7776000", - "75752327540241786815348607290604056680494387521335977257182003214564422715501" - ], - [ - "563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe", - "27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a", - "9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd06", - "33ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865", - "d5d6866ffb684491364a0853403f689144f5664f5d50de1b1a30d683ff29f21b", - "f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1", - "c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b44", - "98bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01", - "108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef32", - "8d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea", - "94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad8208240", - "94c2949304cd969b5661cff34ece28aab6ca0f3eb707dc756ae848252d66c44a", - "94d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056", - "cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae96291", - "d8c581a922d52cd477658fcc2e2ca1f954f274ed2cd833a98e6d1d4455581f9d", - "9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874", - "ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cb", - "ba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c3", - "89436d2b9b4dda11f7c2a5c1ca8fb20cba7512c884b100fa143fc24dc6c160ee", - "d276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99", - "fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce", - "3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb", - "4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f661723", - "7058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78", - "994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25", - "bcffd3ebd814d0f5e8e8dc7ef0303a14b98e79acfcabb14c9ad4225afd8f18c2", - "65f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a2", - "19fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c", - "18aad5c04eb3f39ce81189eee664fb350f14bd8ce4dd62972aa7de342f017c7f" - ] - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 21265, - "blockTimestampDelay": 360627 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000020000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x161c7318", - "dataAbiValues": { - "methodSignature": "test_debug()", - "inputValues": [] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 15325, - "blockTimestampDelay": 189245 - }, - { - "call": { - "from": "0x00000000000000000000000000000000000a0000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x88b05f294e5c5739570432e46e997185cf2683c287e8339e1ce7ab9502db4f4b4f0c1b77000000000000000000000000000000000000000000000000000000000012750000000000000000000000000000000000000000000000000006f05b59d3b200003c3b20fe3c6474ef6112cec6e2e1e2a66147c502767418c32e65c3bfa035d898948fc45007206ff5c0b2215d0b5c97d5551a84ed653f28e284b8567c463ce3650000000000000000000000000000000000000000000000000000000000069780ffffffffffffffffffffffffffffffffffffffffffffffffffffffec39800000109b1ce09a2caa796f35db2570026fd5d54f3b6f79d72997e7e30411ab7bab5f", - "dataAbiValues": { - "methodSignature": "handleSetDisputeModuleData(uint256,(address,address,uint256,uint256,uint256,uint256,uint256))", - "inputValues": [ - "35443554117267417118592017165536035041230544133048285386578266163756344810359", - { - "accountingExtension": "0x0000000000000000000000000000000000127500", - "bondEscalationDeadline": "432000", - "bondSize": "27243242601887521753615714576112380311306725462768124357416761313244220872856", - "bondToken": "0x00000000000000000000000006f05b59d3b20000", - "disputeWindow": "7511066176535142771400004346711719422194606327049609712661925953610498943839", - "maxNumberOfEscalations": "67196315620416968751812103706326677402054656808860235011842083525495944438629", - "tyingBuffer": "115792089237316195423570985008687907853269984665640564039457584007828194983936" - } - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 24101, - "blockTimestampDelay": 185392 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000010000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xb6c75efa8ba080b8a5e8e7e02b35ca63d619e3bf03ea7ee17a7395426e8c0ae38903a378ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff51e8737b07890aad8af4228017f323f8ee58c58602fe8a95d9a372445358479b", - "dataAbiValues": { - "methodSignature": "handleClaimEscalationReward(uint256,uint256,uint256)", - "inputValues": [ - "63155069885073485423962987089686113899340909970551762747564159406599093592952", - "115792089237316195423570985008687907853269984665640564039457584007913129639935", - "37048046271970045328561159781521571766041874645079829392453863326819299116955" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 7, - "blockTimestampDelay": 32 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000090000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x223b137400003ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe000000000000000000000000000000000000000000000000000000000000004006807205175b22b301c32b6c5e6ee194bd596681cba8c8638952ec1250f3d6450000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000000000000000000000000000000001518000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000027874838a0b68a875ec0ee81d4c8ef1980254e8ae6eaec10d74722bac9ebd5a49a6c310208a5de1500000000000000000000000000000000000000000000000000", - "dataAbiValues": { - "methodSignature": "handleSetRequestModuleData(uint256,(uint256,string,address,uint256))", - "inputValues": [ - "441711766194596082395824375185729628956870974218904739530401550323154942", - { - "accountingExtension": "0x0000000000000000000000000000000000015180", - "chainId": "\ufffdH8\ufffd\ufffd\ufffd\ufffd^\ufffd\ufffd\ufffd\ufffd\ufffd\ufffd\u0019\ufffd%N\ufffd\ufffd\ufffd\ufffd\u0010\ufffdG\"\ufffd\ufffd\ufffdդ\ufffdl1\u0002\b\ufffd\ufffd\u0015", - "epoch": "2940820452134172681045375212785432443100619197912571245547930807664892958277", - "paymentAmount": "0" - } - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 15253, - "blockTimestampDelay": 492034 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000080000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xaa1a5bd900000000000000000000000000000000000000000000000006f05b59d3b2000071f7cd086897aaf2110bd910f953453e7bcc20e82af33eec4c00647f9fb5da5e", - "dataAbiValues": { - "methodSignature": "handleResolveDispute(uint256,uint256)", - "inputValues": [ - "500000000000000000", - "51549178199604899047887187595007193100674999475015380254417935657395983604318" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 53242, - "blockTimestampDelay": 71336 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000070000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x52e3cb9cffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffec", - "dataAbiValues": { - "methodSignature": "handleSetMaxUsersToCheck(uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913129639916" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 45495, - "blockTimestampDelay": 225944 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000090000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xdb106aceffffffffffffffffffffffffffffffffffffffffffffffffffffffec398000001371ca94900c31d8e9be66d7c23f65b05f5d33ff2b30949acfed984f87f269e080baf5544430fe321ebd2409617ef6786f5b994597bc40798f800826b310e4524793f157456609da494af2a02075c03fcf9249185214862d5dd9f0eddb7447ce", - "dataAbiValues": { - "methodSignature": "handleSlash(uint256,uint256,uint256,uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007828194983936", - "8794995999406163856009545368231505849668095829549449500668097316828300339680", - "58226371372378751290891435773627286125304890291737788253576280229276508283986", - "32375604441627796962923040660328673776239995228426910584919203216277625915342" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 49592, - "blockTimestampDelay": 581992 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000080000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x223b1374000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000408986d1481eea494dad550c07436bc6bf24fda1699ae18ac8e867c2bc2cbb811f0000000000000000000000000000000000000000000000000000000000000080000000000000000000000000148bd2b35a0e0ff5f58651fe93524e321532b27500000000000000000000000000000000000000000000000000000000001274fe000000000000000000000000000000000000000000000000000000000000001419d972fb93584a547a564eb672065531206d2c71000000000000000000000000", - "dataAbiValues": { - "methodSignature": "handleSetRequestModuleData(uint256,(uint256,string,address,uint256))", - "inputValues": [ - "0", - { - "accountingExtension": "0x148bd2b35a0e0ff5f58651fe93524E321532b275", - "chainId": "\u0019\ufffdr\ufffd\ufffdXJTzVN\ufffdr\u0006U1 m,q", - "epoch": "62205062171946186530711375116649708949236787489916806320076639634871891493151", - "paymentAmount": "1209598" - } - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 57406, - "blockTimestampDelay": 508192 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000090000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 2, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x3f60f9cc0000000000000000000000000000000000000000000000000000000000000000235c58e45e6b448123df4ec75c527147b56e207c4815f37193cfafc12fe9143343aa8e00e44758769fcba79ddc533615c240383088eacc520788ca11f978270a", - "dataAbiValues": { - "methodSignature": "handleRelease(uint256,uint256,uint256)", - "inputValues": [ - "0", - "15994113140863775377512613840889015859198326455210825118094249343807524508723", - "30606304928112969978587259490316563804100123622315096384733063005977978611466" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 14222, - "blockTimestampDelay": 506677 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000010000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xa59d317d236b70e2ac17ad29db7127993a74e4044f47fe8ce7ed46db3cd8a16c797dd6a800000000000000000000000007743aecbf6a16d4951507d7551e5a420748d15000000000000000000000000000000000000000000000000000000000000003e8a4204edf78d831e0da05471c75e00fd5486a22d4239d68dbd4e843fd299ace8efffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc00000000000000000000000000007109709ecfa91a80626ff398ab49ad330281d12d", - "dataAbiValues": { - "methodSignature": "handleSetResponseModuleData(uint256,(address,address,uint256,uint256,uint256))", - "inputValues": [ - "16020781443007852116740508170121164524726566377185661961033510726941712176808", - { - "accountingExtension": "0x07743AecBF6a16d4951507D7551e5A420748D150", - "bondSize": "74236390634738164828042936817328106253978822253810691447408898961590657404558", - "bondToken": "0x00000000000000000000000000000000000003e8", - "deadline": "115792089237316195423570985008687907853269984665640564039457584007913129377792", - "disputeWindow": "645326474426547203313410069154905908525362434349" - } - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 4534, - "blockTimestampDelay": 153607 - }, - { - "call": { - "from": "0x00000000000000000000000000000000000a0000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x3c26dcf8ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0", - "dataAbiValues": { - "methodSignature": "handleSetEpochManager(uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913129639904" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 23786, - "blockTimestampDelay": 327680 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000030000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 2, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xc5c17157bbc9215b06808392dcec2e0c7851767c42bcbb477c1c8c8d2f6788a5f1c33d9d", - "dataAbiValues": { - "methodSignature": "handleAddChain(uint256)", - "inputValues": [ - "84937869156760602001974346264518001642163336959320593474760511948578749627805" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 1000, - "blockTimestampDelay": 604800 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000070000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x0692ea7effffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0000", - "dataAbiValues": { - "methodSignature": "handleRemoveChain(uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913129574400" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 36805, - "blockTimestampDelay": 229553 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000030000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 3, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xb6c75efa91f1b7da6044090f2bc54454fe4b82551e6e3fe26925710e360197150ba6c5040000000000000000000000000000000000000000000000000000000000069780fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b80", - "dataAbiValues": { - "methodSignature": "handleClaimEscalationReward(uint256,uint256,uint256)", - "inputValues": [ - "66012442094173021184902279859918771353213111919353305006878331952590280377604", - "432000", - "115792089237316195423570985008687907853269984665640564039457584007913129380736" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 26105, - "blockTimestampDelay": 563160 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000060000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xefe223c5ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc1eab46d9a71b9fc6196bc66df97ad0229e4ed4df31cb14738c45729db851061", - "dataAbiValues": { - "methodSignature": "handleDisputeResponseOracle(uint256,uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913129639935", - "87711067258970041198538357174074530315975071051269236784798286206430053994593" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 22062, - "blockTimestampDelay": 533426 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000090000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 3, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x3edc7cbdffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9c", - "dataAbiValues": { - "methodSignature": "handleFinalizeRequestFinalityModule(uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913129639836" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 58571, - "blockTimestampDelay": 448941 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000090000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 4, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x9d2e6a6f9ad1b274a36d6422204cb38284e52c1e394b76dd420c12b133c0f54555fa8725", - "dataAbiValues": { - "methodSignature": "handleRemoveEBORequestCreatorRequestModule(uint256)", - "inputValues": [ - "70026681373776152693382902846792773999381205621007041991972413057813542766373" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 55128, - "blockTimestampDelay": 223499 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000040000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xcd10417aa9b7c8ba23219e921c8c24f084b211b31e9da2b176051da47b11bff8ff5c33212de575b81bb2e58ba5f1b8efa82a2605f4006b905e5e2cc82173eaf76a20add4", - "dataAbiValues": { - "methodSignature": "handleEscalateDispute(uint256,uint256)", - "inputValues": [ - "76765589790945662604547244204216214155946252006571676315847820028747638911777", - "20759498631951024433205069293438925811645138406748362097890303052587796049364" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 17266, - "blockTimestampDelay": 47869 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000040000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xf84d6dfc2e0a2c2d27894539cfe61cf1aa3dce6fa4cc0182d8a4f96446b30c16dcdb4280", - "dataAbiValues": { - "methodSignature": "handleAddEBORequestCreatorRequestModule(uint256)", - "inputValues": [ - "20824364399678545662833682292547392236236046121352715060387808748443780465280" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 8422, - "blockTimestampDelay": 175942 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000070000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 2, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x7aeb6fab0000000000000000000000000000000000000000000000000000000000080000861226f42b4f83fda125862408777203fcf059cc4d6afa3d8b5f14cbd0503cba", - "dataAbiValues": { - "methodSignature": "handleDisputeResponseBondEscalationModule(uint256,uint256)", - "inputValues": [ - "524288", - "60641993806473011143834861665095605796555276187455692014587155889705714728122" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 5058, - "blockTimestampDelay": 564562 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000030000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 4, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x9f6259e500000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000060000", - "dataAbiValues": { - "methodSignature": "handleResolve(uint256,uint256)", - "inputValues": [ - "262144", - "393216" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 54349, - "blockTimestampDelay": 446424 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000070000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 3, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xefe223c5ad8117bd6793da9372ee7a9f184c1f229a994a23f82083eb6803cf5612a5e084994694c28b481c29ef6ab1024c7f7ad48917e7b3644de29036693dfa1f6557a0", - "dataAbiValues": { - "methodSignature": "handleDisputeResponseOracle(uint256,uint256)", - "inputValues": [ - "78478209922765382613928019011452160112457201279089481808494135837808952467588", - "69328571831131295636312210863921518104963878476144420959825437715154096969632" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 356, - "blockTimestampDelay": 94684 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000010000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 2, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xec5bf215ffffffffffffffffffffffff8ef68f613056e57f9d900c6762970980a4e22ed3", - "dataAbiValues": { - "methodSignature": "handleFinalizeRequestResponseModule(uint256)", - "inputValues": [ - "115792089237316195423570985008042581378843437462327153970303678099387767205587" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 26236, - "blockTimestampDelay": 172938 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000040000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 2, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x727899fff514b534b61c375c439f68b334317ec7ad1c81896f2e7f7d9e2bf248e8b86bb80269a17e974e3f307c7b602e63a3a5f54ab7520e1ce48c185b85068b23a50c370000000000000000000000007109709ecfa91a80626ff3989d68f67f5b1dd12d0ce9ae7037dff0632bada0555a4b2a1709ee25a0f6d47ff213ef7dab06f13492", - "dataAbiValues": { - "methodSignature": "handlePledge(uint256,uint256,uint256,uint256)", - "inputValues": [ - "110853235481380273198257434098634459560730545434260276739156884901825263201208", - "1091259233017721395373144204062272118708516766005316865622853242594359839799", - "645326474426547203313410069153905908525362434349", - "5840633478355227696719452384365761985173515625270275222857093897003304301714" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 48302, - "blockTimestampDelay": 98481 - }, - { - "call": { - "from": "0x00000000000000000000000000000000000a0000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 2, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xc82f34f9ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffec00009c3ade46c6a10c03646645dceced151803cfed4a76a69d888d9528938805d33e", - "dataAbiValues": { - "methodSignature": "handleSettleBondEscalation(uint256,uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913128329216", - "70664815604550041696416122873938953675815643014153596578083942850550877770558" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 21405, - "blockTimestampDelay": 224071 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000070000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 4, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xd51b326a4f11ce728964fd5cfe4e67e0a4108fd7bd12e31d80bee3e9fd7503b25943d86bfffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600002fbcb13722d80a133f1e093640349fcea5017c8025ac70c52fefa1f32bef4147", - "dataAbiValues": { - "methodSignature": "handlePledgeForDispute(uint256,uint256,uint256)", - "inputValues": [ - "35764176285829964837988166432096626338604401112435149938249800147871318923371", - "115792089237316195423570985008687907853269984665640564039457584007913128984576", - "21592094227161796483602757534726537598958165417486369280358722180410608927047" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 30001, - "blockTimestampDelay": 418139 - }, - { - "call": { - "from": "0x00000000000000000000000000000000000a0000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 3, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x51b295e300000000000000000000000000000000000000000000000000000000000003a8", - "dataAbiValues": { - "methodSignature": "handleFinalize(uint256)", - "inputValues": [ - "936" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 23854, - "blockTimestampDelay": 283267 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000020000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x6b125a57fffffffffffffffffffe3bda3d84c15b95fe7640319d8a5c26029388bb4c0000", - "dataAbiValues": { - "methodSignature": "handleRemoveEBORequestCreatorFinalityModule(uint256)", - "inputValues": [ - "115792089237316195423570815840224595780479919275071395757947099535303139655680" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 132, - "blockTimestampDelay": 172800 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000050000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x6b125a57439c4dea175c1f4dc2283a0dca8df089ec1e32de1a71e6049937ba0ef888023b", - "dataAbiValues": { - "methodSignature": "handleRemoveEBORequestCreatorFinalityModule(uint256)", - "inputValues": [ - "30581126742740578579461185375868096517298438186402910784813700598662223626811" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 27956, - "blockTimestampDelay": 447027 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000070000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 5, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x64d6e6d3179a67678bb838478c44926fbd26493474eb791516d81ee5baa3765643a7f0f13935c24452e2a5faa498fca2a6c4ae1b3a3c6a9976af2868354336a0b5eae4a3df8b40fb6fcf686f1659e51d90d962d5cbfd1a55d1a1db345acbb7978cd9bd61", - "dataAbiValues": { - "methodSignature": "handlePledgeAgainstDispute(uint256,uint256,uint256)", - "inputValues": [ - "10676003636853416453138572180884583936897901964655062312574559468487432466673", - "25876816044475934884764655838030328364254713960717807302331158298975447737507", - "101111805466560395134870514718984948651558312084779106319072364710585748274529" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 9230, - "blockTimestampDelay": 259200 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000040000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 3, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x4741f6dc97ea50d8c074d187de7cfc88d0f1c34dc24db2642bef23ec1b88370e17145d67", - "dataAbiValues": { - "methodSignature": "handleSetFinalityModuleData(uint256)", - "inputValues": [ - "68713240332555606262576304945776648453307986915064085044793172925635856981351" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 12052, - "blockTimestampDelay": 19785 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000090000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 5, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x9d2e6a6f0000000000000000000000000000000000000000000006f05b59d3b200000000", - "dataAbiValues": { - "methodSignature": "handleRemoveEBORequestCreatorRequestModule(uint256)", - "inputValues": [ - "32768000000000000000000" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 0, - "blockTimestampDelay": 3 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000070000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 6, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xcd10417aa92d06f9b187c43210def504095e8426544f54827af0094e5c47e1262e065b663a93985339d1aaaa5528eca3343f64826af8471fa3111ff7b1a1d067661f7a4c", - "dataAbiValues": { - "methodSignature": "handleEscalateDispute(uint256,uint256)", - "inputValues": [ - "76520427670687974472084713126552624256348516399009121051566372436541744503654", - "26494923045561211048191064476495620839647940608616973048585101859895222696524" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 6938, - "blockTimestampDelay": 197916 - }, - { - "call": { - "from": "0x00000000000000000000000000000000000a0000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 4, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x91e32c745efa4f15675e1dc5e0820d8b61e4e1c3b2c7738498336617ce8c1e04c4745f79e0fd906e76d9087d90474287d3aa87bd7537e316bdda4a8d939805778b853ddd", - "dataAbiValues": { - "methodSignature": "handleCreateRequest(uint256,bytes32)", - "inputValues": [ - "42959665348027796296446623032871991309114884315911569472746230850572248178553", - "e0fd906e76d9087d90474287d3aa87bd7537e316bdda4a8d939805778b853ddd" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 100, - "blockTimestampDelay": 423478 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000080000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 2, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x88b05f2900000000000000000000000000000000000000000000000000000000000151800000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000012000000005bb97848736b7142c96367d03991dd42df02a25e9fc88dfdc517b1f4ce28bc31fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff83cfafea801b1496906d8ba69b3619acad07c602f5f5644c5546c0a5a1625c9e61db764de175bf41c23313c816c5b2dbc6935d8c395c4856ce1ad7fe38ed0f6", - "dataAbiValues": { - "methodSignature": "handleSetDisputeModuleData(uint256,(address,address,uint256,uint256,uint256,uint256,uint256))", - "inputValues": [ - "86400", - { - "accountingExtension": "0x0000000000000000000000000000000000010000", - "bondEscalationDeadline": "115792089237316195423570985008687907853269984665640564039457584007913129639935", - "bondSize": "77309411328", - "bondToken": "0x0000000000000000000000000000000000000001", - "disputeWindow": "104084459477994910024948624640243341651381141291966115158980558504594338926838", - "maxNumberOfEscalations": "41488166090894130137464127351763299761175392285857027714786127187107321003057", - "tyingBuffer": "112281329574643079738863202584985426034020956563149812400628300592423397369289" - } - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 184, - "blockTimestampDelay": 524578 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000020000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 2, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xa59d317d97e31ce94964032123e4969a0749e9aa014916f3250bf8d2d11218c2b83b7bc6000000000000000000000000dd92df5080374ff85078e1a74b8880cd00776ed60000000000000000000000000000000000000000000000000000000000000000b8a36831dc71f854fbe7d1b7ce3a553891cac7605d6efcc4d3c8b0472fa3db1dfffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6c5800000000000000000000000007109709ecfa91a80626ff3989d68f67f5b10a22d", - "dataAbiValues": { - "methodSignature": "handleSetResponseModuleData(uint256,(address,address,uint256,uint256,uint256))", - "inputValues": [ - "68700513958072141403648763787816715343496857287170728137452284071883052907462", - { - "accountingExtension": "0xdd92Df5080374fF85078e1A74B8880cd00776eD6", - "bondSize": "83514279336752933740344099228515725376396365006849213236518003647240640650013", - "bondToken": "0x0000000000000000000000000000000000000000", - "deadline": "115792089237316195423570985008687907853269984665640564039457584007913129035136", - "disputeWindow": "645326474426547203313410069153905908525361570349" - } - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 25919, - "blockTimestampDelay": 101425 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000060000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x40605c3f0200410cca20c8fe9f5721a3f210c230ddaa45fafcbeb1bfbbf8b5311c7ce95300000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000000000000000000000000004c7e5be381d4e135d9869c372ae5fdc127d572047db177eb937dab489b485956e200000000000000000000000000000000000000000000000000000000000003e59142690e4395ff8f7d36a51db819f9b2b627dd44624cc27af7881ae5d85dcdf200000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000000003311cf3105300073b4d65bc6c7ad79013e5ef42b3eb910126db263e9ccd31784a0000000000000000000000000000000000000000000000000000000000640000f6108ad6f1a58aee925973e0ace713bf95f2451f67e85bd48bcfbe31548e84b91c3de217cef27beae2f3d56daa00263ccdcf504d93eb4333cfc73c4509f5099f0000000000000000000000000000000000000000000000000429d069189e0000fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa0000aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaab1fffffffffffffffffffffffffffffffffffffffffffffffff90fa4a62c4e000100001c71c71c71c71c71c71c71c71c71c71c71c71c71c71c71c71c71c71c71c60000000000000000000000000000000000000000000000000000000000000000ffffffffffffffffffffffff8ef68f613056e57f9d900c6762970980a4e22ed36ce748c92fc6e8c7054eecab7ad246cb86145f4440496f6f14134d2aec40099345a0e41980dc4640d7d762ba666217e6d2335cc66cf9205e468798481258f2fe0000000000000000000000000000000000000000000000000000000000000020fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff2d100b4b43a80fecf041e66f27f63cd64cbeb745676ec606bab5bfbf3899cc19b73c381813101545d8fc28f8764c2ffa5e632ab2d55bad52d1355e873c7e7f0b09fbbb7144cb70eeda3d3734f9e6acc52eaaa4e71fa3aa5a9611a184c15f34667d8a20000000000000000000000000000000000000000000000000000000000000000380d9c3a02dbca81296453043d62e319d481e43707aaaada96af9359029428aad358e508346e35e1319cd1b4204bc2ae280a60efa60b5803373ae7fa2a728501a3dab0be6f911f13d935d9984ba3bdd1d59d56f0130475ed4366bbcc0ccb60ad00000000000000000000000000000000000000000000000000000000000003e8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b800000000000000000000000000000000000000000000000000000000000070000000000000000000000000000000000000000000000000000000000000000000309dff374c6182bc7cc7594dec4619e9906308720653134fe85cde855a6d6bdfaa9d82c04697a26a2f2fc89c44372efb5e17daff2e86a43e551c704094abe3499ffffffffffffffffffffffffffffffffffffffffffffffffffffffffdbf37c00ffffffffffffffffffffffffffffffffffffffffffffe2db4d2053ae00000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffec7800008c71842425c9851ef1fa1dac96fc89fac5b0a10086cfc789214bb9becf0570f74512d139774ad42286d555483a293074206770b602fb92c3af103dd07c60628b00000000000000000000000000000000000000000000000000000000000200020000000000000000000000000000000000000000000000000000000000093a80a10582f7dddd6ab3bb4bdd86be89aea4e2e7aba5ae91d125479d7a686d2c8b940000000000000000000000000000000000000000000000000000000000040000ec19fbf56c5e92f947dbc238c0da09f2fe83c31af46488e2a8cf6bf2976d77b370488e73d98a690a6a8abad72db885b7dae08dfdcca872b439b328b25759bf35000000000000000000000000000000000000000000000000000000000007ff9c000000000000000000000000000000000000000000000000000000a1b01d4b1ce614afd329253d5e4eec4dd3821b5fc692422bae9e1789c1b87ebedec11e9cda2e7d495c6ffa192ca0bb444aeccb50689c3623de6949f46854405bc966bcb6770000000000000000000000000000000000000000000000000000000000070000a4e0e70cede2c12be8a82c7bb0002b8eb6149b9c3ef7c6119916d7e857296399d854b911d10aec4be4765a7c0a482f821a05ebb500ef1254db1c40fd93b9fea61dba1c25c787be027fd2e3494b36e6d331be0f0aaa8cf3d6cd2ae8fd250dd7abcfa5e5962ef475853cfa87bc09f9191e602d950155da341dde817e11b764cc2095f022d0d7e91d3c9a4064a7f8205c5f4e170e666597e049b427dc16d073077500000000000000000000000000000000000000000000000000000000000000030000000000000000000000007109709ecfa91a80626ff3989d68f67f5b1dd12d872a7123006ff99b455a4921c98befc60fe0c67031de33c9f1c2145bb2613bbc2ea807ae15d2b865a7db6f945121113ed550d280408d1e329be213f1ed765870ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed8b00ffffffffffffffffffffffff8ef68f613056e57f9d900c6762970980a4e22ed3a6a2b6b51da8bc33f4de9b5693dd734fa7cbb006ea5213e8e3e8e55e28ec0b65fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff48b00ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00c794466b32dfa891ce64514d00c97ab1123e8400ee548d3f8334b220605190e200000000000000000000000000000000000000000000000000038d7ea4c6800048d3c657cd06a6172cb3c55c578d3a11d4476ac4cec723e3d4d655d02555f4f0265fa64c5d2062e6f10eb554c57cbe56bc6acbd8c12adca1149b04659538139d60fa47b00c655cdb0746da2c7c1cd853fb0af50da03b21b860d3926c7d2076fb896ec62efa3e29fb347e9b04144313f08bf6c48d1cceb29e16e564267c2fc0b4fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6ffffffffffffffffffffffff8ef68f613056e57f9d900c6762970980a4e22ed30000000000000000000000000000000000000000000000000000000000000000d5529cc29e90ca039d4efb38d951f7a223e64e786259b7d5ae0ba6abc28fcec000000000000000000000000000000000000000000000000000000000000003e8e36144b154dde00cc04c22ccc9f4e1c90f42f827d07dc6d0e8abc802539e6f73b626a2dfff01ab7170b9b9fb0dfedee8182d02c7f2b715ee32d21387ac488e97000000000000000000000000000000000000000000000000000000000000001d5288eea52b1384bbd194e84bdced3db4535acc1e4425f62d9f086423c1a080a2ffacaabbee7f158c60ecd0beb300d4ad2b3d6ef1ae7b077b7388a60235ad01d3b93a28878293b15b658497cc6c6d0ea6ecf9ee07217f0c9aa5f8b0892a9eb0b46bc461e6566d1e29af3ce8205223547d7d1591d6c983d4e71f516a689f2dd4d52b3128f618d8c77ac9b410c634ccba8b771ee6fcb33e1262ce574faadc0739ffcfb0305d23a092552aa1f8162b86e86028572ff2e1a5e606fb2fdc27f770a96dfffffffffffffffffffffffffffffffffffffffffffffffffffffffffff900004af955b5eabc23b72fb36631df6b6a6b8056fd0f84ee1a44f070cad12e02f57751e6631f7d05772a00431eb187afcece2b1d414a5fb6e13fb716ad60eaa96d2c0000000000000000000000000000000000000000000000000000000000030000fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff800009f03c25c5931ada832c74234efe3a7e5db174aff54c60d89d95b5eb7a1f125724fbc80f84c596e0da4001e1358a01b014a23caaa3a4c93e5f88620a6dd815bb50000000000000000000000000000000000000000000000000000000000030000000000000000000000000000000000000000000000000000000000000000fffe0000000000000000000000007109709ecfa91a80626ff3989d68f67f5b1dd12d0000000000000000000000000000000000000000000000000000000000050000ab50615387eec32faea1a92ebacb034b669d9b64caaa08f4e8b895e8923ff48c00000000000000000000000000000000000000000000000000000000000d2f008d4df9f3e5302865d5a2c3e35190e52cb892cd96d49288d7a5b569c9d4f28b94da805defbad575e35f256337a84606c33c2f2b33f0e78eeaef1efe5e3bcd3884662363efd8563acc5f21df0b8c49b32b3a8349a85ebd52d151c66429e2ba6fe20000000000000000000000000000000000000000000000000000000000020000500fcf757a48689b990676816e3bc221ef2b31ed3d4db7c7f6931cd01a29659f7ecd983caca3e954df272d682fb68a8b1ff7e5ee2516051735f3de364bc6bb3b3f55739d9e53abe1dbc67448fcaeadc645a202234d964e460efc32ffc3b94576ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0ba30927ed70a0112a623136ef66fb5bc60df1fc7b4e412700bae551a900a1a5ccf73baa7a51456e5e773ff32608a06d3f9adaf6d074d5a76dd8e887a28722023", - "dataAbiValues": { - "methodSignature": "handleAmendEpoch(uint256,uint256[],uint256[])", - "inputValues": [ - "905074655485004108607337249943135160874717547047819677943667362413800122707", - [ - "57153772201059091427674702095160085020575969444899274695515814120981387630306", - "997", - "65702700018772295285641744305422253124998005341393525800568053425846215364082", - "393216", - "3", - "22214478862856196402235137118502809823820432438836253392278385596944989911114", - "6553600", - "111298188540392792167251238172853782003803079965936529581948532548817759667385", - "12774097867830172567665155031478904706813822746602401712704343890851429419423", - "300000000000000000", - "115792089237316195423570985008687907853269984665640564039457584007913129246720", - "77194726158210796949047323339125271902179989777093709359638389338608753093297", - "115792089237316195423570985008687907853269984665640564039457084007913129639937", - "196316340530931592175921944526990946203053766319513217569067355699179974", - "0", - "115792089237316195423570985008042581378843437462327153970303678099387767205587", - "49258431668674329985233305063018037235645410780116477310508292538408990935443", - "31493856368346246194720234575958573204098127017253979057082649670744714834686", - "32", - "115792089237316195423570985008687907853269984665640564039457584007913128775936", - "81734748995643829897749293629050790648292396040940111871005096764596803040195", - "58576618960013436577985191491624867541201923372516262339792817517247239069627", - "82809117699998044416903094946931632162775816286453799866195757321946017552546", - "0", - "25353566768913084137975124568004511822114351841878927897817779161144602405034", - "95595074313884271267459208754562795167546826447980276332141791768385412039937", - "74113386820690374841632175234754098493152877767692964222255803744873003835565", - "1000", - "115792089237316195423570985008687907853269984665640564039457584007913129380736", - "458752", - "3", - "4466502805272837827542281810375039010959250724098765293399392848083032653306", - "76822814172351236704381957085694141751880008096938687989110002656304911234201", - "115792089237316195423570985008687907853269984665640564039457584007912524839936", - "115792089237316195423570985008687907853269984665640563901831984007913129639936", - "115792089237316195423570985008687907853269984665640564039457584007912801959936", - "63524364525032563486099473209578151861273580307383532114660109137943770525943", - "31242833813677776401571601700389063228100765957093565970677171678370104107659", - "131074", - "604800", - "72832106766726792058423032174356857004028480144157507654636072930991491812244", - "262144", - "106791742397202938182777462122874042302016213385485331829509551220079480108979", - "50787235201274696145106251269836276692246095160314164782915832401458227691317", - "524188", - "694444444444", - "104068505613939395620673537148501655846091818995213599622855705840613209316570", - "21027753237518509859013298513333261540195089137345481702615930526600716400247", - "458752", - "74576675562143808956693745165501454248914564230543746207844979903835350328217", - "97849267750834936202069277582968220853718105898992477735441665874625100906150", - "13445900430392228723257928073146961807097387790884559974765581692820184225707", - "93921873971274920962213762017475619213210183931518380568421618927139721366560", - "67818898024236242084042521021667633473967346330859660123835332080677218879349", - "3", - "645326474426547203313410069153905908525362434349", - "61137222976443039109911608729104452804191070247950560134441070334422814899132", - "21103274347266413479703070695065142448029868551910200139833503007741245282416", - "115792089237316195423570985008687907853269984665640564039457584007913128430336", - "115792089237316195423570985008042581378843437462327153970303678099387767205587", - "75371423090025251448523763095978950134991139729190694438513593473478234475365", - "115792089237316195423570985008687907853269984665640564039457584007913128889088", - "115792089237316195423570985008687907853269984665640564039457584007913129639680", - "90272236245973403234983831901481661623806340525386389709016894470763693838562", - "1000000000000000", - "32940698741547198576231977008498678030316414160745073629678995680899735352560", - "17356886465974949297740906028401751349449125040675107917178624515727185941405", - "43864240000434850618035279849298712645569081110998933520835965174566659061499", - "62162581245320974403036203567003251911058458786240641759078759572784452452532", - "115792089237316195423570985008687907853269984665640564039457584007913129639926", - "115792089237316195423570985008042581378843437462327153970303678099387767205587", - "0", - "96488600126906225865587874648621364254506924508256347287845454729728719048384", - "1000", - "102846874893284621945828007270689593150392822824032189361788766148864593784691", - "82389202752447669384498899468905313790058128858245263457757434057410801602199" - ], - [ - "37331591853195898332646914233173156955501937159015030398665417168470977577122", - "115644852447380397106580820209472115954010305551228447193779313880069065998803", - "83780633840859455039201963591578546882784623668416050544233602266931409105076", - "48744452502391184566360786457904555535403359862785255399679643279797858981077", - "19536310699872020071375096717549843195520823039636054431981813458089300933119", - "93940058534988809565601868948434030179172844667554385226371768320462873995629", - "115792089237316195423570985008687907853269984665640564039457584007913129181184", - "33911687267201826747227228408667605311127959699127589037438593522296594560375", - "37044399681956569630066473435830066290752459357848831750171393433806970645804", - "196608", - "115792089237316195423570985008687907853269984665640564039457584007913129115648", - "71924384894433292096989519172037299445580544500513898576006906343017514345842", - "36065772403896067072996942935610603333651879905849624192774582834877652097973", - "196608", - "65534", - "645326474426547203313410069153905908525362434349", - "327680", - "77487516594307415765035774972120118522131374758824921318574400461875517060236", - "864000", - "63913883984472213085539992323673314504226457836791357038462740680155449166740", - "98831005740957109638021708781159126811871769049869769667432650266880395524228", - "46198439941858928614091063460399623917777648473584188038534412802191458463714", - "131072", - "36212962421318419301993835762131349070021499536150148004768772560220653708703", - "57354673270993789344352727846460728222299326903621920205323618921321677110075", - "28646689411467215300358786927112113082682434223951368508192384407000789370230", - "115792089237316195423570985008687907853269984665640564039457584007913129639904", - "84216009570163080362684513090370046181896401684199635219638541266786313706076", - "93833235313702148338103348269210324456108000960628966079234547430264346386467" - ] - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 20470, - "blockTimestampDelay": 408021 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000090000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 6, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x0fb55087fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6c580", - "dataAbiValues": { - "methodSignature": "handleApproveModule(uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913129035136" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 8529, - "blockTimestampDelay": 184502 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000030000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 5, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x223b137400000000000000000000000000000000000000000000000000000000000151800000000000000000000000000000000000000000000000000000000000000040ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffec00000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000000000001813512a62e6c213f6d51f779f18e2c86e0d00fe76b8307ab550d59bb26dd317a0000000000000000000000000000000000000000000000000000000000000027416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c656400000000000000000000000000000000000000000000000000", - "dataAbiValues": { - "methodSignature": "handleSetRequestModuleData(uint256,(uint256,string,address,uint256))", - "inputValues": [ - "86400", - { - "accountingExtension": "0x0000000000000000000000000000000000000001", - "chainId": "Address: low-level delegate call failed", - "epoch": "115792089237316195423570985008687907853269984665640564039457584007913129639916", - "paymentAmount": "58442129073348854913675807273523946543963145606711603520462692937339565322618" - } - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 15158, - "blockTimestampDelay": 295089 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000050000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xec5bf215449ba16be31dc1d7de22fb93baba8df1958226e92a715719a8538005fae2aa18", - "dataAbiValues": { - "methodSignature": "handleFinalizeRequestResponseModule(uint256)", - "inputValues": [ - "31032249088497022257228939088440837287694462762632281658808369736101373585944" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 20983, - "blockTimestampDelay": 360615 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000090000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 7, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x223b13740000000000000000000000000000000000000000000000000000000000008f8000000000000000000000000000000000000000000000000000000000000000404d995b471c561b6a40db52ed1b0514237c79ca6e737325db49d7a7562fad4da00000000000000000000000000000000000000000000000000000000000000080000000000000000000000000213dc43012f326a0b2168c94fe01cabfdb0135490000000000000000000000000000000000000000000000000000000000055f00000000000000000000000000000000000000000000000000000000000000005bd25121e6f17a79669a63f3ee85a9e50f9718b00dc9ba49127d4896b0958069313f71ea11b70ef3e5c4e3d9124d325233b79b1ea36acb3e29610450877a8edf6525d7e8b05efb2c65283bf8333ffffa1213857d2b92e272a29e0fcb0000000000", - "dataAbiValues": { - "methodSignature": "handleSetRequestModuleData(uint256,(uint256,string,address,uint256))", - "inputValues": [ - "36736", - { - "accountingExtension": "0x213Dc43012F326A0B2168c94FE01cabFDB013549", - "chainId": "\ufffdQ!\ufffd\ufffdzyf\ufffdc\ufffd\ufffd\u000f\ufffd\u0018\ufffd\rɺI\u0012}H\ufffd\ufffd\ufffd\ufffdi1?q\ufffd\u0011\ufffd\u000e\ufffd\ufffd\ufffd\ufffd\ufffd\u0012M2R3\ufffd\ufffd\u001e\ufffdj\ufffd\u003e)a\u0004P\ufffdz\ufffd\ufffde%\ufffd\ufffd\ufffd^\ufffd,e(;\ufffd3?\ufffd\ufffd\u0012\u0013\ufffd}+\ufffd\ufffdr\ufffd\ufffd\u000f\ufffd", - "epoch": "35099046917880542585164555430508038868065917922440903797197539250676616220064", - "paymentAmount": "352000" - } - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 56280, - "blockTimestampDelay": 458752 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000080000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 3, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xefe223c5fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe00000000000000000000000000000000000000000000000000000000000000000000", - "dataAbiValues": { - "methodSignature": "handleDisputeResponseOracle(uint256,uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913129508864", - "0" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 14098, - "blockTimestampDelay": 569046 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000040000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 4, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x3f60f9ccc48e72a465398a458fa410f65630310cd37dc76294bc92537e2601e96c60ebd10000000000000000000000000000000000000000000000000000000000000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0000", - "dataAbiValues": { - "methodSignature": "handleRelease(uint256,uint256,uint256)", - "inputValues": [ - "88905001836693742325507352277997560608298154628648216827782397487703371344849", - "0", - "115792089237316195423570985008687907853269984665640564039457584007913129574400" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 0, - "blockTimestampDelay": 0 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000030000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 6, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x223b1374fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6c57f000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000003c80000000000000000000000000000000000000000000000000000000000000080000000000000000000000000da53940b00458626f6289ddf0adfdfa413fab300fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa00000000000000000000000000000000000000000000000000000000000000000031213c9412f9e5d2844620a737afabe7451705dc25ae97046b27367c0d73121c377e07f41a8682748c3637fadc5e985348d4000000000000000000000000000000", - "dataAbiValues": { - "methodSignature": "handleSetRequestModuleData(uint256,(uint256,string,address,uint256))", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913129035135", - { - "accountingExtension": "0xdA53940b00458626F6289Ddf0aDfDfA413fAB300", - "chainId": "!\u003c\ufffd\u0012\ufffd\ufffd҄F \ufffd7\ufffd\ufffd\ufffdE\u0017\u0005\ufffd%\ufffd\ufffd\u0004k'6|\rs\u0012\u001c7~\u0007\ufffd\u001a\ufffd\ufffdt\ufffd67\ufffd\ufffd^\ufffdSH\ufffd", - "epoch": "968", - "paymentAmount": "115792089237316195423570985008687907853269984665640564039457584007913129246720" - } - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 0, - "blockTimestampDelay": 282868 - }, - { - "call": { - "from": "0x00000000000000000000000000000000000a0000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 5, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x48a41c27120e574151e78e43d42b5f1d2755a6c8c1f3465ced2014824c5e3c7e4eeba9444fc74ee0c24ebdba3e62450bb6d404762453c8f86c21f2373a1ba170f3ecf81dac04840e25f58b0a6d622417c093c48e05fa9efa5bddc843219fe247671e0087", - "dataAbiValues": { - "methodSignature": "handlePropose(uint256,uint256,uint256)", - "inputValues": [ - "8166969346359948639484006387253416172301236988256769726962054929875661990212", - "36084861999675023071727212187156050330492265038665057332289628950360509708317", - "77805788756535527407772768649618221004754717959448356492205955344147878379655" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 32, - "blockTimestampDelay": 524288 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000060000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 2, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x727899ff8e109937a0c12587ee4666cf7eb8f9a914f1385f133128a7bbf4f5eff743301500000000000000000000000000000000000000000000000000000000000546005172646d987a680e04dd6a045e2c8e98a680e2b9c41a2d98c3072682e7a7efc25e43b123c01ac311bee46cc3bfa5a0be50d6b4473163049ec4c37d3a1caf1b11", - "dataAbiValues": { - "methodSignature": "handlePledge(uint256,uint256,uint256,uint256)", - "inputValues": [ - "64257751518777829519648785807987822488615391450098951710757499941744441241621", - "345600", - "36839454429956002479784537352517879993063816426425600860733833535606361681858", - "42637009093099676781532913644885930180275839542941773954417676940607658859281" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 18765, - "blockTimestampDelay": 352717 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000070000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 7, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x3c26dcf8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff70000", - "dataAbiValues": { - "methodSignature": "handleSetEpochManager(uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913129050112" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 25275, - "blockTimestampDelay": 604799 - }, - { - "call": { - "from": "0x00000000000000000000000000000000000a0000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 6, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xec5bf21572dba7dbe09c3bbe6a88d23c3bd9acfe205d1d60aefecc0db6a8499e751e9815", - "dataAbiValues": { - "methodSignature": "handleFinalizeRequestResponseModule(uint256)", - "inputValues": [ - "51951762765201292588978808218288335040492006071994363203642941846922903590933" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 42594, - "blockTimestampDelay": 143245 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000030000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 7, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xd1a55655388924a9c0b4fab8a3a6823ac564a32fb78cfbcc473b96e55fbeebc0eb71d773", - "dataAbiValues": { - "methodSignature": "handleRevokeModule(uint256)", - "inputValues": [ - "25571830607931438209766452591287454872650721757204844895931688485804152313715" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 53210, - "blockTimestampDelay": 360623 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000040000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 5, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x1c6850cfa7e5b450595c21a14259f758b64ec4381302d527c203a49e4b9c1e83094266dd6b48dae36a7e33922c16e094ce88a626bf6eaa1d596dd330476320c9b67cb28dfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0000", - "dataAbiValues": { - "methodSignature": "handleUpdateDisputeStatus(uint256,uint256,uint256)", - "inputValues": [ - "75942098171788587147868381348791675977767975212740010787554276083613701400285", - "48526198498900060195577435149830061143198857828146295147538220227829339828877", - "115792089237316195423570985008687907853269984665640564039457584007913129377792" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 14516, - "blockTimestampDelay": 162774 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000080000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 4, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xb05752f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff70000fffffffffffffffffffffff80d5614d5661c22f91420df44ee9eab0b97e74ad62bba341ead94025d38af6eca293db8770eb1b32ba67b7363e9f3d6803df81b0d0000000000000000000000000000000000000000000000000000000000000024", - "dataAbiValues": { - "methodSignature": "handleOnSettleBondEscalation(uint256,uint256,uint256,uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913129050112", - "115792089237316195423570984997072031313592135005999182794687277654456605821654", - "19778445761017581235509319627811875743548082417220173652855107228865444453133", - "36" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 258, - "blockTimestampDelay": 101436 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000090000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 8, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x13a8b8040000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000000050000000000000000000000000000000000000000000000000000000000010000fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd0000000000000000000000000000000000000000000000000000000000000006ffeeb3fd82fd57624ae9fddc080413e063c59aebfdd9e86aa1d14012b23cc42c3909a33c5245d7d9c850d37caf97974d05edd8cfe363dd7336cd23498b53ce1fac34000000000000000000000000000000000000000000000000000000000000003c080aa8886e229c59ad31a48e8790c532b08554e63f60fd65922b33e3589dd8b96aa104212b8f7bc224e863f0e8c252064d7229b15bbdbbe21c0b370fb52ecf016ae7f838205c29fb37c80991959f4df295b815ab130ddaf950ec1bec40be1244219653dcfedcb982b35ad7871ca540ce120b5cd731953fc8b91d4c4dc6f0e3d4d6f3303d5fde3a31146530161a95a9e5730847bb0e1adc263d276fd57bd0e9d5a1cc4a17639fc1be64e2f04f022fe314e4eb945526ac1e64f07770f1ade7d0db6c94d83e4ccac8e80511cfc9d681f3d91507412e8b07c2e7c8d526c804bea9d13570a7586321df39a35efc4800cfe6f84e57e37881266b4981bf8047828149e34fffc8ffbda96ca0340d3f9a352599a6dd40c1b5e04a6df65851467da3e99955756f07edf77dc0a01f914c598c84ffcc8992a824b7692ecadd637fd191d1ed0c455a2e9e136425ea6ed45a40080c391f2f2deb3b8048cfba079bbcfe913a6ef84d1e680ee7ba81fd7eaff5fa2094ed84e21f7f8f41e16193838b0e4c0ca6197ae2edffcfd0479da46a691dd1169eba1ff20b64d16f5124b8601d74e5e1320d6a8ae86f61d0b2921f586a223eed1d260417e9593c5fe94fe9c7c3e79e094cca39a2efac7e2bcd9829cb27ab0e73c400c60da9115aeb6f19875c4cd2353da0a35d33ecffa467bb2268d77ad6d71dd9bcb7b024f5ff4cd6a4007585993d5ea7df79255473ed437ad85ba26f6d6baec88ce97da00bcf30683c9c13d2412347ea64ac677e6040592518afb3ded7e96495db0cdf7d26a4975b0d955fc54b5bd4ed185f739cc30f03a7f23a25a5174766f8d7fd93b39c836e9c8afd3dd24301ff3dc6ba307623d89316ee4ce81d67849775b6a630da2070162aeb4c72585d93e0317c67b28a9a3a12d3f3fdeabf90aeb820806d3c6fed80f683055994f279e04b7d917f52c54497abed020dfd879d9e39b05bf9b57cabac7a801afb2a0241460b62bb477f69b395ce79330f3ac1b16009901a01e5a6a460f75039dea573505eba6ad0f70eb27909a646195dc69c0f5ca8a766100f3be920285377868bbaeadebcd299fe8c0427854ae7435ba56c29e52895feefb622ecc2945098f01cbdda3630343062eb1e37c3d5a4e6ae57229bba8c4fea1628c1ba448bc5cdf625c231047e4801079dd944f6f545e8919a5d5551d29a15bde1c5371198736dbb662280b7843d38d45d0dce2926c6fb2a8b59a8b7845c6c2d964a5aa85d684263c4b83dc4c7171da1e59e37c80155e035755661f7634ccd7b55a898d31544c8468e6f488bdede21dcc9265aa8818e56017d605c1dd0743ea6e2830c408cc25b6552d6014b618f130869b725292a8377fd7a13212306a1eca6e7cf0e7a8cde94bc2a8b3a95aecc11f627c13d2c7f480c3855b8cbd276a30a3fda895db68e33faf65b1bcd52b09bcfa04b9cb8b5f72afe3c9bde9ead1c97eb062e7112bc9aeca5c2bbe3ceec1ae37d16e29361c16456d264bda7323cc19e74ab7d7ebca395dfcb5bbf2ab0baad7794bba7db130667d95c3d572935aec28dc8b9f511a602bf74215c24248625d15b17ba40c7a58043e38ced1995d2154c366bc0be0e2eb305dd9eb025f96255be97a43631c8fadce211bafc2a31de41868fc1a4f2114e6a94cb7247ef7a7de850584011d18228e6e4bcdd035f52ec239685e26f7e641e9e709f65c50fcce5127abc58626ca96a4c1f5d7676f8e6bd1dabd05ad51ae7bbda1fc57e607b0e8d65071ea96dd51dd971e5934ba0a695986eb01879d508dbb993c92579d9b28574782cd7e0b758d48c6eb6a6c277838e4d71679e07e68fb0f85be1c4c4c1fe1d834de1cecdaa5d2a4f5d6a7d28fde6e6e96b919af9ad18de545be180fc12f3ccfcb9c7bde224c1c74304938d515f9cdc98040161272295aeec9689de3f42cd70e2dddd290ad657403cb197b4fd042e8b60dde8afc62b97f16b1feaffbab7823c8ec40a5f49fad5dba3355b47e16535bf0d4d0ac71372d1baaa0bf9b807572fcd8e70c4205736d8077a465d6e4d070f7d5f012f24141d1a4ef2e87e8896da73960cf26a54c6038c03a022069b8db8a3f4022289b2ee17a7411ac2c42b9f7f37335c0c0075d075fb276fc33c1f3f10462378fcd112eb273ee9bd511eb3f30f58b6f1edb2df4e57d24c67070dee36cf818164bae2dec3717b552c96ab42019d30f69484ea9a4dc68bda97dcba0fc6a093b5ba8e1e15e165fa671b83bef8b7b0cd614c1106a996895e97839afa6657e0febc0b48b129528ebe80368d5f23debd463575f69b7ed8426dc3fa665f13b9c08c8c05a1d4c31b41732523d2b943b8eee9b43a74a4cd533b781512468954ceec8c560e2522373a0c0a1b0e090af4cbaf9c4b28b2e30023693ebef35cdd1ada0dd7102e3ae0672b85fd5b7126b24cc4046a74abe14e7a2b592b1f463cb7110964aac14bb7e710ffe434b5dbbbf05edc9bb7a5c827fb36ab1799350c43a72fd170226bc9b9fffaa3744056aa18c854e975f117cc594be842217b1b451aea7ca191900a670f29acf18cb968865df37f4458ba9e720ed946a0ca1db4531403101cd0da03396348f9daf3cdca7b849d0ca2f15ee9fa5363f7fa7504ade218503f485f0cb3a1bac183cbae7268eeeef95c5a6797176ffa49a2cb7da742f9ad1cc3b7090cf4f59d8d046fb365198deead59f9514815d7c4494d8614", - "dataAbiValues": { - "methodSignature": "handleCreateRequests(uint256[],bytes32[])", - "inputValues": [ - [ - "65536", - "115792089237316195423570985008687907853269984665640564039457584007913129443328", - "458734", - "81411916260887808935637274574103901471821894122785804973774955777497682950409", - "73833572969127614450188660123107505555423378693848513117239642789239664389172" - ], - [ - "080aa8886e229c59ad31a48e8790c532b08554e63f60fd65922b33e3589dd8b9", - "6aa104212b8f7bc224e863f0e8c252064d7229b15bbdbbe21c0b370fb52ecf01", - "6ae7f838205c29fb37c80991959f4df295b815ab130ddaf950ec1bec40be1244", - "219653dcfedcb982b35ad7871ca540ce120b5cd731953fc8b91d4c4dc6f0e3d4", - "d6f3303d5fde3a31146530161a95a9e5730847bb0e1adc263d276fd57bd0e9d5", - "a1cc4a17639fc1be64e2f04f022fe314e4eb945526ac1e64f07770f1ade7d0db", - "6c94d83e4ccac8e80511cfc9d681f3d91507412e8b07c2e7c8d526c804bea9d1", - "3570a7586321df39a35efc4800cfe6f84e57e37881266b4981bf8047828149e3", - "4fffc8ffbda96ca0340d3f9a352599a6dd40c1b5e04a6df65851467da3e99955", - "756f07edf77dc0a01f914c598c84ffcc8992a824b7692ecadd637fd191d1ed0c", - "455a2e9e136425ea6ed45a40080c391f2f2deb3b8048cfba079bbcfe913a6ef8", - "4d1e680ee7ba81fd7eaff5fa2094ed84e21f7f8f41e16193838b0e4c0ca6197a", - "e2edffcfd0479da46a691dd1169eba1ff20b64d16f5124b8601d74e5e1320d6a", - "8ae86f61d0b2921f586a223eed1d260417e9593c5fe94fe9c7c3e79e094cca39", - "a2efac7e2bcd9829cb27ab0e73c400c60da9115aeb6f19875c4cd2353da0a35d", - "33ecffa467bb2268d77ad6d71dd9bcb7b024f5ff4cd6a4007585993d5ea7df79", - "255473ed437ad85ba26f6d6baec88ce97da00bcf30683c9c13d2412347ea64ac", - "677e6040592518afb3ded7e96495db0cdf7d26a4975b0d955fc54b5bd4ed185f", - "739cc30f03a7f23a25a5174766f8d7fd93b39c836e9c8afd3dd24301ff3dc6ba", - "307623d89316ee4ce81d67849775b6a630da2070162aeb4c72585d93e0317c67", - "b28a9a3a12d3f3fdeabf90aeb820806d3c6fed80f683055994f279e04b7d917f", - "52c54497abed020dfd879d9e39b05bf9b57cabac7a801afb2a0241460b62bb47", - "7f69b395ce79330f3ac1b16009901a01e5a6a460f75039dea573505eba6ad0f7", - "0eb27909a646195dc69c0f5ca8a766100f3be920285377868bbaeadebcd299fe", - "8c0427854ae7435ba56c29e52895feefb622ecc2945098f01cbdda3630343062", - "eb1e37c3d5a4e6ae57229bba8c4fea1628c1ba448bc5cdf625c231047e480107", - "9dd944f6f545e8919a5d5551d29a15bde1c5371198736dbb662280b7843d38d4", - "5d0dce2926c6fb2a8b59a8b7845c6c2d964a5aa85d684263c4b83dc4c7171da1", - "e59e37c80155e035755661f7634ccd7b55a898d31544c8468e6f488bdede21dc", - "c9265aa8818e56017d605c1dd0743ea6e2830c408cc25b6552d6014b618f1308", - "69b725292a8377fd7a13212306a1eca6e7cf0e7a8cde94bc2a8b3a95aecc11f6", - "27c13d2c7f480c3855b8cbd276a30a3fda895db68e33faf65b1bcd52b09bcfa0", - "4b9cb8b5f72afe3c9bde9ead1c97eb062e7112bc9aeca5c2bbe3ceec1ae37d16", - "e29361c16456d264bda7323cc19e74ab7d7ebca395dfcb5bbf2ab0baad7794bb", - "a7db130667d95c3d572935aec28dc8b9f511a602bf74215c24248625d15b17ba", - "40c7a58043e38ced1995d2154c366bc0be0e2eb305dd9eb025f96255be97a436", - "31c8fadce211bafc2a31de41868fc1a4f2114e6a94cb7247ef7a7de850584011", - "d18228e6e4bcdd035f52ec239685e26f7e641e9e709f65c50fcce5127abc5862", - "6ca96a4c1f5d7676f8e6bd1dabd05ad51ae7bbda1fc57e607b0e8d65071ea96d", - "d51dd971e5934ba0a695986eb01879d508dbb993c92579d9b28574782cd7e0b7", - "58d48c6eb6a6c277838e4d71679e07e68fb0f85be1c4c4c1fe1d834de1cecdaa", - "5d2a4f5d6a7d28fde6e6e96b919af9ad18de545be180fc12f3ccfcb9c7bde224", - "c1c74304938d515f9cdc98040161272295aeec9689de3f42cd70e2dddd290ad6", - "57403cb197b4fd042e8b60dde8afc62b97f16b1feaffbab7823c8ec40a5f49fa", - "d5dba3355b47e16535bf0d4d0ac71372d1baaa0bf9b807572fcd8e70c4205736", - "d8077a465d6e4d070f7d5f012f24141d1a4ef2e87e8896da73960cf26a54c603", - "8c03a022069b8db8a3f4022289b2ee17a7411ac2c42b9f7f37335c0c0075d075", - "fb276fc33c1f3f10462378fcd112eb273ee9bd511eb3f30f58b6f1edb2df4e57", - "d24c67070dee36cf818164bae2dec3717b552c96ab42019d30f69484ea9a4dc6", - "8bda97dcba0fc6a093b5ba8e1e15e165fa671b83bef8b7b0cd614c1106a99689", - "5e97839afa6657e0febc0b48b129528ebe80368d5f23debd463575f69b7ed842", - "6dc3fa665f13b9c08c8c05a1d4c31b41732523d2b943b8eee9b43a74a4cd533b", - "781512468954ceec8c560e2522373a0c0a1b0e090af4cbaf9c4b28b2e3002369", - "3ebef35cdd1ada0dd7102e3ae0672b85fd5b7126b24cc4046a74abe14e7a2b59", - "2b1f463cb7110964aac14bb7e710ffe434b5dbbbf05edc9bb7a5c827fb36ab17", - "99350c43a72fd170226bc9b9fffaa3744056aa18c854e975f117cc594be84221", - "7b1b451aea7ca191900a670f29acf18cb968865df37f4458ba9e720ed946a0ca", - "1db4531403101cd0da03396348f9daf3cdca7b849d0ca2f15ee9fa5363f7fa75", - "04ade218503f485f0cb3a1bac183cbae7268eeeef95c5a6797176ffa49a2cb7d", - "a742f9ad1cc3b7090cf4f59d8d046fb365198deead59f9514815d7c4494d8614" - ] - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 10110, - "blockTimestampDelay": 42400 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000020000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 3, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x3c26dcf800000000000000000000000000000000000000000000000000000000000000fe", - "dataAbiValues": { - "methodSignature": "handleSetEpochManager(uint256)", - "inputValues": [ - "254" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 31534, - "blockTimestampDelay": 502997 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000030000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 8, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x2047c44989b83856711dd6e2fff2fb4f6f9c007bb9771f1755a26b351a1eb3dfa452d159151dc355d1937bfc43323997c9d735e9178a3cf3e993e7b764f4bed67935ce4cec7893aedcb0a69d085a606cdee3b9838daf3fefc61d38b0f14ecdec26e33aa460f9421d6b80b366831f81a22a3a22ebd80e834740e6cd645da1790063ab1669", - "dataAbiValues": { - "methodSignature": "handlePay(uint256,uint256,uint256,uint256)", - "inputValues": [ - "62292348944090115746545714663996537181369460052517339629743735497958525948249", - "9551156539331198657207388647210792475747533930906137829599958395912405241420", - "106958873184409346177772424067264194416183043741641706881530640155496522398372", - "43862434691542092146243210499299989128919851476248082112521904879876197521001" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 27735, - "blockTimestampDelay": 575806 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000040000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 6, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x52e3cb9cffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff", - "dataAbiValues": { - "methodSignature": "handleSetMaxUsersToCheck(uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913129639935" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 18, - "blockTimestampDelay": 20 - } -] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803638838000-b6d2204e-b85e-4a35-937c-c1bc3c2af34d.json b/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803638838000-b6d2204e-b85e-4a35-937c-c1bc3c2af34d.json deleted file mode 100755 index 8201846..0000000 --- a/test/invariants/fuzz/corpus/call_sequences/mutable/1731277803638838000-b6d2204e-b85e-4a35-937c-c1bc3c2af34d.json +++ /dev/null @@ -1,2161 +0,0 @@ -[ - { - "call": { - "from": "0x0000000000000000000000000000000000030000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x13a8b8040000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000034000000000000000000000000000000000000000000000000000000000000000170000000000000000000000000000000000000000000000000000000000d2f000ffffc0000000000000000000000000000000000000000000000000000000000181dc31bc03ad9bc8a966de91dfc8c49b929f6d5fd44a9c22a7f5bb37cebfc106ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed8ee8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b825bc2cfc37067e378b4feef3f3411136744d0b2851c161c601669654cf27afe610000000000000000000000000000000000000000000000000000000000000000578750b27e877a957d33dc50d914b1caf972efffa4bb78b85e66dd813a864ca4039e696f94058cfd274de97421f65916ac135f4d55083d357b9c1f34820c9376000000000000000000000000000000000000000000000000000000000003fffe000000000000000000000000000000000000000000000000000000000000000167e6a528e0202cf23a36eacf513eee303475d3e4c983b2ae2d616b11c440f70a4ac07813439b9213b22d4d86340307a2982de60c241368ad288dfea742b6eb5efffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9686c2d73382b1edfa908bcaeb6b9ac0073f469887a9150c80831642e47e35a614c1bffffffffffffffffffffffffffffffffffffffffffffe48e5eb33a3a7f000000104a13a90c13653470268ea78892361e7e91e706d859aabaaf45ddd18c956640809a37cc7335cdf29b7d988dc8c05e2c1899ad1795364e6fa667088b49487472000000000000000000000000000000000000000000000000000000000000fff6fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b800000000000000000000000000000000000000000000000000329c51ac594cf93000000000000000000000000000000000000000000000000000000000076a700a77a4c48695a0407441e86efc633aee092d2ebd99c87fdfeebcd904fe33e086d000000000000000000000000000000000000000000000000000000000000001d563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd0633ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865d5d6866ffb684491364a0853403f689144f5664f5d50de1b1a30d683ff29f21bf8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b4498bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef328d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad820824094c2949304cd969b5661cff34ece28aab6ca0f3eb707dc756ae848252d66c44a94d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae96291d8c581a922d52cd477658fcc2e2ca1f954f274ed2cd833a98e6d1d4455581f9d9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cbba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c389436d2b9b4dda11f7c2a5c1ca8fb20cba7512c884b100fa143fc24dc6c160eed276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f6617237058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25bcffd3ebd814d0f5e8e8dc7ef0303a14b98e79acfcabb14c9ad4225afd8f18c265f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a219fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c18aad5c04eb3f39ce81189eee664fb350f14bd8ce4dd62972aa7de342f017c7f", - "dataAbiValues": { - "methodSignature": "handleCreateRequests(uint256[],bytes32[])", - "inputValues": [ - [ - "13824000", - "115791647525550000827488589184312722123641027794666345134718053606362806484993", - "58737407075920930096693749632210245280794127876199190949253348332199714210054", - "115792089237316195423570985008687907853269984665640564039457584007913128431336", - "115792089237316195423570985008687907853269984665640564039457584007913129380738", - "41504671482165347584846103287222174319130579613222615088745194098566077546081", - "0", - "39590299132392589184737138068833640165131826767556478003143025413084726840484", - "1636828073493779560152621491074002847609709387720111137750911676859097584502", - "262142", - "1", - "46995738119123743123282428161140493004285235666026628953647859202250191730442", - "33811214160519685654400438720767591502827986970858420988841187408488311483230", - "115792089237316195423570985008687907853269984665640564039457584007913129207916", - "20557653259021005890251421269967042420225955023564768794272035576696478452763", - "115792089237316195423570985008687907853269984665640563909857584007913129639936", - "7367887950809164700104084563884591449786965425123545364576065505479275931200", - "58168524174645209900719041489934173752247098791866719219864340874379345294450", - "65526", - "115792089237316195423570985008687907853269984665640564039457584007913129380736", - "227929974933606291", - "7776000", - "75752327540241786815348607290604056680494387521335977257182003214564422715501" - ], - [ - "563a284729689d3dbbedfcb1807c5db085b7e9a9717c8539e2f1bc550658d2fe", - "27f3be66616960581b372dfd387b3e126ed97737b524aec390b7978d8deace4a", - "9e6fec2d7c932f133a655a7264e0b707b787dddb8f368a77967dbad777ebfd06", - "33ee9b04284300aa9f5468a600f8553d27e9a4f3c35b14c7a412dbd4ed695865", - "d5d6866ffb684491364a0853403f689144f5664f5d50de1b1a30d683ff29f21b", - "f8043ffd64ea70a52a9544b16e9a9d2e23317648b32b32985d47237a08f48ee1", - "c365845a722e7b5881da7289b701561786789ecf720dfd0893308cf426144b44", - "98bb79fa1003a235f40fdd4017740e90ba535106f3f7b3280297490913f15a01", - "108e9532566cec33ecda965e50478a698ea03051fbf0bbcfa4e41157a628ef32", - "8d5342deffedf1eb4b1ec4e368f92684579fe44242acf15d7b77202fa132d2ea", - "94156b1ceb81e3538c176e7b79ef40ba43500306f484d1ca1b5f6e8ad8208240", - "94c2949304cd969b5661cff34ece28aab6ca0f3eb707dc756ae848252d66c44a", - "94d6e48f6310ca950084adba5e901d8c6451907a011ab58d9ab09d5509d6e056", - "cd794f6fb32ba155e14db1fa911bc709351e9f4b415043811455ffa00ae96291", - "d8c581a922d52cd477658fcc2e2ca1f954f274ed2cd833a98e6d1d4455581f9d", - "9f6d2c44e7c920946e34ab248efbc49a1fa862bc2cad544c49509ce428ac4874", - "ae24b8ddc161aa22bbc8beb3c18f1920091767e3db7422b42c2c310498e8c6cb", - "ba3abbe404813f14105b0a5b08c2bfc6aec732cbacd87310a6b7d3a8b5b4a8c3", - "89436d2b9b4dda11f7c2a5c1ca8fb20cba7512c884b100fa143fc24dc6c160ee", - "d276132efb5a4c6e31337be2b859bcd3a68267c1a5bce373d2ce245618092a99", - "fe67dcb902ce90bcb60acb01d154181ae9da98b92985551598368402d752bbce", - "3d7562c331efe40ca28d9ff51ff3748be2f4c9c7caf4640a39c1f22261f1dfcb", - "4da01ec491bb6cc2b87549ab527c536c89ada2bcb0553955f7249d790f661723", - "7058cb725af057020b969bb1da28a9f19bfda1b443c79016cf8130443a394c78", - "994d2d01849daa0ffff1f4de4624dad5d1dc297a8a7f0c2a60524a8869e7bf25", - "bcffd3ebd814d0f5e8e8dc7ef0303a14b98e79acfcabb14c9ad4225afd8f18c2", - "65f92fda49b8b9ce235c49852497d1053adca313d960be19aea8ec423c9945a2", - "19fc4da105fde3886c3f5cf3f192c8c68f2c6679c510dd6ca0c6cdf5e13cd97c", - "18aad5c04eb3f39ce81189eee664fb350f14bd8ce4dd62972aa7de342f017c7f" - ] - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 21265, - "blockTimestampDelay": 360627 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000020000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x161c7318", - "dataAbiValues": { - "methodSignature": "test_debug()", - "inputValues": [] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 15325, - "blockTimestampDelay": 189245 - }, - { - "call": { - "from": "0x00000000000000000000000000000000000a0000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x88b05f294e5c5739570432e46e997185cf2683c287e8339e1ce7ab9502db4f4b4f0c1b77000000000000000000000000000000000000000000000000000000000012750000000000000000000000000000000000000000000000000006f05b59d3b200003c3b20fe3c6474ef6112cec6e2e1e2a66147c502767418c32e65c3bfa035d898948fc45007206ff5c0b2215d0b5c97d5551a84ed653f28e284b8567c463ce3650000000000000000000000000000000000000000000000000000000000069780ffffffffffffffffffffffffffffffffffffffffffffffffffffffec39800000109b1ce09a2caa796f35db2570026fd5d54f3b6f79d72997e7e30411ab7bab5f", - "dataAbiValues": { - "methodSignature": "handleSetDisputeModuleData(uint256,(address,address,uint256,uint256,uint256,uint256,uint256))", - "inputValues": [ - "35443554117267417118592017165536035041230544133048285386578266163756344810359", - { - "accountingExtension": "0x0000000000000000000000000000000000127500", - "bondEscalationDeadline": "432000", - "bondSize": "27243242601887521753615714576112380311306725462768124357416761313244220872856", - "bondToken": "0x00000000000000000000000006f05b59d3b20000", - "disputeWindow": "7511066176535142771400004346711719422194606327049609712661925953610498943839", - "maxNumberOfEscalations": "67196315620416968751812103706326677402054656808860235011842083525495944438629", - "tyingBuffer": "115792089237316195423570985008687907853269984665640564039457584007828194983936" - } - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 24101, - "blockTimestampDelay": 185392 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000010000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xb6c75efa8ba080b8a5e8e7e02b35ca63d619e3bf03ea7ee17a7395426e8c0ae38903a378ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff51e8737b07890aad8af4228017f323f8ee58c58602fe8a95d9a372445358479b", - "dataAbiValues": { - "methodSignature": "handleClaimEscalationReward(uint256,uint256,uint256)", - "inputValues": [ - "63155069885073485423962987089686113899340909970551762747564159406599093592952", - "115792089237316195423570985008687907853269984665640564039457584007913129639935", - "37048046271970045328561159781521571766041874645079829392453863326819299116955" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 7, - "blockTimestampDelay": 32 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000090000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x223b137400003ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe000000000000000000000000000000000000000000000000000000000000004006807205175b22b301c32b6c5e6ee194bd596681cba8c8638952ec1250f3d6450000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000000000000000000000000000000001518000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000027874838a0b68a875ec0ee81d4c8ef1980254e8ae6eaec10d74722bac9ebd5a49a6c310208a5de1500000000000000000000000000000000000000000000000000", - "dataAbiValues": { - "methodSignature": "handleSetRequestModuleData(uint256,(uint256,string,address,uint256))", - "inputValues": [ - "441711766194596082395824375185729628956870974218904739530401550323154942", - { - "accountingExtension": "0x0000000000000000000000000000000000015180", - "chainId": "\ufffdH8\ufffd\ufffd\ufffd\ufffd^\ufffd\ufffd\ufffd\ufffd\ufffd\ufffd\u0019\ufffd%N\ufffd\ufffd\ufffd\ufffd\u0010\ufffdG\"\ufffd\ufffd\ufffdդ\ufffdl1\u0002\b\ufffd\ufffd\u0015", - "epoch": "2940820452134172681045375212785432443100619197912571245547930807664892958277", - "paymentAmount": "0" - } - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 15253, - "blockTimestampDelay": 492034 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000080000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xaa1a5bd900000000000000000000000000000000000000000000000006f05b59d3b2000071f7cd086897aaf2110bd910f953453e7bcc20e82af33eec4c00647f9fb5da5e", - "dataAbiValues": { - "methodSignature": "handleResolveDispute(uint256,uint256)", - "inputValues": [ - "500000000000000000", - "51549178199604899047887187595007193100674999475015380254417935657395983604318" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 53242, - "blockTimestampDelay": 71336 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000070000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x52e3cb9cffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffec", - "dataAbiValues": { - "methodSignature": "handleSetMaxUsersToCheck(uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913129639916" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 45495, - "blockTimestampDelay": 225944 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000090000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xdb106aceffffffffffffffffffffffffffffffffffffffffffffffffffffffec398000001371ca94900c31d8e9be66d7c23f65b05f5d33ff2b30949acfed984f87f269e080baf5544430fe321ebd2409617ef6786f5b994597bc40798f800826b310e4524793f157456609da494af2a02075c03fcf9249185214862d5dd9f0eddb7447ce", - "dataAbiValues": { - "methodSignature": "handleSlash(uint256,uint256,uint256,uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007828194983936", - "8794995999406163856009545368231505849668095829549449500668097316828300339680", - "58226371372378751290891435773627286125304890291737788253576280229276508283986", - "32375604441627796962923040660328673776239995228426910584919203216277625915342" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 49592, - "blockTimestampDelay": 581992 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000080000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x223b1374000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000408986d1481eea494dad550c07436bc6bf24fda1699ae18ac8e867c2bc2cbb811f0000000000000000000000000000000000000000000000000000000000000080000000000000000000000000148bd2b35a0e0ff5f58651fe93524e321532b27500000000000000000000000000000000000000000000000000000000001274fe000000000000000000000000000000000000000000000000000000000000001419d972fb93584a547a564eb672065531206d2c71000000000000000000000000", - "dataAbiValues": { - "methodSignature": "handleSetRequestModuleData(uint256,(uint256,string,address,uint256))", - "inputValues": [ - "0", - { - "accountingExtension": "0x148bd2b35a0e0ff5f58651fe93524E321532b275", - "chainId": "\u0019\ufffdr\ufffd\ufffdXJTzVN\ufffdr\u0006U1 m,q", - "epoch": "62205062171946186530711375116649708949236787489916806320076639634871891493151", - "paymentAmount": "1209598" - } - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 57406, - "blockTimestampDelay": 508192 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000090000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 2, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x3f60f9cc0000000000000000000000000000000000000000000000000000000000000000235c58e45e6b448123df4ec75c527147b56e207c4815f37193cfafc12fe9143343aa8e00e44758769fcba79ddc533615c240383088eacc520788ca11f978270a", - "dataAbiValues": { - "methodSignature": "handleRelease(uint256,uint256,uint256)", - "inputValues": [ - "0", - "15994113140863775377512613840889015859198326455210825118094249343807524508723", - "30606304928112969978587259490316563804100123622315096384733063005977978611466" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 14222, - "blockTimestampDelay": 506677 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000010000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xa59d317d236b70e2ac17ad29db7127993a74e4044f47fe8ce7ed46db3cd8a16c797dd6a800000000000000000000000007743aecbf6a16d4951507d7551e5a420748d15000000000000000000000000000000000000000000000000000000000000003e8a4204edf78d831e0da05471c75e00fd5486a22d4239d68dbd4e843fd299ace8efffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc00000000000000000000000000007109709ecfa91a80626ff398ab49ad330281d12d", - "dataAbiValues": { - "methodSignature": "handleSetResponseModuleData(uint256,(address,address,uint256,uint256,uint256))", - "inputValues": [ - "16020781443007852116740508170121164524726566377185661961033510726941712176808", - { - "accountingExtension": "0x07743AecBF6a16d4951507D7551e5A420748D150", - "bondSize": "74236390634738164828042936817328106253978822253810691447408898961590657404558", - "bondToken": "0x00000000000000000000000000000000000003e8", - "deadline": "115792089237316195423570985008687907853269984665640564039457584007913129377792", - "disputeWindow": "645326474426547203313410069154905908525362434349" - } - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 4534, - "blockTimestampDelay": 153607 - }, - { - "call": { - "from": "0x00000000000000000000000000000000000a0000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x3c26dcf8ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0", - "dataAbiValues": { - "methodSignature": "handleSetEpochManager(uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913129639904" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 23786, - "blockTimestampDelay": 327680 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000030000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 2, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xc5c17157bbc9215b06808392dcec2e0c7851767c42bcbb477c1c8c8d2f6788a5f1c33d9d", - "dataAbiValues": { - "methodSignature": "handleAddChain(uint256)", - "inputValues": [ - "84937869156760602001974346264518001642163336959320593474760511948578749627805" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 1000, - "blockTimestampDelay": 604800 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000070000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x0692ea7effffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0000", - "dataAbiValues": { - "methodSignature": "handleRemoveChain(uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913129574400" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 36805, - "blockTimestampDelay": 229553 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000030000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 3, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xb6c75efa91f1b7da6044090f2bc54454fe4b82551e6e3fe26925710e360197150ba6c5040000000000000000000000000000000000000000000000000000000000069780fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b80", - "dataAbiValues": { - "methodSignature": "handleClaimEscalationReward(uint256,uint256,uint256)", - "inputValues": [ - "66012442094173021184902279859918771353213111919353305006878331952590280377604", - "432000", - "115792089237316195423570985008687907853269984665640564039457584007913129380736" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 26105, - "blockTimestampDelay": 563160 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000060000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xefe223c5ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc1eab46d9a71b9fc6196bc66df97ad0229e4ed4df31cb14738c45729db851061", - "dataAbiValues": { - "methodSignature": "handleDisputeResponseOracle(uint256,uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913129639935", - "87711067258970041198538357174074530315975071051269236784798286206430053994593" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 22062, - "blockTimestampDelay": 533426 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000090000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 3, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x3edc7cbdffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9c", - "dataAbiValues": { - "methodSignature": "handleFinalizeRequestFinalityModule(uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913129639836" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 58571, - "blockTimestampDelay": 448941 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000090000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 4, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x9d2e6a6f9ad1b274a36d6422204cb38284e52c1e394b76dd420c12b133c0f54555fa8725", - "dataAbiValues": { - "methodSignature": "handleRemoveEBORequestCreatorRequestModule(uint256)", - "inputValues": [ - "70026681373776152693382902846792773999381205621007041991972413057813542766373" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 55128, - "blockTimestampDelay": 223499 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000040000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xcd10417aa9b7c8ba23219e921c8c24f084b211b31e9da2b176051da47b11bff8ff5c33212de575b81bb2e58ba5f1b8efa82a2605f4006b905e5e2cc82173eaf76a20add4", - "dataAbiValues": { - "methodSignature": "handleEscalateDispute(uint256,uint256)", - "inputValues": [ - "76765589790945662604547244204216214155946252006571676315847820028747638911777", - "20759498631951024433205069293438925811645138406748362097890303052587796049364" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 17266, - "blockTimestampDelay": 47869 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000040000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xf84d6dfc2e0a2c2d27894539cfe61cf1aa3dce6fa4cc0182d8a4f96446b30c16dcdb4280", - "dataAbiValues": { - "methodSignature": "handleAddEBORequestCreatorRequestModule(uint256)", - "inputValues": [ - "20824364399678545662833682292547392236236046121352715060387808748443780465280" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 8422, - "blockTimestampDelay": 175942 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000070000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 2, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x7aeb6fab0000000000000000000000000000000000000000000000000000000000080000861226f42b4f83fda125862408777203fcf059cc4d6afa3d8b5f14cbd0503cba", - "dataAbiValues": { - "methodSignature": "handleDisputeResponseBondEscalationModule(uint256,uint256)", - "inputValues": [ - "524288", - "60641993806473011143834861665095605796555276187455692014587155889705714728122" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 5058, - "blockTimestampDelay": 564562 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000030000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 4, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x9f6259e500000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000060000", - "dataAbiValues": { - "methodSignature": "handleResolve(uint256,uint256)", - "inputValues": [ - "262144", - "393216" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 54349, - "blockTimestampDelay": 446424 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000070000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 3, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xefe223c5ad8117bd6793da9372ee7a9f184c1f229a994a23f82083eb6803cf5612a5e084994694c28b481c29ef6ab1024c7f7ad48917e7b3644de29036693dfa1f6557a0", - "dataAbiValues": { - "methodSignature": "handleDisputeResponseOracle(uint256,uint256)", - "inputValues": [ - "78478209922765382613928019011452160112457201279089481808494135837808952467588", - "69328571831131295636312210863921518104963878476144420959825437715154096969632" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 356, - "blockTimestampDelay": 94684 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000010000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 2, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xec5bf215ffffffffffffffffffffffff8ef68f613056e57f9d900c6762970980a4e22ed3", - "dataAbiValues": { - "methodSignature": "handleFinalizeRequestResponseModule(uint256)", - "inputValues": [ - "115792089237316195423570985008042581378843437462327153970303678099387767205587" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 26236, - "blockTimestampDelay": 172938 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000040000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 2, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x727899fff514b534b61c375c439f68b334317ec7ad1c81896f2e7f7d9e2bf248e8b86bb80269a17e974e3f307c7b602e63a3a5f54ab7520e1ce48c185b85068b23a50c370000000000000000000000007109709ecfa91a80626ff3989d68f67f5b1dd12d0ce9ae7037dff0632bada0555a4b2a1709ee25a0f6d47ff213ef7dab06f13492", - "dataAbiValues": { - "methodSignature": "handlePledge(uint256,uint256,uint256,uint256)", - "inputValues": [ - "110853235481380273198257434098634459560730545434260276739156884901825263201208", - "1091259233017721395373144204062272118708516766005316865622853242594359839799", - "645326474426547203313410069153905908525362434349", - "5840633478355227696719452384365761985173515625270275222857093897003304301714" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 48302, - "blockTimestampDelay": 98481 - }, - { - "call": { - "from": "0x00000000000000000000000000000000000a0000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 2, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xc82f34f9ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffec00009c3ade46c6a10c03646645dceced151803cfed4a76a69d888d9528938805d33e", - "dataAbiValues": { - "methodSignature": "handleSettleBondEscalation(uint256,uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913128329216", - "70664815604550041696416122873938953675815643014153596578083942850550877770558" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 21405, - "blockTimestampDelay": 224071 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000070000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 4, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xd51b326a4f11ce728964fd5cfe4e67e0a4108fd7bd12e31d80bee3e9fd7503b25943d86bfffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600002fbcb13722d80a133f1e093640349fcea5017c8025ac70c52fefa1f32bef4147", - "dataAbiValues": { - "methodSignature": "handlePledgeForDispute(uint256,uint256,uint256)", - "inputValues": [ - "35764176285829964837988166432096626338604401112435149938249800147871318923371", - "115792089237316195423570985008687907853269984665640564039457584007913128984576", - "21592094227161796483602757534726537598958165417486369280358722180410608927047" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 30001, - "blockTimestampDelay": 418139 - }, - { - "call": { - "from": "0x00000000000000000000000000000000000a0000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 3, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x51b295e300000000000000000000000000000000000000000000000000000000000003a8", - "dataAbiValues": { - "methodSignature": "handleFinalize(uint256)", - "inputValues": [ - "936" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 23854, - "blockTimestampDelay": 283267 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000020000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x6b125a57fffffffffffffffffffe3bda3d84c15b95fe7640319d8a5c26029388bb4c0000", - "dataAbiValues": { - "methodSignature": "handleRemoveEBORequestCreatorFinalityModule(uint256)", - "inputValues": [ - "115792089237316195423570815840224595780479919275071395757947099535303139655680" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 132, - "blockTimestampDelay": 172800 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000050000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x6b125a57439c4dea175c1f4dc2283a0dca8df089ec1e32de1a71e6049937ba0ef888023b", - "dataAbiValues": { - "methodSignature": "handleRemoveEBORequestCreatorFinalityModule(uint256)", - "inputValues": [ - "30581126742740578579461185375868096517298438186402910784813700598662223626811" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 27956, - "blockTimestampDelay": 447027 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000070000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 5, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x64d6e6d3179a67678bb838478c44926fbd26493474eb791516d81ee5baa3765643a7f0f13935c24452e2a5faa498fca2a6c4ae1b3a3c6a9976af2868354336a0b5eae4a3df8b40fb6fcf686f1659e51d90d962d5cbfd1a55d1a1db345acbb7978cd9bd61", - "dataAbiValues": { - "methodSignature": "handlePledgeAgainstDispute(uint256,uint256,uint256)", - "inputValues": [ - "10676003636853416453138572180884583936897901964655062312574559468487432466673", - "25876816044475934884764655838030328364254713960717807302331158298975447737507", - "101111805466560395134870514718984948651558312084779106319072364710585748274529" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 9230, - "blockTimestampDelay": 259200 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000040000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 3, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x4741f6dc97ea50d8c074d187de7cfc88d0f1c34dc24db2642bef23ec1b88370e17145d67", - "dataAbiValues": { - "methodSignature": "handleSetFinalityModuleData(uint256)", - "inputValues": [ - "68713240332555606262576304945776648453307986915064085044793172925635856981351" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 12052, - "blockTimestampDelay": 19785 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000090000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 5, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x9d2e6a6f0000000000000000000000000000000000000000000006f05b59d3b200000000", - "dataAbiValues": { - "methodSignature": "handleRemoveEBORequestCreatorRequestModule(uint256)", - "inputValues": [ - "32768000000000000000000" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 0, - "blockTimestampDelay": 3 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000070000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 6, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xcd10417aa92d06f9b187c43210def504095e8426544f54827af0094e5c47e1262e065b663a93985339d1aaaa5528eca3343f64826af8471fa3111ff7b1a1d067661f7a4c", - "dataAbiValues": { - "methodSignature": "handleEscalateDispute(uint256,uint256)", - "inputValues": [ - "76520427670687974472084713126552624256348516399009121051566372436541744503654", - "26494923045561211048191064476495620839647940608616973048585101859895222696524" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 6938, - "blockTimestampDelay": 197916 - }, - { - "call": { - "from": "0x00000000000000000000000000000000000a0000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 4, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x91e32c745efa4f15675e1dc5e0820d8b61e4e1c3b2c7738498336617ce8c1e04c4745f79e0fd906e76d9087d90474287d3aa87bd7537e316bdda4a8d939805778b853ddd", - "dataAbiValues": { - "methodSignature": "handleCreateRequest(uint256,bytes32)", - "inputValues": [ - "42959665348027796296446623032871991309114884315911569472746230850572248178553", - "e0fd906e76d9087d90474287d3aa87bd7537e316bdda4a8d939805778b853ddd" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 100, - "blockTimestampDelay": 423478 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000080000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 2, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x88b05f2900000000000000000000000000000000000000000000000000000000000151800000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000012000000005bb97848736b7142c96367d03991dd42df02a25e9fc88dfdc517b1f4ce28bc31fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff83cfafea801b1496906d8ba69b3619acad07c602f5f5644c5546c0a5a1625c9e61db764de175bf41c23313c816c5b2dbc6935d8c395c4856ce1ad7fe38ed0f6", - "dataAbiValues": { - "methodSignature": "handleSetDisputeModuleData(uint256,(address,address,uint256,uint256,uint256,uint256,uint256))", - "inputValues": [ - "86400", - { - "accountingExtension": "0x0000000000000000000000000000000000010000", - "bondEscalationDeadline": "115792089237316195423570985008687907853269984665640564039457584007913129639935", - "bondSize": "77309411328", - "bondToken": "0x0000000000000000000000000000000000000001", - "disputeWindow": "104084459477994910024948624640243341651381141291966115158980558504594338926838", - "maxNumberOfEscalations": "41488166090894130137464127351763299761175392285857027714786127187107321003057", - "tyingBuffer": "112281329574643079738863202584985426034020956563149812400628300592423397369289" - } - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 184, - "blockTimestampDelay": 524578 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000020000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 2, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xa59d317d97e31ce94964032123e4969a0749e9aa014916f3250bf8d2d11218c2b83b7bc6000000000000000000000000dd92df5080374ff85078e1a74b8880cd00776ed60000000000000000000000000000000000000000000000000000000000000000b8a36831dc71f854fbe7d1b7ce3a553891cac7605d6efcc4d3c8b0472fa3db1dfffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6c5800000000000000000000000007109709ecfa91a80626ff3989d68f67f5b10a22d", - "dataAbiValues": { - "methodSignature": "handleSetResponseModuleData(uint256,(address,address,uint256,uint256,uint256))", - "inputValues": [ - "68700513958072141403648763787816715343496857287170728137452284071883052907462", - { - "accountingExtension": "0xdd92Df5080374fF85078e1A74B8880cd00776eD6", - "bondSize": "83514279336752933740344099228515725376396365006849213236518003647240640650013", - "bondToken": "0x0000000000000000000000000000000000000000", - "deadline": "115792089237316195423570985008687907853269984665640564039457584007913129035136", - "disputeWindow": "645326474426547203313410069153905908525361570349" - } - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 25919, - "blockTimestampDelay": 101425 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000060000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x40605c3f0200410cca20c8fe9f5721a3f210c230ddaa45fafcbeb1bfbbf8b5311c7ce95300000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000000000000000000000000004c7e5be381d4e135d9869c372ae5fdc127d572047db177eb937dab489b485956e200000000000000000000000000000000000000000000000000000000000003e59142690e4395ff8f7d36a51db819f9b2b627dd44624cc27af7881ae5d85dcdf200000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000000003311cf3105300073b4d65bc6c7ad79013e5ef42b3eb910126db263e9ccd31784a0000000000000000000000000000000000000000000000000000000000640000f6108ad6f1a58aee925973e0ace713bf95f2451f67e85bd48bcfbe31548e84b91c3de217cef27beae2f3d56daa00263ccdcf504d93eb4333cfc73c4509f5099f0000000000000000000000000000000000000000000000000429d069189e0000fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa0000aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaab1fffffffffffffffffffffffffffffffffffffffffffffffff90fa4a62c4e000100001c71c71c71c71c71c71c71c71c71c71c71c71c71c71c71c71c71c71c71c60000000000000000000000000000000000000000000000000000000000000000ffffffffffffffffffffffff8ef68f613056e57f9d900c6762970980a4e22ed36ce748c92fc6e8c7054eecab7ad246cb86145f4440496f6f14134d2aec40099345a0e41980dc4640d7d762ba666217e6d2335cc66cf9205e468798481258f2fe0000000000000000000000000000000000000000000000000000000000000020fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff2d100b4b43a80fecf041e66f27f63cd64cbeb745676ec606bab5bfbf3899cc19b73c381813101545d8fc28f8764c2ffa5e632ab2d55bad52d1355e873c7e7f0b09fbbb7144cb70eeda3d3734f9e6acc52eaaa4e71fa3aa5a9611a184c15f34667d8a20000000000000000000000000000000000000000000000000000000000000000380d9c3a02dbca81296453043d62e319d481e43707aaaada96af9359029428aad358e508346e35e1319cd1b4204bc2ae280a60efa60b5803373ae7fa2a728501a3dab0be6f911f13d935d9984ba3bdd1d59d56f0130475ed4366bbcc0ccb60ad00000000000000000000000000000000000000000000000000000000000003e8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0b800000000000000000000000000000000000000000000000000000000000070000000000000000000000000000000000000000000000000000000000000000000309dff374c6182bc7cc7594dec4619e9906308720653134fe85cde855a6d6bdfaa9d82c04697a26a2f2fc89c44372efb5e17daff2e86a43e551c704094abe3499ffffffffffffffffffffffffffffffffffffffffffffffffffffffffdbf37c00ffffffffffffffffffffffffffffffffffffffffffffe2db4d2053ae00000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffec7800008c71842425c9851ef1fa1dac96fc89fac5b0a10086cfc789214bb9becf0570f74512d139774ad42286d555483a293074206770b602fb92c3af103dd07c60628b00000000000000000000000000000000000000000000000000000000000200020000000000000000000000000000000000000000000000000000000000093a80a10582f7dddd6ab3bb4bdd86be89aea4e2e7aba5ae91d125479d7a686d2c8b940000000000000000000000000000000000000000000000000000000000040000ec19fbf56c5e92f947dbc238c0da09f2fe83c31af46488e2a8cf6bf2976d77b370488e73d98a690a6a8abad72db885b7dae08dfdcca872b439b328b25759bf35000000000000000000000000000000000000000000000000000000000007ff9c000000000000000000000000000000000000000000000000000000a1b01d4b1ce614afd329253d5e4eec4dd3821b5fc692422bae9e1789c1b87ebedec11e9cda2e7d495c6ffa192ca0bb444aeccb50689c3623de6949f46854405bc966bcb6770000000000000000000000000000000000000000000000000000000000070000a4e0e70cede2c12be8a82c7bb0002b8eb6149b9c3ef7c6119916d7e857296399d854b911d10aec4be4765a7c0a482f821a05ebb500ef1254db1c40fd93b9fea61dba1c25c787be027fd2e3494b36e6d331be0f0aaa8cf3d6cd2ae8fd250dd7abcfa5e5962ef475853cfa87bc09f9191e602d950155da341dde817e11b764cc2095f022d0d7e91d3c9a4064a7f8205c5f4e170e666597e049b427dc16d073077500000000000000000000000000000000000000000000000000000000000000030000000000000000000000007109709ecfa91a80626ff3989d68f67f5b1dd12d872a7123006ff99b455a4921c98befc60fe0c67031de33c9f1c2145bb2613bbc2ea807ae15d2b865a7db6f945121113ed550d280408d1e329be213f1ed765870ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed8b00ffffffffffffffffffffffff8ef68f613056e57f9d900c6762970980a4e22ed3a6a2b6b51da8bc33f4de9b5693dd734fa7cbb006ea5213e8e3e8e55e28ec0b65fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff48b00ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00c794466b32dfa891ce64514d00c97ab1123e8400ee548d3f8334b220605190e200000000000000000000000000000000000000000000000000038d7ea4c6800048d3c657cd06a6172cb3c55c578d3a11d4476ac4cec723e3d4d655d02555f4f0265fa64c5d2062e6f10eb554c57cbe56bc6acbd8c12adca1149b04659538139d60fa47b00c655cdb0746da2c7c1cd853fb0af50da03b21b860d3926c7d2076fb896ec62efa3e29fb347e9b04144313f08bf6c48d1cceb29e16e564267c2fc0b4fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6ffffffffffffffffffffffff8ef68f613056e57f9d900c6762970980a4e22ed30000000000000000000000000000000000000000000000000000000000000000d5529cc29e90ca039d4efb38d951f7a223e64e786259b7d5ae0ba6abc28fcec000000000000000000000000000000000000000000000000000000000000003e8e36144b154dde00cc04c22ccc9f4e1c90f42f827d07dc6d0e8abc802539e6f73b626a2dfff01ab7170b9b9fb0dfedee8182d02c7f2b715ee32d21387ac488e97000000000000000000000000000000000000000000000000000000000000001d5288eea52b1384bbd194e84bdced3db4535acc1e4425f62d9f086423c1a080a2ffacaabbee7f158c60ecd0beb300d4ad2b3d6ef1ae7b077b7388a60235ad01d3b93a28878293b15b658497cc6c6d0ea6ecf9ee07217f0c9aa5f8b0892a9eb0b46bc461e6566d1e29af3ce8205223547d7d1591d6c983d4e71f516a689f2dd4d52b3128f618d8c77ac9b410c634ccba8b771ee6fcb33e1262ce574faadc0739ffcfb0305d23a092552aa1f8162b86e86028572ff2e1a5e606fb2fdc27f770a96dfffffffffffffffffffffffffffffffffffffffffffffffffffffffffff900004af955b5eabc23b72fb36631df6b6a6b8056fd0f84ee1a44f070cad12e02f57751e6631f7d05772a00431eb187afcece2b1d414a5fb6e13fb716ad60eaa96d2c0000000000000000000000000000000000000000000000000000000000030000fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff800009f03c25c5931ada832c74234efe3a7e5db174aff54c60d89d95b5eb7a1f125724fbc80f84c596e0da4001e1358a01b014a23caaa3a4c93e5f88620a6dd815bb50000000000000000000000000000000000000000000000000000000000030000000000000000000000000000000000000000000000000000000000000000fffe0000000000000000000000007109709ecfa91a80626ff3989d68f67f5b1dd12d0000000000000000000000000000000000000000000000000000000000050000ab50615387eec32faea1a92ebacb034b669d9b64caaa08f4e8b895e8923ff48c00000000000000000000000000000000000000000000000000000000000d2f008d4df9f3e5302865d5a2c3e35190e52cb892cd96d49288d7a5b569c9d4f28b94da805defbad575e35f256337a84606c33c2f2b33f0e78eeaef1efe5e3bcd3884662363efd8563acc5f21df0b8c49b32b3a8349a85ebd52d151c66429e2ba6fe20000000000000000000000000000000000000000000000000000000000020000500fcf757a48689b990676816e3bc221ef2b31ed3d4db7c7f6931cd01a29659f7ecd983caca3e954df272d682fb68a8b1ff7e5ee2516051735f3de364bc6bb3b3f55739d9e53abe1dbc67448fcaeadc645a202234d964e460efc32ffc3b94576ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0ba30927ed70a0112a623136ef66fb5bc60df1fc7b4e412700bae551a900a1a5ccf73baa7a51456e5e773ff32608a06d3f9adaf6d074d5a76dd8e887a28722023", - "dataAbiValues": { - "methodSignature": "handleAmendEpoch(uint256,uint256[],uint256[])", - "inputValues": [ - "905074655485004108607337249943135160874717547047819677943667362413800122707", - [ - "57153772201059091427674702095160085020575969444899274695515814120981387630306", - "997", - "65702700018772295285641744305422253124998005341393525800568053425846215364082", - "393216", - "3", - "22214478862856196402235137118502809823820432438836253392278385596944989911114", - "6553600", - "111298188540392792167251238172853782003803079965936529581948532548817759667385", - "12774097867830172567665155031478904706813822746602401712704343890851429419423", - "300000000000000000", - "115792089237316195423570985008687907853269984665640564039457584007913129246720", - "77194726158210796949047323339125271902179989777093709359638389338608753093297", - "115792089237316195423570985008687907853269984665640564039457084007913129639937", - "196316340530931592175921944526990946203053766319513217569067355699179974", - "0", - "115792089237316195423570985008042581378843437462327153970303678099387767205587", - "49258431668674329985233305063018037235645410780116477310508292538408990935443", - "31493856368346246194720234575958573204098127017253979057082649670744714834686", - "32", - "115792089237316195423570985008687907853269984665640564039457584007913128775936", - "81734748995643829897749293629050790648292396040940111871005096764596803040195", - "58576618960013436577985191491624867541201923372516262339792817517247239069627", - "82809117699998044416903094946931632162775816286453799866195757321946017552546", - "0", - "25353566768913084137975124568004511822114351841878927897817779161144602405034", - "95595074313884271267459208754562795167546826447980276332141791768385412039937", - "74113386820690374841632175234754098493152877767692964222255803744873003835565", - "1000", - "115792089237316195423570985008687907853269984665640564039457584007913129380736", - "458752", - "3", - "4466502805272837827542281810375039010959250724098765293399392848083032653306", - "76822814172351236704381957085694141751880008096938687989110002656304911234201", - "115792089237316195423570985008687907853269984665640564039457584007912524839936", - "115792089237316195423570985008687907853269984665640563901831984007913129639936", - "115792089237316195423570985008687907853269984665640564039457584007912801959936", - "63524364525032563486099473209578151861273580307383532114660109137943770525943", - "31242833813677776401571601700389063228100765957093565970677171678370104107659", - "131074", - "604800", - "72832106766726792058423032174356857004028480144157507654636072930991491812244", - "262144", - "106791742397202938182777462122874042302016213385485331829509551220079480108979", - "50787235201274696145106251269836276692246095160314164782915832401458227691317", - "524188", - "694444444444", - "104068505613939395620673537148501655846091818995213599622855705840613209316570", - "21027753237518509859013298513333261540195089137345481702615930526600716400247", - "458752", - "74576675562143808956693745165501454248914564230543746207844979903835350328217", - "97849267750834936202069277582968220853718105898992477735441665874625100906150", - "13445900430392228723257928073146961807097387790884559974765581692820184225707", - "93921873971274920962213762017475619213210183931518380568421618927139721366560", - "67818898024236242084042521021667633473967346330859660123835332080677218879349", - "3", - "645326474426547203313410069153905908525362434349", - "61137222976443039109911608729104452804191070247950560134441070334422814899132", - "21103274347266413479703070695065142448029868551910200139833503007741245282416", - "115792089237316195423570985008687907853269984665640564039457584007913128430336", - "115792089237316195423570985008042581378843437462327153970303678099387767205587", - "75371423090025251448523763095978950134991139729190694438513593473478234475365", - "115792089237316195423570985008687907853269984665640564039457584007913128889088", - "115792089237316195423570985008687907853269984665640564039457584007913129639680", - "90272236245973403234983831901481661623806340525386389709016894470763693838562", - "1000000000000000", - "32940698741547198576231977008498678030316414160745073629678995680899735352560", - "17356886465974949297740906028401751349449125040675107917178624515727185941405", - "43864240000434850618035279849298712645569081110998933520835965174566659061499", - "62162581245320974403036203567003251911058458786240641759078759572784452452532", - "115792089237316195423570985008687907853269984665640564039457584007913129639926", - "115792089237316195423570985008042581378843437462327153970303678099387767205587", - "0", - "96488600126906225865587874648621364254506924508256347287845454729728719048384", - "1000", - "102846874893284621945828007270689593150392822824032189361788766148864593784691", - "82389202752447669384498899468905313790058128858245263457757434057410801602199" - ], - [ - "37331591853195898332646914233173156955501937159015030398665417168470977577122", - "115644852447380397106580820209472115954010305551228447193779313880069065998803", - "83780633840859455039201963591578546882784623668416050544233602266931409105076", - "48744452502391184566360786457904555535403359862785255399679643279797858981077", - "19536310699872020071375096717549843195520823039636054431981813458089300933119", - "93940058534988809565601868948434030179172844667554385226371768320462873995629", - "115792089237316195423570985008687907853269984665640564039457584007913129181184", - "33911687267201826747227228408667605311127959699127589037438593522296594560375", - "37044399681956569630066473435830066290752459357848831750171393433806970645804", - "196608", - "115792089237316195423570985008687907853269984665640564039457584007913129115648", - "71924384894433292096989519172037299445580544500513898576006906343017514345842", - "36065772403896067072996942935610603333651879905849624192774582834877652097973", - "196608", - "65534", - "645326474426547203313410069153905908525362434349", - "327680", - "77487516594307415765035774972120118522131374758824921318574400461875517060236", - "864000", - "63913883984472213085539992323673314504226457836791357038462740680155449166740", - "98831005740957109638021708781159126811871769049869769667432650266880395524228", - "46198439941858928614091063460399623917777648473584188038534412802191458463714", - "131072", - "36212962421318419301993835762131349070021499536150148004768772560220653708703", - "57354673270993789344352727846460728222299326903621920205323618921321677110075", - "28646689411467215300358786927112113082682434223951368508192384407000789370230", - "115792089237316195423570985008687907853269984665640564039457584007913129639904", - "84216009570163080362684513090370046181896401684199635219638541266786313706076", - "93833235313702148338103348269210324456108000960628966079234547430264346386467" - ] - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 20470, - "blockTimestampDelay": 408021 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000090000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 6, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x0fb55087fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6c580", - "dataAbiValues": { - "methodSignature": "handleApproveModule(uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913129035136" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 8529, - "blockTimestampDelay": 184502 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000030000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 5, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x223b137400000000000000000000000000000000000000000000000000000000000151800000000000000000000000000000000000000000000000000000000000000040ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffec00000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000000000001813512a62e6c213f6d51f779f18e2c86e0d00fe76b8307ab550d59bb26dd317a0000000000000000000000000000000000000000000000000000000000000027416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c656400000000000000000000000000000000000000000000000000", - "dataAbiValues": { - "methodSignature": "handleSetRequestModuleData(uint256,(uint256,string,address,uint256))", - "inputValues": [ - "86400", - { - "accountingExtension": "0x0000000000000000000000000000000000000001", - "chainId": "Address: low-level delegate call failed", - "epoch": "115792089237316195423570985008687907853269984665640564039457584007913129639916", - "paymentAmount": "58442129073348854913675807273523946543963145606711603520462692937339565322618" - } - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 15158, - "blockTimestampDelay": 295089 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000050000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 1, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xec5bf215449ba16be31dc1d7de22fb93baba8df1958226e92a715719a8538005fae2aa18", - "dataAbiValues": { - "methodSignature": "handleFinalizeRequestResponseModule(uint256)", - "inputValues": [ - "31032249088497022257228939088440837287694462762632281658808369736101373585944" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 20983, - "blockTimestampDelay": 360615 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000090000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 7, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x223b13740000000000000000000000000000000000000000000000000000000000008f8000000000000000000000000000000000000000000000000000000000000000404d995b471c561b6a40db52ed1b0514237c79ca6e737325db49d7a7562fad4da00000000000000000000000000000000000000000000000000000000000000080000000000000000000000000213dc43012f326a0b2168c94fe01cabfdb0135490000000000000000000000000000000000000000000000000000000000055f00000000000000000000000000000000000000000000000000000000000000005bd25121e6f17a79669a63f3ee85a9e50f9718b00dc9ba49127d4896b0958069313f71ea11b70ef3e5c4e3d9124d325233b79b1ea36acb3e29610450877a8edf6525d7e8b05efb2c65283bf8333ffffa1213857d2b92e272a29e0fcb0000000000", - "dataAbiValues": { - "methodSignature": "handleSetRequestModuleData(uint256,(uint256,string,address,uint256))", - "inputValues": [ - "36736", - { - "accountingExtension": "0x213Dc43012F326A0B2168c94FE01cabFDB013549", - "chainId": "\ufffdQ!\ufffd\ufffdzyf\ufffdc\ufffd\ufffd\u000f\ufffd\u0018\ufffd\rɺI\u0012}H\ufffd\ufffd\ufffd\ufffdi1?q\ufffd\u0011\ufffd\u000e\ufffd\ufffd\ufffd\ufffd\ufffd\u0012M2R3\ufffd\ufffd\u001e\ufffdj\ufffd\u003e)a\u0004P\ufffdz\ufffd\ufffde%\ufffd\ufffd\ufffd^\ufffd,e(;\ufffd3?\ufffd\ufffd\u0012\u0013\ufffd}+\ufffd\ufffdr\ufffd\ufffd\u000f\ufffd", - "epoch": "35099046917880542585164555430508038868065917922440903797197539250676616220064", - "paymentAmount": "352000" - } - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 56280, - "blockTimestampDelay": 458752 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000080000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 3, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xefe223c5fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe00000000000000000000000000000000000000000000000000000000000000000000", - "dataAbiValues": { - "methodSignature": "handleDisputeResponseOracle(uint256,uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913129508864", - "0" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 14098, - "blockTimestampDelay": 569046 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000040000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 4, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x3f60f9ccc48e72a465398a458fa410f65630310cd37dc76294bc92537e2601e96c60ebd10000000000000000000000000000000000000000000000000000000000000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0000", - "dataAbiValues": { - "methodSignature": "handleRelease(uint256,uint256,uint256)", - "inputValues": [ - "88905001836693742325507352277997560608298154628648216827782397487703371344849", - "0", - "115792089237316195423570985008687907853269984665640564039457584007913129574400" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 0, - "blockTimestampDelay": 0 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000030000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 6, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x223b1374fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6c57f000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000003c80000000000000000000000000000000000000000000000000000000000000080000000000000000000000000da53940b00458626f6289ddf0adfdfa413fab300fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa00000000000000000000000000000000000000000000000000000000000000000031213c9412f9e5d2844620a737afabe7451705dc25ae97046b27367c0d73121c377e07f41a8682748c3637fadc5e985348d4000000000000000000000000000000", - "dataAbiValues": { - "methodSignature": "handleSetRequestModuleData(uint256,(uint256,string,address,uint256))", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913129035135", - { - "accountingExtension": "0xdA53940b00458626F6289Ddf0aDfDfA413fAB300", - "chainId": "!\u003c\ufffd\u0012\ufffd\ufffd҄F \ufffd7\ufffd\ufffd\ufffdE\u0017\u0005\ufffd%\ufffd\ufffd\u0004k'6|\rs\u0012\u001c7~\u0007\ufffd\u001a\ufffd\ufffdt\ufffd67\ufffd\ufffd^\ufffdSH\ufffd", - "epoch": "968", - "paymentAmount": "115792089237316195423570985008687907853269984665640564039457584007913129246720" - } - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 0, - "blockTimestampDelay": 282868 - }, - { - "call": { - "from": "0x00000000000000000000000000000000000a0000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 5, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x48a41c27120e574151e78e43d42b5f1d2755a6c8c1f3465ced2014824c5e3c7e4eeba9444fc74ee0c24ebdba3e62450bb6d404762453c8f86c21f2373a1ba170f3ecf81dac04840e25f58b0a6d622417c093c48e05fa9efa5bddc843219fe247671e0087", - "dataAbiValues": { - "methodSignature": "handlePropose(uint256,uint256,uint256)", - "inputValues": [ - "8166969346359948639484006387253416172301236988256769726962054929875661990212", - "36084861999675023071727212187156050330492265038665057332289628950360509708317", - "77805788756535527407772768649618221004754717959448356492205955344147878379655" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 32, - "blockTimestampDelay": 524288 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000060000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 2, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x727899ff8e109937a0c12587ee4666cf7eb8f9a914f1385f133128a7bbf4f5eff743301500000000000000000000000000000000000000000000000000000000000546005172646d987a680e04dd6a045e2c8e98a680e2b9c41a2d98c3072682e7a7efc25e43b123c01ac311bee46cc3bfa5a0be50d6b4473163049ec4c37d3a1caf1b11", - "dataAbiValues": { - "methodSignature": "handlePledge(uint256,uint256,uint256,uint256)", - "inputValues": [ - "64257751518777829519648785807987822488615391450098951710757499941744441241621", - "345600", - "36839454429956002479784537352517879993063816426425600860733833535606361681858", - "42637009093099676781532913644885930180275839542941773954417676940607658859281" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 18765, - "blockTimestampDelay": 352717 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000070000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 7, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x3c26dcf8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff70000", - "dataAbiValues": { - "methodSignature": "handleSetEpochManager(uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913129050112" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 25275, - "blockTimestampDelay": 604799 - }, - { - "call": { - "from": "0x00000000000000000000000000000000000a0000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 6, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xec5bf21572dba7dbe09c3bbe6a88d23c3bd9acfe205d1d60aefecc0db6a8499e751e9815", - "dataAbiValues": { - "methodSignature": "handleFinalizeRequestResponseModule(uint256)", - "inputValues": [ - "51951762765201292588978808218288335040492006071994363203642941846922903590933" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 42594, - "blockTimestampDelay": 143245 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000030000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 7, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xd1a55655388924a9c0b4fab8a3a6823ac564a32fb78cfbcc473b96e55fbeebc0eb71d773", - "dataAbiValues": { - "methodSignature": "handleRevokeModule(uint256)", - "inputValues": [ - "25571830607931438209766452591287454872650721757204844895931688485804152313715" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 53210, - "blockTimestampDelay": 360623 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000040000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 5, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x1c6850cfa7e5b450595c21a14259f758b64ec4381302d527c203a49e4b9c1e83094266dd6b48dae36a7e33922c16e094ce88a626bf6eaa1d596dd330476320c9b67cb28dfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0000", - "dataAbiValues": { - "methodSignature": "handleUpdateDisputeStatus(uint256,uint256,uint256)", - "inputValues": [ - "75942098171788587147868381348791675977767975212740010787554276083613701400285", - "48526198498900060195577435149830061143198857828146295147538220227829339828877", - "115792089237316195423570985008687907853269984665640564039457584007913129377792" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 14516, - "blockTimestampDelay": 162774 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000080000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 4, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xb05752f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff70000fffffffffffffffffffffff80d5614d5661c22f91420df44ee9eab0b97e74ad62bba341ead94025d38af6eca293db8770eb1b32ba67b7363e9f3d6803df81b0d0000000000000000000000000000000000000000000000000000000000000024", - "dataAbiValues": { - "methodSignature": "handleOnSettleBondEscalation(uint256,uint256,uint256,uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913129050112", - "115792089237316195423570984997072031313592135005999182794687277654456605821654", - "19778445761017581235509319627811875743548082417220173652855107228865444453133", - "36" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 258, - "blockTimestampDelay": 101436 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000090000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 8, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x13a8b8040000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000000050000000000000000000000000000000000000000000000000000000000010000fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd0000000000000000000000000000000000000000000000000000000000000006ffeeb3fd82fd57624ae9fddc080413e063c59aebfdd9e86aa1d14012b23cc42c3909a33c5245d7d9c850d37caf97974d05edd8cfe363dd7336cd23498b53ce1fac34000000000000000000000000000000000000000000000000000000000000003c080aa8886e229c59ad31a48e8790c532b08554e63f60fd65922b33e3589dd8b96aa104212b8f7bc224e863f0e8c252064d7229b15bbdbbe21c0b370fb52ecf016ae7f838205c29fb37c80991959f4df295b815ab130ddaf950ec1bec40be1244219653dcfedcb982b35ad7871ca540ce120b5cd731953fc8b91d4c4dc6f0e3d4d6f3303d5fde3a31146530161a95a9e5730847bb0e1adc263d276fd57bd0e9d5a1cc4a17639fc1be64e2f04f022fe314e4eb945526ac1e64f07770f1ade7d0db6c94d83e4ccac8e80511cfc9d681f3d91507412e8b07c2e7c8d526c804bea9d13570a7586321df39a35efc4800cfe6f84e57e37881266b4981bf8047828149e34fffc8ffbda96ca0340d3f9a352599a6dd40c1b5e04a6df65851467da3e99955756f07edf77dc0a01f914c598c84ffcc8992a824b7692ecadd637fd191d1ed0c455a2e9e136425ea6ed45a40080c391f2f2deb3b8048cfba079bbcfe913a6ef84d1e680ee7ba81fd7eaff5fa2094ed84e21f7f8f41e16193838b0e4c0ca6197ae2edffcfd0479da46a691dd1169eba1ff20b64d16f5124b8601d74e5e1320d6a8ae86f61d0b2921f586a223eed1d260417e9593c5fe94fe9c7c3e79e094cca39a2efac7e2bcd9829cb27ab0e73c400c60da9115aeb6f19875c4cd2353da0a35d33ecffa467bb2268d77ad6d71dd9bcb7b024f5ff4cd6a4007585993d5ea7df79255473ed437ad85ba26f6d6baec88ce97da00bcf30683c9c13d2412347ea64ac677e6040592518afb3ded7e96495db0cdf7d26a4975b0d955fc54b5bd4ed185f739cc30f03a7f23a25a5174766f8d7fd93b39c836e9c8afd3dd24301ff3dc6ba307623d89316ee4ce81d67849775b6a630da2070162aeb4c72585d93e0317c67b28a9a3a12d3f3fdeabf90aeb820806d3c6fed80f683055994f279e04b7d917f52c54497abed020dfd879d9e39b05bf9b57cabac7a801afb2a0241460b62bb477f69b395ce79330f3ac1b16009901a01e5a6a460f75039dea573505eba6ad0f70eb27909a646195dc69c0f5ca8a766100f3be920285377868bbaeadebcd299fe8c0427854ae7435ba56c29e52895feefb622ecc2945098f01cbdda3630343062eb1e37c3d5a4e6ae57229bba8c4fea1628c1ba448bc5cdf625c231047e4801079dd944f6f545e8919a5d5551d29a15bde1c5371198736dbb662280b7843d38d45d0dce2926c6fb2a8b59a8b7845c6c2d964a5aa85d684263c4b83dc4c7171da1e59e37c80155e035755661f7634ccd7b55a898d31544c8468e6f488bdede21dcc9265aa8818e56017d605c1dd0743ea6e2830c408cc25b6552d6014b618f130869b725292a8377fd7a13212306a1eca6e7cf0e7a8cde94bc2a8b3a95aecc11f627c13d2c7f480c3855b8cbd276a30a3fda895db68e33faf65b1bcd52b09bcfa04b9cb8b5f72afe3c9bde9ead1c97eb062e7112bc9aeca5c2bbe3ceec1ae37d16e29361c16456d264bda7323cc19e74ab7d7ebca395dfcb5bbf2ab0baad7794bba7db130667d95c3d572935aec28dc8b9f511a602bf74215c24248625d15b17ba40c7a58043e38ced1995d2154c366bc0be0e2eb305dd9eb025f96255be97a43631c8fadce211bafc2a31de41868fc1a4f2114e6a94cb7247ef7a7de850584011d18228e6e4bcdd035f52ec239685e26f7e641e9e709f65c50fcce5127abc58626ca96a4c1f5d7676f8e6bd1dabd05ad51ae7bbda1fc57e607b0e8d65071ea96dd51dd971e5934ba0a695986eb01879d508dbb993c92579d9b28574782cd7e0b758d48c6eb6a6c277838e4d71679e07e68fb0f85be1c4c4c1fe1d834de1cecdaa5d2a4f5d6a7d28fde6e6e96b919af9ad18de545be180fc12f3ccfcb9c7bde224c1c74304938d515f9cdc98040161272295aeec9689de3f42cd70e2dddd290ad657403cb197b4fd042e8b60dde8afc62b97f16b1feaffbab7823c8ec40a5f49fad5dba3355b47e16535bf0d4d0ac71372d1baaa0bf9b807572fcd8e70c4205736d8077a465d6e4d070f7d5f012f24141d1a4ef2e87e8896da73960cf26a54c6038c03a022069b8db8a3f4022289b2ee17a7411ac2c42b9f7f37335c0c0075d075fb276fc33c1f3f10462378fcd112eb273ee9bd511eb3f30f58b6f1edb2df4e57d24c67070dee36cf818164bae2dec3717b552c96ab42019d30f69484ea9a4dc68bda97dcba0fc6a093b5ba8e1e15e165fa671b83bef8b7b0cd614c1106a996895e97839afa6657e0febc0b48b129528ebe80368d5f23debd463575f69b7ed8426dc3fa665f13b9c08c8c05a1d4c31b41732523d2b943b8eee9b43a74a4cd533b781512468954ceec8c560e2522373a0c0a1b0e090af4cbaf9c4b28b2e30023693ebef35cdd1ada0dd7102e3ae0672b85fd5b7126b24cc4046a74abe14e7a2b592b1f463cb7110964aac14bb7e710ffe434b5dbbbf05edc9bb7a5c827fb36ab1799350c43a72fd170226bc9b9fffaa3744056aa18c854e975f117cc594be842217b1b451aea7ca191900a670f29acf18cb968865df37f4458ba9e720ed946a0ca1db4531403101cd0da03396348f9daf3cdca7b849d0ca2f15ee9fa5363f7fa7504ade218503f485f0cb3a1bac183cbae7268eeeef95c5a6797176ffa49a2cb7da742f9ad1cc3b7090cf4f59d8d046fb365198deead59f9514815d7c4494d8614", - "dataAbiValues": { - "methodSignature": "handleCreateRequests(uint256[],bytes32[])", - "inputValues": [ - [ - "65536", - "115792089237316195423570985008687907853269984665640564039457584007913129443328", - "458734", - "81411916260887808935637274574103901471821894122785804973774955777497682950409", - "73833572969127614450188660123107505555423378693848513117239642789239664389172" - ], - [ - "080aa8886e229c59ad31a48e8790c532b08554e63f60fd65922b33e3589dd8b9", - "6aa104212b8f7bc224e863f0e8c252064d7229b15bbdbbe21c0b370fb52ecf01", - "6ae7f838205c29fb37c80991959f4df295b815ab130ddaf950ec1bec40be1244", - "219653dcfedcb982b35ad7871ca540ce120b5cd731953fc8b91d4c4dc6f0e3d4", - "d6f3303d5fde3a31146530161a95a9e5730847bb0e1adc263d276fd57bd0e9d5", - "a1cc4a17639fc1be64e2f04f022fe314e4eb945526ac1e64f07770f1ade7d0db", - "6c94d83e4ccac8e80511cfc9d681f3d91507412e8b07c2e7c8d526c804bea9d1", - "3570a7586321df39a35efc4800cfe6f84e57e37881266b4981bf8047828149e3", - "4fffc8ffbda96ca0340d3f9a352599a6dd40c1b5e04a6df65851467da3e99955", - "756f07edf77dc0a01f914c598c84ffcc8992a824b7692ecadd637fd191d1ed0c", - "455a2e9e136425ea6ed45a40080c391f2f2deb3b8048cfba079bbcfe913a6ef8", - "4d1e680ee7ba81fd7eaff5fa2094ed84e21f7f8f41e16193838b0e4c0ca6197a", - "e2edffcfd0479da46a691dd1169eba1ff20b64d16f5124b8601d74e5e1320d6a", - "8ae86f61d0b2921f586a223eed1d260417e9593c5fe94fe9c7c3e79e094cca39", - "a2efac7e2bcd9829cb27ab0e73c400c60da9115aeb6f19875c4cd2353da0a35d", - "33ecffa467bb2268d77ad6d71dd9bcb7b024f5ff4cd6a4007585993d5ea7df79", - "255473ed437ad85ba26f6d6baec88ce97da00bcf30683c9c13d2412347ea64ac", - "677e6040592518afb3ded7e96495db0cdf7d26a4975b0d955fc54b5bd4ed185f", - "739cc30f03a7f23a25a5174766f8d7fd93b39c836e9c8afd3dd24301ff3dc6ba", - "307623d89316ee4ce81d67849775b6a630da2070162aeb4c72585d93e0317c67", - "b28a9a3a12d3f3fdeabf90aeb820806d3c6fed80f683055994f279e04b7d917f", - "52c54497abed020dfd879d9e39b05bf9b57cabac7a801afb2a0241460b62bb47", - "7f69b395ce79330f3ac1b16009901a01e5a6a460f75039dea573505eba6ad0f7", - "0eb27909a646195dc69c0f5ca8a766100f3be920285377868bbaeadebcd299fe", - "8c0427854ae7435ba56c29e52895feefb622ecc2945098f01cbdda3630343062", - "eb1e37c3d5a4e6ae57229bba8c4fea1628c1ba448bc5cdf625c231047e480107", - "9dd944f6f545e8919a5d5551d29a15bde1c5371198736dbb662280b7843d38d4", - "5d0dce2926c6fb2a8b59a8b7845c6c2d964a5aa85d684263c4b83dc4c7171da1", - "e59e37c80155e035755661f7634ccd7b55a898d31544c8468e6f488bdede21dc", - "c9265aa8818e56017d605c1dd0743ea6e2830c408cc25b6552d6014b618f1308", - "69b725292a8377fd7a13212306a1eca6e7cf0e7a8cde94bc2a8b3a95aecc11f6", - "27c13d2c7f480c3855b8cbd276a30a3fda895db68e33faf65b1bcd52b09bcfa0", - "4b9cb8b5f72afe3c9bde9ead1c97eb062e7112bc9aeca5c2bbe3ceec1ae37d16", - "e29361c16456d264bda7323cc19e74ab7d7ebca395dfcb5bbf2ab0baad7794bb", - "a7db130667d95c3d572935aec28dc8b9f511a602bf74215c24248625d15b17ba", - "40c7a58043e38ced1995d2154c366bc0be0e2eb305dd9eb025f96255be97a436", - "31c8fadce211bafc2a31de41868fc1a4f2114e6a94cb7247ef7a7de850584011", - "d18228e6e4bcdd035f52ec239685e26f7e641e9e709f65c50fcce5127abc5862", - "6ca96a4c1f5d7676f8e6bd1dabd05ad51ae7bbda1fc57e607b0e8d65071ea96d", - "d51dd971e5934ba0a695986eb01879d508dbb993c92579d9b28574782cd7e0b7", - "58d48c6eb6a6c277838e4d71679e07e68fb0f85be1c4c4c1fe1d834de1cecdaa", - "5d2a4f5d6a7d28fde6e6e96b919af9ad18de545be180fc12f3ccfcb9c7bde224", - "c1c74304938d515f9cdc98040161272295aeec9689de3f42cd70e2dddd290ad6", - "57403cb197b4fd042e8b60dde8afc62b97f16b1feaffbab7823c8ec40a5f49fa", - "d5dba3355b47e16535bf0d4d0ac71372d1baaa0bf9b807572fcd8e70c4205736", - "d8077a465d6e4d070f7d5f012f24141d1a4ef2e87e8896da73960cf26a54c603", - "8c03a022069b8db8a3f4022289b2ee17a7411ac2c42b9f7f37335c0c0075d075", - "fb276fc33c1f3f10462378fcd112eb273ee9bd511eb3f30f58b6f1edb2df4e57", - "d24c67070dee36cf818164bae2dec3717b552c96ab42019d30f69484ea9a4dc6", - "8bda97dcba0fc6a093b5ba8e1e15e165fa671b83bef8b7b0cd614c1106a99689", - "5e97839afa6657e0febc0b48b129528ebe80368d5f23debd463575f69b7ed842", - "6dc3fa665f13b9c08c8c05a1d4c31b41732523d2b943b8eee9b43a74a4cd533b", - "781512468954ceec8c560e2522373a0c0a1b0e090af4cbaf9c4b28b2e3002369", - "3ebef35cdd1ada0dd7102e3ae0672b85fd5b7126b24cc4046a74abe14e7a2b59", - "2b1f463cb7110964aac14bb7e710ffe434b5dbbbf05edc9bb7a5c827fb36ab17", - "99350c43a72fd170226bc9b9fffaa3744056aa18c854e975f117cc594be84221", - "7b1b451aea7ca191900a670f29acf18cb968865df37f4458ba9e720ed946a0ca", - "1db4531403101cd0da03396348f9daf3cdca7b849d0ca2f15ee9fa5363f7fa75", - "04ade218503f485f0cb3a1bac183cbae7268eeeef95c5a6797176ffa49a2cb7d", - "a742f9ad1cc3b7090cf4f59d8d046fb365198deead59f9514815d7c4494d8614" - ] - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 10110, - "blockTimestampDelay": 42400 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000020000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 3, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x3c26dcf800000000000000000000000000000000000000000000000000000000000000fe", - "dataAbiValues": { - "methodSignature": "handleSetEpochManager(uint256)", - "inputValues": [ - "254" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 31534, - "blockTimestampDelay": 502997 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000030000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 8, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x2047c44989b83856711dd6e2fff2fb4f6f9c007bb9771f1755a26b351a1eb3dfa452d159151dc355d1937bfc43323997c9d735e9178a3cf3e993e7b764f4bed67935ce4cec7893aedcb0a69d085a606cdee3b9838daf3fefc61d38b0f14ecdec26e33aa460f9421d6b80b366831f81a22a3a22ebd80e834740e6cd645da1790063ab1669", - "dataAbiValues": { - "methodSignature": "handlePay(uint256,uint256,uint256,uint256)", - "inputValues": [ - "62292348944090115746545714663996537181369460052517339629743735497958525948249", - "9551156539331198657207388647210792475747533930906137829599958395912405241420", - "106958873184409346177772424067264194416183043741641706881530640155496522398372", - "43862434691542092146243210499299989128919851476248082112521904879876197521001" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 27735, - "blockTimestampDelay": 575806 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000040000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 6, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x52e3cb9cffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff", - "dataAbiValues": { - "methodSignature": "handleSetMaxUsersToCheck(uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007913129639935" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 18, - "blockTimestampDelay": 20 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000070000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 8, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xa59d317da9b7ffe2a516347da9c7b4c4b6ae42e8609c59b0cb7f09830ad4b00363e88790000000000000000000000000ca35a220922f49469f8450bb7a228e9617adf1720000000000000000000000000000000000000000000000000000000000127500b6d1272bc09fd6bc67cd052a9f8747390a82481960a5bc0c6fa1495297f44265404755b83e9d47b6336cb6091295892a5cb2df7df807bb022ae2427525c5139d0000000000000000000000046a5e66341c9b0903d85f83f62619a0f98f2a2bc2", - "dataAbiValues": { - "methodSignature": "handleSetResponseModuleData(uint256,(address,address,uint256,uint256,uint256))", - "inputValues": [ - "76765970479078505087172132790769196193875293089148160874969796479246995589008", - { - "accountingExtension": "0xCa35A220922f49469f8450BB7A228e9617adf172", - "bondSize": "82690479826364110402191412604700717854937475693104284101643285021357893763685", - "bondToken": "0x0000000000000000000000000000000000127500", - "deadline": "29074060066592041470552804502606064400270805074050606064170760158631296308125", - "disputeWindow": "6453264744265472033134100691539059085253624343490" - } - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 50550, - "blockTimestampDelay": 486500 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000080000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 5, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x51b295e30000000000000000000000000000000000000000000000000de0b6b3a7640000", - "dataAbiValues": { - "methodSignature": "handleFinalize(uint256)", - "inputValues": [ - "1000000000000000000" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 7633, - "blockTimestampDelay": 413359 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000020000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 4, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xaa1a5bd9ffffffffffffffffffffffffffffffffffffffffffffffffffffffe450800000943d1cc0e0a72acefbc5f3051c02cd30f7710a00ce7f42e7f3c32805d1895c0a", - "dataAbiValues": { - "methodSignature": "handleResolveDispute(uint256,uint256)", - "inputValues": [ - "115792089237316195423570985008687907853269984665640564039457584007794221121536", - "67050277710141099091744694012791071895666839557564171981805597144066810272778" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 25919, - "blockTimestampDelay": 76237 - }, - { - "call": { - "from": "0x00000000000000000000000000000000000a0000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 7, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x6b125a570000000000000000000000000000000000000000000000000000000000000003", - "dataAbiValues": { - "methodSignature": "handleRemoveEBORequestCreatorFinalityModule(uint256)", - "inputValues": [ - "3" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 23142, - "blockTimestampDelay": 128128 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000090000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 9, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x223b137400000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000000040d116271a88b78df3b16f9c87d74fbb517557fbdf0a3d8e721b30c85e3b8b69920000000000000000000000000000000000000000000000000000000000000080000000000000000000000000d7b78ae01d58862475bfc70e37701f8f9fe755e34dc2130568dfa3f1c536a456c48d15439ef9df8a3b95fc53df64359b920dab7400000000000000000000000000000000000000000000000000000000000000602bc10063184282f4a2fa990b72259004ee5f7dd720754e31cc660997590894d76ede263821e35c23c3f1b0be7c3a1243c2181fdf099f7fcb80b30c11e93e4682772569f5d9a0913ec02a8f6e442146aa449e9cfef196aa3242f95b524afc3005", - "dataAbiValues": { - "methodSignature": "handleSetRequestModuleData(uint256,(uint256,string,address,uint256))", - "inputValues": [ - "262144", - { - "accountingExtension": "0xd7b78Ae01D58862475Bfc70e37701f8f9fe755E3", - "chainId": "+\ufffd\u0000c\u0018B\ufffd\ufffd\ufffd\ufffd\ufffd\u000br%\ufffd\u0004\ufffd_}\ufffd uN1\ufffdf\t\ufffdY\b\ufffd\ufffdn\ufffd\u00268!\ufffd\\#\ufffd\ufffd\ufffd\ufffd|:\u0012C\ufffd\u0018\u001f\ufffd\t\ufffdˀ\ufffd\f\u0011\ufffd\u003eF\ufffdw%i\ufffd٠\ufffd\u003e\ufffd*\ufffdnD!F\ufffdD\ufffd\ufffd\ufffd\ufffd\ufffd\ufffd2B\ufffd[RJ\ufffd0\u0005", - "epoch": "94572525872791919411551829050132471108268635740177933945826491102856422844818", - "paymentAmount": "35170988950503319482269276984279281525970186279109048616497784802293716986740" - } - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 43327, - "blockTimestampDelay": 193391 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000050000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 2, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x5543846577a2896edbc40e9ca88afd969edb16fb5a69b5d4fb3f2126e81569fb7d6b4e830000000000000000000000000000000000000000000000000000000000000000", - "dataAbiValues": { - "methodSignature": "handleSetResolutionModuleData(uint256,(address))", - "inputValues": [ - "54112406733890487250843239228330788486116669721842396950548875203665053044355", - { - "arbitrator": "0x0000000000000000000000000000000000000000" - } - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 23840, - "blockTimestampDelay": 360469 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000010000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 3, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x7aeb6fab0000000000000000000000000000000000000000000000000000000000000000cbe948b5be54de7347b0baed46df324f3f9265f4eccf528ba7024d144ae9aa57", - "dataAbiValues": { - "methodSignature": "handleDisputeResponseBondEscalationModule(uint256,uint256)", - "inputValues": [ - "0", - "92231685454028004540036189161247674429480000235646609934922547449704212965975" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 40519, - "blockTimestampDelay": 558576 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000050000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 3, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x2047c449000000000000000000000000000000000000000000000000000000000003f4803e86cd1402413549cbe3dcdfaa14a8352d2984f61273ab07b33491fcdc2e3b57fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa00142f0ae537572b7f06fe05e73630aa85e994443501076dc5f72bc6e055d5e3a26c", - "dataAbiValues": { - "methodSignature": "handlePay(uint256,uint256,uint256,uint256)", - "inputValues": [ - "259200", - "28281569516280294651237206632352886593805123328047145378345777697969341872983", - "115792089237316195423570985008687907853269984665640564039457584007913129246740", - "21277954345951848503413116570976869607775625029033321891944703140412013126252" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 0, - "blockTimestampDelay": 0 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000070000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 9, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xb05752f7ffffffffffffffffffffffff8ef68f613056e57f9d900c6762970980a4e22ed3ffffd929f231e917bddb707d00fc6f59bb94e5adeda4d379972c38bcb82b1578194357abacca51d454e3dcd860254c9d793e6ae9fe8ddf727f5da7c3debee1528c1daa24ce7c4268aa8a1d1d86475ccd8da1cab7e02577fc2fea5127e5ea681d", - "dataAbiValues": { - "methodSignature": "handleOnSettleBondEscalation(uint256,uint256,uint256,uint256)", - "inputValues": [ - "115792089237316195423570985008042581378843437462327153970303678099387767205587", - "115791821200072590524970467483259647001631435429564949130744529707950148359544", - "11426805048201805963169305461898672040284463055656252044675264087198940455250", - "63376211655718351371001050529841262640998658649231171098195437570374905784349" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 19334, - "blockTimestampDelay": 360627 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000030000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 9, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xd1a556556f60a873b54607721a734446886795cd45b739fc87b4e98200cc2a80aa91ebb4", - "dataAbiValues": { - "methodSignature": "handleRevokeModule(uint256)", - "inputValues": [ - "50377506123831754628685281813552634495196877964909193589569641750213365459892" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 9413, - "blockTimestampDelay": 17360 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000050000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 4, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xcd10417affffffffffffffffffffffff8ef68f613056e57f9d900c6762970980a4e22ed30000000000000000000000000000000000000000000000000000000000000000", - "dataAbiValues": { - "methodSignature": "handleEscalateDispute(uint256,uint256)", - "inputValues": [ - "115792089237316195423570985008042581378843437462327153970303678099387767205587", - "0" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 11350, - "blockTimestampDelay": 359625 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000070000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 10, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xdb106ace3d280395fccb07c6a5dfd64b44fcd42e6fbf15e21cf2eb30c5cc44f82ca315a4fffffffffffffffffffffffffffffffffffffffffffffffffbd62f96e76200001dc10fb9def0b910839351104d8d9c5ed8c95449ea35af15112790eca17a2eb00000000000000000000000000000000000000000000000000000000000000020", - "dataAbiValues": { - "methodSignature": "handleSlash(uint256,uint256,uint256,uint256)", - "inputValues": [ - "27661782395063698193352940616692331668161891326097904127568031406258563257764", - "115792089237316195423570985008687907853269984665640564039457284007913129639936", - "13458182629680645130818154872710839978279753283324590313766542751800879623856", - "32" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 0, - "blockTimestampDelay": 8 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000050000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 5, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x13a8b804000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000006a00000000000000000000000000000000000000000000000000000000000000032ffffffffffffffffffffffffffffffffffffffffffffbff6dcf787ddd30000000000555555555555555555555555555555555555555555555555555555555554d71deecc06ea91cb1bcaf752d734249ead10dba3412bbacb6c075fa8b7c30035ffffbf45e8fdd9d23c6dbb7b01a4b9958df8297736bd60755149b3e532f2791dc824597fd5f03a2c14088807202aa07bc4b68baf3ca0deb361d441bf51a03c5d0000000000000000000000000000000000000000000000000000000000000002fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0000000000000000000000000000000000000000000000000000000000000064eaab522cf7b43c436e73d823a787f6f5ce91566599d9365ad0b8fd21cdb9a1d5bfd2e21584dd14c0fa6c701f8feb697bbba6ce49af97388f54d1146230a7e6fa7aa391855d8c10bfbeeb34bfb3ae21385572b581853afa321d7bf89dbd5f57db9b1f49ce0f444bc76ea892965e60b283b9dc328e4a6465618b4c8748a5f2ade06ec5448e5afebf8743992fcc788625746cef6ee48f3004e5689c2353ad78ee984d44a95bda8d0eca021f3493e4fbfd801ab43b100ab36f0f082c318d217a4d6104ae4499aa7b9ad18a39626ccae83b5d874a22fd02f6a83c7b91228bf3d7e2430000000000000000000000007109709ecfa91a80626ff3989d68f67f5b1dd12d9d25c550d1dce4f82f73b8dcc0a1563ae3807de11f3bfd7a660529a4af8c330e00000000000000000000000000000000000000000000000000000000000003e8e414cab4a0f9dcb2a77893a7be65af8b8e310172bf2c5105d529e6504450ce03fffffffffffffffffffffffffffffffffffffffffffffffffffffffff70000000000000000000000000000000000000000000000000000000000000000000002ffffffffffffffed8da22e2dbc545f18a019ba33b78c0619a50197736d71e0df3f024687bd26450e31befce33a0f1d962f91dbde0f2b059cc80a2ca90d3d6284fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeae80fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd0000142ce2b3d1cbe4ea106fe2e8abd32942f329afb37ded261596cf93935d8a63bbb6a9a6d77f775d2abf35518df0c6254bf2243b780e8d69afd1c881ce9c5618e3d1c578b78a5d13db6622a56aa2f493b31d1ceb4c42beea89d46ccbe3e471037b00000000000000000000000000000000000000000000000000000000000000020ec27f23a27cbfa51e0f2ddb99984f46ce49ff42dcd6b4384facaa9b5db182535c3d56cdb8d7a38fe0a71ddef45f635bb87ff529945c5d16269c8f0a39245d27ffffffffffffffffffffffff8ef68f613056e57f9d900c6762970980a4d82ed3de5a7d7ac15f480f4b01f0f6214bb27cf573c1b173faed7e4d739545db3d285e6b7cacc3607b46ca25b85c1f375fdfaaeb2da8577a7c246f60f6b4f89e3b5de5275b194e71ab4e53847c8adb1a75b9ba329aa91b9221ea17b5ad9bd7341e95fbfcb1bb7cfb751679e53740bf99ebf0446139bae7dea4dbcf6398d2390c6c0524000000000000000000000000000000000000000000000000000000000012750090a405c85e777939c587f9fd675fb88438d6404d156a5daf4dd0c3148dc8efcf4d8e13dcadaa20de6c2ea8eb3d6062b0b0ff5e1929651d791ed646a29fe7a5110000000000000000000000000000000000000000000000000000000000010000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff14e68dbc99b1ca64c39e80cc676ed750909cfc9716632c25ac5060e5390d9fa64e6b4aeda2f9dbf442914a22d3d0af7bc5dcb3f3089ec0f36f689b5001b635780000000000000000000000000000000000000000000000000429d06918a70000fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffdffee882a645af8c7be6d0204ebf545606dbeed90041c95e2bc8361589d597b1fb48ac0752e18ab9eaccadfe8c0064e4e5f6bf8c60afb53b5eb009466dbd487f21bec08797cca6c8fc8cbb885ee5c0e5f9310a1f0f3db6fc26096fa1fd4b32a88b8247194a0110c8b274c5c0da47ccb25b6e3c31b05c77a9869213053aba5dd2536677a8374bbae18ccca0f54822d937600879ade5b1ed403f4946f8e90af14b314890000000000000000000000000000000000000000000000000000000000000001eb74aa4a874df7a335782afb334a89ab4e6c01d76b3d9cc1fe2ff916554e1e47", - "dataAbiValues": { - "methodSignature": "handleCreateRequests(uint256[],bytes32[])", - "inputValues": [ - [ - "115792089237316195423570985008687907853269984665640563737057584007913129639936", - "588949021592794776527765833580972838609161298958539652707202067097539924", - "97300149126468872946298719527718559585565665257986245164447256517436825075765", - "115791642508576853925903455799640806433872402605514539191602493507974827505949", - "90526793912853732476770378586585277343029490875048592954147148941125048351837", - "2", - "115792089237316195423570985008687907853269984665640564039457584007913129639934", - "100", - "106143904572085809367345156999994537224757041176896365712109151200852485710293", - "86764352337832765543243135124983939307060546704010196127172314433318589818618", - "55471167947462230089350410651390369929420914282189749916827202199679726999515", - "70163773172254528980983328759942934130758511185959352145159444818543825300960", - "50102955372567556491514702357555579969476127719319705342853027578991280189080", - "34949403812820303739696160479315432965725102677683363242846725312722350263649", - "2117156245181863891780898452852869243911901874320625874256816074787055460931", - "645326474426547203313410069153905908525362434349", - "71079852391896813957063743779150319803344180428654282229287260319500431274766", - "1000", - "103164065440785509990172417204742762960872811806416140653015052755049127136771", - "115792089237316195423570985008687907853269984665640564039457584007912978644992", - "2", - "115792089237316195307778895771371712429698999656952656186187599342272565600479", - "28499729936632181027456188814062791341980167576255328996025749534672244531844", - "115792089237316195423570985008687907853269984665640564039457584007913129553536", - "115792089237316195423570985008687907853269984665640564039457584007913129443328", - "9125562885114550931480067593791841579449611360550632175869852674707872703419", - "82620687095807894822672715295356445493430938527808615710009902450962702145763", - "94882287383467257979405315622849930615494021358762995058189695385862906381179", - "2", - "6676025693228821602247608155091043715251406817164054196531140988940986712659", - "41721158837053050299823051350385566222745598222798285009320417872749504257319", - "115792089237316195423570985008042581378843437462327153970303678099387766550227", - "100573334649086503842194753569836899284346481270167703051335103407971203098718", - "48617756202163964304041873980565407338979102073642939279270886685230094835173", - "17801158836147492066184211441311724727825683879567388308483181264065018107387", - "114296863769530692793417655521522383832011771556989401885926109654571538973988", - "1209600", - "65422853025283586318323521557159447223036856580449837561561715510604429062095", - "35079118706767911493932672185279904898541286022194878064121969747254118425873", - "65536", - "115792089237316195423570985008687907853269984665640564039457584007913129639935", - "9453610027455146493027345783990690814816068126690203309689399735142463676326", - "35469971961326465394482855579418590623266103564687152841456260419880068986232", - "300000000000589824", - "115792089237316195423570985008687907853269984665640564039457584007913129508846", - "61589447611274418248561831207091074656114852506959387062692807541808737268874", - "87051106180010566883934928413423474515126488244096168065028690751082059668460", - "3833152557393421359718460994913442463737212702259210843010968603061444458532", - "51373949994551874532021020473078958118795590399810405978006856002821605897831", - "55414430155065263052674293890809666778911738121654525477979261100536691365001" - ], - [ - "eb74aa4a874df7a335782afb334a89ab4e6c01d76b3d9cc1fe2ff916554e1e47" - ] - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 0, - "blockTimestampDelay": 581951 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000090000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 10, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x3c26dcf864294be83a58eb073de8b343bbb0302d54fe1f8eae1dd4189b04a31ccb138c5a", - "dataAbiValues": { - "methodSignature": "handleSetEpochManager(uint256)", - "inputValues": [ - "45304249479810880359013321461885329334191304905487559402900184695003598261338" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 23, - "blockTimestampDelay": 256 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000010000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 4, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0x40605c3f59547733744bb6aa3b948ed7db0c9ec5e723d7e5a3daa8b186c2e31ada2b259600000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000460000000000000000000000000000000000000000000000000000000000000001f00000000000000000000000000000000000000000000000000000000000726e0ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffef70f4d2274821468cd3da5812c52c59849a40988f425875b35bc9280f101986592045f36fc9b7a28b8f3d1590f4b6c576b835a31d73fd587445616649d22c380000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010011316b93c90b2954e5f685ac12ec40750d50a6c8edce7db4b0055d50c61c35a731f5c594ec0a05e1ff30134f53e31b2e805bfe14a93ec6b853210f6f40d3b56a0000000000000000000000000000000000000000000000000000000000119c0000000000000000000000000000000000000000000000000000000000000d2f00000000000000000000000000000000000000000000000000000000000002518000000000000000000000000000000000000000000000000000000000001baf8090d8a8081773c0b7a3c1986ea1546f048d5c1885a326cf72b87d1836d3923e140000000000000000000000000000000000000000000000000000000000062700fea998cd10f88335187124857b44d01e11ea70a89281878e8e741a125fef2f79a0752292c05214d83f876fb696759598e3f5fcc58d2e47a4016a9a0bdd08e13cfffffffffffffffffffffffffffffffffffffffffffffffff21f494c589700001c043201f6dd629e517ee09aab46a63c0ebe0e7f714318ece9eb0906c757d7fad34455dcab64c46e9e9434db7c8b32e422233fcc5965567024146642cec91e4400000000000000000000000000000000000000000000000000000000000003e8ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed8b00a6587e7185bb7b8eb7be87650a3ed8d318489d270b725059ad4d3dfc83bddd7c00000000000000000000000000000000000000000000000000000000000d2f0013d4a27fba570c08da9361ddcc4aaf7ad2bb70eae3c954242a5ab9818cad01f5c62d28beaecf65f00bd8564836773ab69f22bb5bf9a2048036a2c034dd9d3980ffffffffffffffffffffffffffffffffffffffffffffffffffffffacf1800000667f7713d44e73183990746628bf484ad904335dde0c85c333e67a90fe8e40e3b7b6d1c75af526d51d4e69f1c0a2f84f5d8e473586313a2d6b74ebd6c2a8a3c50000000000000000000000000000000000000000000000000000000000147500fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6c580fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe00000000000000000000000000000000000000000000000000000000000000350000000000000000000000000000000000000000000000000000000000000000fffffffffffffffffffffffffffffffffffffffffffffffff21f494c589c000047bfb7731084ecef826e21864db7b21685e4a54c97f8a1a295cbf3449add1424117f2b9c8a15fecec8ce2ade91243d86aefbcdec46847fc029cf7690d0f91a67000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000100002e9ee5529a1d745ee8f4e52ffe5e8bced434b773b39baf3b7ff8a6e7f99a553efffffffffffffffffffffffffffffffffffffffffffffffffffffffffff81700483c7d15a4fabaa3928f659f4a402c1327d3c7560f95e483fb582b83e6d0f658fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc000058734c30ed3dcf722610a8f7220adcc5df0fefc208a923a55a22d8cb31d90bb488c340641e819d25704e47716e95c42e643c26b737268fd7482b96cdcf8112d4fffffffffffffffffffffffffffffffffffffffffffffffff90fa4a62c4dffeefffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7000a8ffd405bfa2b705196f456df871eee2fd24472dea3cebd2fe4b1c82fcfbd0a431357513138b0b48a2471b2751ed4c1ed3756af7f6238ccb73d08d59d5ebfd4d6f443d9b9146bb74c2a74bc90910eabe9901de2a9a471daaa1d059d30a112302f00000000000000000000000000000000000000000000000000000000000c9780111ab9737a308fc3a79a0aea10fda53782311459f252b0f8177ec67f8045b9de7784e8ecc9192176e71c69f519a18675e4874584c463ab293dfbfc6fc6a0239115c7ea992046436abd0d547ea1cd3f37f2c770beadf55cec20073d07933742f30000000000000000000000000000000000000000000000000000000000015180d788f87f68f2bbec419ffe75db0da226eae363225ac083f5d5ff7fb8021001304e11a3f82a6169590f64b3205f726309ea6d8e967333347473c7bb79fcb24b77814bc8d363c16b946698ab3c6e97f3f6bf32fe58989d501a0a87a239eef722c47c8271019a2e092fb450254854dfe31d6e234a0fbd06ca24ccc194273fa746610764ddcfb88ce43f53c60e2ea98a8e274e04e03d9e3333b6af2dd693edf380fc0000000000000000000000000000000000000000000000000000000000000000ffffffffffffffffffffffff8ef68f613056e57f9d900c6762970980a4e22ed30000000000000000000000000000000000000000000000000000000000093a8085534e6e106f7258facae299849aebcd779806ca4389535ac53a64d8a2aa1a6dfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc00000000000000000000000000000000000000000000000000000000000000030000fffffffffffffffffffffffffffffffffffffffffffffffff90fa4a62c44c5807fc8c3c5c42ab9f40d12a1b94e962371575ae79ebd6b4cb24c954b2bc665542dd5dfff1b3f25a96537c5dbb8b7cb414ac7a7c2f5992aee62abbfff0d40effffdffffffffffffffffffffffffffffffffffffffffffffffffffffffcf0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002fa69b525f2f8afb2ab2709532ba6c19b8f0d2d024a645112186fb67461984363fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6c580ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0000ffffffffffffffffffffffff8ef68f613056e57f9d900c6762970980a4d4ffd3fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff800003a62493818a9ffc6c6d575ff0f7de1fd749868f366120706d698f1060b8bdf3800000000000000000000000000000000000000000000000000000000039ada009c7d74cfbdf6870b97239b87f02fbe69d202dd662a708acd2143de9e202aac4efffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd00004b4d98f7554646696e02284ba909382873b0fe7816957b68af6f82d5f72adde26275fabe47665062a8c7d719701c60f28a0527c422a8e22137e4fb0051ffb633000000000000000000000000000000000000000000000000000000000003f480fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6c58097b2a08caae117560e803d9ff487d1cae10fbdc4d7f1ce42c17c3279ffe8a62f", - "dataAbiValues": { - "methodSignature": "handleAmendEpoch(uint256,uint256[],uint256[])", - "inputValues": [ - "40405081372372013525978842751480547648830585058002218560052824541518384276886", - [ - "468704", - "115792089237316195423570985008687907853269984665640564039457584007913129639935", - "108302347374490114794247470068453275236970502802041765057741931396446790097286", - "40312865413521231599469127350250368932864074321428907992477063259908346096696", - "0", - "256", - "7776636403233298276253061663045486640566586725079590454983046077716153251239", - "22597570770411005718869703345429806287326890051333564724524690162399837402474", - "1154048", - "864000", - "151936", - "1814400", - "65515848873518125742099285123205810943868570509039343656124856800723611041300", - "403200", - "115187115288118217321521096822295133275178171810456120279525350046711931678585", - "72577015495683423729415946567495045139854135403158185023070152337249295458620", - "115792089237316195423570985008687907853269984665640564039456584007913129312256", - "12672172288865754958077163999193268232164723021684544264829499294607721617402", - "95558749249151737195728267629550015234200265821457644489891043472939732770372", - "1000", - "115792089237316195423570985008687907853269984665640564039457584007913128430336", - "75240288087120047969240812827624044409543488721765204073059881773745085209980", - "864000", - "8969637227260380969735815280626781060859691137771066048662962574156700123637", - "89637733348055167992630140218051507917741631649314216604589540142220331268480", - "115792089237316195423570985008687907853269984665640564039457584007556404084736", - "46361121975132759299427894430752904177409753528724240323705793688533277229283", - "83096265296122236816804385099747923929591995471611939729814346157993958613957", - "1340672", - "115792089237316195423570985008687907853269984665640564039457584007913129035136", - "115792089237316195423570985008687907853269984665640564039457584007913129639934" - ], - [ - "0", - "115792089237316195423570985008687907853269984665640564039456584007913129639936", - "32452946160499593434845515983749491193360575568983265452848750613217421366308", - "7914008998529120091403017187811262520050336970137546822451211378327503313511", - "131072", - "65536", - "21087135597924490160278020514065782793896386251015380148550080688744482624830", - "115792089237316195423570985008687907853269984665640564039457584007913129121536", - "32673399223708471639004615736289804896918918515932326137346663860919247894104", - "115792089237316195423570985008687907853269984665640564039457584007913129377792", - "40007243939561192903478474581237238277896365367969487827322469259954649369524", - "61859526995929563870496971111192669598713952570891010695340589311216477868756", - "115792089237316195423570985008687907853269984665640564039457084007913129639918", - "115792089237316195423570985008687907853269984665640564039457584007913129050122", - "65128193846263308659898635884805607662929603315266917015218026707436814797379", - "8748220186179438191757987152810977590993902718976285270336195886881194366166", - "110484216476355095116425746801137834228519025173024774277640481781885458067503", - "825216", - "7736536385935866230076509398764828221037707568349848839431264619680227506654", - "54060060382837424610463789153473438885123356029849274111165842602920746427281", - "9851791523055379701405275548384104572107430401262603791621449007965991813875", - "86400", - "97489268714271697896705846749594679479407455605280867798540626098486888104240", - "35311570264780500165106808272303065940551864765922418643875330416305075538807", - "58482257045423333150395405324167105011009172457122719577788102409466116776644", - "56317263283280387103251088560264135469139820267753028420016476996313861801569", - "3344405532647725072257448408366309387956403234721251587778117246701536510204", - "0", - "115792089237316195423570985008042581378843437462327153970303678099387767205587", - "604800", - "60304798471491061771187315716613785729266119230600130154555496580879529679469", - "115792089237316195423570985008687907853269984665640564039457584007913129377792", - "196608", - "115792089237316195423570985008687907853269984665640564039457084007913129035136", - "57798452355336411558304053412944624517533058062928609984161549502631077303341", - "96738404323568479536006817878102180689741362345052177931574407294650430783485", - "115792089237316195423570985008687907853269984665640564039457584007702676242432", - "0", - "2", - "113264981326813001426579739302796134635236993762371986774788670885055195267939", - "115792089237316195423570985008687907853269984665640564039457584007913129035136", - "115792089237316195423570985008687907853269984665640564039457584007913129574400", - "115792089237316195423570985008042581378843437462327153970303678099387766341587", - "115792089237316195423570985008687907853269984665640564039457584007913129115648", - "26407801570015489846079290137767899830219430462024808264222157239198944059192", - "60480000", - "70782466465377481098040837367240474665534298962720260604428952780686496541774", - "115792089237316195423570985008687907853269984665640564039457584007913129443328", - "34060566601264907942317606397667532019345739303935969127430028569503353986530", - "44535110834235003675732683884032315076716567284433000855253588131861869082163", - "259200", - "115792089237316195423570985008687907853269984665640564039457584007913129035136", - "68614846985407483661098704758783976762533480380480839604392799459043936085551" - ] - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 7165, - "blockTimestampDelay": 348336 - }, - { - "call": { - "from": "0x0000000000000000000000000000000000090000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 11, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xd1a5565500000000000000000000000000000000000000000000000003f0ffb1376b8b00", - "dataAbiValues": { - "methodSignature": "handleRevokeModule(uint256)", - "inputValues": [ - "284007913128430336" - ] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 10, - "blockTimestampDelay": 506673 - } -] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/coverage_report.html b/test/invariants/fuzz/corpus/coverage_report.html deleted file mode 100644 index dd24bdf..0000000 --- a/test/invariants/fuzz/corpus/coverage_report.html +++ /dev/null @@ -1,197588 +0,0 @@ - - - - - Coverage Report - - - - -
-

Coverage Report

-
- - - - - - - -
Files: 65
Lines: 8454
Covered: - - - - - - - - 371 / 1371 (27.1%) - -
-
-
- - - - - - - - - - - - -
-
-
- - - - - - -
Lines covered: 0 / 3 (0.0%)
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
1 - - - - - -
// SPDX-License-Identifier: MIT
- -
2 - - - - - -
pragma solidity ^0.8.19;
- -
3 - - - - - -

-                            
-                        
4 - - - - - -
import {IModule} from '../interfaces/IModule.sol';
- -
5 - - - - - -
import {IOracle} from '../interfaces/IOracle.sol';
- -
6 - - - - - -

-                            
-                        
7 - - - - - -
import {Validator} from './Validator.sol';
- -
8 - - - - - -

-                            
-                        
9 - - - - - -
abstract contract Module is Validator, IModule {
- -
10 - - - - - -
  constructor(IOracle _oracle) Validator(_oracle) {}
- -
11 - - - - - -

-                            
-                        
12 - - - - - -
  /**
- -
13 - - - - - -
   * @notice Checks that the caller is the oracle
- -
14 - - - - - -
   */
- -
15 - - - - - -
  modifier onlyOracle() {
- -
16 - - - - - -
    if (msg.sender != address(ORACLE)) revert Module_OnlyOracle();
- -
17 - - - - - -
    _;
- -
18 - - - - - -
  }
- -
19 - - - - - -

-                            
-                        
20 - - - - - -
  /// @inheritdoc IModule
- -
21 - - - - - -
  function finalizeRequest(
- -
22 - - - - - -
    IOracle.Request calldata _request,
- -
23 - - - - - -
    IOracle.Response calldata _response,
- -
24 - - - - - -
    address _finalizer
- -
25 - - - - - -
  ) external virtual onlyOracle {}
- -
26 - - - - - -

-                            
-                        
27 - - - - - -
  /// @inheritdoc IModule
- -
28 - - - - - -
  function validateParameters(bytes calldata _encodedParameters) external view virtual returns (bool _valid) {}
- -
29 - - - - - -
}
- -
30 - - - - - -

-                            
-                        
-
-
- - - - - - - - - - -
-
-
- - - - - - -
Lines covered: 1 / 161 (0.6%)
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
1 - - - - - -
// SPDX-License-Identifier: MIT
- -
2 - - - - - -
pragma solidity ^0.8.19;
- -
3 - - - - - -

-                            
-                        
4 - - - - - -
import {IOracle} from '../interfaces/IOracle.sol';
- -
5 - - - - - -

-                            
-                        
6 - - - - - -
import {IDisputeModule} from '../interfaces/modules/dispute/IDisputeModule.sol';
- -
7 - - - - - -

-                            
-                        
8 - - - - - -
import {IFinalityModule} from '../interfaces/modules/finality/IFinalityModule.sol';
- -
9 - - - - - -
import {IRequestModule} from '../interfaces/modules/request/IRequestModule.sol';
- -
10 - - - - - -
import {IResolutionModule} from '../interfaces/modules/resolution/IResolutionModule.sol';
- -
11 - - - - - -
import {IResponseModule} from '../interfaces/modules/response/IResponseModule.sol';
- -
12 - - - - - -
import {ValidatorLib} from '../libraries/ValidatorLib.sol';
- -
13 - - - - - -

-                            
-                        
14 - -
- -
- - - -
contract Oracle is IOracle {
- -
15 - - - - - -
  using ValidatorLib for *;
- -
16 - - - - - -

-                            
-                        
17 - - - - - -
  /// @inheritdoc IOracle
- -
18 - - - - - -
  mapping(bytes32 _requestId => uint256 _finalizedAt) public finalizedAt;
- -
19 - - - - - -

-                            
-                        
20 - - - - - -
  /// @inheritdoc IOracle
- -
21 - - - - - -
  mapping(bytes32 _id => uint256 _requestCreatedAt) public requestCreatedAt;
- -
22 - - - - - -

-                            
-                        
23 - - - - - -
  /// @inheritdoc IOracle
- -
24 - - - - - -
  mapping(bytes32 _id => uint256 _responseCreatedAt) public responseCreatedAt;
- -
25 - - - - - -

-                            
-                        
26 - - - - - -
  /// @inheritdoc IOracle
- -
27 - - - - - -
  mapping(bytes32 _id => uint256 _disputeCreatedAt) public disputeCreatedAt;
- -
28 - - - - - -

-                            
-                        
29 - - - - - -
  /// @inheritdoc IOracle
- -
30 - - - - - -
  mapping(bytes32 _responseId => bytes32 _disputeId) public disputeOf;
- -
31 - - - - - -

-                            
-                        
32 - - - - - -
  /// @inheritdoc IOracle
- -
33 - - - - - -
  mapping(bytes32 _disputeId => DisputeStatus _status) public disputeStatus;
- -
34 - - - - - -

-                            
-                        
35 - - - - - -
  /// @inheritdoc IOracle
- -
36 - - - - - -
  mapping(uint256 _requestNumber => bytes32 _id) public nonceToRequestId;
- -
37 - - - - - -

-                            
-                        
38 - - - - - -
  /// @inheritdoc IOracle
- -
39 - - - - - -
  mapping(bytes32 _requestId => bytes32 _finalizedResponseId) public finalizedResponseId;
- -
40 - - - - - -

-                            
-                        
41 - - - - - -
  /// @inheritdoc IOracle
- -
42 - - - - - -
  mapping(bytes32 _requestId => mapping(address _module => bool _allowed)) public allowedModule;
- -
43 - - - - - -

-                            
-                        
44 - - - - - -
  /// @inheritdoc IOracle
- -
45 - - - - - -
  mapping(bytes32 _requestId => mapping(address _user => bool _isParticipant)) public isParticipant;
- -
46 - - - - - -

-                            
-                        
47 - - - - - -
  /**
- -
48 - - - - - -
   * @notice The list of the response ids for each request
- -
49 - - - - - -
   */
- -
50 - - - - - -
  mapping(bytes32 _requestId => bytes _responseIds) internal _responseIds;
- -
51 - - - - - -

-                            
-                        
52 - - - - - -
  /// @inheritdoc IOracle
- -
53 - - - - - -
  uint256 public totalRequestCount;
- -
54 - - - - - -

-                            
-                        
55 - - - - - -
  /// @inheritdoc IOracle
- -
56 - - - - - -
  function createRequest(Request calldata _request, bytes32 _ipfsHash) external returns (bytes32 _requestId) {
- -
57 - - - - - -
    _requestId = _createRequest(_request, _ipfsHash);
- -
58 - - - - - -
  }
- -
59 - - - - - -

-                            
-                        
60 - - - - - -
  /// @inheritdoc IOracle
- -
61 - - - - - -
  function createRequests(
- -
62 - - - - - -
    Request[] calldata _requestsData,
- -
63 - - - - - -
    bytes32[] calldata _ipfsHashes
- -
64 - - - - - -
  ) external returns (bytes32[] memory _batchRequestsIds) {
- -
65 - - - - - -
    uint256 _requestsAmount = _requestsData.length;
- -
66 - - - - - -
    _batchRequestsIds = new bytes32[](_requestsAmount);
- -
67 - - - - - -

-                            
-                        
68 - - - - - -
    for (uint256 _i = 0; _i < _requestsAmount;) {
- -
69 - - - - - -
      _batchRequestsIds[_i] = _createRequest(_requestsData[_i], _ipfsHashes[_i]);
- -
70 - - - - - -
      unchecked {
- -
71 - - - - - -
        ++_i;
- -
72 - - - - - -
      }
- -
73 - - - - - -
    }
- -
74 - - - - - -
  }
- -
75 - - - - - -

-                            
-                        
76 - - - - - -
  /// @inheritdoc IOracle
- -
77 - - - - - -
  function listRequestIds(uint256 _startFrom, uint256 _batchSize) external view returns (bytes32[] memory _list) {
- -
78 - - - - - -
    uint256 _totalRequestsCount = totalRequestCount;
- -
79 - - - - - -

-                            
-                        
80 - - - - - -
    // If trying to collect non-existent ids only, return empty array
- -
81 - - - - - -
    if (_startFrom > _totalRequestsCount) {
- -
82 - - - - - -
      return _list;
- -
83 - - - - - -
    }
- -
84 - - - - - -

-                            
-                        
85 - - - - - -
    if (_batchSize > _totalRequestsCount - _startFrom) {
- -
86 - - - - - -
      _batchSize = _totalRequestsCount - _startFrom;
- -
87 - - - - - -
    }
- -
88 - - - - - -

-                            
-                        
89 - - - - - -
    _list = new bytes32[](_batchSize);
- -
90 - - - - - -

-                            
-                        
91 - - - - - -
    uint256 _index;
- -
92 - - - - - -
    while (_index < _batchSize) {
- -
93 - - - - - -
      _list[_index] = nonceToRequestId[_startFrom + _index];
- -
94 - - - - - -

-                            
-                        
95 - - - - - -
      unchecked {
- -
96 - - - - - -
        ++_index;
- -
97 - - - - - -
      }
- -
98 - - - - - -
    }
- -
99 - - - - - -
  }
- -
100 - - - - - -

-                            
-                        
101 - - - - - -
  /// @inheritdoc IOracle
- -
102 - - - - - -
  function proposeResponse(
- -
103 - - - - - -
    Request calldata _request,
- -
104 - - - - - -
    Response calldata _response
- -
105 - - - - - -
  ) external returns (bytes32 _responseId) {
- -
106 - - - - - -
    _responseId = ValidatorLib._validateResponse(_request, _response);
- -
107 - - - - - -

-                            
-                        
108 - - - - - -
    bytes32 _requestId = _response.requestId;
- -
109 - - - - - -

-                            
-                        
110 - - - - - -
    if (requestCreatedAt[_requestId] == 0) {
- -
111 - - - - - -
      revert Oracle_InvalidRequest();
- -
112 - - - - - -
    }
- -
113 - - - - - -

-                            
-                        
114 - - - - - -
    // The caller must be the proposer, unless the response is coming from a dispute module
- -
115 - - - - - -
    if (msg.sender != _response.proposer && msg.sender != address(_request.disputeModule)) {
- -
116 - - - - - -
      revert Oracle_InvalidProposer();
- -
117 - - - - - -
    }
- -
118 - - - - - -

-                            
-                        
119 - - - - - -
    // Can't propose the same response twice
- -
120 - - - - - -
    if (responseCreatedAt[_responseId] != 0) {
- -
121 - - - - - -
      revert Oracle_ResponseAlreadyProposed();
- -
122 - - - - - -
    }
- -
123 - - - - - -

-                            
-                        
124 - - - - - -
    if (finalizedAt[_requestId] != 0) {
- -
125 - - - - - -
      revert Oracle_AlreadyFinalized(_requestId);
- -
126 - - - - - -
    }
- -
127 - - - - - -
    isParticipant[_requestId][_response.proposer] = true;
- -
128 - - - - - -
    IResponseModule(_request.responseModule).propose(_request, _response, msg.sender);
- -
129 - - - - - -
    _responseIds[_requestId] = abi.encodePacked(_responseIds[_requestId], _responseId);
- -
130 - - - - - -
    responseCreatedAt[_responseId] = block.timestamp;
- -
131 - - - - - -

-                            
-                        
132 - - - - - -
    emit ResponseProposed(_requestId, _responseId, _response);
- -
133 - - - - - -
  }
- -
134 - - - - - -

-                            
-                        
135 - - - - - -
  /// @inheritdoc IOracle
- -
136 - - - - - -
  function disputeResponse(
- -
137 - - - - - -
    Request calldata _request,
- -
138 - - - - - -
    Response calldata _response,
- -
139 - - - - - -
    Dispute calldata _dispute
- -
140 - - - - - -
  ) external returns (bytes32 _disputeId) {
- -
141 - - - - - -
    bytes32 _responseId;
- -
142 - - - - - -
    (_responseId, _disputeId) = ValidatorLib._validateResponseAndDispute(_request, _response, _dispute);
- -
143 - - - - - -

-                            
-                        
144 - - - - - -
    bytes32 _requestId = _dispute.requestId;
- -
145 - - - - - -

-                            
-                        
146 - - - - - -
    if (responseCreatedAt[_responseId] == 0) {
- -
147 - - - - - -
      revert Oracle_InvalidResponse();
- -
148 - - - - - -
    }
- -
149 - - - - - -

-                            
-                        
150 - - - - - -
    if (_dispute.proposer != _response.proposer) {
- -
151 - - - - - -
      revert Oracle_InvalidProposer();
- -
152 - - - - - -
    }
- -
153 - - - - - -

-                            
-                        
154 - - - - - -
    if (_dispute.disputer != msg.sender) {
- -
155 - - - - - -
      revert Oracle_InvalidDisputer();
- -
156 - - - - - -
    }
- -
157 - - - - - -

-                            
-                        
158 - - - - - -
    if (finalizedAt[_requestId] != 0) {
- -
159 - - - - - -
      revert Oracle_AlreadyFinalized(_requestId);
- -
160 - - - - - -
    }
- -
161 - - - - - -

-                            
-                        
162 - - - - - -
    if (disputeOf[_responseId] != bytes32(0)) {
- -
163 - - - - - -
      revert Oracle_ResponseAlreadyDisputed(_responseId);
- -
164 - - - - - -
    }
- -
165 - - - - - -
    isParticipant[_requestId][msg.sender] = true;
- -
166 - - - - - -
    disputeStatus[_disputeId] = DisputeStatus.Active;
- -
167 - - - - - -
    disputeOf[_responseId] = _disputeId;
- -
168 - - - - - -
    disputeCreatedAt[_disputeId] = block.timestamp;
- -
169 - - - - - -

-                            
-                        
170 - - - - - -
    IDisputeModule(_request.disputeModule).disputeResponse(_request, _response, _dispute);
- -
171 - - - - - -

-                            
-                        
172 - - - - - -
    emit ResponseDisputed(_responseId, _disputeId, _dispute);
- -
173 - - - - - -
  }
- -
174 - - - - - -

-                            
-                        
175 - - - - - -
  /// @inheritdoc IOracle
- -
176 - - - - - -
  function escalateDispute(Request calldata _request, Response calldata _response, Dispute calldata _dispute) external {
- -
177 - - - - - -
    (bytes32 _responseId, bytes32 _disputeId) = ValidatorLib._validateResponseAndDispute(_request, _response, _dispute);
- -
178 - - - - - -

-                            
-                        
179 - - - - - -
    if (disputeCreatedAt[_disputeId] == 0) {
- -
180 - - - - - -
      revert Oracle_InvalidDispute();
- -
181 - - - - - -
    }
- -
182 - - - - - -

-                            
-                        
183 - - - - - -
    if (disputeOf[_responseId] != _disputeId) {
- -
184 - - - - - -
      revert Oracle_InvalidDisputeId(_disputeId);
- -
185 - - - - - -
    }
- -
186 - - - - - -

-                            
-                        
187 - - - - - -
    if (disputeStatus[_disputeId] != DisputeStatus.Active) {
- -
188 - - - - - -
      revert Oracle_CannotEscalate(_disputeId);
- -
189 - - - - - -
    }
- -
190 - - - - - -

-                            
-                        
191 - - - - - -
    // Change the dispute status
- -
192 - - - - - -
    disputeStatus[_disputeId] = DisputeStatus.Escalated;
- -
193 - - - - - -

-                            
-                        
194 - - - - - -
    // Notify the dispute module about the escalation
- -
195 - - - - - -
    IDisputeModule(_request.disputeModule).onDisputeStatusChange(_disputeId, _request, _response, _dispute);
- -
196 - - - - - -

-                            
-                        
197 - - - - - -
    emit DisputeEscalated(msg.sender, _disputeId, _dispute);
- -
198 - - - - - -

-                            
-                        
199 - - - - - -
    if (address(_request.resolutionModule) != address(0)) {
- -
200 - - - - - -
      // Initiate the resolution
- -
201 - - - - - -
      IResolutionModule(_request.resolutionModule).startResolution(_disputeId, _request, _response, _dispute);
- -
202 - - - - - -
    }
- -
203 - - - - - -
  }
- -
204 - - - - - -

-                            
-                        
205 - - - - - -
  /// @inheritdoc IOracle
- -
206 - - - - - -
  function resolveDispute(Request calldata _request, Response calldata _response, Dispute calldata _dispute) external {
- -
207 - - - - - -
    (bytes32 _responseId, bytes32 _disputeId) = ValidatorLib._validateResponseAndDispute(_request, _response, _dispute);
- -
208 - - - - - -

-                            
-                        
209 - - - - - -
    if (disputeCreatedAt[_disputeId] == 0) {
- -
210 - - - - - -
      revert Oracle_InvalidDispute();
- -
211 - - - - - -
    }
- -
212 - - - - - -

-                            
-                        
213 - - - - - -
    if (disputeOf[_responseId] != _disputeId) {
- -
214 - - - - - -
      revert Oracle_InvalidDisputeId(_disputeId);
- -
215 - - - - - -
    }
- -
216 - - - - - -

-                            
-                        
217 - - - - - -
    // Revert if the dispute is not active nor escalated
- -
218 - - - - - -
    DisputeStatus _currentStatus = disputeStatus[_disputeId];
- -
219 - - - - - -
    if (_currentStatus != DisputeStatus.Active && _currentStatus != DisputeStatus.Escalated) {
- -
220 - - - - - -
      revert Oracle_CannotResolve(_disputeId);
- -
221 - - - - - -
    }
- -
222 - - - - - -

-                            
-                        
223 - - - - - -
    if (address(_request.resolutionModule) == address(0)) {
- -
224 - - - - - -
      revert Oracle_NoResolutionModule(_disputeId);
- -
225 - - - - - -
    }
- -
226 - - - - - -

-                            
-                        
227 - - - - - -
    IResolutionModule(_request.resolutionModule).resolveDispute(_disputeId, _request, _response, _dispute);
- -
228 - - - - - -

-                            
-                        
229 - - - - - -
    emit DisputeResolved(_disputeId, _dispute, msg.sender);
- -
230 - - - - - -
  }
- -
231 - - - - - -

-                            
-                        
232 - - - - - -
  /// @inheritdoc IOracle
- -
233 - - - - - -
  function updateDisputeStatus(
- -
234 - - - - - -
    Request calldata _request,
- -
235 - - - - - -
    Response calldata _response,
- -
236 - - - - - -
    Dispute calldata _dispute,
- -
237 - - - - - -
    DisputeStatus _status
- -
238 - - - - - -
  ) external {
- -
239 - - - - - -
    (bytes32 _responseId, bytes32 _disputeId) = ValidatorLib._validateResponseAndDispute(_request, _response, _dispute);
- -
240 - - - - - -

-                            
-                        
241 - - - - - -
    if (disputeCreatedAt[_disputeId] == 0) {
- -
242 - - - - - -
      revert Oracle_InvalidDispute();
- -
243 - - - - - -
    }
- -
244 - - - - - -

-                            
-                        
245 - - - - - -
    if (disputeOf[_responseId] != _disputeId) {
- -
246 - - - - - -
      revert Oracle_InvalidDisputeId(_disputeId);
- -
247 - - - - - -
    }
- -
248 - - - - - -

-                            
-                        
249 - - - - - -
    if (msg.sender != address(_request.disputeModule) && msg.sender != address(_request.resolutionModule)) {
- -
250 - - - - - -
      revert Oracle_NotDisputeOrResolutionModule(msg.sender);
- -
251 - - - - - -
    }
- -
252 - - - - - -
    disputeStatus[_disputeId] = _status;
- -
253 - - - - - -
    IDisputeModule(_request.disputeModule).onDisputeStatusChange(_disputeId, _request, _response, _dispute);
- -
254 - - - - - -

-                            
-                        
255 - - - - - -
    emit DisputeStatusUpdated(_disputeId, _dispute, _status);
- -
256 - - - - - -
  }
- -
257 - - - - - -

-                            
-                        
258 - - - - - -
  /// @inheritdoc IOracle
- -
259 - - - - - -
  function getResponseIds(bytes32 _requestId) public view returns (bytes32[] memory _ids) {
- -
260 - - - - - -
    bytes memory _responses = _responseIds[_requestId];
- -
261 - - - - - -
    uint256 _length = _responses.length / 32;
- -
262 - - - - - -

-                            
-                        
263 - - - - - -
    assembly {
- -
264 - - - - - -
      for { let _i := 0 } lt(_i, _length) { _i := add(_i, 1) } {
- -
265 - - - - - -
        // Increase the size of the array
- -
266 - - - - - -
        mstore(_ids, add(mload(_ids), 1))
- -
267 - - - - - -

-                            
-                        
268 - - - - - -
        // Store the response id in the array
- -
269 - - - - - -
        mstore(add(_ids, add(32, mul(_i, 32))), mload(add(_responses, add(32, mul(_i, 32)))))
- -
270 - - - - - -
      }
- -
271 - - - - - -
    }
- -
272 - - - - - -
  }
- -
273 - - - - - -

-                            
-                        
274 - - - - - -
  /// @inheritdoc IOracle
- -
275 - - - - - -
  function finalize(IOracle.Request calldata _request, IOracle.Response calldata _response) external {
- -
276 - - - - - -
    bytes32 _requestId;
- -
277 - - - - - -
    bytes32 _responseId;
- -
278 - - - - - -

-                            
-                        
279 - - - - - -
    // Finalizing without a response (by passing a Response with `requestId` == 0x0)
- -
280 - - - - - -
    if (_response.requestId == bytes32(0)) {
- -
281 - - - - - -
      _requestId = _finalizeWithoutResponse(_request);
- -
282 - - - - - -
    } else {
- -
283 - - - - - -
      (_requestId, _responseId) = _finalizeWithResponse(_request, _response);
- -
284 - - - - - -
    }
- -
285 - - - - - -

-                            
-                        
286 - - - - - -
    if (finalizedAt[_requestId] != 0) {
- -
287 - - - - - -
      revert Oracle_AlreadyFinalized(_requestId);
- -
288 - - - - - -
    }
- -
289 - - - - - -

-                            
-                        
290 - - - - - -
    finalizedAt[_requestId] = block.timestamp;
- -
291 - - - - - -

-                            
-                        
292 - - - - - -
    if (address(_request.finalityModule) != address(0)) {
- -
293 - - - - - -
      IFinalityModule(_request.finalityModule).finalizeRequest(_request, _response, msg.sender);
- -
294 - - - - - -
    }
- -
295 - - - - - -

-                            
-                        
296 - - - - - -
    if (address(_request.resolutionModule) != address(0)) {
- -
297 - - - - - -
      IResolutionModule(_request.resolutionModule).finalizeRequest(_request, _response, msg.sender);
- -
298 - - - - - -
    }
- -
299 - - - - - -

-                            
-                        
300 - - - - - -
    IDisputeModule(_request.disputeModule).finalizeRequest(_request, _response, msg.sender);
- -
301 - - - - - -
    IResponseModule(_request.responseModule).finalizeRequest(_request, _response, msg.sender);
- -
302 - - - - - -
    IRequestModule(_request.requestModule).finalizeRequest(_request, _response, msg.sender);
- -
303 - - - - - -

-                            
-                        
304 - - - - - -
    emit OracleRequestFinalized(_requestId, _responseId, msg.sender);
- -
305 - - - - - -
  }
- -
306 - - - - - -

-                            
-                        
307 - - - - - -
  /**
- -
308 - - - - - -
   * @notice Finalizing a request that either does not have any responses or only has disputed responses
- -
309 - - - - - -
   *
- -
310 - - - - - -
   * @param _request The request to be finalized
- -
311 - - - - - -
   * @return _requestId The id of the finalized request
- -
312 - - - - - -
   */
- -
313 - - - - - -
  function _finalizeWithoutResponse(IOracle.Request calldata _request) internal view returns (bytes32 _requestId) {
- -
314 - - - - - -
    _requestId = ValidatorLib._getId(_request);
- -
315 - - - - - -

-                            
-                        
316 - - - - - -
    if (requestCreatedAt[_requestId] == 0) {
- -
317 - - - - - -
      revert Oracle_InvalidRequest();
- -
318 - - - - - -
    }
- -
319 - - - - - -

-                            
-                        
320 - - - - - -
    bytes32[] memory _responses = getResponseIds(_requestId);
- -
321 - - - - - -
    uint256 _responsesAmount = _responses.length;
- -
322 - - - - - -

-                            
-                        
323 - - - - - -
    if (_responsesAmount != 0) {
- -
324 - - - - - -
      for (uint256 _i = 0; _i < _responsesAmount;) {
- -
325 - - - - - -
        bytes32 _responseId = _responses[_i];
- -
326 - - - - - -
        bytes32 _disputeId = disputeOf[_responseId];
- -
327 - - - - - -
        DisputeStatus _status = disputeStatus[_disputeId];
- -
328 - - - - - -

-                            
-                        
329 - - - - - -
        // If there is an undisputed response or with a lost dispute, must finalize with it
- -
330 - - - - - -
        if (_status == DisputeStatus.None || _status == DisputeStatus.Lost) {
- -
331 - - - - - -
          revert Oracle_FinalizableResponseExists(_responseId);
- -
332 - - - - - -
        }
- -
333 - - - - - -

-                            
-                        
334 - - - - - -
        unchecked {
- -
335 - - - - - -
          ++_i;
- -
336 - - - - - -
        }
- -
337 - - - - - -
      }
- -
338 - - - - - -
    }
- -
339 - - - - - -
  }
- -
340 - - - - - -

-                            
-                        
341 - - - - - -
  /**
- -
342 - - - - - -
   * @notice Finalizing a request with a response
- -
343 - - - - - -
   *
- -
344 - - - - - -
   * @param _request The request to be finalized
- -
345 - - - - - -
   * @param _response The final response
- -
346 - - - - - -
   * @return _requestId The id of the finalized request
- -
347 - - - - - -
   * @return _responseId The id of the final response
- -
348 - - - - - -
   */
- -
349 - - - - - -
  function _finalizeWithResponse(
- -
350 - - - - - -
    IOracle.Request calldata _request,
- -
351 - - - - - -
    IOracle.Response calldata _response
- -
352 - - - - - -
  ) internal returns (bytes32 _requestId, bytes32 _responseId) {
- -
353 - - - - - -
    _responseId = ValidatorLib._validateResponse(_request, _response);
- -
354 - - - - - -

-                            
-                        
355 - - - - - -
    _requestId = _response.requestId;
- -
356 - - - - - -

-                            
-                        
357 - - - - - -
    if (responseCreatedAt[_responseId] == 0) {
- -
358 - - - - - -
      revert Oracle_InvalidResponse();
- -
359 - - - - - -
    }
- -
360 - - - - - -

-                            
-                        
361 - - - - - -
    DisputeStatus _status = disputeStatus[disputeOf[_responseId]];
- -
362 - - - - - -

-                            
-                        
363 - - - - - -
    if (_status != DisputeStatus.None && _status != DisputeStatus.Lost) {
- -
364 - - - - - -
      revert Oracle_InvalidFinalizedResponse();
- -
365 - - - - - -
    }
- -
366 - - - - - -

-                            
-                        
367 - - - - - -
    finalizedResponseId[_requestId] = _responseId;
- -
368 - - - - - -
  }
- -
369 - - - - - -

-                            
-                        
370 - - - - - -
  /**
- -
371 - - - - - -
   * @notice Stores a request in the contract and configures it in the modules
- -
372 - - - - - -
   *
- -
373 - - - - - -
   * @param _request The request to be created
- -
374 - - - - - -
   * @param _ipfsHash The hashed IPFS CID of the metadata json
- -
375 - - - - - -
   * @return _requestId The id of the created request
- -
376 - - - - - -
   */
- -
377 - - - - - -
  function _createRequest(Request memory _request, bytes32 _ipfsHash) internal returns (bytes32 _requestId) {
- -
378 - - - - - -
    uint256 _requestNonce = totalRequestCount++;
- -
379 - - - - - -

-                            
-                        
380 - - - - - -
    if (_request.nonce == 0) _request.nonce = uint96(_requestNonce);
- -
381 - - - - - -

-                            
-                        
382 - - - - - -
    if (msg.sender != _request.requester || _requestNonce != _request.nonce) {
- -
383 - - - - - -
      revert Oracle_InvalidRequestBody();
- -
384 - - - - - -
    }
- -
385 - - - - - -

-                            
-                        
386 - - - - - -
    _requestId = ValidatorLib._getId(_request);
- -
387 - - - - - -
    nonceToRequestId[_requestNonce] = _requestId;
- -
388 - - - - - -
    requestCreatedAt[_requestId] = block.timestamp;
- -
389 - - - - - -

-                            
-                        
390 - - - - - -
    allowedModule[_requestId][_request.requestModule] = true;
- -
391 - - - - - -
    allowedModule[_requestId][_request.responseModule] = true;
- -
392 - - - - - -
    allowedModule[_requestId][_request.disputeModule] = true;
- -
393 - - - - - -
    allowedModule[_requestId][_request.resolutionModule] = true;
- -
394 - - - - - -
    allowedModule[_requestId][_request.finalityModule] = true;
- -
395 - - - - - -

-                            
-                        
396 - - - - - -
    isParticipant[_requestId][msg.sender] = true;
- -
397 - - - - - -

-                            
-                        
398 - - - - - -
    IRequestModule(_request.requestModule).createRequest(_requestId, _request.requestModuleData, msg.sender);
- -
399 - - - - - -

-                            
-                        
400 - - - - - -
    emit RequestCreated(_requestId, _request, _ipfsHash);
- -
401 - - - - - -
  }
- -
402 - - - - - -
}
- -
403 - - - - - -

-                            
-                        
-
-
- - - - - - - - - - -
-
-
- - - - - - -
Lines covered: 2 / 17 (11.8%)
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
1 - - - - - -
// SPDX-License-Identifier: MIT
- -
2 - - - - - -
pragma solidity ^0.8.19;
- -
3 - - - - - -

-                            
-                        
4 - - - - - -
import {IOracle, IValidator} from '../interfaces/IValidator.sol';
- -
5 - - - - - -

-                            
-                        
6 - - - - - -
import {ValidatorLib} from '../libraries/ValidatorLib.sol';
- -
7 - - - - - -

-                            
-                        
8 - - - - - -
abstract contract Validator is IValidator {
- -
9 - - - - - -
  /// @inheritdoc IValidator
- -
10 - -
- -
- - - -
  IOracle public immutable ORACLE;
- -
11 - - - - - -

-                            
-                        
12 - - - - - -
  constructor(IOracle _oracle) {
- -
13 - -
- -
- - - -
    ORACLE = _oracle;
- -
14 - - - - - -
  }
- -
15 - - - - - -
  /**
- -
16 - - - - - -
   * @notice Computes the id a given request
- -
17 - - - - - -
   *
- -
18 - - - - - -
   * @param _request The request to compute the id for
- -
19 - - - - - -
   * @return _id The id the request
- -
20 - - - - - -
   */
- -
21 - - - - - -

-                            
-                        
22 - - - - - -
  function _getId(IOracle.Request calldata _request) internal pure returns (bytes32 _id) {
- -
23 - - - - - -
    _id = ValidatorLib._getId(_request);
- -
24 - - - - - -
  }
- -
25 - - - - - -

-                            
-                        
26 - - - - - -
  /**
- -
27 - - - - - -
   * @notice Computes the id a given response
- -
28 - - - - - -
   *
- -
29 - - - - - -
   * @param _response The response to compute the id for
- -
30 - - - - - -
   * @return _id The id the response
- -
31 - - - - - -
   */
- -
32 - - - - - -
  function _getId(IOracle.Response calldata _response) internal pure returns (bytes32 _id) {
- -
33 - - - - - -
    _id = ValidatorLib._getId(_response);
- -
34 - - - - - -
  }
- -
35 - - - - - -

-                            
-                        
36 - - - - - -
  /**
- -
37 - - - - - -
   * @notice Computes the id a given dispute
- -
38 - - - - - -
   *
- -
39 - - - - - -
   * @param _dispute The dispute to compute the id for
- -
40 - - - - - -
   * @return _id The id the dispute
- -
41 - - - - - -
   */
- -
42 - - - - - -
  function _getId(IOracle.Dispute calldata _dispute) internal pure returns (bytes32 _id) {
- -
43 - - - - - -
    _id = ValidatorLib._getId(_dispute);
- -
44 - - - - - -
  }
- -
45 - - - - - -

-                            
-                        
46 - - - - - -
  /**
- -
47 - - - - - -
   * @notice Validates the correctness and existance of a request-response pair
- -
48 - - - - - -
   *
- -
49 - - - - - -
   * @param _request The request to compute the id for
- -
50 - - - - - -
   * @param _response The response to compute the id for
- -
51 - - - - - -
   * @return _responseId The id the response
- -
52 - - - - - -
   */
- -
53 - - - - - -
  function _validateResponse(
- -
54 - - - - - -
    IOracle.Request calldata _request,
- -
55 - - - - - -
    IOracle.Response calldata _response
- -
56 - - - - - -
  ) internal view returns (bytes32 _responseId) {
- -
57 - - - - - -
    _responseId = ValidatorLib._validateResponse(_request, _response);
- -
58 - - - - - -

-                            
-                        
59 - - - - - -
    if (ORACLE.responseCreatedAt(_responseId) == 0) revert Validator_InvalidResponse();
- -
60 - - - - - -
  }
- -
61 - - - - - -

-                            
-                        
62 - - - - - -
  /**
- -
63 - - - - - -
   * @notice Validates the correctness of a request-dispute pair
- -
64 - - - - - -
   *
- -
65 - - - - - -
   * @param _request The request to compute the id for
- -
66 - - - - - -
   * @param _dispute The dispute to compute the id for
- -
67 - - - - - -
   * @return _disputeId The id the dispute
- -
68 - - - - - -
   */
- -
69 - - - - - -
  function _validateDispute(
- -
70 - - - - - -
    IOracle.Request calldata _request,
- -
71 - - - - - -
    IOracle.Dispute calldata _dispute
- -
72 - - - - - -
  ) internal view returns (bytes32 _disputeId) {
- -
73 - - - - - -
    _disputeId = ValidatorLib._validateDispute(_request, _dispute);
- -
74 - - - - - -

-                            
-                        
75 - - - - - -
    if (ORACLE.disputeCreatedAt(_disputeId) == 0) revert Validator_InvalidDispute();
- -
76 - - - - - -
  }
- -
77 - - - - - -

-                            
-                        
78 - - - - - -
  /**
- -
79 - - - - - -
   * @notice Validates the correctness of a response-dispute pair
- -
80 - - - - - -
   *
- -
81 - - - - - -
   * @param _response The response to compute the id for
- -
82 - - - - - -
   * @param _dispute The dispute to compute the id for
- -
83 - - - - - -
   * @return _disputeId The id the dispute
- -
84 - - - - - -
   */
- -
85 - - - - - -
  function _validateDispute(
- -
86 - - - - - -
    IOracle.Response calldata _response,
- -
87 - - - - - -
    IOracle.Dispute calldata _dispute
- -
88 - - - - - -
  ) internal view returns (bytes32 _disputeId) {
- -
89 - - - - - -
    _disputeId = ValidatorLib._validateDispute(_response, _dispute);
- -
90 - - - - - -

-                            
-                        
91 - - - - - -
    if (ORACLE.disputeCreatedAt(_disputeId) == 0) revert Validator_InvalidDispute();
- -
92 - - - - - -
  }
- -
93 - - - - - -

-                            
-                        
94 - - - - - -
  /**
- -
95 - - - - - -
   * @notice Validates the correctness of a request-response-dispute triplet
- -
96 - - - - - -
   *
- -
97 - - - - - -
   * @param _request The request to compute the id for
- -
98 - - - - - -
   * @param _response The response to compute the id for
- -
99 - - - - - -
   * @param _dispute The dispute to compute the id for
- -
100 - - - - - -
   * @return _responseId The id the response
- -
101 - - - - - -
   * @return _disputeId The id the dispute
- -
102 - - - - - -
   */
- -
103 - - - - - -
  function _validateResponseAndDispute(
- -
104 - - - - - -
    IOracle.Request calldata _request,
- -
105 - - - - - -
    IOracle.Response calldata _response,
- -
106 - - - - - -
    IOracle.Dispute calldata _dispute
- -
107 - - - - - -
  ) internal view returns (bytes32 _responseId, bytes32 _disputeId) {
- -
108 - - - - - -
    (_responseId, _disputeId) = ValidatorLib._validateResponseAndDispute(_request, _response, _dispute);
- -
109 - - - - - -

-                            
-                        
110 - - - - - -
    if (ORACLE.disputeCreatedAt(_disputeId) == 0) revert Validator_InvalidDispute();
- -
111 - - - - - -
  }
- -
112 - - - - - -
}
- -
113 - - - - - -

-                            
-                        
-
-
- - - - - - - - - - -
-
-
- - - - - - -
Lines covered: 0 / 0 (0.0%)
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
1 - - - - - -
// SPDX-License-Identifier: MIT
- -
2 - - - - - -
pragma solidity ^0.8.19;
- -
3 - - - - - -

-                            
-                        
4 - - - - - -
import {IOracle} from './IOracle.sol';
- -
5 - - - - - -
import {IValidator} from './IValidator.sol';
- -
6 - - - - - -

-                            
-                        
7 - - - - - -
/**
- -
8 - - - - - -
 * @title Module
- -
9 - - - - - -
 * @notice Abstract contract to be inherited by all modules
- -
10 - - - - - -
 */
- -
11 - - - - - -
interface IModule is IValidator {
- -
12 - - - - - -
  /*///////////////////////////////////////////////////////////////
- -
13 - - - - - -
                              EVENTS
- -
14 - - - - - -
  //////////////////////////////////////////////////////////////*/
- -
15 - - - - - -

-                            
-                        
16 - - - - - -
  /**
- -
17 - - - - - -
   * @notice Emitted when a request is finalized
- -
18 - - - - - -
   * @param _requestId The id of the request that was finalized
- -
19 - - - - - -
   * @param _response The final response
- -
20 - - - - - -
   * @param _finalizer The address that initiated the finalization
- -
21 - - - - - -
   */
- -
22 - - - - - -
  event RequestFinalized(bytes32 indexed _requestId, IOracle.Response _response, address _finalizer);
- -
23 - - - - - -

-                            
-                        
24 - - - - - -
  /*///////////////////////////////////////////////////////////////
- -
25 - - - - - -
                              ERRORS
- -
26 - - - - - -
  //////////////////////////////////////////////////////////////*/
- -
27 - - - - - -

-                            
-                        
28 - - - - - -
  /**
- -
29 - - - - - -
   * @notice Thrown when the caller is not the oracle
- -
30 - - - - - -
   */
- -
31 - - - - - -
  error Module_OnlyOracle();
- -
32 - - - - - -

-                            
-                        
33 - - - - - -
  /*///////////////////////////////////////////////////////////////
- -
34 - - - - - -
                              LOGIC
- -
35 - - - - - -
  //////////////////////////////////////////////////////////////*/
- -
36 - - - - - -

-                            
-                        
37 - - - - - -
  /**
- -
38 - - - - - -
   * @notice Finalizes the request
- -
39 - - - - - -
   *
- -
40 - - - - - -
   * @param _request The request being finalized
- -
41 - - - - - -
   * @param _response The final response
- -
42 - - - - - -
   * @param _finalizer The address that initiated the finalization
- -
43 - - - - - -
   */
- -
44 - - - - - -
  function finalizeRequest(
- -
45 - - - - - -
    IOracle.Request calldata _request,
- -
46 - - - - - -
    IOracle.Response calldata _response,
- -
47 - - - - - -
    address _finalizer
- -
48 - - - - - -
  ) external;
- -
49 - - - - - -

-                            
-                        
50 - - - - - -
  /**
- -
51 - - - - - -
   * @notice Validates parameters prior to creating a request
- -
52 - - - - - -
   *
- -
53 - - - - - -
   * @param _encodedParameters The encoded parameters for the request
- -
54 - - - - - -
   * @return _valid Boolean indicating if the parameters are valid or not
- -
55 - - - - - -
   */
- -
56 - - - - - -
  function validateParameters(bytes calldata _encodedParameters) external view returns (bool _valid);
- -
57 - - - - - -

-                            
-                        
58 - - - - - -
  /**
- -
59 - - - - - -
   * @notice Returns the name of the module.
- -
60 - - - - - -
   *
- -
61 - - - - - -
   * @return _moduleName The name of the module.
- -
62 - - - - - -
   */
- -
63 - - - - - -
  function moduleName() external view returns (string memory _moduleName);
- -
64 - - - - - -
}
- -
65 - - - - - -

-                            
-                        
-
-
- - - - - - - - - - -
-
-
- - - - - - -
Lines covered: 0 / 0 (0.0%)
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
1 - - - - - -
// SPDX-License-Identifier: MIT
- -
2 - - - - - -
pragma solidity ^0.8.19;
- -
3 - - - - - -

-                            
-                        
4 - - - - - -
/**
- -
5 - - - - - -
 * @title Oracle
- -
6 - - - - - -
 * @notice The main contract storing requests, responses and disputes, and routing the calls to the modules.
- -
7 - - - - - -
 */
- -
8 - - - - - -
interface IOracle {
- -
9 - - - - - -
  /*///////////////////////////////////////////////////////////////
- -
10 - - - - - -
                              EVENTS
- -
11 - - - - - -
  //////////////////////////////////////////////////////////////*/
- -
12 - - - - - -

-                            
-                        
13 - - - - - -
  /**
- -
14 - - - - - -
   * @notice Emitted when a request is created
- -
15 - - - - - -
   * @param _requestId The id of the created request
- -
16 - - - - - -
   * @param _request The request that has been created
- -
17 - - - - - -
   * @param _ipfsHash The hashed IPFS CID of the metadata json
- -
18 - - - - - -
   */
- -
19 - - - - - -
  event RequestCreated(bytes32 indexed _requestId, Request _request, bytes32 _ipfsHash);
- -
20 - - - - - -

-                            
-                        
21 - - - - - -
  /**
- -
22 - - - - - -
   * @notice Emitted when a response is proposed
- -
23 - - - - - -
   * @param _requestId The id of the request
- -
24 - - - - - -
   * @param _responseId The id of the proposed response
- -
25 - - - - - -
   * @param _response The response that has been proposed
- -
26 - - - - - -
   */
- -
27 - - - - - -
  event ResponseProposed(bytes32 indexed _requestId, bytes32 indexed _responseId, Response _response);
- -
28 - - - - - -

-                            
-                        
29 - - - - - -
  /**
- -
30 - - - - - -
   * @notice Emitted when a response is disputed
- -
31 - - - - - -
   * @param _responseId The id of the response being disputed
- -
32 - - - - - -
   * @param _disputeId The id of the dispute
- -
33 - - - - - -
   * @param _dispute The dispute that has been created
- -
34 - - - - - -
   */
- -
35 - - - - - -
  event ResponseDisputed(bytes32 indexed _responseId, bytes32 indexed _disputeId, Dispute _dispute);
- -
36 - - - - - -

-                            
-                        
37 - - - - - -
  /**
- -
38 - - - - - -
   * @notice Emitted when a request is finalized
- -
39 - - - - - -
   * @param _requestId The id of the request being finalized
- -
40 - - - - - -
   * @param _responseId The id of the final response, may be empty
- -
41 - - - - - -
   * @param _caller The address of the user who finalized the request
- -
42 - - - - - -
   */
- -
43 - - - - - -
  event OracleRequestFinalized(bytes32 indexed _requestId, bytes32 indexed _responseId, address indexed _caller);
- -
44 - - - - - -

-                            
-                        
45 - - - - - -
  /**
- -
46 - - - - - -
   * @notice Emitted when a dispute is escalated
- -
47 - - - - - -
   * @param _caller The address of the user who escalated the dispute
- -
48 - - - - - -
   * @param _disputeId The id of the dispute being escalated
- -
49 - - - - - -
   * @param _dispute The dispute that is being escalated
- -
50 - - - - - -
   */
- -
51 - - - - - -
  event DisputeEscalated(address indexed _caller, bytes32 indexed _disputeId, Dispute _dispute);
- -
52 - - - - - -

-                            
-                        
53 - - - - - -
  /**
- -
54 - - - - - -
   * @notice Emitted when a dispute's status changes
- -
55 - - - - - -
   * @param _disputeId The id of the dispute
- -
56 - - - - - -
   * @param _dispute The dispute that is being updated
- -
57 - - - - - -
   * @param _status The new dispute status
- -
58 - - - - - -
   */
- -
59 - - - - - -
  event DisputeStatusUpdated(bytes32 indexed _disputeId, Dispute _dispute, DisputeStatus _status);
- -
60 - - - - - -

-                            
-                        
61 - - - - - -
  /**
- -
62 - - - - - -
   * @notice Emitted when a dispute is resolved
- -
63 - - - - - -
   * @param _disputeId The id of the dispute being resolved
- -
64 - - - - - -
   * @param _dispute The dispute that is being updated
- -
65 - - - - - -
   * @param _caller The address of the user who resolved the dispute
- -
66 - - - - - -
   */
- -
67 - - - - - -
  event DisputeResolved(bytes32 indexed _disputeId, Dispute _dispute, address indexed _caller);
- -
68 - - - - - -

-                            
-                        
69 - - - - - -
  /*///////////////////////////////////////////////////////////////
- -
70 - - - - - -
                              ERRORS
- -
71 - - - - - -
  //////////////////////////////////////////////////////////////*/
- -
72 - - - - - -

-                            
-                        
73 - - - - - -
  /**
- -
74 - - - - - -
   * @notice Thrown when an unauthorized caller is trying to change a dispute's status
- -
75 - - - - - -
   * @param _caller The caller of the function
- -
76 - - - - - -
   */
- -
77 - - - - - -
  error Oracle_NotDisputeOrResolutionModule(address _caller);
- -
78 - - - - - -

-                            
-                        
79 - - - - - -
  /**
- -
80 - - - - - -
   * @notice Thrown when trying to resolve a dispute of a request without resolution module
- -
81 - - - - - -
   * @param _disputeId The id of the dispute being
- -
82 - - - - - -
   */
- -
83 - - - - - -
  error Oracle_NoResolutionModule(bytes32 _disputeId);
- -
84 - - - - - -

-                            
-                        
85 - - - - - -
  /**
- -
86 - - - - - -
   * @notice Thrown when disputing a response that is already disputed
- -
87 - - - - - -
   * @param _responseId The id of the response being disputed
- -
88 - - - - - -
   */
- -
89 - - - - - -
  error Oracle_ResponseAlreadyDisputed(bytes32 _responseId);
- -
90 - - - - - -

-                            
-                        
91 - - - - - -
  /**
- -
92 - - - - - -
   * @notice Thrown when trying to dispute or finalize a request that is already finalized
- -
93 - - - - - -
   * @param _requestId The id of the request
- -
94 - - - - - -
   */
- -
95 - - - - - -
  error Oracle_AlreadyFinalized(bytes32 _requestId);
- -
96 - - - - - -

-                            
-                        
97 - - - - - -
  /**
- -
98 - - - - - -
   * @notice Thrown when trying to finalize a request with an invalid response
- -
99 - - - - - -
   */
- -
100 - - - - - -
  error Oracle_InvalidFinalizedResponse();
- -
101 - - - - - -

-                            
-                        
102 - - - - - -
  /**
- -
103 - - - - - -
   * @notice Thrown when trying to finalize a request without a response while there is, in fact, a response
- -
104 - - - - - -
   * @param _responseId The id of the response that would be suitable for finalization
- -
105 - - - - - -
   */
- -
106 - - - - - -
  error Oracle_FinalizableResponseExists(bytes32 _responseId);
- -
107 - - - - - -

-                            
-                        
108 - - - - - -
  /**
- -
109 - - - - - -
   * @notice Thrown when trying to resolve or escalate an invalid dispute
- -
110 - - - - - -
   * @param _disputeId The id of the dispute
- -
111 - - - - - -
   */
- -
112 - - - - - -
  error Oracle_InvalidDisputeId(bytes32 _disputeId);
- -
113 - - - - - -

-                            
-                        
114 - - - - - -
  /**
- -
115 - - - - - -
   * @notice Thrown when trying to escalate a dispute that's not in the active state
- -
116 - - - - - -
   * @param _disputeId The id of the dispute
- -
117 - - - - - -
   */
- -
118 - - - - - -
  error Oracle_CannotEscalate(bytes32 _disputeId);
- -
119 - - - - - -

-                            
-                        
120 - - - - - -
  /**
- -
121 - - - - - -
   * @notice Thrown when trying to resolve a dispute that's not in the active nor escalated state
- -
122 - - - - - -
   * @param _disputeId The id of the dispute
- -
123 - - - - - -
   */
- -
124 - - - - - -
  error Oracle_CannotResolve(bytes32 _disputeId);
- -
125 - - - - - -

-                            
-                        
126 - - - - - -
  /**
- -
127 - - - - - -
   * @notice Thrown when trying to create a request with invalid parameters
- -
128 - - - - - -
   */
- -
129 - - - - - -
  error Oracle_InvalidRequestBody();
- -
130 - - - - - -

-                            
-                        
131 - - - - - -
  /**
- -
132 - - - - - -
   * @notice Thrown when trying to propose a response with invalid parameters
- -
133 - - - - - -
   */
- -
134 - - - - - -
  error Oracle_InvalidResponseBody();
- -
135 - - - - - -

-                            
-                        
136 - - - - - -
  /**
- -
137 - - - - - -
   * @notice Thrown when trying to create a dispute with invalid parameters
- -
138 - - - - - -
   */
- -
139 - - - - - -
  error Oracle_InvalidDisputeBody();
- -
140 - - - - - -

-                            
-                        
141 - - - - - -
  /**
- -
142 - - - - - -
   * @notice Thrown when the request provided does not exist
- -
143 - - - - - -
   */
- -
144 - - - - - -
  error Oracle_InvalidRequest();
- -
145 - - - - - -

-                            
-                        
146 - - - - - -
  /**
- -
147 - - - - - -
   * @notice Thrown when the response provided does not exist
- -
148 - - - - - -
   */
- -
149 - - - - - -
  error Oracle_InvalidResponse();
- -
150 - - - - - -

-                            
-                        
151 - - - - - -
  /**
- -
152 - - - - - -
   * @notice Thrown when the dispute provided does not exist
- -
153 - - - - - -
   */
- -
154 - - - - - -
  error Oracle_InvalidDispute();
- -
155 - - - - - -

-                            
-                        
156 - - - - - -
  /**
- -
157 - - - - - -
   * @notice Thrown when response has been already proposed
- -
158 - - - - - -
   */
- -
159 - - - - - -
  error Oracle_ResponseAlreadyProposed();
- -
160 - - - - - -

-                            
-                        
161 - - - - - -
  /**
- -
162 - - - - - -
   * @notice Thrown when the proposer is invalid
- -
163 - - - - - -
   */
- -
164 - - - - - -
  error Oracle_InvalidProposer();
- -
165 - - - - - -

-                            
-                        
166 - - - - - -
  /**
- -
167 - - - - - -
   * @notice Thrown when the disputer is invalid
- -
168 - - - - - -
   */
- -
169 - - - - - -
  error Oracle_InvalidDisputer();
- -
170 - - - - - -

-                            
-                        
171 - - - - - -
  /*///////////////////////////////////////////////////////////////
- -
172 - - - - - -
                              ENUMS
- -
173 - - - - - -
  //////////////////////////////////////////////////////////////*/
- -
174 - - - - - -

-                            
-                        
175 - - - - - -
  /**
- -
176 - - - - - -
   * @notice All available statuses a dispute can have
- -
177 - - - - - -
   */
- -
178 - - - - - -
  enum DisputeStatus {
- -
179 - - - - - -
    None, // The dispute has not been started yet
- -
180 - - - - - -
    Active, // The dispute is active and can be escalated or resolved
- -
181 - - - - - -
    Escalated, // The dispute is being resolved by the resolution module
- -
182 - - - - - -
    Won, // The disputer has won the dispute
- -
183 - - - - - -
    Lost, // The disputer has lost the dispute
- -
184 - - - - - -
    NoResolution // The dispute was inconclusive
- -
185 - - - - - -

-                            
-                        
186 - - - - - -
  }
- -
187 - - - - - -

-                            
-                        
188 - - - - - -
  /*///////////////////////////////////////////////////////////////
- -
189 - - - - - -
                              STRUCTS
- -
190 - - - - - -
  //////////////////////////////////////////////////////////////*/
- -
191 - - - - - -

-                            
-                        
192 - - - - - -
  /**
- -
193 - - - - - -
   * @notice Request as stored in the oracle
- -
194 - - - - - -
   * @param requestModule The address of the request module
- -
195 - - - - - -
   * @param responseModule The address of the response module
- -
196 - - - - - -
   * @param disputeModule The address of the dispute module
- -
197 - - - - - -
   * @param resolutionModule The address of the resolution module
- -
198 - - - - - -
   * @param finalityModule The address of the finality module
- -
199 - - - - - -
   * @param requestModuleData The parameters for the request module
- -
200 - - - - - -
   * @param responseModuleData The parameters for the response module
- -
201 - - - - - -
   * @param disputeModuleData The parameters for the dispute module
- -
202 - - - - - -
   * @param resolutionModuleData The parameters for the resolution module
- -
203 - - - - - -
   * @param finalityModuleData The parameters for the finality module
- -
204 - - - - - -
   * @param requester The address of the user who created the request
- -
205 - - - - - -
   * @param nonce The nonce of the request
- -
206 - - - - - -
   */
- -
207 - - - - - -
  struct Request {
- -
208 - - - - - -
    uint96 nonce;
- -
209 - - - - - -
    address requester;
- -
210 - - - - - -
    address requestModule;
- -
211 - - - - - -
    address responseModule;
- -
212 - - - - - -
    address disputeModule;
- -
213 - - - - - -
    address resolutionModule;
- -
214 - - - - - -
    address finalityModule;
- -
215 - - - - - -
    bytes requestModuleData;
- -
216 - - - - - -
    bytes responseModuleData;
- -
217 - - - - - -
    bytes disputeModuleData;
- -
218 - - - - - -
    bytes resolutionModuleData;
- -
219 - - - - - -
    bytes finalityModuleData;
- -
220 - - - - - -
  }
- -
221 - - - - - -

-                            
-                        
222 - - - - - -
  /**
- -
223 - - - - - -
   * @notice The response struct
- -
224 - - - - - -
   * @param proposer The address of the user who proposed the response
- -
225 - - - - - -
   * @param requestId The id of the request this response is proposed for
- -
226 - - - - - -
   * @param response The encoded data of the response
- -
227 - - - - - -
   */
- -
228 - - - - - -
  struct Response {
- -
229 - - - - - -
    address proposer;
- -
230 - - - - - -
    bytes32 requestId;
- -
231 - - - - - -
    bytes response;
- -
232 - - - - - -
  }
- -
233 - - - - - -

-                            
-                        
234 - - - - - -
  /**
- -
235 - - - - - -
   * @notice The dispute struct
- -
236 - - - - - -
   * @param disputer The address of the user who started the dispute
- -
237 - - - - - -
   * @param proposer The address of the user who proposed the response
- -
238 - - - - - -
   * @param responseId The id of the response being disputed
- -
239 - - - - - -
   * @param requestId The id of the request this dispute is related to
- -
240 - - - - - -
   */
- -
241 - - - - - -
  struct Dispute {
- -
242 - - - - - -
    address disputer;
- -
243 - - - - - -
    address proposer;
- -
244 - - - - - -
    bytes32 responseId;
- -
245 - - - - - -
    bytes32 requestId;
- -
246 - - - - - -
  }
- -
247 - - - - - -

-                            
-                        
248 - - - - - -
  /*///////////////////////////////////////////////////////////////
- -
249 - - - - - -
                              VARIABLES
- -
250 - - - - - -
  //////////////////////////////////////////////////////////////*/
- -
251 - - - - - -

-                            
-                        
252 - - - - - -
  /**
- -
253 - - - - - -
   * @notice Returns the dispute id for a given response
- -
254 - - - - - -
   *
- -
255 - - - - - -
   * @param _responseId The response id to get the dispute for
- -
256 - - - - - -
   * @return _disputeId The id of the dispute associated with the given response
- -
257 - - - - - -
   */
- -
258 - - - - - -
  function disputeOf(bytes32 _responseId) external view returns (bytes32 _disputeId);
- -
259 - - - - - -

-                            
-                        
260 - - - - - -
  /**
- -
261 - - - - - -
   * @notice Returns the total number of requests stored in the oracle
- -
262 - - - - - -
   *
- -
263 - - - - - -
   * @return _count The total number of requests
- -
264 - - - - - -
   */
- -
265 - - - - - -
  function totalRequestCount() external view returns (uint256 _count);
- -
266 - - - - - -

-                            
-                        
267 - - - - - -
  /**
- -
268 - - - - - -
   * @notice Returns the status of a dispute
- -
269 - - - - - -
   *
- -
270 - - - - - -
   * @param _disputeId The id of the dispute
- -
271 - - - - - -
   * @return _status The status of the dispute
- -
272 - - - - - -
   */
- -
273 - - - - - -
  function disputeStatus(bytes32 _disputeId) external view returns (DisputeStatus _status);
- -
274 - - - - - -

-                            
-                        
275 - - - - - -
  /**
- -
276 - - - - - -
   * @notice The id of each request in chronological order
- -
277 - - - - - -
   *
- -
278 - - - - - -
   * @param _nonce The nonce of the request
- -
279 - - - - - -
   * @return _requestId The id of the request
- -
280 - - - - - -
   */
- -
281 - - - - - -
  function nonceToRequestId(uint256 _nonce) external view returns (bytes32 _requestId);
- -
282 - - - - - -

-                            
-                        
283 - - - - - -
  /**
- -
284 - - - - - -
   * @notice Returns the finalized response ID for a given request
- -
285 - - - - - -
   *
- -
286 - - - - - -
   * @param _requestId The id of the request
- -
287 - - - - - -
   * @return _finalizedResponseId The id of the finalized response
- -
288 - - - - - -
   */
- -
289 - - - - - -
  function finalizedResponseId(bytes32 _requestId) external view returns (bytes32 _finalizedResponseId);
- -
290 - - - - - -

-                            
-                        
291 - - - - - -
  /**
- -
292 - - - - - -
   * @notice The block's timestamp at which a request was created
- -
293 - - - - - -
   *
- -
294 - - - - - -
   * @param _id The request id
- -
295 - - - - - -
   * @return _requestCreatedAt The block's timestamp
- -
296 - - - - - -
   */
- -
297 - - - - - -
  function requestCreatedAt(bytes32 _id) external view returns (uint256 _requestCreatedAt);
- -
298 - - - - - -

-                            
-                        
299 - - - - - -
  /**
- -
300 - - - - - -
   * @notice The block's timestamp at which a response was created
- -
301 - - - - - -
   *
- -
302 - - - - - -
   * @param _id The response id
- -
303 - - - - - -
   * @return _responseCreatedAt The block's timestamp
- -
304 - - - - - -
   */
- -
305 - - - - - -
  function responseCreatedAt(bytes32 _id) external view returns (uint256 _responseCreatedAt);
- -
306 - - - - - -

-                            
-                        
307 - - - - - -
  /**
- -
308 - - - - - -
   * @notice The block's timestamp at which a dispute was created
- -
309 - - - - - -
   *
- -
310 - - - - - -
   * @param _id The dispute id
- -
311 - - - - - -
   * @return _disputeCreatedAt The block's timestamp
- -
312 - - - - - -
   */
- -
313 - - - - - -
  function disputeCreatedAt(bytes32 _id) external view returns (uint256 _disputeCreatedAt);
- -
314 - - - - - -

-                            
-                        
315 - - - - - -
  /**
- -
316 - - - - - -
   * @notice The block's timestamp at which a request was finalized
- -
317 - - - - - -
   *
- -
318 - - - - - -
   * @param _requestId The request id
- -
319 - - - - - -
   * @return _finalizedAt The block's timestamp
- -
320 - - - - - -
   */
- -
321 - - - - - -
  function finalizedAt(bytes32 _requestId) external view returns (uint256 _finalizedAt);
- -
322 - - - - - -

-                            
-                        
323 - - - - - -
  /*///////////////////////////////////////////////////////////////
- -
324 - - - - - -
                              LOGIC
- -
325 - - - - - -
  //////////////////////////////////////////////////////////////*/
- -
326 - - - - - -

-                            
-                        
327 - - - - - -
  /**
- -
328 - - - - - -
   * @notice Generates the request ID and initializes the modules for the request
- -
329 - - - - - -
   *
- -
330 - - - - - -
   * @dev The modules must be real contracts following the IModule interface
- -
331 - - - - - -
   * @param _request The request data
- -
332 - - - - - -
   * @param _ipfsHash The hashed IPFS CID of the metadata json
- -
333 - - - - - -
   * @return _requestId The id of the request, can be used to propose a response or query results
- -
334 - - - - - -
   */
- -
335 - - - - - -
  function createRequest(Request memory _request, bytes32 _ipfsHash) external returns (bytes32 _requestId);
- -
336 - - - - - -

-                            
-                        
337 - - - - - -
  /**
- -
338 - - - - - -
   * @notice Creates multiple requests, the same way as createRequest
- -
339 - - - - - -
   *
- -
340 - - - - - -
   * @param _requestsData The array of calldata for each request
- -
341 - - - - - -
   * @return _batchRequestsIds The array of request IDs
- -
342 - - - - - -
   * @param _ipfsHashes The array of hashed IPFS CIDs of the metadata files
- -
343 - - - - - -
   */
- -
344 - - - - - -
  function createRequests(
- -
345 - - - - - -
    Request[] calldata _requestsData,
- -
346 - - - - - -
    bytes32[] calldata _ipfsHashes
- -
347 - - - - - -
  ) external returns (bytes32[] memory _batchRequestsIds);
- -
348 - - - - - -

-                            
-                        
349 - - - - - -
  /**
- -
350 - - - - - -
   * @notice Returns the list of request IDs
- -
351 - - - - - -
   *
- -
352 - - - - - -
   * @param _startFrom The index to start from
- -
353 - - - - - -
   * @param _batchSize The number of requests to return
- -
354 - - - - - -
   * @return _list The list of request IDs
- -
355 - - - - - -
   */
- -
356 - - - - - -
  function listRequestIds(uint256 _startFrom, uint256 _batchSize) external view returns (bytes32[] memory _list);
- -
357 - - - - - -

-                            
-                        
358 - - - - - -
  /**
- -
359 - - - - - -
   * @notice Creates a new response for a given request
- -
360 - - - - - -
   *
- -
361 - - - - - -
   * @param _request The request to create a response for
- -
362 - - - - - -
   * @param _response The response data
- -
363 - - - - - -
   * @return _responseId The id of the created response
- -
364 - - - - - -
   */
- -
365 - - - - - -
  function proposeResponse(
- -
366 - - - - - -
    Request calldata _request,
- -
367 - - - - - -
    Response calldata _response
- -
368 - - - - - -
  ) external returns (bytes32 _responseId);
- -
369 - - - - - -

-                            
-                        
370 - - - - - -
  /**
- -
371 - - - - - -
   * @notice Starts the process of disputing a response
- -
372 - - - - - -
   *
- -
373 - - - - - -
   * @param _request The request
- -
374 - - - - - -
   * @param _response The response to dispute
- -
375 - - - - - -
   * @param _dispute The dispute data
- -
376 - - - - - -
   * @return _disputeId The id of the created dispute
- -
377 - - - - - -
   */
- -
378 - - - - - -
  function disputeResponse(
- -
379 - - - - - -
    Request calldata _request,
- -
380 - - - - - -
    Response calldata _response,
- -
381 - - - - - -
    Dispute calldata _dispute
- -
382 - - - - - -
  ) external returns (bytes32 _disputeId);
- -
383 - - - - - -

-                            
-                        
384 - - - - - -
  /**
- -
385 - - - - - -
   * @notice Escalates a dispute, sending it to the resolution module
- -
386 - - - - - -
   *
- -
387 - - - - - -
   * @param _request The request
- -
388 - - - - - -
   * @param _response The disputed response
- -
389 - - - - - -
   * @param _dispute The dispute that is being escalated
- -
390 - - - - - -
   */
- -
391 - - - - - -
  function escalateDispute(Request calldata _request, Response calldata _response, Dispute calldata _dispute) external;
- -
392 - - - - - -

-                            
-                        
393 - - - - - -
  /**
- -
394 - - - - - -
   * @notice Resolves a dispute
- -
395 - - - - - -
   *
- -
396 - - - - - -
   * @param _request The request
- -
397 - - - - - -
   * @param _response The disputed response
- -
398 - - - - - -
   * @param _dispute The dispute that is being resolved
- -
399 - - - - - -
   */
- -
400 - - - - - -
  function resolveDispute(Request calldata _request, Response calldata _response, Dispute calldata _dispute) external;
- -
401 - - - - - -

-                            
-                        
402 - - - - - -
  /**
- -
403 - - - - - -
   * @notice Updates the status of a dispute
- -
404 - - - - - -
   *
- -
405 - - - - - -
   * @param _request The request
- -
406 - - - - - -
   * @param _response The disputed response
- -
407 - - - - - -
   * @param _dispute The dispute that is being updated
- -
408 - - - - - -
   * @param _status The new status of the dispute
- -
409 - - - - - -
   */
- -
410 - - - - - -
  function updateDisputeStatus(
- -
411 - - - - - -
    Request calldata _request,
- -
412 - - - - - -
    Response calldata _response,
- -
413 - - - - - -
    Dispute calldata _dispute,
- -
414 - - - - - -
    DisputeStatus _status
- -
415 - - - - - -
  ) external;
- -
416 - - - - - -

-                            
-                        
417 - - - - - -
  /**
- -
418 - - - - - -
   * @notice Checks if the given address is a module used in the request
- -
419 - - - - - -
   *
- -
420 - - - - - -
   * @param _requestId The id of the request
- -
421 - - - - - -
   * @param _module The address to check
- -
422 - - - - - -
   * @return _allowedModule If the module is a part of the request
- -
423 - - - - - -
   */
- -
424 - - - - - -
  function allowedModule(bytes32 _requestId, address _module) external view returns (bool _allowedModule);
- -
425 - - - - - -

-                            
-                        
426 - - - - - -
  /**
- -
427 - - - - - -
   * @notice Checks if the given address is participating in a specific request
- -
428 - - - - - -
   *
- -
429 - - - - - -
   * @param _requestId The id of the request
- -
430 - - - - - -
   * @param _user The address to check
- -
431 - - - - - -
   * @return _isParticipant If the user is a participant of the request
- -
432 - - - - - -
   */
- -
433 - - - - - -
  function isParticipant(bytes32 _requestId, address _user) external view returns (bool _isParticipant);
- -
434 - - - - - -

-                            
-                        
435 - - - - - -
  /**
- -
436 - - - - - -
   * @notice Returns the ids of the responses for a given request
- -
437 - - - - - -
   *
- -
438 - - - - - -
   * @param _requestId The id of the request
- -
439 - - - - - -
   * @return _ids The ids of the responses
- -
440 - - - - - -
   */
- -
441 - - - - - -
  function getResponseIds(bytes32 _requestId) external view returns (bytes32[] memory _ids);
- -
442 - - - - - -

-                            
-                        
443 - - - - - -
  /**
- -
444 - - - - - -
   * @notice Finalizes the request and executes the post-request logic on the modules
- -
445 - - - - - -
   *
- -
446 - - - - - -
   * @dev In case of a request with no responses, an response with am empty `requestId` is expected
- -
447 - - - - - -
   * @param _request The request being finalized
- -
448 - - - - - -
   * @param _response The final response
- -
449 - - - - - -
   */
- -
450 - - - - - -
  function finalize(Request calldata _request, Response calldata _response) external;
- -
451 - - - - - -
}
- -
452 - - - - - -

-                            
-                        
-
-
- - - - - - - - - - -
-
-
- - - - - - -
Lines covered: 0 / 0 (0.0%)
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
1 - - - - - -
// SPDX-License-Identifier: MIT
- -
2 - - - - - -
pragma solidity ^0.8.19;
- -
3 - - - - - -

-                            
-                        
4 - - - - - -
import {IOracle} from './IOracle.sol';
- -
5 - - - - - -

-                            
-                        
6 - - - - - -
/**
- -
7 - - - - - -
 * @title Validator
- -
8 - - - - - -
 * @notice Contract to validate requests, responses, and disputes
- -
9 - - - - - -
 */
- -
10 - - - - - -
interface IValidator {
- -
11 - - - - - -
  /*///////////////////////////////////////////////////////////////
- -
12 - - - - - -
                              ERRORS
- -
13 - - - - - -
  //////////////////////////////////////////////////////////////*/
- -
14 - - - - - -

-                            
-                        
15 - - - - - -
  /**
- -
16 - - - - - -
   * @notice Thrown when the response provided does not exist
- -
17 - - - - - -
   */
- -
18 - - - - - -
  error Validator_InvalidResponse();
- -
19 - - - - - -

-                            
-                        
20 - - - - - -
  /**
- -
21 - - - - - -
   * @notice Thrown when the dispute provided does not exist
- -
22 - - - - - -
   */
- -
23 - - - - - -
  error Validator_InvalidDispute();
- -
24 - - - - - -

-                            
-                        
25 - - - - - -
  /*///////////////////////////////////////////////////////////////
- -
26 - - - - - -
                              VARIABLES
- -
27 - - - - - -
  //////////////////////////////////////////////////////////////*/
- -
28 - - - - - -

-                            
-                        
29 - - - - - -
  /**
- -
30 - - - - - -
   * @notice The oracle contract
- -
31 - - - - - -
   */
- -
32 - - - - - -
  function ORACLE() external view returns (IOracle _oracle);
- -
33 - - - - - -
}
- -
34 - - - - - -

-                            
-                        
-
-
- - - - - - - - - - -
-
-
- - - - - - -
Lines covered: 0 / 0 (0.0%)
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
1 - - - - - -
// SPDX-License-Identifier: MIT
- -
2 - - - - - -
pragma solidity ^0.8.19;
- -
3 - - - - - -

-                            
-                        
4 - - - - - -
import {IModule} from '../../IModule.sol';
- -
5 - - - - - -
import {IOracle} from '../../IOracle.sol';
- -
6 - - - - - -

-                            
-                        
7 - - - - - -
interface IDisputeModule is IModule {
- -
8 - - - - - -
  /*///////////////////////////////////////////////////////////////
- -
9 - - - - - -
                              EVENTS
- -
10 - - - - - -
  //////////////////////////////////////////////////////////////*/
- -
11 - - - - - -

-                            
-                        
12 - - - - - -
  /**
- -
13 - - - - - -
   * @notice Emitted when a response is disputed
- -
14 - - - - - -
   * @param _requestId The id of the request
- -
15 - - - - - -
   * @param _responseId The id of the response disputed
- -
16 - - - - - -
   * @param _disputeId The id of the dispute
- -
17 - - - - - -
   * @param _dispute The dispute that is being created
- -
18 - - - - - -
   */
- -
19 - - - - - -
  event ResponseDisputed(
- -
20 - - - - - -
    bytes32 indexed _requestId, bytes32 indexed _responseId, bytes32 indexed _disputeId, IOracle.Dispute _dispute
- -
21 - - - - - -
  );
- -
22 - - - - - -

-                            
-                        
23 - - - - - -
  /**
- -
24 - - - - - -
   * @notice Emitted when a dispute status is updated
- -
25 - - - - - -
   * @param _disputeId The id of the dispute
- -
26 - - - - - -
   * @param _dispute The dispute
- -
27 - - - - - -
   * @param _status The new status of the dispute
- -
28 - - - - - -
   */
- -
29 - - - - - -
  event DisputeStatusChanged(bytes32 indexed _disputeId, IOracle.Dispute _dispute, IOracle.DisputeStatus _status);
- -
30 - - - - - -

-                            
-                        
31 - - - - - -
  /*///////////////////////////////////////////////////////////////
- -
32 - - - - - -
                             FUNCTIONS
- -
33 - - - - - -
  //////////////////////////////////////////////////////////////*/
- -
34 - - - - - -

-                            
-                        
35 - - - - - -
  /**
- -
36 - - - - - -
   * @notice Called by the oracle when a dispute has been made on a response
- -
37 - - - - - -
   * @dev Bonds the tokens of the disputer
- -
38 - - - - - -
   * @param _request The request
- -
39 - - - - - -
   * @param _response The disputed response
- -
40 - - - - - -
   * @param _dispute The dispute
- -
41 - - - - - -
   */
- -
42 - - - - - -
  function disputeResponse(
- -
43 - - - - - -
    IOracle.Request calldata _request,
- -
44 - - - - - -
    IOracle.Response calldata _response,
- -
45 - - - - - -
    IOracle.Dispute calldata _dispute
- -
46 - - - - - -
  ) external;
- -
47 - - - - - -

-                            
-                        
48 - - - - - -
  /**
- -
49 - - - - - -
   * @notice Callback executed after a response to a dispute is received by the oracle
- -
50 - - - - - -
   * @param _disputeId The id of the dispute
- -
51 - - - - - -
   * @param _request The request
- -
52 - - - - - -
   * @param _response The disputed response
- -
53 - - - - - -
   * @param _dispute The dispute
- -
54 - - - - - -
   */
- -
55 - - - - - -
  function onDisputeStatusChange(
- -
56 - - - - - -
    bytes32 _disputeId,
- -
57 - - - - - -
    IOracle.Request calldata _request,
- -
58 - - - - - -
    IOracle.Response calldata _response,
- -
59 - - - - - -
    IOracle.Dispute calldata _dispute
- -
60 - - - - - -
  ) external;
- -
61 - - - - - -
}
- -
62 - - - - - -

-                            
-                        
-
-
- - - - - - - - - - -
-
-
- - - - - - -
Lines covered: 0 / 0 (0.0%)
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
1 - - - - - -
// SPDX-License-Identifier: MIT
- -
2 - - - - - -
pragma solidity ^0.8.19;
- -
3 - - - - - -

-                            
-                        
4 - - - - - -
import {IModule} from '../../IModule.sol';
- -
5 - - - - - -

-                            
-                        
6 - - - - - -
interface IFinalityModule is IModule {}
- -
7 - - - - - -

-                            
-                        
-
-
- - - - - - - - - - -
-
-
- - - - - - -
Lines covered: 0 / 0 (0.0%)
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
1 - - - - - -
// SPDX-License-Identifier: MIT
- -
2 - - - - - -
pragma solidity ^0.8.19;
- -
3 - - - - - -

-                            
-                        
4 - - - - - -
import {IModule} from '../../IModule.sol';
- -
5 - - - - - -

-                            
-                        
6 - - - - - -
interface IRequestModule is IModule {
- -
7 - - - - - -
  /**
- -
8 - - - - - -
   * @notice Called by the oracle when a request has been made
- -
9 - - - - - -
   * @param _requestId The id of the request
- -
10 - - - - - -
   * @param _data The data of the request
- -
11 - - - - - -
   * @param _requester The address of the requester
- -
12 - - - - - -
   */
- -
13 - - - - - -
  function createRequest(bytes32 _requestId, bytes calldata _data, address _requester) external;
- -
14 - - - - - -
}
- -
15 - - - - - -

-                            
-                        
-
-
- - - - - - - - - - -
-
-
- - - - - - -
Lines covered: 0 / 0 (0.0%)
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
1 - - - - - -
// SPDX-License-Identifier: MIT
- -
2 - - - - - -
pragma solidity ^0.8.19;
- -
3 - - - - - -

-                            
-                        
4 - - - - - -
import {IModule} from '../../IModule.sol';
- -
5 - - - - - -
import {IOracle} from '../../IOracle.sol';
- -
6 - - - - - -

-                            
-                        
7 - - - - - -
/**
- -
8 - - - - - -
 * @title ResolutionModule
- -
9 - - - - - -
 * @notice Common interface for all resolution modules
- -
10 - - - - - -
 */
- -
11 - - - - - -
interface IResolutionModule is IModule {
- -
12 - - - - - -
  /*///////////////////////////////////////////////////////////////
- -
13 - - - - - -
                              EVENTS
- -
14 - - - - - -
  //////////////////////////////////////////////////////////////*/
- -
15 - - - - - -
  /**
- -
16 - - - - - -
   * @notice Emitted when a dispute has been resolved
- -
17 - - - - - -
   * @param _requestId The id for the request that was disputed
- -
18 - - - - - -
   * @param _disputeId The id for the dispute that was resolved
- -
19 - - - - - -
   * @param _status The final result of the resolution
- -
20 - - - - - -
   */
- -
21 - - - - - -
  event DisputeResolved(bytes32 indexed _requestId, bytes32 indexed _disputeId, IOracle.DisputeStatus _status);
- -
22 - - - - - -

-                            
-                        
23 - - - - - -
  /**
- -
24 - - - - - -
   * @notice Emitted when a resolution is started
- -
25 - - - - - -
   * @param _requestId The id for the request for the dispute
- -
26 - - - - - -
   * @param _disputeId The id for the dispute that the resolution was started for
- -
27 - - - - - -
   */
- -
28 - - - - - -
  event ResolutionStarted(bytes32 indexed _requestId, bytes32 indexed _disputeId);
- -
29 - - - - - -

-                            
-                        
30 - - - - - -
  /*///////////////////////////////////////////////////////////////
- -
31 - - - - - -
                              LOGIC
- -
32 - - - - - -
  //////////////////////////////////////////////////////////////*/
- -
33 - - - - - -

-                            
-                        
34 - - - - - -
  /**
- -
35 - - - - - -
   * @notice Starts the resolution process
- -
36 - - - - - -
   *
- -
37 - - - - - -
   * @param _disputeId The id of the dispute
- -
38 - - - - - -
   * @param _request The request data
- -
39 - - - - - -
   * @param _response The disputed response
- -
40 - - - - - -
   * @param _dispute The dispute being resolved
- -
41 - - - - - -
   */
- -
42 - - - - - -
  function startResolution(
- -
43 - - - - - -
    bytes32 _disputeId,
- -
44 - - - - - -
    IOracle.Request calldata _request,
- -
45 - - - - - -
    IOracle.Response calldata _response,
- -
46 - - - - - -
    IOracle.Dispute calldata _dispute
- -
47 - - - - - -
  ) external;
- -
48 - - - - - -

-                            
-                        
49 - - - - - -
  /**
- -
50 - - - - - -
   * @notice Resolves a dispute
- -
51 - - - - - -
   *
- -
52 - - - - - -
   * @param _disputeId The id of the dispute being resolved
- -
53 - - - - - -
   * @param _request The request data
- -
54 - - - - - -
   * @param _response The disputed response
- -
55 - - - - - -
   * @param _dispute The dispute being resolved
- -
56 - - - - - -
   */
- -
57 - - - - - -
  function resolveDispute(
- -
58 - - - - - -
    bytes32 _disputeId,
- -
59 - - - - - -
    IOracle.Request calldata _request,
- -
60 - - - - - -
    IOracle.Response calldata _response,
- -
61 - - - - - -
    IOracle.Dispute calldata _dispute
- -
62 - - - - - -
  ) external;
- -
63 - - - - - -
}
- -
64 - - - - - -

-                            
-                        
-
-
- - - - - - - - - - -
-
-
- - - - - - -
Lines covered: 0 / 0 (0.0%)
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
1 - - - - - -
// SPDX-License-Identifier: MIT
- -
2 - - - - - -
pragma solidity ^0.8.19;
- -
3 - - - - - -

-                            
-                        
4 - - - - - -
import {IModule} from '../../IModule.sol';
- -
5 - - - - - -
import {IOracle} from '../../IOracle.sol';
- -
6 - - - - - -

-                            
-                        
7 - - - - - -
/**
- -
8 - - - - - -
 * @title ResponseModule
- -
9 - - - - - -
 * @notice Common interface for all response modules
- -
10 - - - - - -
 */
- -
11 - - - - - -
interface IResponseModule is IModule {
- -
12 - - - - - -
  /**
- -
13 - - - - - -
   * @notice Creates a new response for a given request
- -
14 - - - - - -
   *
- -
15 - - - - - -
   * @param _request The request to create a response for
- -
16 - - - - - -
   * @param _response The response to create
- -
17 - - - - - -
   * @param _sender The creator of the response
- -
18 - - - - - -
   */
- -
19 - - - - - -
  function propose(IOracle.Request calldata _request, IOracle.Response calldata _response, address _sender) external;
- -
20 - - - - - -

-                            
-                        
21 - - - - - -
  /**
- -
22 - - - - - -
   * @notice Refunds the proposer for a valid and unutilized response
- -
23 - - - - - -
   *
- -
24 - - - - - -
   * @param _request The request
- -
25 - - - - - -
   * @param _response The unutilized response
- -
26 - - - - - -
   */
- -
27 - - - - - -
  function releaseUnutilizedResponse(IOracle.Request calldata _request, IOracle.Response calldata _response) external;
- -
28 - - - - - -
}
- -
29 - - - - - -

-                            
-                        
-
-
- - - - - - - - - - -
-
-
- - - - - - -
Lines covered: 0 / 26 (0.0%)
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
1 - - - - - -
// SPDX-License-Identifier: MIT
- -
2 - - - - - -
pragma solidity ^0.8.19;
- -
3 - - - - - -

-                            
-                        
4 - - - - - -
import {IOracle} from '../interfaces/IOracle.sol';
- -
5 - - - - - -

-                            
-                        
6 - - - - - -
library ValidatorLib {
- -
7 - - - - - -
  /**
- -
8 - - - - - -
   * @notice Thrown when the response provided does not match the request
- -
9 - - - - - -
   */
- -
10 - - - - - -
  error ValidatorLib_InvalidResponseBody();
- -
11 - - - - - -

-                            
-                        
12 - - - - - -
  /**
- -
13 - - - - - -
   * @notice Thrown when the dispute provided does not match the request or response
- -
14 - - - - - -
   */
- -
15 - - - - - -
  error ValidatorLib_InvalidDisputeBody();
- -
16 - - - - - -

-                            
-                        
17 - - - - - -
  /**
- -
18 - - - - - -
   * @notice Computes the id a given request
- -
19 - - - - - -
   *
- -
20 - - - - - -
   * @param _request The request to compute the id for
- -
21 - - - - - -
   * @return _id The id the request
- -
22 - - - - - -
   */
- -
23 - - - - - -
  function _getId(IOracle.Request calldata _request) public pure returns (bytes32 _id) {
- -
24 - - - - - -
    _id = keccak256(abi.encode(_request));
- -
25 - - - - - -
  }
- -
26 - - - - - -

-                            
-                        
27 - - - - - -
  /**
- -
28 - - - - - -
   * @notice Computes the id a given response
- -
29 - - - - - -
   *
- -
30 - - - - - -
   * @param _response The response to compute the id for
- -
31 - - - - - -
   * @return _id The id the response
- -
32 - - - - - -
   */
- -
33 - - - - - -
  function _getId(IOracle.Response calldata _response) public pure returns (bytes32 _id) {
- -
34 - - - - - -
    _id = keccak256(abi.encode(_response));
- -
35 - - - - - -
  }
- -
36 - - - - - -

-                            
-                        
37 - - - - - -
  /**
- -
38 - - - - - -
   * @notice Computes the id a given dispute
- -
39 - - - - - -
   *
- -
40 - - - - - -
   * @param _dispute The dispute to compute the id for
- -
41 - - - - - -
   * @return _id The id the dispute
- -
42 - - - - - -
   */
- -
43 - - - - - -
  function _getId(IOracle.Dispute calldata _dispute) public pure returns (bytes32 _id) {
- -
44 - - - - - -
    _id = keccak256(abi.encode(_dispute));
- -
45 - - - - - -
  }
- -
46 - - - - - -

-                            
-                        
47 - - - - - -
  /**
- -
48 - - - - - -
   * @notice Validates the correctness and existance of a request-response pair
- -
49 - - - - - -
   *
- -
50 - - - - - -
   * @param _request The request to compute the id for
- -
51 - - - - - -
   * @param _response The response to compute the id for
- -
52 - - - - - -
   * @return _responseId The id the response
- -
53 - - - - - -
   */
- -
54 - - - - - -
  function _validateResponse(
- -
55 - - - - - -
    IOracle.Request calldata _request,
- -
56 - - - - - -
    IOracle.Response calldata _response
- -
57 - - - - - -
  ) public pure returns (bytes32 _responseId) {
- -
58 - - - - - -
    bytes32 _requestId = _getId(_request);
- -
59 - - - - - -
    _responseId = _getId(_response);
- -
60 - - - - - -

-                            
-                        
61 - - - - - -
    if (_response.requestId != _requestId) revert ValidatorLib_InvalidResponseBody();
- -
62 - - - - - -
  }
- -
63 - - - - - -

-                            
-                        
64 - - - - - -
  /**
- -
65 - - - - - -
   * @notice Validates the correctness of a request-dispute pair
- -
66 - - - - - -
   *
- -
67 - - - - - -
   * @param _request The request to compute the id for
- -
68 - - - - - -
   * @param _dispute The dispute to compute the id for
- -
69 - - - - - -
   * @return _disputeId The id the dispute
- -
70 - - - - - -
   */
- -
71 - - - - - -
  function _validateDispute(
- -
72 - - - - - -
    IOracle.Request calldata _request,
- -
73 - - - - - -
    IOracle.Dispute calldata _dispute
- -
74 - - - - - -
  ) public pure returns (bytes32 _disputeId) {
- -
75 - - - - - -
    bytes32 _requestId = _getId(_request);
- -
76 - - - - - -
    _disputeId = _getId(_dispute);
- -
77 - - - - - -

-                            
-                        
78 - - - - - -
    if (_dispute.requestId != _requestId) revert ValidatorLib_InvalidDisputeBody();
- -
79 - - - - - -
  }
- -
80 - - - - - -

-                            
-                        
81 - - - - - -
  /**
- -
82 - - - - - -
   * @notice Validates the correctness of a response-dispute pair
- -
83 - - - - - -
   *
- -
84 - - - - - -
   * @param _response The response to compute the id for
- -
85 - - - - - -
   * @param _dispute The dispute to compute the id for
- -
86 - - - - - -
   * @return _disputeId The id the dispute
- -
87 - - - - - -
   */
- -
88 - - - - - -
  function _validateDispute(
- -
89 - - - - - -
    IOracle.Response calldata _response,
- -
90 - - - - - -
    IOracle.Dispute calldata _dispute
- -
91 - - - - - -
  ) public pure returns (bytes32 _disputeId) {
- -
92 - - - - - -
    bytes32 _responseId = _getId(_response);
- -
93 - - - - - -
    _disputeId = _getId(_dispute);
- -
94 - - - - - -

-                            
-                        
95 - - - - - -
    if (_dispute.responseId != _responseId) revert ValidatorLib_InvalidDisputeBody();
- -
96 - - - - - -
  }
- -
97 - - - - - -

-                            
-                        
98 - - - - - -
  /**
- -
99 - - - - - -
   * @notice Validates the correctness of a request-response-dispute triplet
- -
100 - - - - - -
   *
- -
101 - - - - - -
   * @param _request The request to compute the id for
- -
102 - - - - - -
   * @param _response The response to compute the id for
- -
103 - - - - - -
   * @param _dispute The dispute to compute the id for
- -
104 - - - - - -
   * @return _responseId The id the response
- -
105 - - - - - -
   * @return _disputeId The id the dispute
- -
106 - - - - - -
   */
- -
107 - - - - - -
  function _validateResponseAndDispute(
- -
108 - - - - - -
    IOracle.Request calldata _request,
- -
109 - - - - - -
    IOracle.Response calldata _response,
- -
110 - - - - - -
    IOracle.Dispute calldata _dispute
- -
111 - - - - - -
  ) public pure returns (bytes32 _responseId, bytes32 _disputeId) {
- -
112 - - - - - -
    bytes32 _requestId = _getId(_request);
- -
113 - - - - - -
    _responseId = _getId(_response);
- -
114 - - - - - -
    _disputeId = _getId(_dispute);
- -
115 - - - - - -

-                            
-                        
116 - - - - - -
    if (_response.requestId != _requestId) revert ValidatorLib_InvalidResponseBody();
- -
117 - - - - - -
    if (_dispute.requestId != _requestId || _dispute.responseId != _responseId) {
- -
118 - - - - - -
      revert ValidatorLib_InvalidDisputeBody();
- -
119 - - - - - -
    }
- -
120 - - - - - -
  }
- -
121 - - - - - -
}
- -
122 - - - - - -

-                            
-                        
-
-
- - - - - - - - - - -
-
-
- - - - - - -
Lines covered: 1 / 169 (0.6%)
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
1 - - - - - -
// SPDX-License-Identifier: MIT
- -
2 - - - - - -
pragma solidity ^0.8.19;
- -
3 - - - - - -

-                            
-                        
4 - - - - - -
import {IModule, Module} from '@defi-wonderland/prophet-core/solidity/contracts/Module.sol';
- -
5 - - - - - -
import {IOracle} from '@defi-wonderland/prophet-core/solidity/interfaces/IOracle.sol';
- -
6 - - - - - -
import {FixedPointMathLib} from 'solmate/src/utils/FixedPointMathLib.sol';
- -
7 - - - - - -

-                            
-                        
8 - - - - - -
import {IBondEscalationModule} from '../../../interfaces/modules/dispute/IBondEscalationModule.sol';
- -
9 - - - - - -

-                            
-                        
10 - - - - - -
contract BondEscalationModule is Module, IBondEscalationModule {
- -
11 - - - - - -
  /// @inheritdoc IBondEscalationModule
- -
12 - - - - - -
  mapping(bytes32 _requestId => mapping(address _pledger => uint256 pledges)) public pledgesForDispute;
- -
13 - - - - - -

-                            
-                        
14 - - - - - -
  /// @inheritdoc IBondEscalationModule
- -
15 - - - - - -
  mapping(bytes32 _requestId => mapping(address _pledger => uint256 pledges)) public pledgesAgainstDispute;
- -
16 - - - - - -

-                            
-                        
17 - - - - - -
  /**
- -
18 - - - - - -
   * @notice Struct containing all the data for a given escalation.
- -
19 - - - - - -
   */
- -
20 - - - - - -
  mapping(bytes32 _requestId => BondEscalation) internal _escalations;
- -
21 - - - - - -

-                            
-                        
22 - -
- -
- - - -
  constructor(IOracle _oracle) Module(_oracle) {}
- -
23 - - - - - -

-                            
-                        
24 - - - - - -
  /// @inheritdoc IModule
- -
25 - - - - - -
  function moduleName() external pure returns (string memory _moduleName) {
- -
26 - - - - - -
    return 'BondEscalationModule';
- -
27 - - - - - -
  }
- -
28 - - - - - -

-                            
-                        
29 - - - - - -
  /// @inheritdoc IBondEscalationModule
- -
30 - - - - - -
  function disputeResponse(
- -
31 - - - - - -
    IOracle.Request calldata _request,
- -
32 - - - - - -
    IOracle.Response calldata _response,
- -
33 - - - - - -
    IOracle.Dispute calldata _dispute
- -
34 - - - - - -
  ) external onlyOracle {
- -
35 - - - - - -
    bytes32 _disputeId = _getId(_dispute);
- -
36 - - - - - -
    RequestParameters memory _params = decodeRequestData(_request.disputeModuleData);
- -
37 - - - - - -
    BondEscalation storage _escalation = _escalations[_dispute.requestId];
- -
38 - - - - - -

-                            
-                        
39 - - - - - -
    if (block.timestamp > ORACLE.responseCreatedAt(_dispute.responseId) + _params.disputeWindow) {
- -
40 - - - - - -
      revert BondEscalationModule_DisputeWindowOver();
- -
41 - - - - - -
    }
- -
42 - - - - - -

-                            
-                        
43 - - - - - -
    _params.accountingExtension.bond({
- -
44 - - - - - -
      _bonder: _dispute.disputer,
- -
45 - - - - - -
      _requestId: _dispute.requestId,
- -
46 - - - - - -
      _token: _params.bondToken,
- -
47 - - - - - -
      _amount: _params.bondSize
- -
48 - - - - - -
    });
- -
49 - - - - - -

-                            
-                        
50 - - - - - -
    emit ResponseDisputed({
- -
51 - - - - - -
      _requestId: _dispute.requestId,
- -
52 - - - - - -
      _responseId: _dispute.responseId,
- -
53 - - - - - -
      _disputeId: _disputeId,
- -
54 - - - - - -
      _dispute: _dispute
- -
55 - - - - - -
    });
- -
56 - - - - - -

-                            
-                        
57 - - - - - -
    // Only the first dispute of a request should go through the bond escalation
- -
58 - - - - - -
    // Consecutive disputes should be handled by the resolution module
- -
59 - - - - - -
    if (_escalation.status == BondEscalationStatus.None) {
- -
60 - - - - - -
      _escalation.status = BondEscalationStatus.Active;
- -
61 - - - - - -
      _escalation.disputeId = _disputeId;
- -
62 - - - - - -
      emit BondEscalationStatusUpdated(_dispute.requestId, _disputeId, BondEscalationStatus.Active);
- -
63 - - - - - -
    } else if (_disputeId != _escalation.disputeId) {
- -
64 - - - - - -
      ORACLE.escalateDispute(_request, _response, _dispute);
- -
65 - - - - - -
    }
- -
66 - - - - - -
  }
- -
67 - - - - - -

-                            
-                        
68 - - - - - -
  /// @inheritdoc IBondEscalationModule
- -
69 - - - - - -
  function onDisputeStatusChange(
- -
70 - - - - - -
    bytes32 _disputeId,
- -
71 - - - - - -
    IOracle.Request calldata _request,
- -
72 - - - - - -
    IOracle.Response calldata,
- -
73 - - - - - -
    IOracle.Dispute calldata _dispute
- -
74 - - - - - -
  ) external onlyOracle {
- -
75 - - - - - -
    RequestParameters memory _params = decodeRequestData(_request.disputeModuleData);
- -
76 - - - - - -
    BondEscalation storage _escalation = _escalations[_dispute.requestId];
- -
77 - - - - - -
    IOracle.DisputeStatus _disputeStatus = ORACLE.disputeStatus(_disputeId);
- -
78 - - - - - -
    BondEscalationStatus _newStatus;
- -
79 - - - - - -

-                            
-                        
80 - - - - - -
    if (_disputeId == _escalation.disputeId) {
- -
81 - - - - - -
      // The bond escalated (first) dispute has been updated
- -
82 - - - - - -
      if (_disputeStatus == IOracle.DisputeStatus.Escalated) {
- -
83 - - - - - -
        // The dispute has been escalated to the Resolution module
- -
84 - - - - - -
        // Make sure the bond escalation deadline has passed and update the status
- -
85 - - - - - -
        if (block.timestamp <= ORACLE.disputeCreatedAt(_disputeId) + _params.bondEscalationDeadline) {
- -
86 - - - - - -
          revert BondEscalationModule_BondEscalationNotOver();
- -
87 - - - - - -
        }
- -
88 - - - - - -

-                            
-                        
89 - - - - - -
        if (
- -
90 - - - - - -
          _escalation.status != BondEscalationStatus.Active
- -
91 - - - - - -
            || _escalation.amountOfPledgesForDispute != _escalation.amountOfPledgesAgainstDispute
- -
92 - - - - - -
        ) {
- -
93 - - - - - -
          revert BondEscalationModule_NotEscalatable();
- -
94 - - - - - -
        }
- -
95 - - - - - -

-                            
-                        
96 - - - - - -
        _newStatus = BondEscalationStatus.Escalated;
- -
97 - - - - - -
      } else if (_disputeStatus == IOracle.DisputeStatus.NoResolution) {
- -
98 - - - - - -
        // The resolution module failed to reach a resolution
- -
99 - - - - - -
        // Refund the disputer and all pledgers, the bond escalation escalation status stays Escalated
- -
100 - - - - - -
        _newStatus = BondEscalationStatus.Escalated;
- -
101 - - - - - -

-                            
-                        
102 - - - - - -
        if (_escalation.amountOfPledgesForDispute + _escalation.amountOfPledgesAgainstDispute > 0) {
- -
103 - - - - - -
          _params.accountingExtension.onSettleBondEscalation({
- -
104 - - - - - -
            _request: _request,
- -
105 - - - - - -
            _dispute: _dispute,
- -
106 - - - - - -
            _token: _params.bondToken,
- -
107 - - - - - -
            _amountPerPledger: _params.bondSize,
- -
108 - - - - - -
            _winningPledgersLength: _escalation.amountOfPledgesForDispute + _escalation.amountOfPledgesAgainstDispute
- -
109 - - - - - -
          });
- -
110 - - - - - -
        }
- -
111 - - - - - -

-                            
-                        
112 - - - - - -
        _params.accountingExtension.release({
- -
113 - - - - - -
          _requestId: _dispute.requestId,
- -
114 - - - - - -
          _bonder: _dispute.disputer,
- -
115 - - - - - -
          _token: _params.bondToken,
- -
116 - - - - - -
          _amount: _params.bondSize
- -
117 - - - - - -
        });
- -
118 - - - - - -
      } else {
- -
119 - - - - - -
        // One of the sides won
- -
120 - - - - - -
        // Pay the winner (proposer/disputer) and the pledgers, the bond escalation status changes to DisputerWon/DisputerLost
- -
121 - - - - - -
        bool _won = _disputeStatus == IOracle.DisputeStatus.Won;
- -
122 - - - - - -
        _newStatus = _won ? BondEscalationStatus.DisputerWon : BondEscalationStatus.DisputerLost;
- -
123 - - - - - -

-                            
-                        
124 - - - - - -
        uint256 _pledgesForDispute = _escalation.amountOfPledgesForDispute;
- -
125 - - - - - -
        uint256 _pledgesAgainstDispute = _escalation.amountOfPledgesAgainstDispute;
- -
126 - - - - - -

-                            
-                        
127 - - - - - -
        if (_pledgesAgainstDispute > 0 || _pledgesForDispute > 0) {
- -
128 - - - - - -
          uint256 _amountToPay = _won
- -
129 - - - - - -
            ? _params.bondSize
- -
130 - - - - - -
              + FixedPointMathLib.mulDivDown(_pledgesAgainstDispute, _params.bondSize, _pledgesForDispute)
- -
131 - - - - - -
            : _params.bondSize
- -
132 - - - - - -
              + FixedPointMathLib.mulDivDown(_pledgesForDispute, _params.bondSize, _pledgesAgainstDispute);
- -
133 - - - - - -

-                            
-                        
134 - - - - - -
          _params.accountingExtension.onSettleBondEscalation({
- -
135 - - - - - -
            _request: _request,
- -
136 - - - - - -
            _dispute: _dispute,
- -
137 - - - - - -
            _token: _params.bondToken,
- -
138 - - - - - -
            _amountPerPledger: _amountToPay,
- -
139 - - - - - -
            _winningPledgersLength: _won ? _pledgesForDispute : _pledgesAgainstDispute
- -
140 - - - - - -
          });
- -
141 - - - - - -
        }
- -
142 - - - - - -

-                            
-                        
143 - - - - - -
        _params.accountingExtension.pay({
- -
144 - - - - - -
          _requestId: _dispute.requestId,
- -
145 - - - - - -
          _payer: _won ? _dispute.proposer : _dispute.disputer,
- -
146 - - - - - -
          _receiver: _won ? _dispute.disputer : _dispute.proposer,
- -
147 - - - - - -
          _token: _params.bondToken,
- -
148 - - - - - -
          _amount: _params.bondSize
- -
149 - - - - - -
        });
- -
150 - - - - - -

-                            
-                        
151 - - - - - -
        if (_won) {
- -
152 - - - - - -
          _params.accountingExtension.release({
- -
153 - - - - - -
            _requestId: _dispute.requestId,
- -
154 - - - - - -
            _bonder: _dispute.disputer,
- -
155 - - - - - -
            _token: _params.bondToken,
- -
156 - - - - - -
            _amount: _params.bondSize
- -
157 - - - - - -
          });
- -
158 - - - - - -
        }
- -
159 - - - - - -
      }
- -
160 - - - - - -
    } else {
- -
161 - - - - - -
      // The non-bond escalated (second and subsequent) dispute has been updated
- -
162 - - - - - -
      if (_disputeStatus == IOracle.DisputeStatus.Escalated) {
- -
163 - - - - - -
        // The dispute has been escalated to the Resolution module
- -
164 - - - - - -
        // Update the bond escalation status to Escalated
- -
165 - - - - - -
        _newStatus = BondEscalationStatus.Escalated;
- -
166 - - - - - -
      } else if (_disputeStatus == IOracle.DisputeStatus.NoResolution) {
- -
167 - - - - - -
        // The resolution module failed to reach a resolution
- -
168 - - - - - -
        // Refund the disputer, the bond escalation status stays Escalated
- -
169 - - - - - -
        _newStatus = BondEscalationStatus.Escalated;
- -
170 - - - - - -
        _params.accountingExtension.release({
- -
171 - - - - - -
          _requestId: _dispute.requestId,
- -
172 - - - - - -
          _bonder: _dispute.disputer,
- -
173 - - - - - -
          _token: _params.bondToken,
- -
174 - - - - - -
          _amount: _params.bondSize
- -
175 - - - - - -
        });
- -
176 - - - - - -
      } else {
- -
177 - - - - - -
        // One of the sides won
- -
178 - - - - - -
        // Pay the winner (proposer/disputer), the bond escalation status changes to DisputerWon/DisputerLost
- -
179 - - - - - -
        bool _won = _disputeStatus == IOracle.DisputeStatus.Won;
- -
180 - - - - - -
        _newStatus = _won ? BondEscalationStatus.DisputerWon : BondEscalationStatus.DisputerLost;
- -
181 - - - - - -

-                            
-                        
182 - - - - - -
        _params.accountingExtension.pay({
- -
183 - - - - - -
          _requestId: _dispute.requestId,
- -
184 - - - - - -
          _payer: _won ? _dispute.proposer : _dispute.disputer,
- -
185 - - - - - -
          _receiver: _won ? _dispute.disputer : _dispute.proposer,
- -
186 - - - - - -
          _token: _params.bondToken,
- -
187 - - - - - -
          _amount: _params.bondSize
- -
188 - - - - - -
        });
- -
189 - - - - - -

-                            
-                        
190 - - - - - -
        if (_won) {
- -
191 - - - - - -
          _params.accountingExtension.release({
- -
192 - - - - - -
            _requestId: _dispute.requestId,
- -
193 - - - - - -
            _bonder: _dispute.disputer,
- -
194 - - - - - -
            _token: _params.bondToken,
- -
195 - - - - - -
            _amount: _params.bondSize
- -
196 - - - - - -
          });
- -
197 - - - - - -
        }
- -
198 - - - - - -
      }
- -
199 - - - - - -
    }
- -
200 - - - - - -

-                            
-                        
201 - - - - - -
    _escalation.status = _newStatus;
- -
202 - - - - - -
    emit BondEscalationStatusUpdated(_dispute.requestId, _disputeId, _newStatus);
- -
203 - - - - - -
    emit DisputeStatusChanged({_disputeId: _disputeId, _dispute: _dispute, _status: _disputeStatus});
- -
204 - - - - - -
  }
- -
205 - - - - - -

-                            
-                        
206 - - - - - -
  ////////////////////////////////////////////////////////////////////
- -
207 - - - - - -
  //                Bond Escalation Exclusive Functions
- -
208 - - - - - -
  ////////////////////////////////////////////////////////////////////
- -
209 - - - - - -

-                            
-                        
210 - - - - - -
  /// @inheritdoc IBondEscalationModule
- -
211 - - - - - -
  function pledgeForDispute(IOracle.Request calldata _request, IOracle.Dispute calldata _dispute) external {
- -
212 - - - - - -
    bytes32 _disputeId = _getId(_dispute);
- -
213 - - - - - -
    RequestParameters memory _params = _pledgeChecks(_request, _dispute, true);
- -
214 - - - - - -

-                            
-                        
215 - - - - - -
    _escalations[_dispute.requestId].amountOfPledgesForDispute += 1;
- -
216 - - - - - -
    pledgesForDispute[_dispute.requestId][msg.sender] += 1;
- -
217 - - - - - -
    _params.accountingExtension.pledge({
- -
218 - - - - - -
      _pledger: msg.sender,
- -
219 - - - - - -
      _request: _request,
- -
220 - - - - - -
      _dispute: _dispute,
- -
221 - - - - - -
      _token: _params.bondToken,
- -
222 - - - - - -
      _amount: _params.bondSize
- -
223 - - - - - -
    });
- -
224 - - - - - -

-                            
-                        
225 - - - - - -
    emit PledgedForDispute(_disputeId, msg.sender, _params.bondSize);
- -
226 - - - - - -
  }
- -
227 - - - - - -

-                            
-                        
228 - - - - - -
  /// @inheritdoc IBondEscalationModule
- -
229 - - - - - -
  function pledgeAgainstDispute(IOracle.Request calldata _request, IOracle.Dispute calldata _dispute) external {
- -
230 - - - - - -
    bytes32 _disputeId = _getId(_dispute);
- -
231 - - - - - -
    RequestParameters memory _params = _pledgeChecks(_request, _dispute, false);
- -
232 - - - - - -

-                            
-                        
233 - - - - - -
    _escalations[_dispute.requestId].amountOfPledgesAgainstDispute += 1;
- -
234 - - - - - -
    pledgesAgainstDispute[_dispute.requestId][msg.sender] += 1;
- -
235 - - - - - -
    _params.accountingExtension.pledge({
- -
236 - - - - - -
      _pledger: msg.sender,
- -
237 - - - - - -
      _request: _request,
- -
238 - - - - - -
      _dispute: _dispute,
- -
239 - - - - - -
      _token: _params.bondToken,
- -
240 - - - - - -
      _amount: _params.bondSize
- -
241 - - - - - -
    });
- -
242 - - - - - -

-                            
-                        
243 - - - - - -
    emit PledgedAgainstDispute(_disputeId, msg.sender, _params.bondSize);
- -
244 - - - - - -
  }
- -
245 - - - - - -

-                            
-                        
246 - - - - - -
  /// @inheritdoc IBondEscalationModule
- -
247 - - - - - -
  function settleBondEscalation(
- -
248 - - - - - -
    IOracle.Request calldata _request,
- -
249 - - - - - -
    IOracle.Response calldata _response,
- -
250 - - - - - -
    IOracle.Dispute calldata _dispute
- -
251 - - - - - -
  ) external {
- -
252 - - - - - -
    (, bytes32 _disputeId) = _validateResponseAndDispute(_request, _response, _dispute);
- -
253 - - - - - -
    RequestParameters memory _params = decodeRequestData(_request.disputeModuleData);
- -
254 - - - - - -
    BondEscalation storage _escalation = _escalations[_dispute.requestId];
- -
255 - - - - - -

-                            
-                        
256 - - - - - -
    uint256 _disputeCreatedAt = ORACLE.disputeCreatedAt(_disputeId);
- -
257 - - - - - -
    if (block.timestamp <= _disputeCreatedAt + _params.bondEscalationDeadline + _params.tyingBuffer) {
- -
258 - - - - - -
      revert BondEscalationModule_BondEscalationNotOver();
- -
259 - - - - - -
    }
- -
260 - - - - - -

-                            
-                        
261 - - - - - -
    if (_escalation.status != BondEscalationStatus.Active) {
- -
262 - - - - - -
      revert BondEscalationModule_BondEscalationCantBeSettled();
- -
263 - - - - - -
    }
- -
264 - - - - - -

-                            
-                        
265 - - - - - -
    uint256 _pledgesForDispute = _escalation.amountOfPledgesForDispute;
- -
266 - - - - - -
    uint256 _pledgesAgainstDispute = _escalation.amountOfPledgesAgainstDispute;
- -
267 - - - - - -

-                            
-                        
268 - - - - - -
    if (_pledgesForDispute == _pledgesAgainstDispute) {
- -
269 - - - - - -
      revert BondEscalationModule_ShouldBeEscalated();
- -
270 - - - - - -
    }
- -
271 - - - - - -

-                            
-                        
272 - - - - - -
    bool _disputersWon = _pledgesForDispute > _pledgesAgainstDispute;
- -
273 - - - - - -
    _escalation.status = _disputersWon ? BondEscalationStatus.DisputerWon : BondEscalationStatus.DisputerLost;
- -
274 - - - - - -

-                            
-                        
275 - - - - - -
    emit BondEscalationStatusUpdated(_dispute.requestId, _disputeId, _escalation.status);
- -
276 - - - - - -

-                            
-                        
277 - - - - - -
    ORACLE.updateDisputeStatus(
- -
278 - - - - - -
      _request, _response, _dispute, _disputersWon ? IOracle.DisputeStatus.Won : IOracle.DisputeStatus.Lost
- -
279 - - - - - -
    );
- -
280 - - - - - -
  }
- -
281 - - - - - -

-                            
-                        
282 - - - - - -
  /**
- -
283 - - - - - -
   * @notice Checks the necessary conditions for pledging
- -
284 - - - - - -
   * @param _request The request data
- -
285 - - - - - -
   * @param _dispute The dispute data
- -
286 - - - - - -
   * @param _forDispute Whether the pledge is for or against the dispute
- -
287 - - - - - -
   * @return _params The decoded parameters for the request
- -
288 - - - - - -
   */
- -
289 - - - - - -
  function _pledgeChecks(
- -
290 - - - - - -
    IOracle.Request calldata _request,
- -
291 - - - - - -
    IOracle.Dispute calldata _dispute,
- -
292 - - - - - -
    bool _forDispute
- -
293 - - - - - -
  ) internal view returns (RequestParameters memory _params) {
- -
294 - - - - - -
    bytes32 _disputeId = _validateDispute(_request, _dispute);
- -
295 - - - - - -

-                            
-                        
296 - - - - - -
    BondEscalation memory _escalation = _escalations[_dispute.requestId];
- -
297 - - - - - -

-                            
-                        
298 - - - - - -
    if (_disputeId != _escalation.disputeId) {
- -
299 - - - - - -
      revert BondEscalationModule_InvalidDispute();
- -
300 - - - - - -
    }
- -
301 - - - - - -

-                            
-                        
302 - - - - - -
    _params = decodeRequestData(_request.disputeModuleData);
- -
303 - - - - - -

-                            
-                        
304 - - - - - -
    uint256 _disputeCreatedAt = ORACLE.disputeCreatedAt(_disputeId);
- -
305 - - - - - -
    if (block.timestamp > _disputeCreatedAt + _params.bondEscalationDeadline + _params.tyingBuffer) {
- -
306 - - - - - -
      revert BondEscalationModule_BondEscalationOver();
- -
307 - - - - - -
    }
- -
308 - - - - - -

-                            
-                        
309 - - - - - -
    uint256 _numPledgersForDispute = _escalation.amountOfPledgesForDispute;
- -
310 - - - - - -
    uint256 _numPledgersAgainstDispute = _escalation.amountOfPledgesAgainstDispute;
- -
311 - - - - - -

-                            
-                        
312 - - - - - -
    if (_forDispute) {
- -
313 - - - - - -
      if (_numPledgersForDispute == _params.maxNumberOfEscalations) {
- -
314 - - - - - -
        revert BondEscalationModule_MaxNumberOfEscalationsReached();
- -
315 - - - - - -
      }
- -
316 - - - - - -
      if (_numPledgersForDispute > _numPledgersAgainstDispute) revert BondEscalationModule_CanOnlySurpassByOnePledge();
- -
317 - - - - - -
    } else {
- -
318 - - - - - -
      if (_numPledgersAgainstDispute == _params.maxNumberOfEscalations) {
- -
319 - - - - - -
        revert BondEscalationModule_MaxNumberOfEscalationsReached();
- -
320 - - - - - -
      }
- -
321 - - - - - -
      if (_numPledgersAgainstDispute > _numPledgersForDispute) revert BondEscalationModule_CanOnlySurpassByOnePledge();
- -
322 - - - - - -
    }
- -
323 - - - - - -

-                            
-                        
324 - - - - - -
    if (
- -
325 - - - - - -
      block.timestamp > _disputeCreatedAt + _params.bondEscalationDeadline
- -
326 - - - - - -
        && _numPledgersForDispute == _numPledgersAgainstDispute
- -
327 - - - - - -
    ) {
- -
328 - - - - - -
      revert BondEscalationModule_CannotBreakTieDuringTyingBuffer();
- -
329 - - - - - -
    }
- -
330 - - - - - -
  }
- -
331 - - - - - -

-                            
-                        
332 - - - - - -
  ////////////////////////////////////////////////////////////////////
- -
333 - - - - - -
  //                        View Functions
- -
334 - - - - - -
  ////////////////////////////////////////////////////////////////////
- -
335 - - - - - -

-                            
-                        
336 - - - - - -
  /// @inheritdoc IBondEscalationModule
- -
337 - - - - - -
  function decodeRequestData(bytes calldata _data) public pure returns (RequestParameters memory _params) {
- -
338 - - - - - -
    _params = abi.decode(_data, (RequestParameters));
- -
339 - - - - - -
  }
- -
340 - - - - - -

-                            
-                        
341 - - - - - -
  /// @inheritdoc IBondEscalationModule
- -
342 - - - - - -
  function getEscalation(bytes32 _requestId) public view returns (BondEscalation memory _escalation) {
- -
343 - - - - - -
    _escalation = _escalations[_requestId];
- -
344 - - - - - -
  }
- -
345 - - - - - -

-                            
-                        
346 - - - - - -
  /// @inheritdoc IModule
- -
347 - - - - - -
  function validateParameters(bytes calldata _encodedParameters)
- -
348 - - - - - -
    external
- -
349 - - - - - -
    pure
- -
350 - - - - - -
    override(Module, IModule)
- -
351 - - - - - -
    returns (bool _valid)
- -
352 - - - - - -
  {
- -
353 - - - - - -
    RequestParameters memory _params = decodeRequestData(_encodedParameters);
- -
354 - - - - - -
    _valid = address(_params.accountingExtension) != address(0) && address(_params.bondToken) != address(0)
- -
355 - - - - - -
      && _params.bondSize != 0 && _params.bondEscalationDeadline != 0 && _params.maxNumberOfEscalations != 0
- -
356 - - - - - -
      && _params.tyingBuffer != 0 && _params.disputeWindow != 0;
- -
357 - - - - - -
  }
- -
358 - - - - - -
}
- -
359 - - - - - -

-                            
-                        
-
-
- - - - - - - - - - -
-
-
- - - - - - -
Lines covered: 1 / 20 (5.0%)
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
1 - - - - - -
// SPDX-License-Identifier: MIT
- -
2 - - - - - -
pragma solidity ^0.8.19;
- -
3 - - - - - -

-                            
-                        
4 - - - - - -
import {IModule, Module} from '@defi-wonderland/prophet-core/solidity/contracts/Module.sol';
- -
5 - - - - - -
import {IOracle} from '@defi-wonderland/prophet-core/solidity/interfaces/IOracle.sol';
- -
6 - - - - - -

-                            
-                        
7 - - - - - -
import {IArbitrator} from '../../../interfaces/IArbitrator.sol';
- -
8 - - - - - -
import {IArbitratorModule} from '../../../interfaces/modules/resolution/IArbitratorModule.sol';
- -
9 - - - - - -

-                            
-                        
10 - - - - - -
contract ArbitratorModule is Module, IArbitratorModule {
- -
11 - - - - - -
  /**
- -
12 - - - - - -
   * @notice The status of all disputes
- -
13 - - - - - -
   */
- -
14 - - - - - -
  mapping(bytes32 _disputeId => ArbitrationStatus _status) internal _disputeData;
- -
15 - - - - - -

-                            
-                        
16 - -
- -
- - - -
  constructor(IOracle _oracle) Module(_oracle) {}
- -
17 - - - - - -

-                            
-                        
18 - - - - - -
  /// @inheritdoc IModule
- -
19 - - - - - -
  function moduleName() external pure returns (string memory _moduleName) {
- -
20 - - - - - -
    return 'ArbitratorModule';
- -
21 - - - - - -
  }
- -
22 - - - - - -

-                            
-                        
23 - - - - - -
  /// @inheritdoc IArbitratorModule
- -
24 - - - - - -
  function decodeRequestData(bytes calldata _data) public pure returns (RequestParameters memory _params) {
- -
25 - - - - - -
    _params = abi.decode(_data, (RequestParameters));
- -
26 - - - - - -
  }
- -
27 - - - - - -

-                            
-                        
28 - - - - - -
  /// @inheritdoc IArbitratorModule
- -
29 - - - - - -
  function getStatus(bytes32 _disputeId) external view returns (ArbitrationStatus _disputeStatus) {
- -
30 - - - - - -
    _disputeStatus = _disputeData[_disputeId];
- -
31 - - - - - -
  }
- -
32 - - - - - -

-                            
-                        
33 - - - - - -
  /// @inheritdoc IArbitratorModule
- -
34 - - - - - -
  function startResolution(
- -
35 - - - - - -
    bytes32 _disputeId,
- -
36 - - - - - -
    IOracle.Request calldata _request,
- -
37 - - - - - -
    IOracle.Response calldata _response,
- -
38 - - - - - -
    IOracle.Dispute calldata _dispute
- -
39 - - - - - -
  ) external onlyOracle {
- -
40 - - - - - -
    RequestParameters memory _params = decodeRequestData(_request.resolutionModuleData);
- -
41 - - - - - -
    if (_params.arbitrator == address(0)) revert ArbitratorModule_InvalidArbitrator();
- -
42 - - - - - -

-                            
-                        
43 - - - - - -
    _disputeData[_disputeId] = ArbitrationStatus.Active;
- -
44 - - - - - -
    IArbitrator(_params.arbitrator).resolve(_request, _response, _dispute);
- -
45 - - - - - -

-                            
-                        
46 - - - - - -
    emit ResolutionStarted(_dispute.requestId, _disputeId);
- -
47 - - - - - -
  }
- -
48 - - - - - -

-                            
-                        
49 - - - - - -
  /// @inheritdoc IArbitratorModule
- -
50 - - - - - -
  function resolveDispute(
- -
51 - - - - - -
    bytes32 _disputeId,
- -
52 - - - - - -
    IOracle.Request calldata _request,
- -
53 - - - - - -
    IOracle.Response calldata _response,
- -
54 - - - - - -
    IOracle.Dispute calldata _dispute
- -
55 - - - - - -
  ) external onlyOracle {
- -
56 - - - - - -
    if (ORACLE.disputeStatus(_disputeId) != IOracle.DisputeStatus.Escalated) revert ArbitratorModule_InvalidDisputeId();
- -
57 - - - - - -

-                            
-                        
58 - - - - - -
    RequestParameters memory _params = decodeRequestData(_request.resolutionModuleData);
- -
59 - - - - - -
    IOracle.DisputeStatus _status = IArbitrator(_params.arbitrator).getAnswer(_disputeId);
- -
60 - - - - - -

-                            
-                        
61 - - - - - -
    if (_status <= IOracle.DisputeStatus.Escalated) revert ArbitratorModule_InvalidResolutionStatus();
- -
62 - - - - - -
    _disputeData[_disputeId] = ArbitrationStatus.Resolved;
- -
63 - - - - - -

-                            
-                        
64 - - - - - -
    ORACLE.updateDisputeStatus(_request, _response, _dispute, _status);
- -
65 - - - - - -

-                            
-                        
66 - - - - - -
    emit DisputeResolved(_dispute.requestId, _disputeId, _status);
- -
67 - - - - - -
  }
- -
68 - - - - - -

-                            
-                        
69 - - - - - -
  /// @inheritdoc IModule
- -
70 - - - - - -
  function validateParameters(bytes calldata _encodedParameters)
- -
71 - - - - - -
    external
- -
72 - - - - - -
    pure
- -
73 - - - - - -
    override(Module, IModule)
- -
74 - - - - - -
    returns (bool _valid)
- -
75 - - - - - -
  {
- -
76 - - - - - -
    RequestParameters memory _params = decodeRequestData(_encodedParameters);
- -
77 - - - - - -
    _valid = _params.arbitrator != address(0);
- -
78 - - - - - -
  }
- -
79 - - - - - -
}
- -
80 - - - - - -

-                            
-                        
-
-
- - - - - - - - - - -
-
-
- - - - - - -
Lines covered: 1 / 60 (1.7%)
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
1 - - - - - -
// SPDX-License-Identifier: MIT
- -
2 - - - - - -
pragma solidity ^0.8.19;
- -
3 - - - - - -

-                            
-                        
4 - - - - - -
import {IBondedResponseModule} from '../../../interfaces/modules/response/IBondedResponseModule.sol';
- -
5 - - - - - -

-                            
-                        
6 - - - - - -
import {IModule, Module} from '@defi-wonderland/prophet-core/solidity/contracts/Module.sol';
- -
7 - - - - - -
import {IOracle} from '@defi-wonderland/prophet-core/solidity/interfaces/IOracle.sol';
- -
8 - - - - - -

-                            
-                        
9 - - - - - -
contract BondedResponseModule is Module, IBondedResponseModule {
- -
10 - -
- -
- - - -
  constructor(IOracle _oracle) Module(_oracle) {}
- -
11 - - - - - -

-                            
-                        
12 - - - - - -
  /// @inheritdoc IModule
- -
13 - - - - - -
  function moduleName() public pure returns (string memory _moduleName) {
- -
14 - - - - - -
    _moduleName = 'BondedResponseModule';
- -
15 - - - - - -
  }
- -
16 - - - - - -

-                            
-                        
17 - - - - - -
  /// @inheritdoc IBondedResponseModule
- -
18 - - - - - -
  function decodeRequestData(bytes calldata _data) public pure returns (RequestParameters memory _params) {
- -
19 - - - - - -
    _params = abi.decode(_data, (RequestParameters));
- -
20 - - - - - -
  }
- -
21 - - - - - -

-                            
-                        
22 - - - - - -
  /// @inheritdoc IBondedResponseModule
- -
23 - - - - - -
  function propose(
- -
24 - - - - - -
    IOracle.Request calldata _request,
- -
25 - - - - - -
    IOracle.Response calldata _response,
- -
26 - - - - - -
    address _sender
- -
27 - - - - - -
  ) external onlyOracle {
- -
28 - - - - - -
    RequestParameters memory _params = decodeRequestData(_request.responseModuleData);
- -
29 - - - - - -

-                            
-                        
30 - - - - - -
    // Cannot propose after the deadline
- -
31 - - - - - -
    uint256 _requestCreatedAt = ORACLE.requestCreatedAt(_response.requestId);
- -
32 - - - - - -
    if (block.timestamp >= _requestCreatedAt + _params.deadline) revert BondedResponseModule_TooLateToPropose();
- -
33 - - - - - -

-                            
-                        
34 - - - - - -
    // Cannot propose to a request with a response, unless the response is being disputed
- -
35 - - - - - -
    bytes32[] memory _responseIds = ORACLE.getResponseIds(_response.requestId);
- -
36 - - - - - -
    uint256 _responsesLength = _responseIds.length;
- -
37 - - - - - -

-                            
-                        
38 - - - - - -
    if (_responsesLength != 0) {
- -
39 - - - - - -
      bytes32 _disputeId = ORACLE.disputeOf(_responseIds[_responsesLength - 1]);
- -
40 - - - - - -

-                            
-                        
41 - - - - - -
      // Allowing one undisputed response at a time
- -
42 - - - - - -
      if (_disputeId == bytes32(0)) revert BondedResponseModule_AlreadyResponded();
- -
43 - - - - - -
      IOracle.DisputeStatus _status = ORACLE.disputeStatus(_disputeId);
- -
44 - - - - - -
      // If the dispute was lost, we assume the proposed answer was correct.
- -
45 - - - - - -
      // DisputeStatus.None should not be reachable due to the previous check.
- -
46 - - - - - -
      if (_status == IOracle.DisputeStatus.Lost) revert BondedResponseModule_AlreadyResponded();
- -
47 - - - - - -
    }
- -
48 - - - - - -

-                            
-                        
49 - - - - - -
    if (_sender != _response.proposer) {
- -
50 - - - - - -
      _params.accountingExtension.bond({
- -
51 - - - - - -
        _bonder: _response.proposer,
- -
52 - - - - - -
        _requestId: _response.requestId,
- -
53 - - - - - -
        _token: _params.bondToken,
- -
54 - - - - - -
        _amount: _params.bondSize,
- -
55 - - - - - -
        _sender: _sender
- -
56 - - - - - -
      });
- -
57 - - - - - -
    } else {
- -
58 - - - - - -
      _params.accountingExtension.bond({
- -
59 - - - - - -
        _bonder: _response.proposer,
- -
60 - - - - - -
        _requestId: _response.requestId,
- -
61 - - - - - -
        _token: _params.bondToken,
- -
62 - - - - - -
        _amount: _params.bondSize
- -
63 - - - - - -
      });
- -
64 - - - - - -
    }
- -
65 - - - - - -

-                            
-                        
66 - - - - - -
    emit ResponseProposed(_response.requestId, _response);
- -
67 - - - - - -
  }
- -
68 - - - - - -

-                            
-                        
69 - - - - - -
  /// @inheritdoc IBondedResponseModule
- -
70 - - - - - -
  function finalizeRequest(
- -
71 - - - - - -
    IOracle.Request calldata _request,
- -
72 - - - - - -
    IOracle.Response calldata _response,
- -
73 - - - - - -
    address _finalizer
- -
74 - - - - - -
  ) external override(IBondedResponseModule, Module) onlyOracle {
- -
75 - - - - - -
    RequestParameters memory _params = decodeRequestData(_request.responseModuleData);
- -
76 - - - - - -

-                            
-                        
77 - - - - - -
    bytes32 _requestId = _getId(_request);
- -
78 - - - - - -

-                            
-                        
79 - - - - - -
    bool _isModule = ORACLE.allowedModule(_requestId, _finalizer);
- -
80 - - - - - -

-                            
-                        
81 - - - - - -
    if (!_isModule && block.timestamp < ORACLE.requestCreatedAt(_requestId) + _params.deadline) {
- -
82 - - - - - -
      revert BondedResponseModule_TooEarlyToFinalize();
- -
83 - - - - - -
    }
- -
84 - - - - - -

-                            
-                        
85 - - - - - -
    uint256 _responseCreatedAt = ORACLE.responseCreatedAt(_getId(_response));
- -
86 - - - - - -
    if (_responseCreatedAt != 0) {
- -
87 - - - - - -
      if (!_isModule && block.timestamp < _responseCreatedAt + _params.disputeWindow) {
- -
88 - - - - - -
        revert BondedResponseModule_TooEarlyToFinalize();
- -
89 - - - - - -
      }
- -
90 - - - - - -

-                            
-                        
91 - - - - - -
      _params.accountingExtension.release({
- -
92 - - - - - -
        _bonder: _response.proposer,
- -
93 - - - - - -
        _requestId: _requestId,
- -
94 - - - - - -
        _token: _params.bondToken,
- -
95 - - - - - -
        _amount: _params.bondSize
- -
96 - - - - - -
      });
- -
97 - - - - - -
    }
- -
98 - - - - - -

-                            
-                        
99 - - - - - -
    emit RequestFinalized(_requestId, _response, _finalizer);
- -
100 - - - - - -
  }
- -
101 - - - - - -

-                            
-                        
102 - - - - - -
  /// @inheritdoc IBondedResponseModule
- -
103 - - - - - -
  function releaseUnutilizedResponse(IOracle.Request calldata _request, IOracle.Response calldata _response) external {
- -
104 - - - - - -
    bytes32 _responseId = _validateResponse(_request, _response);
- -
105 - - - - - -
    bytes32 _disputeId = ORACLE.disputeOf(_responseId);
- -
106 - - - - - -

-                            
-                        
107 - - - - - -
    if (_disputeId > 0) {
- -
108 - - - - - -
      IOracle.DisputeStatus _disputeStatus = ORACLE.disputeStatus(_disputeId);
- -
109 - - - - - -
      if (_disputeStatus != IOracle.DisputeStatus.Lost && _disputeStatus != IOracle.DisputeStatus.NoResolution) {
- -
110 - - - - - -
        revert BondedResponseModule_InvalidReleaseParameters();
- -
111 - - - - - -
      }
- -
112 - - - - - -
    }
- -
113 - - - - - -

-                            
-                        
114 - - - - - -
    bytes32 _finalizedResponseId = ORACLE.finalizedResponseId(_response.requestId);
- -
115 - - - - - -
    if (_finalizedResponseId == _responseId || _finalizedResponseId == bytes32(0)) {
- -
116 - - - - - -
      revert BondedResponseModule_InvalidReleaseParameters();
- -
117 - - - - - -
    }
- -
118 - - - - - -

-                            
-                        
119 - - - - - -
    RequestParameters memory _params = decodeRequestData(_request.responseModuleData);
- -
120 - - - - - -
    _params.accountingExtension.release({
- -
121 - - - - - -
      _bonder: _response.proposer,
- -
122 - - - - - -
      _requestId: _response.requestId,
- -
123 - - - - - -
      _token: _params.bondToken,
- -
124 - - - - - -
      _amount: _params.bondSize
- -
125 - - - - - -
    });
- -
126 - - - - - -

-                            
-                        
127 - - - - - -
    emit UnutilizedResponseReleased(_response.requestId, _responseId);
- -
128 - - - - - -
  }
- -
129 - - - - - -

-                            
-                        
130 - - - - - -
  /// @inheritdoc IModule
- -
131 - - - - - -
  function validateParameters(bytes calldata _encodedParameters)
- -
132 - - - - - -
    external
- -
133 - - - - - -
    pure
- -
134 - - - - - -
    override(Module, IModule)
- -
135 - - - - - -
    returns (bool _valid)
- -
136 - - - - - -
  {
- -
137 - - - - - -
    RequestParameters memory _params = decodeRequestData(_encodedParameters);
- -
138 - - - - - -
    _valid = address(_params.accountingExtension) != address(0) && address(_params.bondToken) != address(0)
- -
139 - - - - - -
      && _params.bondSize != 0 && _params.disputeWindow != 0 && _params.deadline != 0;
- -
140 - - - - - -
  }
- -
141 - - - - - -
}
- -
142 - - - - - -

-                            
-                        
-
-
- - - - - - - - - - -
-
-
- - - - - - -
Lines covered: 0 / 0 (0.0%)
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
1 - - - - - -
// SPDX-License-Identifier: MIT
- -
2 - - - - - -
pragma solidity ^0.8.19;
- -
3 - - - - - -

-                            
-                        
4 - - - - - -
import {IOracle} from '@defi-wonderland/prophet-core/solidity/interfaces/IOracle.sol';
- -
5 - - - - - -

-                            
-                        
6 - - - - - -
interface IArbitrator {
- -
7 - - - - - -
  /**
- -
8 - - - - - -
   * @notice Returns the status of a dispute
- -
9 - - - - - -
   * @param _dispute The ID of the dispute
- -
10 - - - - - -
   * @return _status The status of the dispute
- -
11 - - - - - -
   */
- -
12 - - - - - -
  function getAnswer(bytes32 _dispute) external returns (IOracle.DisputeStatus _status);
- -
13 - - - - - -

-                            
-                        
14 - - - - - -
  /**
- -
15 - - - - - -
   * @notice Resolves a dispute
- -
16 - - - - - -
   * @param _request The request object
- -
17 - - - - - -
   * @param _response The response object
- -
18 - - - - - -
   * @param _dispute The dispute object
- -
19 - - - - - -
   * @return _data The data for the dispute resolution
- -
20 - - - - - -
   */
- -
21 - - - - - -
  function resolve(
- -
22 - - - - - -
    IOracle.Request memory _request,
- -
23 - - - - - -
    IOracle.Response memory _response,
- -
24 - - - - - -
    IOracle.Dispute memory _dispute
- -
25 - - - - - -
  ) external returns (bytes memory _data);
- -
26 - - - - - -
}
- -
27 - - - - - -

-                            
-                        
-
-
- - - - - - - - - - -
-
-
- - - - - - -
Lines covered: 0 / 0 (0.0%)
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
1 - - - - - -
// SPDX-License-Identifier: MIT
- -
2 - - - - - -
pragma solidity ^0.8.19;
- -
3 - - - - - -

-                            
-                        
4 - - - - - -
import {IValidator} from '@defi-wonderland/prophet-core/solidity/interfaces/IValidator.sol';
- -
5 - - - - - -
import {IERC20} from '@openzeppelin/contracts/token/ERC20/IERC20.sol';
- -
6 - - - - - -

-                            
-                        
7 - - - - - -
/*
- -
8 - - - - - -
  * @title AccountingExtension
- -
9 - - - - - -
  * @notice Extension allowing users to deposit and bond funds
- -
10 - - - - - -
  * to be used for payments and disputes.
- -
11 - - - - - -
  */
- -
12 - - - - - -
interface IAccountingExtension is IValidator {
- -
13 - - - - - -
  /*///////////////////////////////////////////////////////////////
- -
14 - - - - - -
                              EVENTS
- -
15 - - - - - -
  //////////////////////////////////////////////////////////////*/
- -
16 - - - - - -

-                            
-                        
17 - - - - - -
  /**
- -
18 - - - - - -
   * @notice A user deposited tokens into the accounting extension
- -
19 - - - - - -
   * @param _depositor The user who deposited the tokens
- -
20 - - - - - -
   * @param _token The address of the token deposited by the user
- -
21 - - - - - -
   * @param _amount The amount of `_token` deposited
- -
22 - - - - - -
   */
- -
23 - - - - - -
  event Deposited(address indexed _depositor, IERC20 indexed _token, uint256 _amount);
- -
24 - - - - - -

-                            
-                        
25 - - - - - -
  /**
- -
26 - - - - - -
   * @notice A user withdrew tokens from the accounting extension
- -
27 - - - - - -
   * @param _withdrawer The user who withdrew the tokens
- -
28 - - - - - -
   * @param _token The address of the token withdrawn by the user
- -
29 - - - - - -
   * @param _amount The amount of `_token` withdrawn
- -
30 - - - - - -
   */
- -
31 - - - - - -
  event Withdrew(address indexed _withdrawer, IERC20 indexed _token, uint256 _amount);
- -
32 - - - - - -

-                            
-                        
33 - - - - - -
  /**
- -
34 - - - - - -
   * @notice A payment between users has been made
- -
35 - - - - - -
   * @param _requestId The ID of the request
- -
36 - - - - - -
   * @param _beneficiary The user receiving the tokens
- -
37 - - - - - -
   * @param _payer The user who is getting its tokens transferred
- -
38 - - - - - -
   * @param _token The address of the token being transferred
- -
39 - - - - - -
   * @param _amount The amount of `_token` transferred
- -
40 - - - - - -
   */
- -
41 - - - - - -
  event Paid(
- -
42 - - - - - -
    bytes32 indexed _requestId, address indexed _beneficiary, address indexed _payer, IERC20 _token, uint256 _amount
- -
43 - - - - - -
  );
- -
44 - - - - - -

-                            
-                        
45 - - - - - -
  /**
- -
46 - - - - - -
   * @notice User's funds have been bonded
- -
47 - - - - - -
   * @param _requestId The ID of the request
- -
48 - - - - - -
   * @param _bonder The user who is getting its tokens bonded
- -
49 - - - - - -
   * @param _token The address of the token being bonded
- -
50 - - - - - -
   * @param _amount The amount of `_token` bonded
- -
51 - - - - - -
   */
- -
52 - - - - - -
  event Bonded(bytes32 indexed _requestId, address indexed _bonder, IERC20 indexed _token, uint256 _amount);
- -
53 - - - - - -

-                            
-                        
54 - - - - - -
  /**
- -
55 - - - - - -
   * @notice User's funds have been released
- -
56 - - - - - -
   * @param _requestId The ID of the request
- -
57 - - - - - -
   * @param _beneficiary The user who is getting its tokens released
- -
58 - - - - - -
   * @param _token The address of the token being released
- -
59 - - - - - -
   * @param _amount The amount of `_token` released
- -
60 - - - - - -
   */
- -
61 - - - - - -
  event Released(bytes32 indexed _requestId, address indexed _beneficiary, IERC20 indexed _token, uint256 _amount);
- -
62 - - - - - -

-                            
-                        
63 - - - - - -
  /*///////////////////////////////////////////////////////////////
- -
64 - - - - - -
                              ERRORS
- -
65 - - - - - -
  //////////////////////////////////////////////////////////////*/
- -
66 - - - - - -

-                            
-                        
67 - - - - - -
  /**
- -
68 - - - - - -
   * @notice Thrown when depositing tokens with a fee on transfer
- -
69 - - - - - -
   */
- -
70 - - - - - -
  error AccountingExtension_FeeOnTransferToken();
- -
71 - - - - - -

-                            
-                        
72 - - - - - -
  /**
- -
73 - - - - - -
   * @notice Thrown when the account doesn't have enough balance to bond/withdraw
- -
74 - - - - - -
   * or not enough bonded to release/pay
- -
75 - - - - - -
   */
- -
76 - - - - - -
  error AccountingExtension_InsufficientFunds();
- -
77 - - - - - -

-                            
-                        
78 - - - - - -
  /**
- -
79 - - - - - -
   * @notice Thrown when the module bonding user tokens hasn't been approved by the user.
- -
80 - - - - - -
   */
- -
81 - - - - - -
  error AccountingExtension_NotAllowed();
- -
82 - - - - - -

-                            
-                        
83 - - - - - -
  /**
- -
84 - - - - - -
   * @notice Thrown when an `onlyAllowedModule` function is called by something
- -
85 - - - - - -
   * else than a module being used in the corresponding request
- -
86 - - - - - -
   */
- -
87 - - - - - -
  error AccountingExtension_UnauthorizedModule();
- -
88 - - - - - -

-                            
-                        
89 - - - - - -
  /**
- -
90 - - - - - -
   * @notice Thrown when an `onlyParticipant` function is called with an address
- -
91 - - - - - -
   * that is not part of the request.
- -
92 - - - - - -
   */
- -
93 - - - - - -
  error AccountingExtension_UnauthorizedUser();
- -
94 - - - - - -

-                            
-                        
95 - - - - - -
  /*///////////////////////////////////////////////////////////////
- -
96 - - - - - -
                            VARIABLES
- -
97 - - - - - -
  //////////////////////////////////////////////////////////////*/
- -
98 - - - - - -

-                            
-                        
99 - - - - - -
  /**
- -
100 - - - - - -
   * @notice Returns the amount of a token a user has bonded
- -
101 - - - - - -
   * @param _user The address of the user with bonded tokens
- -
102 - - - - - -
   * @param _bondToken The token bonded
- -
103 - - - - - -
   * @param _requestId The id of the request the user bonded for
- -
104 - - - - - -
   * @return _amount The amount of `_bondToken` bonded
- -
105 - - - - - -
   */
- -
106 - - - - - -
  function bondedAmountOf(address _user, IERC20 _bondToken, bytes32 _requestId) external returns (uint256 _amount);
- -
107 - - - - - -

-                            
-                        
108 - - - - - -
  /**
- -
109 - - - - - -
   * @notice Returns the amount of a token a user has deposited
- -
110 - - - - - -
   * @param _user The address of the user with deposited tokens
- -
111 - - - - - -
   * @param _token The token deposited
- -
112 - - - - - -
   * @return _amount The amount of `_token` deposited
- -
113 - - - - - -
   */
- -
114 - - - - - -
  function balanceOf(address _user, IERC20 _token) external view returns (uint256 _amount);
- -
115 - - - - - -

-                            
-                        
116 - - - - - -
  /*///////////////////////////////////////////////////////////////
- -
117 - - - - - -
                              LOGIC
- -
118 - - - - - -
  //////////////////////////////////////////////////////////////*/
- -
119 - - - - - -

-                            
-                        
120 - - - - - -
  /**
- -
121 - - - - - -
   * @notice Transfers tokens from a user and updates his virtual balance
- -
122 - - - - - -
   * @dev The user must have approved the accounting extension to transfer the tokens.
- -
123 - - - - - -
   * The transfer must not take a fee (deflationary tokens can lead to unexpected behavior).
- -
124 - - - - - -
   * @param _token The address of the token being deposited
- -
125 - - - - - -
   * @param _amount The amount of `_token` to deposit
- -
126 - - - - - -
   */
- -
127 - - - - - -
  function deposit(IERC20 _token, uint256 _amount) external;
- -
128 - - - - - -

-                            
-                        
129 - - - - - -
  /**
- -
130 - - - - - -
   * @notice Allows an user to withdraw deposited tokens
- -
131 - - - - - -
   * @param _token The address of the token being withdrawn
- -
132 - - - - - -
   * @param _amount The amount of `_token` to withdraw
- -
133 - - - - - -
   */
- -
134 - - - - - -
  function withdraw(IERC20 _token, uint256 _amount) external;
- -
135 - - - - - -

-                            
-                        
136 - - - - - -
  /**
- -
137 - - - - - -
   * @notice Allows a allowed module to transfer bonded tokens from one user to another
- -
138 - - - - - -
   * @dev Only the virtual balances in the accounting extension are modified. The token contract
- -
139 - - - - - -
   * is not called nor its balances modified.
- -
140 - - - - - -
   * @param _requestId The id of the request handling the user's tokens
- -
141 - - - - - -
   * @param _payer The address of the user paying the tokens
- -
142 - - - - - -
   * @param _receiver The address of the user receiving the tokens
- -
143 - - - - - -
   * @param _token The address of the token being transferred
- -
144 - - - - - -
   * @param _amount The amount of `_token` being transferred
- -
145 - - - - - -
   */
- -
146 - - - - - -
  function pay(bytes32 _requestId, address _payer, address _receiver, IERC20 _token, uint256 _amount) external;
- -
147 - - - - - -

-                            
-                        
148 - - - - - -
  /**
- -
149 - - - - - -
   * @notice Allows a allowed module to bond a user's tokens for a request
- -
150 - - - - - -
   * @param _bonder The address of the user to bond tokens for
- -
151 - - - - - -
   * @param _requestId The id of the request the user is bonding for
- -
152 - - - - - -
   * @param _token The address of the token being bonded
- -
153 - - - - - -
   * @param _amount The amount of `_token` to bond
- -
154 - - - - - -
   */
- -
155 - - - - - -
  function bond(address _bonder, bytes32 _requestId, IERC20 _token, uint256 _amount) external;
- -
156 - - - - - -

-                            
-                        
157 - - - - - -
  /**
- -
158 - - - - - -
   * @notice Allows a valid module to bond a user's tokens for a request
- -
159 - - - - - -
   * @param _bonder The address of the user to bond tokens for
- -
160 - - - - - -
   * @param _requestId The id of the request the user is bonding for
- -
161 - - - - - -
   * @param _token The address of the token being bonded
- -
162 - - - - - -
   * @param _amount The amount of `_token` to bond
- -
163 - - - - - -
   * @param _sender The address starting the propose call on the Oracle
- -
164 - - - - - -
   */
- -
165 - - - - - -
  function bond(address _bonder, bytes32 _requestId, IERC20 _token, uint256 _amount, address _sender) external;
- -
166 - - - - - -

-                            
-                        
167 - - - - - -
  /**
- -
168 - - - - - -
   * @notice Allows a valid module to release a user's tokens
- -
169 - - - - - -
   * @param _bonder The address of the user to release tokens for
- -
170 - - - - - -
   * @param _requestId The id of the request where the tokens were bonded
- -
171 - - - - - -
   * @param _token The address of the token being released
- -
172 - - - - - -
   * @param _amount The amount of `_token` to release
- -
173 - - - - - -
   */
- -
174 - - - - - -
  function release(address _bonder, bytes32 _requestId, IERC20 _token, uint256 _amount) external;
- -
175 - - - - - -

-                            
-                        
176 - - - - - -
  /**
- -
177 - - - - - -
   * @notice Allows a user to approve a module for bonding tokens
- -
178 - - - - - -
   * @param _module The address of the module to be approved
- -
179 - - - - - -
   */
- -
180 - - - - - -
  function approveModule(address _module) external;
- -
181 - - - - - -

-                            
-                        
182 - - - - - -
  /**
- -
183 - - - - - -
   * @notice Allows a user to revoke a module's approval for bonding tokens
- -
184 - - - - - -
   * @param _module The address of the module to be revoked
- -
185 - - - - - -
   */
- -
186 - - - - - -
  function revokeModule(address _module) external;
- -
187 - - - - - -

-                            
-                        
188 - - - - - -
  /**
- -
189 - - - - - -
   * @notice Returns a list of all modules a user has approved
- -
190 - - - - - -
   * @param _user The address of the user
- -
191 - - - - - -
   * @return _approvedModules The array of all modules approved by the user
- -
192 - - - - - -
   */
- -
193 - - - - - -
  function approvedModules(address _user) external view returns (address[] memory _approvedModules);
- -
194 - - - - - -
}
- -
195 - - - - - -

-                            
-                        
-
-
- - - - - - - - - - -
-
-
- - - - - - -
Lines covered: 0 / 0 (0.0%)
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
1 - - - - - -
// SPDX-License-Identifier: MIT
- -
2 - - - - - -
pragma solidity ^0.8.19;
- -
3 - - - - - -

-                            
-                        
4 - - - - - -
import {IBondEscalationModule} from '../modules/dispute/IBondEscalationModule.sol';
- -
5 - - - - - -
import {IAccountingExtension} from './IAccountingExtension.sol';
- -
6 - - - - - -

-                            
-                        
7 - - - - - -
import {IOracle} from '@defi-wonderland/prophet-core/solidity/interfaces/IOracle.sol';
- -
8 - - - - - -
import {IERC20} from '@openzeppelin/contracts/token/ERC20/IERC20.sol';
- -
9 - - - - - -

-                            
-                        
10 - - - - - -
/**
- -
11 - - - - - -
 * @title BondEscalationAccounting
- -
12 - - - - - -
 * @notice Extension allowing users to deposit and pledge funds to be used for bond escalation
- -
13 - - - - - -
 */
- -
14 - - - - - -
interface IBondEscalationAccounting is IAccountingExtension {
- -
15 - - - - - -
  /*///////////////////////////////////////////////////////////////
- -
16 - - - - - -
                              EVENTS
- -
17 - - - - - -
  //////////////////////////////////////////////////////////////*/
- -
18 - - - - - -

-                            
-                        
19 - - - - - -
  /**
- -
20 - - - - - -
   * @notice A user pledged tokens for one of the sides of a dispute
- -
21 - - - - - -
   *
- -
22 - - - - - -
   * @param _pledger          The user who pledged the tokens
- -
23 - - - - - -
   * @param _requestId        The ID of the bond-escalated request
- -
24 - - - - - -
   * @param _disputeId        The ID of the bond-escalated dispute
- -
25 - - - - - -
   * @param _token            The address of the token being pledged
- -
26 - - - - - -
   * @param _amount           The amount of `_token` pledged by the user
- -
27 - - - - - -
   */
- -
28 - - - - - -
  event Pledged(
- -
29 - - - - - -
    address indexed _pledger, bytes32 indexed _requestId, bytes32 indexed _disputeId, IERC20 _token, uint256 _amount
- -
30 - - - - - -
  );
- -
31 - - - - - -

-                            
-                        
32 - - - - - -
  /**
- -
33 - - - - - -
   * @notice The pledgers of the winning side of a dispute have been paid
- -
34 - - - - - -
   *
- -
35 - - - - - -
   * @param _requestId        The ID of the bond-escalated request
- -
36 - - - - - -
   * @param _disputeId        The ID of the bond-escalated dispute
- -
37 - - - - - -
   * @param _winningPledgers  The users who got paid for pledging for the winning side
- -
38 - - - - - -
   * @param _token            The address of the token being paid out
- -
39 - - - - - -
   * @param _amountPerPledger The amount of `_token` paid to each of the winning pledgers
- -
40 - - - - - -
   */
- -
41 - - - - - -
  event WinningPledgersPaid(
- -
42 - - - - - -
    bytes32 indexed _requestId,
- -
43 - - - - - -
    bytes32 indexed _disputeId,
- -
44 - - - - - -
    address[] indexed _winningPledgers,
- -
45 - - - - - -
    IERC20 _token,
- -
46 - - - - - -
    uint256 _amountPerPledger
- -
47 - - - - - -
  );
- -
48 - - - - - -

-                            
-                        
49 - - - - - -
  /**
- -
50 - - - - - -
   * @notice A bond escalation has been settled
- -
51 - - - - - -
   *
- -
52 - - - - - -
   * @param _requestId             The ID of the bond-escalated request
- -
53 - - - - - -
   * @param _disputeId             The ID of the bond-escalated dispute
- -
54 - - - - - -
   * @param _token                 The address of the token being paid out
- -
55 - - - - - -
   * @param _amountPerPledger      The amount of `_token` to be paid for each winning pledgers
- -
56 - - - - - -
   * @param _winningPledgersLength The number of winning pledgers
- -
57 - - - - - -
   */
- -
58 - - - - - -
  event BondEscalationSettled(
- -
59 - - - - - -
    bytes32 _requestId, bytes32 _disputeId, IERC20 _token, uint256 _amountPerPledger, uint256 _winningPledgersLength
- -
60 - - - - - -
  );
- -
61 - - - - - -

-                            
-                        
62 - - - - - -
  /**
- -
63 - - - - - -
   * @notice A pledge has been released back to the user
- -
64 - - - - - -
   *
- -
65 - - - - - -
   * @param _requestId        The ID of the bond-escalated request
- -
66 - - - - - -
   * @param _disputeId        The ID of the bond-escalated dispute
- -
67 - - - - - -
   * @param _pledger          The user who is getting their tokens released
- -
68 - - - - - -
   * @param _token            The address of the token being released
- -
69 - - - - - -
   * @param _amount           The amount of `_token` released
- -
70 - - - - - -
   */
- -
71 - - - - - -
  event PledgeReleased(
- -
72 - - - - - -
    bytes32 indexed _requestId, bytes32 indexed _disputeId, address indexed _pledger, IERC20 _token, uint256 _amount
- -
73 - - - - - -
  );
- -
74 - - - - - -

-                            
-                        
75 - - - - - -
  /**
- -
76 - - - - - -
   * @notice A user claimed their reward for pledging for the winning side of a dispute
- -
77 - - - - - -
   *
- -
78 - - - - - -
   * @param _requestId        The ID of the bond-escalated request
- -
79 - - - - - -
   * @param _disputeId        The ID of the bond-escalated dispute
- -
80 - - - - - -
   * @param _pledger          The user who claimed their reward
- -
81 - - - - - -
   * @param _token            The address of the token being paid out
- -
82 - - - - - -
   * @param _amount           The amount of `_token` paid to the pledger
- -
83 - - - - - -
   */
- -
84 - - - - - -
  event EscalationRewardClaimed(
- -
85 - - - - - -
    bytes32 indexed _requestId, bytes32 indexed _disputeId, address indexed _pledger, IERC20 _token, uint256 _amount
- -
86 - - - - - -
  );
- -
87 - - - - - -

-                            
-                        
88 - - - - - -
  /*///////////////////////////////////////////////////////////////
- -
89 - - - - - -
                              ERRORS
- -
90 - - - - - -
  //////////////////////////////////////////////////////////////*/
- -
91 - - - - - -

-                            
-                        
92 - - - - - -
  /**
- -
93 - - - - - -
   * @notice Thrown when the user tries to claim their pledge for an escalation that was already claimed
- -
94 - - - - - -
   */
- -
95 - - - - - -
  error BondEscalationAccounting_AlreadyClaimed();
- -
96 - - - - - -

-                            
-                        
97 - - - - - -
  /**
- -
98 - - - - - -
   * @notice Thrown when the user tries to claim their pledge for an escalation that wasn't finished yet
- -
99 - - - - - -
   */
- -
100 - - - - - -
  error BondEscalationAccounting_NoEscalationResult();
- -
101 - - - - - -

-                            
-                        
102 - - - - - -
  /**
- -
103 - - - - - -
   * @notice Thrown when the user doesn't have enough funds to pledge
- -
104 - - - - - -
   */
- -
105 - - - - - -
  error BondEscalationAccounting_InsufficientFunds();
- -
106 - - - - - -

-                            
-                        
107 - - - - - -
  /**
- -
108 - - - - - -
   * @notice Thrown when trying to settle an already settled escalation
- -
109 - - - - - -
   */
- -
110 - - - - - -
  error BondEscalationAccounting_AlreadySettled();
- -
111 - - - - - -

-                            
-                        
112 - - - - - -
  /**
- -
113 - - - - - -
   * @notice Thrown when caller is not authorized
- -
114 - - - - - -
   */
- -
115 - - - - - -
  error BondEscalationAccounting_UnauthorizedCaller();
- -
116 - - - - - -

-                            
-                        
117 - - - - - -
  /*///////////////////////////////////////////////////////////////
- -
118 - - - - - -
                              STRUCTS
- -
119 - - - - - -
  //////////////////////////////////////////////////////////////*/
- -
120 - - - - - -

-                            
-                        
121 - - - - - -
  /**
- -
122 - - - - - -
   * @notice Contains the data of the result of an escalation. Is used by users to claim their pledges
- -
123 - - - - - -
   * @param requestId         The ID of the bond-escalated request
- -
124 - - - - - -
   * @param token             The address of the token being paid out
- -
125 - - - - - -
   * @param amountPerPledger  The amount of token paid to each of the winning pledgers
- -
126 - - - - - -
   * @param bondEscalationModule The address of the bond escalation module that was used
- -
127 - - - - - -
   */
- -
128 - - - - - -
  struct EscalationResult {
- -
129 - - - - - -
    bytes32 requestId;
- -
130 - - - - - -
    IERC20 token;
- -
131 - - - - - -
    uint256 amountPerPledger;
- -
132 - - - - - -
    IBondEscalationModule bondEscalationModule;
- -
133 - - - - - -
  }
- -
134 - - - - - -

-                            
-                        
135 - - - - - -
  /*///////////////////////////////////////////////////////////////
- -
136 - - - - - -
                              VARIABLES
- -
137 - - - - - -
  //////////////////////////////////////////////////////////////*/
- -
138 - - - - - -

-                            
-                        
139 - - - - - -
  /**
- -
140 - - - - - -
   * @notice The amount pledged by the given pledger in the given dispute of the given request
- -
141 - - - - - -
   *
- -
142 - - - - - -
   * @param _disputeId         The ID of the bond-escalated dispute
- -
143 - - - - - -
   * @param _token             Address of the token being pledged
- -
144 - - - - - -
   * @return _amountPledged    The amount of pledged tokens
- -
145 - - - - - -
   */
- -
146 - - - - - -
  function pledges(bytes32 _disputeId, IERC20 _token) external returns (uint256 _amountPledged);
- -
147 - - - - - -

-                            
-                        
148 - - - - - -
  /**
- -
149 - - - - - -
   * @notice The result of the given dispute
- -
150 - - - - - -
   *
- -
151 - - - - - -
   * @param _disputeId             The ID of the bond-escalated dispute
- -
152 - - - - - -
   * @return _requestId            The ID of the bond-escalated request
- -
153 - - - - - -
   * @return _token                Address of the token being paid as a reward for winning the bond escalation
- -
154 - - - - - -
   * @return _amountPerPledger     Amount of `_token` to be rewarded to each of the winning pledgers
- -
155 - - - - - -
   * @return _bondEscalationModule The address of the bond escalation module that was used
- -
156 - - - - - -
   */
- -
157 - - - - - -
  function escalationResults(bytes32 _disputeId)
- -
158 - - - - - -
    external
- -
159 - - - - - -
    returns (bytes32 _requestId, IERC20 _token, uint256 _amountPerPledger, IBondEscalationModule _bondEscalationModule);
- -
160 - - - - - -

-                            
-                        
161 - - - - - -
  /**
- -
162 - - - - - -
   * @notice True if the given pledger has claimed their reward for the given dispute
- -
163 - - - - - -
   *
- -
164 - - - - - -
   * @param _requestId         The ID of the bond-escalated request
- -
165 - - - - - -
   * @param _pledger           Address of the pledger
- -
166 - - - - - -
   * @return _claimed          True if the pledger has claimed their reward
- -
167 - - - - - -
   */
- -
168 - - - - - -
  function pledgerClaimed(bytes32 _requestId, address _pledger) external returns (bool _claimed);
- -
169 - - - - - -

-                            
-                        
170 - - - - - -
  /**
- -
171 - - - - - -
   * @notice Checks whether an address is an authorized caller.
- -
172 - - - - - -
   *
- -
173 - - - - - -
   * @param _caller      The address to check
- -
174 - - - - - -
   * @return _authorized True if the address is authorized, false otherwise
- -
175 - - - - - -
   */
- -
176 - - - - - -
  function authorizedCallers(address _caller) external returns (bool _authorized);
- -
177 - - - - - -

-                            
-                        
178 - - - - - -
  /*///////////////////////////////////////////////////////////////
- -
179 - - - - - -
                              LOGIC
- -
180 - - - - - -
  //////////////////////////////////////////////////////////////*/
- -
181 - - - - - -

-                            
-                        
182 - - - - - -
  /**
- -
183 - - - - - -
   * @notice Pledges the given amount of token to the provided dispute id of the provided request id
- -
184 - - - - - -
   *
- -
185 - - - - - -
   * @dev This function must be called by an allowed module
- -
186 - - - - - -
   *
- -
187 - - - - - -
   * @param _pledger           Address of the pledger
- -
188 - - - - - -
   * @param _request           The bond-escalated request
- -
189 - - - - - -
   * @param _dispute           The bond-escalated dispute
- -
190 - - - - - -
   * @param _token             Address of the token being paid as a reward for winning the bond escalation
- -
191 - - - - - -
   * @param _amount            Amount of token to pledge
- -
192 - - - - - -
   */
- -
193 - - - - - -
  function pledge(
- -
194 - - - - - -
    address _pledger,
- -
195 - - - - - -
    IOracle.Request calldata _request,
- -
196 - - - - - -
    IOracle.Dispute calldata _dispute,
- -
197 - - - - - -
    IERC20 _token,
- -
198 - - - - - -
    uint256 _amount
- -
199 - - - - - -
  ) external;
- -
200 - - - - - -

-                            
-                        
201 - - - - - -
  /**
- -
202 - - - - - -
   * @notice Updates the accounting of the given dispute to reflect the result of the bond escalation
- -
203 - - - - - -
   * @dev This function must be called by an allowed module
- -
204 - - - - - -
   *
- -
205 - - - - - -
   * @param _request                The bond-escalated request
- -
206 - - - - - -
   * @param _dispute                The bond-escalated dispute
- -
207 - - - - - -
   * @param _token                  Address of the token being paid as a reward for winning the bond escalation
- -
208 - - - - - -
   * @param _amountPerPledger       Amount of `_token` to be rewarded to each of the winning pledgers
- -
209 - - - - - -
   * @param _winningPledgersLength  Amount of pledges that won the dispute
- -
210 - - - - - -
   */
- -
211 - - - - - -
  function onSettleBondEscalation(
- -
212 - - - - - -
    IOracle.Request calldata _request,
- -
213 - - - - - -
    IOracle.Dispute calldata _dispute,
- -
214 - - - - - -
    IERC20 _token,
- -
215 - - - - - -
    uint256 _amountPerPledger,
- -
216 - - - - - -
    uint256 _winningPledgersLength
- -
217 - - - - - -
  ) external;
- -
218 - - - - - -

-                            
-                        
219 - - - - - -
  /**
- -
220 - - - - - -
   * @notice Releases a given amount of funds to the pledger
- -
221 - - - - - -
   *
- -
222 - - - - - -
   * @dev This function must be called by an allowed module
- -
223 - - - - - -
   *
- -
224 - - - - - -
   * @param _request           The bond-escalated request
- -
225 - - - - - -
   * @param _dispute           The bond-escalated dispute
- -
226 - - - - - -
   * @param _pledger           Address of the pledger
- -
227 - - - - - -
   * @param _token             Address of the token to be released
- -
228 - - - - - -
   * @param _amount            Amount of `_token` to be released to the pledger
- -
229 - - - - - -
   */
- -
230 - - - - - -
  function releasePledge(
- -
231 - - - - - -
    IOracle.Request calldata _request,
- -
232 - - - - - -
    IOracle.Dispute calldata _dispute,
- -
233 - - - - - -
    address _pledger,
- -
234 - - - - - -
    IERC20 _token,
- -
235 - - - - - -
    uint256 _amount
- -
236 - - - - - -
  ) external;
- -
237 - - - - - -

-                            
-                        
238 - - - - - -
  /**
- -
239 - - - - - -
   * @notice                 Claims the reward for the pledger the given dispute
- -
240 - - - - - -
   * @param _disputeId       The ID of the bond-escalated dispute
- -
241 - - - - - -
   * @param _pledger         Address of the pledger to claim the rewards
- -
242 - - - - - -
   */
- -
243 - - - - - -
  function claimEscalationReward(bytes32 _disputeId, address _pledger) external;
- -
244 - - - - - -
}
- -
245 - - - - - -

-                            
-                        
-
-
- - - - - - - - - - -
-
-
- - - - - - -
Lines covered: 0 / 0 (0.0%)
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
1 - - - - - -
// SPDX-License-Identifier: MIT
- -
2 - - - - - -
pragma solidity ^0.8.19;
- -
3 - - - - - -

-                            
-                        
4 - - - - - -
import {IOracle} from '@defi-wonderland/prophet-core/solidity/interfaces/IOracle.sol';
- -
5 - - - - - -
import {IDisputeModule} from '@defi-wonderland/prophet-core/solidity/interfaces/modules/dispute/IDisputeModule.sol';
- -
6 - - - - - -
import {IERC20} from '@openzeppelin/contracts/token/ERC20/IERC20.sol';
- -
7 - - - - - -

-                            
-                        
8 - - - - - -
import {IBondEscalationAccounting} from '../../extensions/IBondEscalationAccounting.sol';
- -
9 - - - - - -

-                            
-                        
10 - - - - - -
/**
- -
11 - - - - - -
 * @title BondEscalationModule
- -
12 - - - - - -
 * @notice Module allowing users to have the first dispute of a request go through the bond escalation mechanism.
- -
13 - - - - - -
 */
- -
14 - - - - - -
interface IBondEscalationModule is IDisputeModule {
- -
15 - - - - - -
  /*///////////////////////////////////////////////////////////////
- -
16 - - - - - -
                              EVENTS
- -
17 - - - - - -
  //////////////////////////////////////////////////////////////*/
- -
18 - - - - - -

-                            
-                        
19 - - - - - -
  /**
- -
20 - - - - - -
   * @notice A pledge has been made in favor of a dispute.
- -
21 - - - - - -
   *
- -
22 - - - - - -
   * @param _disputeId The id of the dispute the pledger is pledging in favor of.
- -
23 - - - - - -
   * @param _pledger   The address of the pledger.
- -
24 - - - - - -
   * @param _amount    The amount pledged.
- -
25 - - - - - -
   */
- -
26 - - - - - -
  event PledgedForDispute(bytes32 indexed _disputeId, address indexed _pledger, uint256 indexed _amount);
- -
27 - - - - - -

-                            
-                        
28 - - - - - -
  /**
- -
29 - - - - - -
   * @notice A pledge has been made against a dispute.
- -
30 - - - - - -
   *
- -
31 - - - - - -
   * @param _disputeId The id of the dispute the pledger is pledging against.
- -
32 - - - - - -
   * @param _pledger   The address of the pledger.
- -
33 - - - - - -
   * @param _amount    The amount pledged.
- -
34 - - - - - -
   */
- -
35 - - - - - -
  event PledgedAgainstDispute(bytes32 indexed _disputeId, address indexed _pledger, uint256 indexed _amount);
- -
36 - - - - - -

-                            
-                        
37 - - - - - -
  /**
- -
38 - - - - - -
   * @notice The status of the bond escalation mechanism has been updated.
- -
39 - - - - - -
   *
- -
40 - - - - - -
   * @param _requestId The id of the request associated with the bond escalation mechanism.
- -
41 - - - - - -
   * @param _disputeId The id of the dispute going through the bond escalation mechanism.
- -
42 - - - - - -
   * @param _status    The new status.
- -
43 - - - - - -
   */
- -
44 - - - - - -
  event BondEscalationStatusUpdated(
- -
45 - - - - - -
    bytes32 indexed _requestId, bytes32 indexed _disputeId, BondEscalationStatus _status
- -
46 - - - - - -
  );
- -
47 - - - - - -

-                            
-                        
48 - - - - - -
  /*///////////////////////////////////////////////////////////////
- -
49 - - - - - -
                              ERRORS
- -
50 - - - - - -
  //////////////////////////////////////////////////////////////*/
- -
51 - - - - - -

-                            
-                        
52 - - - - - -
  /**
- -
53 - - - - - -
   * @notice Thrown when trying to escalate a dispute going through the bond escalation module before its deadline.
- -
54 - - - - - -
   */
- -
55 - - - - - -
  error BondEscalationModule_BondEscalationNotOver();
- -
56 - - - - - -
  /**
- -
57 - - - - - -
   * @notice Thrown when trying to pledge for a dispute that is not going through the bond escalation mechanism.
- -
58 - - - - - -
   */
- -
59 - - - - - -
  error BondEscalationModule_InvalidDispute();
- -
60 - - - - - -
  /**
- -
61 - - - - - -
   * @notice Thrown when the number of escalation pledges of a given dispute has reached its maximum.
- -
62 - - - - - -
   */
- -
63 - - - - - -
  error BondEscalationModule_MaxNumberOfEscalationsReached();
- -
64 - - - - - -
  /**
- -
65 - - - - - -
   * @notice Thrown when trying to settle a dispute that went through the bond escalation when it's not active.
- -
66 - - - - - -
   */
- -
67 - - - - - -
  error BondEscalationModule_BondEscalationCantBeSettled();
- -
68 - - - - - -
  /**
- -
69 - - - - - -
   * @notice Thrown when trying to settle a bond escalation process that is not tied.
- -
70 - - - - - -
   */
- -
71 - - - - - -
  error BondEscalationModule_ShouldBeEscalated();
- -
72 - - - - - -
  /**
- -
73 - - - - - -
   * @notice Thrown when trying to break a tie after the tying buffer has started.
- -
74 - - - - - -
   */
- -
75 - - - - - -
  error BondEscalationModule_CannotBreakTieDuringTyingBuffer();
- -
76 - - - - - -
  /**
- -
77 - - - - - -
   * @notice Thrown when the max number of escalations or the bond size is set to 0.
- -
78 - - - - - -
   */
- -
79 - - - - - -
  error BondEscalationModule_ZeroValue();
- -
80 - - - - - -
  /**
- -
81 - - - - - -
   * @notice Thrown when trying to pledge after the bond escalation deadline.
- -
82 - - - - - -
   */
- -
83 - - - - - -
  error BondEscalationModule_BondEscalationOver();
- -
84 - - - - - -
  /**
- -
85 - - - - - -
   * @notice Thrown when trying to escalate a dispute going through the bond escalation process that is not tied
- -
86 - - - - - -
   *         or that is not active.
- -
87 - - - - - -
   */
- -
88 - - - - - -
  error BondEscalationModule_NotEscalatable();
- -
89 - - - - - -
  /**
- -
90 - - - - - -
   * @notice Thrown when trying to pledge for a dispute that does not exist
- -
91 - - - - - -
   */
- -
92 - - - - - -
  error BondEscalationModule_DisputeDoesNotExist();
- -
93 - - - - - -
  /**
- -
94 - - - - - -
   * @notice Thrown when trying to surpass the number of pledges of the other side by more than 1 in the bond escalation mechanism.
- -
95 - - - - - -
   */
- -
96 - - - - - -
  error BondEscalationModule_CanOnlySurpassByOnePledge();
- -
97 - - - - - -
  /**
- -
98 - - - - - -
   * @notice Thrown when trying to dispute a response after the dispute period expired.
- -
99 - - - - - -
   */
- -
100 - - - - - -
  error BondEscalationModule_DisputeWindowOver();
- -
101 - - - - - -
  /**
- -
102 - - - - - -
   * @notice Thrown when trying to set up a request with invalid bond size or maximum amount of escalations.
- -
103 - - - - - -
   */
- -
104 - - - - - -
  error BondEscalationModule_InvalidEscalationParameters();
- -
105 - - - - - -

-                            
-                        
106 - - - - - -
  /*///////////////////////////////////////////////////////////////
- -
107 - - - - - -
                              ENUMS
- -
108 - - - - - -
  //////////////////////////////////////////////////////////////*/
- -
109 - - - - - -

-                            
-                        
110 - - - - - -
  /**
- -
111 - - - - - -
   * @notice Enum holding all the possible statuses of a dispute going through the bond escalation mechanism.
- -
112 - - - - - -
   * @param None Dispute is not going through the bond escalation mechanism.
- -
113 - - - - - -
   * @param Active Dispute is going through the bond escalation mechanism.
- -
114 - - - - - -
   * @param Escalated Dispute is going through the bond escalation mechanism and has been escalated.
- -
115 - - - - - -
   * @param DisputerLost An escalated dispute has been settled and the disputer lost.
- -
116 - - - - - -
   * @param DisputerWon An escalated dispute has been settled and the disputer won.
- -
117 - - - - - -
   */
- -
118 - - - - - -
  enum BondEscalationStatus {
- -
119 - - - - - -
    None,
- -
120 - - - - - -
    Active,
- -
121 - - - - - -
    Escalated,
- -
122 - - - - - -
    DisputerLost,
- -
123 - - - - - -
    DisputerWon
- -
124 - - - - - -
  }
- -
125 - - - - - -

-                            
-                        
126 - - - - - -
  /*///////////////////////////////////////////////////////////////
- -
127 - - - - - -
                              STRUCTS
- -
128 - - - - - -
  //////////////////////////////////////////////////////////////*/
- -
129 - - - - - -

-                            
-                        
130 - - - - - -
  /**
- -
131 - - - - - -
   * @notice Parameters of the request as stored in the module
- -
132 - - - - - -
   *
- -
133 - - - - - -
   * @param accountingExtension        Address of the accounting extension associated with the given request
- -
134 - - - - - -
   * @param bondToken                  Address of the token associated with the given request
- -
135 - - - - - -
   * @param bondSize                   Amount to bond to dispute or propose an answer for the given request
- -
136 - - - - - -
   * @param maxNumberOfEscalations     Maximum allowed escalations or pledges for each side during the bond escalation process
- -
137 - - - - - -
   * @param bondEscalationDeadline     Number of seconds after dispute creation required to
- -
138 - - - - - -
   *                                       finish the bond escalation process when pledges are not tied.
- -
139 - - - - - -
   * @param tyingBuffer                Number of seconds to extend the bond escalation process to allow the losing
- -
140 - - - - - -
   *                                    party to tie if at the end of the initial deadline the pledges weren't tied.
- -
141 - - - - - -
   * @param disputeWindow              Number of seconds disputers have to challenge the proposed response since its creation.
- -
142 - - - - - -
   */
- -
143 - - - - - -
  struct RequestParameters {
- -
144 - - - - - -
    IBondEscalationAccounting accountingExtension;
- -
145 - - - - - -
    IERC20 bondToken;
- -
146 - - - - - -
    uint256 bondSize;
- -
147 - - - - - -
    uint256 maxNumberOfEscalations;
- -
148 - - - - - -
    uint256 bondEscalationDeadline;
- -
149 - - - - - -
    uint256 tyingBuffer;
- -
150 - - - - - -
    uint256 disputeWindow;
- -
151 - - - - - -
  }
- -
152 - - - - - -

-                            
-                        
153 - - - - - -
  /**
- -
154 - - - - - -
   * @notice Data of a dispute going through the bond escalation.
- -
155 - - - - - -
   *
- -
156 - - - - - -
   * @param disputeId                       The id of the dispute being bond-escalated.
- -
157 - - - - - -
   * @param status                          The status of the bond escalation.
- -
158 - - - - - -
   * @param amountOfPledgesForDispute       The amount of pledges made in favor of the dispute.
- -
159 - - - - - -
   * @param amountOfPledgesAgainstDispute   The amount of pledges made against the dispute.
- -
160 - - - - - -
   */
- -
161 - - - - - -
  struct BondEscalation {
- -
162 - - - - - -
    bytes32 disputeId;
- -
163 - - - - - -
    BondEscalationStatus status;
- -
164 - - - - - -
    uint256 amountOfPledgesForDispute;
- -
165 - - - - - -
    uint256 amountOfPledgesAgainstDispute;
- -
166 - - - - - -
  }
- -
167 - - - - - -

-                            
-                        
168 - - - - - -
  /*///////////////////////////////////////////////////////////////
- -
169 - - - - - -
                              VARIABLES
- -
170 - - - - - -
  //////////////////////////////////////////////////////////////*/
- -
171 - - - - - -

-                            
-                        
172 - - - - - -
  /**
- -
173 - - - - - -
   * @notice Returns the escalation data for a request.
- -
174 - - - - - -
   * @param _requestId The id of the request to get its escalation data.
- -
175 - - - - - -
   * @return _escalation The struct containing the escalation data.
- -
176 - - - - - -
   */
- -
177 - - - - - -
  function getEscalation(bytes32 _requestId) external view returns (BondEscalation memory _escalation);
- -
178 - - - - - -

-                            
-                        
179 - - - - - -
  /**
- -
180 - - - - - -
   * @notice Returns the decoded data for a request
- -
181 - - - - - -
   * @param _data The encoded request parameters
- -
182 - - - - - -
   * @return _params The struct containing the parameters for the request
- -
183 - - - - - -
   */
- -
184 - - - - - -
  function decodeRequestData(bytes calldata _data) external view returns (RequestParameters memory _params);
- -
185 - - - - - -

-                            
-                        
186 - - - - - -
  /**
- -
187 - - - - - -
   * @notice Returns the amount of pledges that a particular pledger has made for a given dispute.
- -
188 - - - - - -
   * @param _requestId The id of the request to get the pledges for.
- -
189 - - - - - -
   * @param _pledger The address of the pledger to get the pledges for.
- -
190 - - - - - -
   * @return _numPledges The number of pledges made by the pledger for the dispute.
- -
191 - - - - - -
   */
- -
192 - - - - - -
  function pledgesForDispute(bytes32 _requestId, address _pledger) external view returns (uint256 _numPledges);
- -
193 - - - - - -

-                            
-                        
194 - - - - - -
  /**
- -
195 - - - - - -
   * @notice Returns the amount of pledges that a particular pledger has made against a given dispute.
- -
196 - - - - - -
   * @param _requestId The id of the request to get the pledges for.
- -
197 - - - - - -
   * @param _pledger The address of the pledger to get the pledges for.
- -
198 - - - - - -
   * @return _numPledges The number of pledges made by the pledger against the dispute.
- -
199 - - - - - -
   */
- -
200 - - - - - -
  function pledgesAgainstDispute(bytes32 _requestId, address _pledger) external view returns (uint256 _numPledges);
- -
201 - - - - - -

-                            
-                        
202 - - - - - -
  /*///////////////////////////////////////////////////////////////
- -
203 - - - - - -
                              LOGIC
- -
204 - - - - - -
  //////////////////////////////////////////////////////////////*/
- -
205 - - - - - -

-                            
-                        
206 - - - - - -
  /**
- -
207 - - - - - -
   * @notice Disputes a response
- -
208 - - - - - -
   *
- -
209 - - - - - -
   * @dev If this is the first dispute of the request and the bond escalation window is not over,
- -
210 - - - - - -
   *      it will start the bond escalation process. This function must be called through the Oracle.
- -
211 - - - - - -
   *
- -
212 - - - - - -
   * @param _request The request data.
- -
213 - - - - - -
   * @param _response The response being disputed.
- -
214 - - - - - -
   * @param _dispute The dispute created by the oracle.
- -
215 - - - - - -
   */
- -
216 - - - - - -
  function disputeResponse(
- -
217 - - - - - -
    IOracle.Request calldata _request,
- -
218 - - - - - -
    IOracle.Response calldata _response,
- -
219 - - - - - -
    IOracle.Dispute calldata _dispute
- -
220 - - - - - -
  ) external;
- -
221 - - - - - -

-                            
-                        
222 - - - - - -
  /**
- -
223 - - - - - -
   * @notice Updates the status of a given disputeId and pays the proposer and disputer accordingly. If this
- -
224 - - - - - -
   *         dispute has gone through the bond escalation mechanism, then it will pay the winning pledgers as well.
- -
225 - - - - - -
   *
- -
226 - - - - - -
   * @param _disputeId The ID of the dispute to update the status for.
- -
227 - - - - - -
   * @param _request The request data.
- -
228 - - - - - -
   * @param _response The disputed response.
- -
229 - - - - - -
   * @param _dispute The dispute data.
- -
230 - - - - - -
   */
- -
231 - - - - - -
  function onDisputeStatusChange(
- -
232 - - - - - -
    bytes32 _disputeId,
- -
233 - - - - - -
    IOracle.Request calldata _request,
- -
234 - - - - - -
    IOracle.Response calldata _response,
- -
235 - - - - - -
    IOracle.Dispute calldata _dispute
- -
236 - - - - - -
  ) external;
- -
237 - - - - - -

-                            
-                        
238 - - - - - -
  /**
- -
239 - - - - - -
   * @notice Bonds funds in favor of a given dispute during the bond escalation process.
- -
240 - - - - - -
   *
- -
241 - - - - - -
   * @param _request The request data.
- -
242 - - - - - -
   * @param _dispute The dispute data.
- -
243 - - - - - -
   *
- -
244 - - - - - -
   * @dev If the bond escalation is not tied at the end of its deadline, a tying buffer is added
- -
245 - - - - - -
   *      to avoid scenarios where one of the parties breaks the tie very last second.
- -
246 - - - - - -
   *      During the tying buffer, the losing party can only tie, and once the escalation is tied
- -
247 - - - - - -
   *      no further funds can be pledged.
- -
248 - - - - - -
   */
- -
249 - - - - - -
  function pledgeForDispute(IOracle.Request calldata _request, IOracle.Dispute calldata _dispute) external;
- -
250 - - - - - -

-                            
-                        
251 - - - - - -
  /**
- -
252 - - - - - -
   * @notice Pledges funds against a given disputeId during its bond escalation process.
- -
253 - - - - - -
   *
- -
254 - - - - - -
   * @param _request The request data.
- -
255 - - - - - -
   * @param _dispute The dispute data.
- -
256 - - - - - -
   *
- -
257 - - - - - -
   * @dev Will revert if the disputeId is not going through the bond escalation process.
- -
258 - - - - - -
   * @dev If the bond escalation is not tied at the end of its deadline, a tying buffer is added
- -
259 - - - - - -
   *      to avoid scenarios where one of the parties breaks the tie very last second.
- -
260 - - - - - -
   *      During the tying buffer, the losing party can only tie, and once the escalation is tied
- -
261 - - - - - -
   *      no further funds can be pledged.
- -
262 - - - - - -
   */
- -
263 - - - - - -
  function pledgeAgainstDispute(IOracle.Request calldata _request, IOracle.Dispute calldata _dispute) external;
- -
264 - - - - - -

-                            
-                        
265 - - - - - -
  /**
- -
266 - - - - - -
   * @notice Settles the bond escalation process of a given requestId.
- -
267 - - - - - -
   *
- -
268 - - - - - -
   * @param _request The request data.
- -
269 - - - - - -
   * @param _response The response data.
- -
270 - - - - - -
   * @param _dispute The dispute data.
- -
271 - - - - - -
   *
- -
272 - - - - - -
   * @dev Can only be called if after the deadline + tyingBuffer window is over, the pledges weren't tied
- -
273 - - - - - -
   */
- -
274 - - - - - -
  function settleBondEscalation(
- -
275 - - - - - -
    IOracle.Request calldata _request,
- -
276 - - - - - -
    IOracle.Response calldata _response,
- -
277 - - - - - -
    IOracle.Dispute calldata _dispute
- -
278 - - - - - -
  ) external;
- -
279 - - - - - -
}
- -
280 - - - - - -

-                            
-                        
-
-
- - - - - - - - - - -
-
-
- - - - - - -
Lines covered: 0 / 0 (0.0%)
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
1 - - - - - -
// SPDX-License-Identifier: MIT
- -
2 - - - - - -
pragma solidity ^0.8.19;
- -
3 - - - - - -

-                            
-                        
4 - - - - - -
import {IOracle} from '@defi-wonderland/prophet-core/solidity/interfaces/IOracle.sol';
- -
5 - - - - - -
import {IResolutionModule} from
- -
6 - - - - - -
  '@defi-wonderland/prophet-core/solidity/interfaces/modules/resolution/IResolutionModule.sol';
- -
7 - - - - - -

-                            
-                        
8 - - - - - -
/*
- -
9 - - - - - -
  * @title ArbitratorModule
- -
10 - - - - - -
  * @notice Module allowing an external arbitrator contract to resolve a dispute.
- -
11 - - - - - -
  */
- -
12 - - - - - -
interface IArbitratorModule is IResolutionModule {
- -
13 - - - - - -
  /*///////////////////////////////////////////////////////////////
- -
14 - - - - - -
                              ERRORS
- -
15 - - - - - -
  //////////////////////////////////////////////////////////////*/
- -
16 - - - - - -

-                            
-                        
17 - - - - - -
  /**
- -
18 - - - - - -
   * @notice Thrown when trying to resolve a dispute that is not escalated
- -
19 - - - - - -
   */
- -
20 - - - - - -
  error ArbitratorModule_InvalidDisputeId();
- -
21 - - - - - -

-                            
-                        
22 - - - - - -
  /**
- -
23 - - - - - -
   * @notice Thrown when the arbitrator address is the address zero
- -
24 - - - - - -
   */
- -
25 - - - - - -
  error ArbitratorModule_InvalidArbitrator();
- -
26 - - - - - -

-                            
-                        
27 - - - - - -
  /**
- -
28 - - - - - -
   * @notice Thrown when the arbitrator returns an invalid resolution status
- -
29 - - - - - -
   */
- -
30 - - - - - -
  error ArbitratorModule_InvalidResolutionStatus();
- -
31 - - - - - -

-                            
-                        
32 - - - - - -
  /*///////////////////////////////////////////////////////////////
- -
33 - - - - - -
                              ENUMS
- -
34 - - - - - -
  //////////////////////////////////////////////////////////////*/
- -
35 - - - - - -

-                            
-                        
36 - - - - - -
  /**
- -
37 - - - - - -
   * @notice Available status of the arbitration process
- -
38 - - - - - -
   * @param Unknown The arbitration process has not started (default)
- -
39 - - - - - -
   * @param Active The arbitration process is active
- -
40 - - - - - -
   * @param Resolved The The arbitration process is finished
- -
41 - - - - - -
   */
- -
42 - - - - - -
  enum ArbitrationStatus {
- -
43 - - - - - -
    Unknown,
- -
44 - - - - - -
    Active,
- -
45 - - - - - -
    Resolved
- -
46 - - - - - -
  }
- -
47 - - - - - -

-                            
-                        
48 - - - - - -
  /*///////////////////////////////////////////////////////////////
- -
49 - - - - - -
                              STRUCTS
- -
50 - - - - - -
  //////////////////////////////////////////////////////////////*/
- -
51 - - - - - -
  /**
- -
52 - - - - - -
   * @notice Parameters of the request as stored in the module
- -
53 - - - - - -
   * @param arbitrator The address of the arbitrator
- -
54 - - - - - -
   */
- -
55 - - - - - -
  struct RequestParameters {
- -
56 - - - - - -
    address arbitrator;
- -
57 - - - - - -
  }
- -
58 - - - - - -

-                            
-                        
59 - - - - - -
  /*///////////////////////////////////////////////////////////////
- -
60 - - - - - -
                              LOGIC
- -
61 - - - - - -
  //////////////////////////////////////////////////////////////*/
- -
62 - - - - - -

-                            
-                        
63 - - - - - -
  /**
- -
64 - - - - - -
   * @notice Returns the decoded data for a request
- -
65 - - - - - -
   *
- -
66 - - - - - -
   * @param _data     The encoded request parameters
- -
67 - - - - - -
   * @return _params  The struct containing the parameters for the request
- -
68 - - - - - -
   */
- -
69 - - - - - -
  function decodeRequestData(bytes calldata _data) external view returns (RequestParameters memory _params);
- -
70 - - - - - -

-                            
-                        
71 - - - - - -
  /**
- -
72 - - - - - -
   * @notice Returns the current arbitration status of a dispute
- -
73 - - - - - -
   *
- -
74 - - - - - -
   * @param _disputeId The ID of the dispute
- -
75 - - - - - -
   * @return _disputeStatus The `ArbitrationStatus` of the dispute
- -
76 - - - - - -
   */
- -
77 - - - - - -
  function getStatus(bytes32 _disputeId) external view returns (ArbitrationStatus _disputeStatus);
- -
78 - - - - - -

-                            
-                        
79 - - - - - -
  /**
- -
80 - - - - - -
   * @notice Starts the arbitration process by calling `resolve` on the arbitrator and flags the dispute as Active
- -
81 - - - - - -
   *
- -
82 - - - - - -
   * @dev               Only callable by the Oracle
- -
83 - - - - - -
   * @dev               Will revert if the arbitrator address is the address zero
- -
84 - - - - - -
   * @param _disputeId  The ID of the dispute
- -
85 - - - - - -
   * @param _request    The request
- -
86 - - - - - -
   * @param _response   The disputed response
- -
87 - - - - - -
   * @param _dispute    The dispute being sent to the resolution
- -
88 - - - - - -
   */
- -
89 - - - - - -
  function startResolution(
- -
90 - - - - - -
    bytes32 _disputeId,
- -
91 - - - - - -
    IOracle.Request calldata _request,
- -
92 - - - - - -
    IOracle.Response calldata _response,
- -
93 - - - - - -
    IOracle.Dispute calldata _dispute
- -
94 - - - - - -
  ) external;
- -
95 - - - - - -

-                            
-                        
96 - - - - - -
  /**
- -
97 - - - - - -
   * @notice Resolves the dispute by getting the answer from the arbitrator and updating the dispute status
- -
98 - - - - - -
   *
- -
99 - - - - - -
   * @dev               Only callable by the Oracle
- -
100 - - - - - -
   * @param _disputeId  The ID of the dispute
- -
101 - - - - - -
   * @param _request    The request
- -
102 - - - - - -
   * @param _response   The disputed response
- -
103 - - - - - -
   * @param _dispute    The dispute that is being resolved
- -
104 - - - - - -
   */
- -
105 - - - - - -
  function resolveDispute(
- -
106 - - - - - -
    bytes32 _disputeId,
- -
107 - - - - - -
    IOracle.Request calldata _request,
- -
108 - - - - - -
    IOracle.Response calldata _response,
- -
109 - - - - - -
    IOracle.Dispute calldata _dispute
- -
110 - - - - - -
  ) external;
- -
111 - - - - - -
}
- -
112 - - - - - -

-                            
-                        
-
-
- - - - - - - - - - -
-
-
- - - - - - -
Lines covered: 0 / 0 (0.0%)
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
1 - - - - - -
// SPDX-License-Identifier: MIT
- -
2 - - - - - -
pragma solidity ^0.8.19;
- -
3 - - - - - -

-                            
-                        
4 - - - - - -
import {IOracle} from '@defi-wonderland/prophet-core/solidity/interfaces/IOracle.sol';
- -
5 - - - - - -
import {IResponseModule} from '@defi-wonderland/prophet-core/solidity/interfaces/modules/response/IResponseModule.sol';
- -
6 - - - - - -
import {IERC20} from '@openzeppelin/contracts/token/ERC20/IERC20.sol';
- -
7 - - - - - -

-                            
-                        
8 - - - - - -
import {IAccountingExtension} from '../../extensions/IAccountingExtension.sol';
- -
9 - - - - - -

-                            
-                        
10 - - - - - -
/*
- -
11 - - - - - -
  * @title BondedResponseModule
- -
12 - - - - - -
  * @notice Module allowing users to propose a response for a request by bonding tokens
- -
13 - - - - - -
  */
- -
14 - - - - - -
interface IBondedResponseModule is IResponseModule {
- -
15 - - - - - -
  /*///////////////////////////////////////////////////////////////
- -
16 - - - - - -
                              EVENTS
- -
17 - - - - - -
  //////////////////////////////////////////////////////////////*/
- -
18 - - - - - -
  /**
- -
19 - - - - - -
   * @notice Emitted when a response is proposed
- -
20 - - - - - -
   *
- -
21 - - - - - -
   * @param _requestId The ID of the request that the response was proposed
- -
22 - - - - - -
   * @param _response The proposed response
- -
23 - - - - - -
   */
- -
24 - - - - - -
  event ResponseProposed(bytes32 indexed _requestId, IOracle.Response _response);
- -
25 - - - - - -

-                            
-                        
26 - - - - - -
  /**
- -
27 - - - - - -
   * @notice Emitted when an uncalled response is released
- -
28 - - - - - -
   *
- -
29 - - - - - -
   * @param _requestId The ID of the request that the response was proposed to
- -
30 - - - - - -
   * @param _responseId The ID of the response that was released
- -
31 - - - - - -
   */
- -
32 - - - - - -
  event UnutilizedResponseReleased(bytes32 indexed _requestId, bytes32 indexed _responseId);
- -
33 - - - - - -

-                            
-                        
34 - - - - - -
  /*///////////////////////////////////////////////////////////////
- -
35 - - - - - -
                              ERRORS
- -
36 - - - - - -
  //////////////////////////////////////////////////////////////*/
- -
37 - - - - - -

-                            
-                        
38 - - - - - -
  /**
- -
39 - - - - - -
   * @notice Thrown when trying to finalize a request before the deadline
- -
40 - - - - - -
   */
- -
41 - - - - - -
  error BondedResponseModule_TooEarlyToFinalize();
- -
42 - - - - - -

-                            
-                        
43 - - - - - -
  /**
- -
44 - - - - - -
   * @notice Thrown when trying to propose a response after deadline
- -
45 - - - - - -
   */
- -
46 - - - - - -
  error BondedResponseModule_TooLateToPropose();
- -
47 - - - - - -

-                            
-                        
48 - - - - - -
  /**
- -
49 - - - - - -
   * @notice Thrown when trying to propose a response while an undisputed response is already proposed
- -
50 - - - - - -
   */
- -
51 - - - - - -
  error BondedResponseModule_AlreadyResponded();
- -
52 - - - - - -

-                            
-                        
53 - - - - - -
  /**
- -
54 - - - - - -
   * @notice Thrown when trying to release an uncalled response with an invalid request, response or dispute
- -
55 - - - - - -
   */
- -
56 - - - - - -
  error BondedResponseModule_InvalidReleaseParameters();
- -
57 - - - - - -

-                            
-                        
58 - - - - - -
  /*///////////////////////////////////////////////////////////////
- -
59 - - - - - -
                              STRUCTS
- -
60 - - - - - -
  //////////////////////////////////////////////////////////////*/
- -
61 - - - - - -

-                            
-                        
62 - - - - - -
  /**
- -
63 - - - - - -
   * @notice Parameters of the request as stored in the module
- -
64 - - - - - -
   *
- -
65 - - - - - -
   * @param accountingExtension The accounting extension used to bond and release tokens
- -
66 - - - - - -
   * @param bondToken The token used for bonds in the request
- -
67 - - - - - -
   * @param bondSize The amount of `_bondToken` to bond to propose a response and dispute
- -
68 - - - - - -
   * @param deadline The timestamp after which no responses can be proposed
- -
69 - - - - - -
   * @param disputeWindow The time buffer required to finalize a request
- -
70 - - - - - -
   */
- -
71 - - - - - -
  struct RequestParameters {
- -
72 - - - - - -
    IAccountingExtension accountingExtension;
- -
73 - - - - - -
    IERC20 bondToken;
- -
74 - - - - - -
    uint256 bondSize;
- -
75 - - - - - -
    uint256 deadline;
- -
76 - - - - - -
    uint256 disputeWindow;
- -
77 - - - - - -
  }
- -
78 - - - - - -

-                            
-                        
79 - - - - - -
  /*///////////////////////////////////////////////////////////////
- -
80 - - - - - -
                              LOGIC
- -
81 - - - - - -
  //////////////////////////////////////////////////////////////*/
- -
82 - - - - - -

-                            
-                        
83 - - - - - -
  /**
- -
84 - - - - - -
   * @notice Returns the decoded data for a request
- -
85 - - - - - -
   *
- -
86 - - - - - -
   * @param _data The encoded data
- -
87 - - - - - -
   * @return _params The struct containing the parameters for the request
- -
88 - - - - - -
   */
- -
89 - - - - - -
  function decodeRequestData(bytes calldata _data) external pure returns (RequestParameters memory _params);
- -
90 - - - - - -

-                            
-                        
91 - - - - - -
  /**
- -
92 - - - - - -
   * @notice Proposes a response for a request, bonding the proposer's tokens
- -
93 - - - - - -
   *
- -
94 - - - - - -
   * @dev The user must have previously deposited tokens into the accounting extension
- -
95 - - - - - -
   * @param _request The request to propose a response to
- -
96 - - - - - -
   * @param _response The response being proposed
- -
97 - - - - - -
   * @param _sender The address that initiated the transaction
- -
98 - - - - - -
   */
- -
99 - - - - - -
  function propose(IOracle.Request calldata _request, IOracle.Response calldata _response, address _sender) external;
- -
100 - - - - - -

-                            
-                        
101 - - - - - -
  /**
- -
102 - - - - - -
   * @notice Finalizes the request by releasing the bond of the proposer
- -
103 - - - - - -
   *
- -
104 - - - - - -
   * @param _request The request that is being finalized
- -
105 - - - - - -
   * @param _response The final response
- -
106 - - - - - -
   * @param _finalizer The user who triggered the finalization
- -
107 - - - - - -
   */
- -
108 - - - - - -
  function finalizeRequest(
- -
109 - - - - - -
    IOracle.Request calldata _request,
- -
110 - - - - - -
    IOracle.Response calldata _response,
- -
111 - - - - - -
    address _finalizer
- -
112 - - - - - -
  ) external;
- -
113 - - - - - -

-                            
-                        
114 - - - - - -
  /**
- -
115 - - - - - -
   * @notice Releases the proposer funds if the response is valid and it has not been used to finalize the request
- -
116 - - - - - -
   *
- -
117 - - - - - -
   * @param _request The finalized request
- -
118 - - - - - -
   * @param _response The unutilized response
- -
119 - - - - - -
   */
- -
120 - - - - - -
  function releaseUnutilizedResponse(IOracle.Request calldata _request, IOracle.Response calldata _response) external;
- -
121 - - - - - -
}
- -
122 - - - - - -

-                            
-                        
-
-
- - - - - - - - - - -
-
-
- - - - - - -
Lines covered: 2 / 53 (3.8%)
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
1 - - - - - -
// SPDX-License-Identifier: MIT
- -
2 - - - - - -
// OpenZeppelin Contracts (last updated v4.9.0) (token/ERC20/ERC20.sol)
- -
3 - - - - - -

-                            
-                        
4 - - - - - -
pragma solidity ^0.8.0;
- -
5 - - - - - -

-                            
-                        
6 - - - - - -
import "./IERC20.sol";
- -
7 - - - - - -
import "./extensions/IERC20Metadata.sol";
- -
8 - - - - - -
import "../../utils/Context.sol";
- -
9 - - - - - -

-                            
-                        
10 - - - - - -
/**
- -
11 - - - - - -
 * @dev Implementation of the {IERC20} interface.
- -
12 - - - - - -
 *
- -
13 - - - - - -
 * This implementation is agnostic to the way tokens are created. This means
- -
14 - - - - - -
 * that a supply mechanism has to be added in a derived contract using {_mint}.
- -
15 - - - - - -
 * For a generic mechanism see {ERC20PresetMinterPauser}.
- -
16 - - - - - -
 *
- -
17 - - - - - -
 * TIP: For a detailed writeup see our guide
- -
18 - - - - - -
 * https://forum.openzeppelin.com/t/how-to-implement-erc20-supply-mechanisms/226[How
- -
19 - - - - - -
 * to implement supply mechanisms].
- -
20 - - - - - -
 *
- -
21 - - - - - -
 * The default value of {decimals} is 18. To change this, you should override
- -
22 - - - - - -
 * this function so it returns a different value.
- -
23 - - - - - -
 *
- -
24 - - - - - -
 * We have followed general OpenZeppelin Contracts guidelines: functions revert
- -
25 - - - - - -
 * instead returning `false` on failure. This behavior is nonetheless
- -
26 - - - - - -
 * conventional and does not conflict with the expectations of ERC20
- -
27 - - - - - -
 * applications.
- -
28 - - - - - -
 *
- -
29 - - - - - -
 * Additionally, an {Approval} event is emitted on calls to {transferFrom}.
- -
30 - - - - - -
 * This allows applications to reconstruct the allowance for all accounts just
- -
31 - - - - - -
 * by listening to said events. Other implementations of the EIP may not emit
- -
32 - - - - - -
 * these events, as it isn't required by the specification.
- -
33 - - - - - -
 *
- -
34 - - - - - -
 * Finally, the non-standard {decreaseAllowance} and {increaseAllowance}
- -
35 - - - - - -
 * functions have been added to mitigate the well-known issues around setting
- -
36 - - - - - -
 * allowances. See {IERC20-approve}.
- -
37 - - - - - -
 */
- -
38 - - - - - -
contract ERC20 is Context, IERC20, IERC20Metadata {
- -
39 - - - - - -
    mapping(address => uint256) private _balances;
- -
40 - - - - - -

-                            
-                        
41 - - - - - -
    mapping(address => mapping(address => uint256)) private _allowances;
- -
42 - - - - - -

-                            
-                        
43 - - - - - -
    uint256 private _totalSupply;
- -
44 - - - - - -

-                            
-                        
45 - - - - - -
    string private _name;
- -
46 - - - - - -
    string private _symbol;
- -
47 - - - - - -

-                            
-                        
48 - - - - - -
    /**
- -
49 - - - - - -
     * @dev Sets the values for {name} and {symbol}.
- -
50 - - - - - -
     *
- -
51 - - - - - -
     * All two of these values are immutable: they can only be set once during
- -
52 - - - - - -
     * construction.
- -
53 - - - - - -
     */
- -
54 - - - - - -
    constructor(string memory name_, string memory symbol_) {
- -
55 - -
- -
- - - -
        _name = name_;
- -
56 - -
- -
- - - -
        _symbol = symbol_;
- -
57 - - - - - -
    }
- -
58 - - - - - -

-                            
-                        
59 - - - - - -
    /**
- -
60 - - - - - -
     * @dev Returns the name of the token.
- -
61 - - - - - -
     */
- -
62 - - - - - -
    function name() public view virtual override returns (string memory) {
- -
63 - - - - - -
        return _name;
- -
64 - - - - - -
    }
- -
65 - - - - - -

-                            
-                        
66 - - - - - -
    /**
- -
67 - - - - - -
     * @dev Returns the symbol of the token, usually a shorter version of the
- -
68 - - - - - -
     * name.
- -
69 - - - - - -
     */
- -
70 - - - - - -
    function symbol() public view virtual override returns (string memory) {
- -
71 - - - - - -
        return _symbol;
- -
72 - - - - - -
    }
- -
73 - - - - - -

-                            
-                        
74 - - - - - -
    /**
- -
75 - - - - - -
     * @dev Returns the number of decimals used to get its user representation.
- -
76 - - - - - -
     * For example, if `decimals` equals `2`, a balance of `505` tokens should
- -
77 - - - - - -
     * be displayed to a user as `5.05` (`505 / 10 ** 2`).
- -
78 - - - - - -
     *
- -
79 - - - - - -
     * Tokens usually opt for a value of 18, imitating the relationship between
- -
80 - - - - - -
     * Ether and Wei. This is the default value returned by this function, unless
- -
81 - - - - - -
     * it's overridden.
- -
82 - - - - - -
     *
- -
83 - - - - - -
     * NOTE: This information is only used for _display_ purposes: it in
- -
84 - - - - - -
     * no way affects any of the arithmetic of the contract, including
- -
85 - - - - - -
     * {IERC20-balanceOf} and {IERC20-transfer}.
- -
86 - - - - - -
     */
- -
87 - - - - - -
    function decimals() public view virtual override returns (uint8) {
- -
88 - - - - - -
        return 18;
- -
89 - - - - - -
    }
- -
90 - - - - - -

-                            
-                        
91 - - - - - -
    /**
- -
92 - - - - - -
     * @dev See {IERC20-totalSupply}.
- -
93 - - - - - -
     */
- -
94 - - - - - -
    function totalSupply() public view virtual override returns (uint256) {
- -
95 - - - - - -
        return _totalSupply;
- -
96 - - - - - -
    }
- -
97 - - - - - -

-                            
-                        
98 - - - - - -
    /**
- -
99 - - - - - -
     * @dev See {IERC20-balanceOf}.
- -
100 - - - - - -
     */
- -
101 - - - - - -
    function balanceOf(address account) public view virtual override returns (uint256) {
- -
102 - - - - - -
        return _balances[account];
- -
103 - - - - - -
    }
- -
104 - - - - - -

-                            
-                        
105 - - - - - -
    /**
- -
106 - - - - - -
     * @dev See {IERC20-transfer}.
- -
107 - - - - - -
     *
- -
108 - - - - - -
     * Requirements:
- -
109 - - - - - -
     *
- -
110 - - - - - -
     * - `to` cannot be the zero address.
- -
111 - - - - - -
     * - the caller must have a balance of at least `amount`.
- -
112 - - - - - -
     */
- -
113 - - - - - -
    function transfer(address to, uint256 amount) public virtual override returns (bool) {
- -
114 - - - - - -
        address owner = _msgSender();
- -
115 - - - - - -
        _transfer(owner, to, amount);
- -
116 - - - - - -
        return true;
- -
117 - - - - - -
    }
- -
118 - - - - - -

-                            
-                        
119 - - - - - -
    /**
- -
120 - - - - - -
     * @dev See {IERC20-allowance}.
- -
121 - - - - - -
     */
- -
122 - - - - - -
    function allowance(address owner, address spender) public view virtual override returns (uint256) {
- -
123 - - - - - -
        return _allowances[owner][spender];
- -
124 - - - - - -
    }
- -
125 - - - - - -

-                            
-                        
126 - - - - - -
    /**
- -
127 - - - - - -
     * @dev See {IERC20-approve}.
- -
128 - - - - - -
     *
- -
129 - - - - - -
     * NOTE: If `amount` is the maximum `uint256`, the allowance is not updated on
- -
130 - - - - - -
     * `transferFrom`. This is semantically equivalent to an infinite approval.
- -
131 - - - - - -
     *
- -
132 - - - - - -
     * Requirements:
- -
133 - - - - - -
     *
- -
134 - - - - - -
     * - `spender` cannot be the zero address.
- -
135 - - - - - -
     */
- -
136 - - - - - -
    function approve(address spender, uint256 amount) public virtual override returns (bool) {
- -
137 - - - - - -
        address owner = _msgSender();
- -
138 - - - - - -
        _approve(owner, spender, amount);
- -
139 - - - - - -
        return true;
- -
140 - - - - - -
    }
- -
141 - - - - - -

-                            
-                        
142 - - - - - -
    /**
- -
143 - - - - - -
     * @dev See {IERC20-transferFrom}.
- -
144 - - - - - -
     *
- -
145 - - - - - -
     * Emits an {Approval} event indicating the updated allowance. This is not
- -
146 - - - - - -
     * required by the EIP. See the note at the beginning of {ERC20}.
- -
147 - - - - - -
     *
- -
148 - - - - - -
     * NOTE: Does not update the allowance if the current allowance
- -
149 - - - - - -
     * is the maximum `uint256`.
- -
150 - - - - - -
     *
- -
151 - - - - - -
     * Requirements:
- -
152 - - - - - -
     *
- -
153 - - - - - -
     * - `from` and `to` cannot be the zero address.
- -
154 - - - - - -
     * - `from` must have a balance of at least `amount`.
- -
155 - - - - - -
     * - the caller must have allowance for ``from``'s tokens of at least
- -
156 - - - - - -
     * `amount`.
- -
157 - - - - - -
     */
- -
158 - - - - - -
    function transferFrom(address from, address to, uint256 amount) public virtual override returns (bool) {
- -
159 - - - - - -
        address spender = _msgSender();
- -
160 - - - - - -
        _spendAllowance(from, spender, amount);
- -
161 - - - - - -
        _transfer(from, to, amount);
- -
162 - - - - - -
        return true;
- -
163 - - - - - -
    }
- -
164 - - - - - -

-                            
-                        
165 - - - - - -
    /**
- -
166 - - - - - -
     * @dev Atomically increases the allowance granted to `spender` by the caller.
- -
167 - - - - - -
     *
- -
168 - - - - - -
     * This is an alternative to {approve} that can be used as a mitigation for
- -
169 - - - - - -
     * problems described in {IERC20-approve}.
- -
170 - - - - - -
     *
- -
171 - - - - - -
     * Emits an {Approval} event indicating the updated allowance.
- -
172 - - - - - -
     *
- -
173 - - - - - -
     * Requirements:
- -
174 - - - - - -
     *
- -
175 - - - - - -
     * - `spender` cannot be the zero address.
- -
176 - - - - - -
     */
- -
177 - - - - - -
    function increaseAllowance(address spender, uint256 addedValue) public virtual returns (bool) {
- -
178 - - - - - -
        address owner = _msgSender();
- -
179 - - - - - -
        _approve(owner, spender, allowance(owner, spender) + addedValue);
- -
180 - - - - - -
        return true;
- -
181 - - - - - -
    }
- -
182 - - - - - -

-                            
-                        
183 - - - - - -
    /**
- -
184 - - - - - -
     * @dev Atomically decreases the allowance granted to `spender` by the caller.
- -
185 - - - - - -
     *
- -
186 - - - - - -
     * This is an alternative to {approve} that can be used as a mitigation for
- -
187 - - - - - -
     * problems described in {IERC20-approve}.
- -
188 - - - - - -
     *
- -
189 - - - - - -
     * Emits an {Approval} event indicating the updated allowance.
- -
190 - - - - - -
     *
- -
191 - - - - - -
     * Requirements:
- -
192 - - - - - -
     *
- -
193 - - - - - -
     * - `spender` cannot be the zero address.
- -
194 - - - - - -
     * - `spender` must have allowance for the caller of at least
- -
195 - - - - - -
     * `subtractedValue`.
- -
196 - - - - - -
     */
- -
197 - - - - - -
    function decreaseAllowance(address spender, uint256 subtractedValue) public virtual returns (bool) {
- -
198 - - - - - -
        address owner = _msgSender();
- -
199 - - - - - -
        uint256 currentAllowance = allowance(owner, spender);
- -
200 - - - - - -
        require(currentAllowance >= subtractedValue, "ERC20: decreased allowance below zero");
- -
201 - - - - - -
        unchecked {
- -
202 - - - - - -
            _approve(owner, spender, currentAllowance - subtractedValue);
- -
203 - - - - - -
        }
- -
204 - - - - - -

-                            
-                        
205 - - - - - -
        return true;
- -
206 - - - - - -
    }
- -
207 - - - - - -

-                            
-                        
208 - - - - - -
    /**
- -
209 - - - - - -
     * @dev Moves `amount` of tokens from `from` to `to`.
- -
210 - - - - - -
     *
- -
211 - - - - - -
     * This internal function is equivalent to {transfer}, and can be used to
- -
212 - - - - - -
     * e.g. implement automatic token fees, slashing mechanisms, etc.
- -
213 - - - - - -
     *
- -
214 - - - - - -
     * Emits a {Transfer} event.
- -
215 - - - - - -
     *
- -
216 - - - - - -
     * Requirements:
- -
217 - - - - - -
     *
- -
218 - - - - - -
     * - `from` cannot be the zero address.
- -
219 - - - - - -
     * - `to` cannot be the zero address.
- -
220 - - - - - -
     * - `from` must have a balance of at least `amount`.
- -
221 - - - - - -
     */
- -
222 - - - - - -
    function _transfer(address from, address to, uint256 amount) internal virtual {
- -
223 - - - - - -
        require(from != address(0), "ERC20: transfer from the zero address");
- -
224 - - - - - -
        require(to != address(0), "ERC20: transfer to the zero address");
- -
225 - - - - - -

-                            
-                        
226 - - - - - -
        _beforeTokenTransfer(from, to, amount);
- -
227 - - - - - -

-                            
-                        
228 - - - - - -
        uint256 fromBalance = _balances[from];
- -
229 - - - - - -
        require(fromBalance >= amount, "ERC20: transfer amount exceeds balance");
- -
230 - - - - - -
        unchecked {
- -
231 - - - - - -
            _balances[from] = fromBalance - amount;
- -
232 - - - - - -
            // Overflow not possible: the sum of all balances is capped by totalSupply, and the sum is preserved by
- -
233 - - - - - -
            // decrementing then incrementing.
- -
234 - - - - - -
            _balances[to] += amount;
- -
235 - - - - - -
        }
- -
236 - - - - - -

-                            
-                        
237 - - - - - -
        emit Transfer(from, to, amount);
- -
238 - - - - - -

-                            
-                        
239 - - - - - -
        _afterTokenTransfer(from, to, amount);
- -
240 - - - - - -
    }
- -
241 - - - - - -

-                            
-                        
242 - - - - - -
    /** @dev Creates `amount` tokens and assigns them to `account`, increasing
- -
243 - - - - - -
     * the total supply.
- -
244 - - - - - -
     *
- -
245 - - - - - -
     * Emits a {Transfer} event with `from` set to the zero address.
- -
246 - - - - - -
     *
- -
247 - - - - - -
     * Requirements:
- -
248 - - - - - -
     *
- -
249 - - - - - -
     * - `account` cannot be the zero address.
- -
250 - - - - - -
     */
- -
251 - - - - - -
    function _mint(address account, uint256 amount) internal virtual {
- -
252 - - - - - -
        require(account != address(0), "ERC20: mint to the zero address");
- -
253 - - - - - -

-                            
-                        
254 - - - - - -
        _beforeTokenTransfer(address(0), account, amount);
- -
255 - - - - - -

-                            
-                        
256 - - - - - -
        _totalSupply += amount;
- -
257 - - - - - -
        unchecked {
- -
258 - - - - - -
            // Overflow not possible: balance + amount is at most totalSupply + amount, which is checked above.
- -
259 - - - - - -
            _balances[account] += amount;
- -
260 - - - - - -
        }
- -
261 - - - - - -
        emit Transfer(address(0), account, amount);
- -
262 - - - - - -

-                            
-                        
263 - - - - - -
        _afterTokenTransfer(address(0), account, amount);
- -
264 - - - - - -
    }
- -
265 - - - - - -

-                            
-                        
266 - - - - - -
    /**
- -
267 - - - - - -
     * @dev Destroys `amount` tokens from `account`, reducing the
- -
268 - - - - - -
     * total supply.
- -
269 - - - - - -
     *
- -
270 - - - - - -
     * Emits a {Transfer} event with `to` set to the zero address.
- -
271 - - - - - -
     *
- -
272 - - - - - -
     * Requirements:
- -
273 - - - - - -
     *
- -
274 - - - - - -
     * - `account` cannot be the zero address.
- -
275 - - - - - -
     * - `account` must have at least `amount` tokens.
- -
276 - - - - - -
     */
- -
277 - - - - - -
    function _burn(address account, uint256 amount) internal virtual {
- -
278 - - - - - -
        require(account != address(0), "ERC20: burn from the zero address");
- -
279 - - - - - -

-                            
-                        
280 - - - - - -
        _beforeTokenTransfer(account, address(0), amount);
- -
281 - - - - - -

-                            
-                        
282 - - - - - -
        uint256 accountBalance = _balances[account];
- -
283 - - - - - -
        require(accountBalance >= amount, "ERC20: burn amount exceeds balance");
- -
284 - - - - - -
        unchecked {
- -
285 - - - - - -
            _balances[account] = accountBalance - amount;
- -
286 - - - - - -
            // Overflow not possible: amount <= accountBalance <= totalSupply.
- -
287 - - - - - -
            _totalSupply -= amount;
- -
288 - - - - - -
        }
- -
289 - - - - - -

-                            
-                        
290 - - - - - -
        emit Transfer(account, address(0), amount);
- -
291 - - - - - -

-                            
-                        
292 - - - - - -
        _afterTokenTransfer(account, address(0), amount);
- -
293 - - - - - -
    }
- -
294 - - - - - -

-                            
-                        
295 - - - - - -
    /**
- -
296 - - - - - -
     * @dev Sets `amount` as the allowance of `spender` over the `owner` s tokens.
- -
297 - - - - - -
     *
- -
298 - - - - - -
     * This internal function is equivalent to `approve`, and can be used to
- -
299 - - - - - -
     * e.g. set automatic allowances for certain subsystems, etc.
- -
300 - - - - - -
     *
- -
301 - - - - - -
     * Emits an {Approval} event.
- -
302 - - - - - -
     *
- -
303 - - - - - -
     * Requirements:
- -
304 - - - - - -
     *
- -
305 - - - - - -
     * - `owner` cannot be the zero address.
- -
306 - - - - - -
     * - `spender` cannot be the zero address.
- -
307 - - - - - -
     */
- -
308 - - - - - -
    function _approve(address owner, address spender, uint256 amount) internal virtual {
- -
309 - - - - - -
        require(owner != address(0), "ERC20: approve from the zero address");
- -
310 - - - - - -
        require(spender != address(0), "ERC20: approve to the zero address");
- -
311 - - - - - -

-                            
-                        
312 - - - - - -
        _allowances[owner][spender] = amount;
- -
313 - - - - - -
        emit Approval(owner, spender, amount);
- -
314 - - - - - -
    }
- -
315 - - - - - -

-                            
-                        
316 - - - - - -
    /**
- -
317 - - - - - -
     * @dev Updates `owner` s allowance for `spender` based on spent `amount`.
- -
318 - - - - - -
     *
- -
319 - - - - - -
     * Does not update the allowance amount in case of infinite allowance.
- -
320 - - - - - -
     * Revert if not enough allowance is available.
- -
321 - - - - - -
     *
- -
322 - - - - - -
     * Might emit an {Approval} event.
- -
323 - - - - - -
     */
- -
324 - - - - - -
    function _spendAllowance(address owner, address spender, uint256 amount) internal virtual {
- -
325 - - - - - -
        uint256 currentAllowance = allowance(owner, spender);
- -
326 - - - - - -
        if (currentAllowance != type(uint256).max) {
- -
327 - - - - - -
            require(currentAllowance >= amount, "ERC20: insufficient allowance");
- -
328 - - - - - -
            unchecked {
- -
329 - - - - - -
                _approve(owner, spender, currentAllowance - amount);
- -
330 - - - - - -
            }
- -
331 - - - - - -
        }
- -
332 - - - - - -
    }
- -
333 - - - - - -

-                            
-                        
334 - - - - - -
    /**
- -
335 - - - - - -
     * @dev Hook that is called before any transfer of tokens. This includes
- -
336 - - - - - -
     * minting and burning.
- -
337 - - - - - -
     *
- -
338 - - - - - -
     * Calling conditions:
- -
339 - - - - - -
     *
- -
340 - - - - - -
     * - when `from` and `to` are both non-zero, `amount` of ``from``'s tokens
- -
341 - - - - - -
     * will be transferred to `to`.
- -
342 - - - - - -
     * - when `from` is zero, `amount` tokens will be minted for `to`.
- -
343 - - - - - -
     * - when `to` is zero, `amount` of ``from``'s tokens will be burned.
- -
344 - - - - - -
     * - `from` and `to` are never both zero.
- -
345 - - - - - -
     *
- -
346 - - - - - -
     * To learn more about hooks, head to xref:ROOT:extending-contracts.adoc#using-hooks[Using Hooks].
- -
347 - - - - - -
     */
- -
348 - - - - - -
    function _beforeTokenTransfer(address from, address to, uint256 amount) internal virtual {}
- -
349 - - - - - -

-                            
-                        
350 - - - - - -
    /**
- -
351 - - - - - -
     * @dev Hook that is called after any transfer of tokens. This includes
- -
352 - - - - - -
     * minting and burning.
- -
353 - - - - - -
     *
- -
354 - - - - - -
     * Calling conditions:
- -
355 - - - - - -
     *
- -
356 - - - - - -
     * - when `from` and `to` are both non-zero, `amount` of ``from``'s tokens
- -
357 - - - - - -
     * has been transferred to `to`.
- -
358 - - - - - -
     * - when `from` is zero, `amount` tokens have been minted for `to`.
- -
359 - - - - - -
     * - when `to` is zero, `amount` of ``from``'s tokens have been burned.
- -
360 - - - - - -
     * - `from` and `to` are never both zero.
- -
361 - - - - - -
     *
- -
362 - - - - - -
     * To learn more about hooks, head to xref:ROOT:extending-contracts.adoc#using-hooks[Using Hooks].
- -
363 - - - - - -
     */
- -
364 - - - - - -
    function _afterTokenTransfer(address from, address to, uint256 amount) internal virtual {}
- -
365 - - - - - -
}
- -
366 - - - - - -

-                            
-                        
-
-
- - - - - - - - - - -
-
-
- - - - - - -
Lines covered: 0 / 0 (0.0%)
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
1 - - - - - -
// SPDX-License-Identifier: MIT
- -
2 - - - - - -
// OpenZeppelin Contracts (last updated v4.9.0) (token/ERC20/IERC20.sol)
- -
3 - - - - - -

-                            
-                        
4 - - - - - -
pragma solidity ^0.8.0;
- -
5 - - - - - -

-                            
-                        
6 - - - - - -
/**
- -
7 - - - - - -
 * @dev Interface of the ERC20 standard as defined in the EIP.
- -
8 - - - - - -
 */
- -
9 - - - - - -
interface IERC20 {
- -
10 - - - - - -
    /**
- -
11 - - - - - -
     * @dev Emitted when `value` tokens are moved from one account (`from`) to
- -
12 - - - - - -
     * another (`to`).
- -
13 - - - - - -
     *
- -
14 - - - - - -
     * Note that `value` may be zero.
- -
15 - - - - - -
     */
- -
16 - - - - - -
    event Transfer(address indexed from, address indexed to, uint256 value);
- -
17 - - - - - -

-                            
-                        
18 - - - - - -
    /**
- -
19 - - - - - -
     * @dev Emitted when the allowance of a `spender` for an `owner` is set by
- -
20 - - - - - -
     * a call to {approve}. `value` is the new allowance.
- -
21 - - - - - -
     */
- -
22 - - - - - -
    event Approval(address indexed owner, address indexed spender, uint256 value);
- -
23 - - - - - -

-                            
-                        
24 - - - - - -
    /**
- -
25 - - - - - -
     * @dev Returns the amount of tokens in existence.
- -
26 - - - - - -
     */
- -
27 - - - - - -
    function totalSupply() external view returns (uint256);
- -
28 - - - - - -

-                            
-                        
29 - - - - - -
    /**
- -
30 - - - - - -
     * @dev Returns the amount of tokens owned by `account`.
- -
31 - - - - - -
     */
- -
32 - - - - - -
    function balanceOf(address account) external view returns (uint256);
- -
33 - - - - - -

-                            
-                        
34 - - - - - -
    /**
- -
35 - - - - - -
     * @dev Moves `amount` tokens from the caller's account to `to`.
- -
36 - - - - - -
     *
- -
37 - - - - - -
     * Returns a boolean value indicating whether the operation succeeded.
- -
38 - - - - - -
     *
- -
39 - - - - - -
     * Emits a {Transfer} event.
- -
40 - - - - - -
     */
- -
41 - - - - - -
    function transfer(address to, uint256 amount) external returns (bool);
- -
42 - - - - - -

-                            
-                        
43 - - - - - -
    /**
- -
44 - - - - - -
     * @dev Returns the remaining number of tokens that `spender` will be
- -
45 - - - - - -
     * allowed to spend on behalf of `owner` through {transferFrom}. This is
- -
46 - - - - - -
     * zero by default.
- -
47 - - - - - -
     *
- -
48 - - - - - -
     * This value changes when {approve} or {transferFrom} are called.
- -
49 - - - - - -
     */
- -
50 - - - - - -
    function allowance(address owner, address spender) external view returns (uint256);
- -
51 - - - - - -

-                            
-                        
52 - - - - - -
    /**
- -
53 - - - - - -
     * @dev Sets `amount` as the allowance of `spender` over the caller's tokens.
- -
54 - - - - - -
     *
- -
55 - - - - - -
     * Returns a boolean value indicating whether the operation succeeded.
- -
56 - - - - - -
     *
- -
57 - - - - - -
     * IMPORTANT: Beware that changing an allowance with this method brings the risk
- -
58 - - - - - -
     * that someone may use both the old and the new allowance by unfortunate
- -
59 - - - - - -
     * transaction ordering. One possible solution to mitigate this race
- -
60 - - - - - -
     * condition is to first reduce the spender's allowance to 0 and set the
- -
61 - - - - - -
     * desired value afterwards:
- -
62 - - - - - -
     * https://github.com/ethereum/EIPs/issues/20#issuecomment-263524729
- -
63 - - - - - -
     *
- -
64 - - - - - -
     * Emits an {Approval} event.
- -
65 - - - - - -
     */
- -
66 - - - - - -
    function approve(address spender, uint256 amount) external returns (bool);
- -
67 - - - - - -

-                            
-                        
68 - - - - - -
    /**
- -
69 - - - - - -
     * @dev Moves `amount` tokens from `from` to `to` using the
- -
70 - - - - - -
     * allowance mechanism. `amount` is then deducted from the caller's
- -
71 - - - - - -
     * allowance.
- -
72 - - - - - -
     *
- -
73 - - - - - -
     * Returns a boolean value indicating whether the operation succeeded.
- -
74 - - - - - -
     *
- -
75 - - - - - -
     * Emits a {Transfer} event.
- -
76 - - - - - -
     */
- -
77 - - - - - -
    function transferFrom(address from, address to, uint256 amount) external returns (bool);
- -
78 - - - - - -
}
- -
79 - - - - - -

-                            
-                        
-
-
- - - - - - - - - - -
-
-
- - - - - - -
Lines covered: 0 / 0 (0.0%)
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
1 - - - - - -
// SPDX-License-Identifier: MIT
- -
2 - - - - - -
// OpenZeppelin Contracts v4.4.1 (token/ERC20/extensions/IERC20Metadata.sol)
- -
3 - - - - - -

-                            
-                        
4 - - - - - -
pragma solidity ^0.8.0;
- -
5 - - - - - -

-                            
-                        
6 - - - - - -
import "../IERC20.sol";
- -
7 - - - - - -

-                            
-                        
8 - - - - - -
/**
- -
9 - - - - - -
 * @dev Interface for the optional metadata functions from the ERC20 standard.
- -
10 - - - - - -
 *
- -
11 - - - - - -
 * _Available since v4.1._
- -
12 - - - - - -
 */
- -
13 - - - - - -
interface IERC20Metadata is IERC20 {
- -
14 - - - - - -
    /**
- -
15 - - - - - -
     * @dev Returns the name of the token.
- -
16 - - - - - -
     */
- -
17 - - - - - -
    function name() external view returns (string memory);
- -
18 - - - - - -

-                            
-                        
19 - - - - - -
    /**
- -
20 - - - - - -
     * @dev Returns the symbol of the token.
- -
21 - - - - - -
     */
- -
22 - - - - - -
    function symbol() external view returns (string memory);
- -
23 - - - - - -

-                            
-                        
24 - - - - - -
    /**
- -
25 - - - - - -
     * @dev Returns the decimals places of the token.
- -
26 - - - - - -
     */
- -
27 - - - - - -
    function decimals() external view returns (uint8);
- -
28 - - - - - -
}
- -
29 - - - - - -

-                            
-                        
-
-
- - - - - - - - - - -
-
-
- - - - - - -
Lines covered: 0 / 0 (0.0%)
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
1 - - - - - -
// SPDX-License-Identifier: MIT
- -
2 - - - - - -
// OpenZeppelin Contracts (last updated v4.9.4) (token/ERC20/extensions/IERC20Permit.sol)
- -
3 - - - - - -

-                            
-                        
4 - - - - - -
pragma solidity ^0.8.0;
- -
5 - - - - - -

-                            
-                        
6 - - - - - -
/**
- -
7 - - - - - -
 * @dev Interface of the ERC20 Permit extension allowing approvals to be made via signatures, as defined in
- -
8 - - - - - -
 * https://eips.ethereum.org/EIPS/eip-2612[EIP-2612].
- -
9 - - - - - -
 *
- -
10 - - - - - -
 * Adds the {permit} method, which can be used to change an account's ERC20 allowance (see {IERC20-allowance}) by
- -
11 - - - - - -
 * presenting a message signed by the account. By not relying on {IERC20-approve}, the token holder account doesn't
- -
12 - - - - - -
 * need to send a transaction, and thus is not required to hold Ether at all.
- -
13 - - - - - -
 *
- -
14 - - - - - -
 * ==== Security Considerations
- -
15 - - - - - -
 *
- -
16 - - - - - -
 * There are two important considerations concerning the use of `permit`. The first is that a valid permit signature
- -
17 - - - - - -
 * expresses an allowance, and it should not be assumed to convey additional meaning. In particular, it should not be
- -
18 - - - - - -
 * considered as an intention to spend the allowance in any specific way. The second is that because permits have
- -
19 - - - - - -
 * built-in replay protection and can be submitted by anyone, they can be frontrun. A protocol that uses permits should
- -
20 - - - - - -
 * take this into consideration and allow a `permit` call to fail. Combining these two aspects, a pattern that may be
- -
21 - - - - - -
 * generally recommended is:
- -
22 - - - - - -
 *
- -
23 - - - - - -
 * ```solidity
- -
24 - - - - - -
 * function doThingWithPermit(..., uint256 value, uint256 deadline, uint8 v, bytes32 r, bytes32 s) public {
- -
25 - - - - - -
 *     try token.permit(msg.sender, address(this), value, deadline, v, r, s) {} catch {}
- -
26 - - - - - -
 *     doThing(..., value);
- -
27 - - - - - -
 * }
- -
28 - - - - - -
 *
- -
29 - - - - - -
 * function doThing(..., uint256 value) public {
- -
30 - - - - - -
 *     token.safeTransferFrom(msg.sender, address(this), value);
- -
31 - - - - - -
 *     ...
- -
32 - - - - - -
 * }
- -
33 - - - - - -
 * ```
- -
34 - - - - - -
 *
- -
35 - - - - - -
 * Observe that: 1) `msg.sender` is used as the owner, leaving no ambiguity as to the signer intent, and 2) the use of
- -
36 - - - - - -
 * `try/catch` allows the permit to fail and makes the code tolerant to frontrunning. (See also
- -
37 - - - - - -
 * {SafeERC20-safeTransferFrom}).
- -
38 - - - - - -
 *
- -
39 - - - - - -
 * Additionally, note that smart contract wallets (such as Argent or Safe) are not able to produce permit signatures, so
- -
40 - - - - - -
 * contracts should have entry points that don't rely on permit.
- -
41 - - - - - -
 */
- -
42 - - - - - -
interface IERC20Permit {
- -
43 - - - - - -
    /**
- -
44 - - - - - -
     * @dev Sets `value` as the allowance of `spender` over ``owner``'s tokens,
- -
45 - - - - - -
     * given ``owner``'s signed approval.
- -
46 - - - - - -
     *
- -
47 - - - - - -
     * IMPORTANT: The same issues {IERC20-approve} has related to transaction
- -
48 - - - - - -
     * ordering also apply here.
- -
49 - - - - - -
     *
- -
50 - - - - - -
     * Emits an {Approval} event.
- -
51 - - - - - -
     *
- -
52 - - - - - -
     * Requirements:
- -
53 - - - - - -
     *
- -
54 - - - - - -
     * - `spender` cannot be the zero address.
- -
55 - - - - - -
     * - `deadline` must be a timestamp in the future.
- -
56 - - - - - -
     * - `v`, `r` and `s` must be a valid `secp256k1` signature from `owner`
- -
57 - - - - - -
     * over the EIP712-formatted function arguments.
- -
58 - - - - - -
     * - the signature must use ``owner``'s current nonce (see {nonces}).
- -
59 - - - - - -
     *
- -
60 - - - - - -
     * For more information on the signature format, see the
- -
61 - - - - - -
     * https://eips.ethereum.org/EIPS/eip-2612#specification[relevant EIP
- -
62 - - - - - -
     * section].
- -
63 - - - - - -
     *
- -
64 - - - - - -
     * CAUTION: See Security Considerations above.
- -
65 - - - - - -
     */
- -
66 - - - - - -
    function permit(
- -
67 - - - - - -
        address owner,
- -
68 - - - - - -
        address spender,
- -
69 - - - - - -
        uint256 value,
- -
70 - - - - - -
        uint256 deadline,
- -
71 - - - - - -
        uint8 v,
- -
72 - - - - - -
        bytes32 r,
- -
73 - - - - - -
        bytes32 s
- -
74 - - - - - -
    ) external;
- -
75 - - - - - -

-                            
-                        
76 - - - - - -
    /**
- -
77 - - - - - -
     * @dev Returns the current nonce for `owner`. This value must be
- -
78 - - - - - -
     * included whenever a signature is generated for {permit}.
- -
79 - - - - - -
     *
- -
80 - - - - - -
     * Every successful call to {permit} increases ``owner``'s nonce by one. This
- -
81 - - - - - -
     * prevents a signature from being used multiple times.
- -
82 - - - - - -
     */
- -
83 - - - - - -
    function nonces(address owner) external view returns (uint256);
- -
84 - - - - - -

-                            
-                        
85 - - - - - -
    /**
- -
86 - - - - - -
     * @dev Returns the domain separator used in the encoding of the signature for {permit}, as defined by {EIP712}.
- -
87 - - - - - -
     */
- -
88 - - - - - -
    // solhint-disable-next-line func-name-mixedcase
- -
89 - - - - - -
    function DOMAIN_SEPARATOR() external view returns (bytes32);
- -
90 - - - - - -
}
- -
91 - - - - - -

-                            
-                        
-
-
- - - - - - - - - - -
-
-
- - - - - - -
Lines covered: 0 / 4 (0.0%)
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
1 - - - - - -
// SPDX-License-Identifier: MIT
- -
2 - - - - - -
// OpenZeppelin Contracts (last updated v4.9.3) (token/ERC20/utils/SafeERC20.sol)
- -
3 - - - - - -

-                            
-                        
4 - - - - - -
pragma solidity ^0.8.0;
- -
5 - - - - - -

-                            
-                        
6 - - - - - -
import "../IERC20.sol";
- -
7 - - - - - -
import "../extensions/IERC20Permit.sol";
- -
8 - - - - - -
import "../../../utils/Address.sol";
- -
9 - - - - - -

-                            
-                        
10 - - - - - -
/**
- -
11 - - - - - -
 * @title SafeERC20
- -
12 - - - - - -
 * @dev Wrappers around ERC20 operations that throw on failure (when the token
- -
13 - - - - - -
 * contract returns false). Tokens that return no value (and instead revert or
- -
14 - - - - - -
 * throw on failure) are also supported, non-reverting calls are assumed to be
- -
15 - - - - - -
 * successful.
- -
16 - - - - - -
 * To use this library you can add a `using SafeERC20 for IERC20;` statement to your contract,
- -
17 - - - - - -
 * which allows you to call the safe operations as `token.safeTransfer(...)`, etc.
- -
18 - - - - - -
 */
- -
19 - - - - - -
library SafeERC20 {
- -
20 - - - - - -
    using Address for address;
- -
21 - - - - - -

-                            
-                        
22 - - - - - -
    /**
- -
23 - - - - - -
     * @dev Transfer `value` amount of `token` from the calling contract to `to`. If `token` returns no value,
- -
24 - - - - - -
     * non-reverting calls are assumed to be successful.
- -
25 - - - - - -
     */
- -
26 - - - - - -
    function safeTransfer(IERC20 token, address to, uint256 value) internal {
- -
27 - - - - - -
        _callOptionalReturn(token, abi.encodeWithSelector(token.transfer.selector, to, value));
- -
28 - - - - - -
    }
- -
29 - - - - - -

-                            
-                        
30 - - - - - -
    /**
- -
31 - - - - - -
     * @dev Transfer `value` amount of `token` from `from` to `to`, spending the approval given by `from` to the
- -
32 - - - - - -
     * calling contract. If `token` returns no value, non-reverting calls are assumed to be successful.
- -
33 - - - - - -
     */
- -
34 - - - - - -
    function safeTransferFrom(IERC20 token, address from, address to, uint256 value) internal {
- -
35 - - - - - -
        _callOptionalReturn(token, abi.encodeWithSelector(token.transferFrom.selector, from, to, value));
- -
36 - - - - - -
    }
- -
37 - - - - - -

-                            
-                        
38 - - - - - -
    /**
- -
39 - - - - - -
     * @dev Deprecated. This function has issues similar to the ones found in
- -
40 - - - - - -
     * {IERC20-approve}, and its usage is discouraged.
- -
41 - - - - - -
     *
- -
42 - - - - - -
     * Whenever possible, use {safeIncreaseAllowance} and
- -
43 - - - - - -
     * {safeDecreaseAllowance} instead.
- -
44 - - - - - -
     */
- -
45 - - - - - -
    function safeApprove(IERC20 token, address spender, uint256 value) internal {
- -
46 - - - - - -
        // safeApprove should only be called when setting an initial allowance,
- -
47 - - - - - -
        // or when resetting it to zero. To increase and decrease it, use
- -
48 - - - - - -
        // 'safeIncreaseAllowance' and 'safeDecreaseAllowance'
- -
49 - - - - - -
        require(
- -
50 - - - - - -
            (value == 0) || (token.allowance(address(this), spender) == 0),
- -
51 - - - - - -
            "SafeERC20: approve from non-zero to non-zero allowance"
- -
52 - - - - - -
        );
- -
53 - - - - - -
        _callOptionalReturn(token, abi.encodeWithSelector(token.approve.selector, spender, value));
- -
54 - - - - - -
    }
- -
55 - - - - - -

-                            
-                        
56 - - - - - -
    /**
- -
57 - - - - - -
     * @dev Increase the calling contract's allowance toward `spender` by `value`. If `token` returns no value,
- -
58 - - - - - -
     * non-reverting calls are assumed to be successful.
- -
59 - - - - - -
     */
- -
60 - - - - - -
    function safeIncreaseAllowance(IERC20 token, address spender, uint256 value) internal {
- -
61 - - - - - -
        uint256 oldAllowance = token.allowance(address(this), spender);
- -
62 - - - - - -
        _callOptionalReturn(token, abi.encodeWithSelector(token.approve.selector, spender, oldAllowance + value));
- -
63 - - - - - -
    }
- -
64 - - - - - -

-                            
-                        
65 - - - - - -
    /**
- -
66 - - - - - -
     * @dev Decrease the calling contract's allowance toward `spender` by `value`. If `token` returns no value,
- -
67 - - - - - -
     * non-reverting calls are assumed to be successful.
- -
68 - - - - - -
     */
- -
69 - - - - - -
    function safeDecreaseAllowance(IERC20 token, address spender, uint256 value) internal {
- -
70 - - - - - -
        unchecked {
- -
71 - - - - - -
            uint256 oldAllowance = token.allowance(address(this), spender);
- -
72 - - - - - -
            require(oldAllowance >= value, "SafeERC20: decreased allowance below zero");
- -
73 - - - - - -
            _callOptionalReturn(token, abi.encodeWithSelector(token.approve.selector, spender, oldAllowance - value));
- -
74 - - - - - -
        }
- -
75 - - - - - -
    }
- -
76 - - - - - -

-                            
-                        
77 - - - - - -
    /**
- -
78 - - - - - -
     * @dev Set the calling contract's allowance toward `spender` to `value`. If `token` returns no value,
- -
79 - - - - - -
     * non-reverting calls are assumed to be successful. Meant to be used with tokens that require the approval
- -
80 - - - - - -
     * to be set to zero before setting it to a non-zero value, such as USDT.
- -
81 - - - - - -
     */
- -
82 - - - - - -
    function forceApprove(IERC20 token, address spender, uint256 value) internal {
- -
83 - - - - - -
        bytes memory approvalCall = abi.encodeWithSelector(token.approve.selector, spender, value);
- -
84 - - - - - -

-                            
-                        
85 - - - - - -
        if (!_callOptionalReturnBool(token, approvalCall)) {
- -
86 - - - - - -
            _callOptionalReturn(token, abi.encodeWithSelector(token.approve.selector, spender, 0));
- -
87 - - - - - -
            _callOptionalReturn(token, approvalCall);
- -
88 - - - - - -
        }
- -
89 - - - - - -
    }
- -
90 - - - - - -

-                            
-                        
91 - - - - - -
    /**
- -
92 - - - - - -
     * @dev Use a ERC-2612 signature to set the `owner` approval toward `spender` on `token`.
- -
93 - - - - - -
     * Revert on invalid signature.
- -
94 - - - - - -
     */
- -
95 - - - - - -
    function safePermit(
- -
96 - - - - - -
        IERC20Permit token,
- -
97 - - - - - -
        address owner,
- -
98 - - - - - -
        address spender,
- -
99 - - - - - -
        uint256 value,
- -
100 - - - - - -
        uint256 deadline,
- -
101 - - - - - -
        uint8 v,
- -
102 - - - - - -
        bytes32 r,
- -
103 - - - - - -
        bytes32 s
- -
104 - - - - - -
    ) internal {
- -
105 - - - - - -
        uint256 nonceBefore = token.nonces(owner);
- -
106 - - - - - -
        token.permit(owner, spender, value, deadline, v, r, s);
- -
107 - - - - - -
        uint256 nonceAfter = token.nonces(owner);
- -
108 - - - - - -
        require(nonceAfter == nonceBefore + 1, "SafeERC20: permit did not succeed");
- -
109 - - - - - -
    }
- -
110 - - - - - -

-                            
-                        
111 - - - - - -
    /**
- -
112 - - - - - -
     * @dev Imitates a Solidity high-level call (i.e. a regular function call to a contract), relaxing the requirement
- -
113 - - - - - -
     * on the return value: the return value is optional (but if data is returned, it must not be false).
- -
114 - - - - - -
     * @param token The token targeted by the call.
- -
115 - - - - - -
     * @param data The call data (encoded using abi.encode or one of its variants).
- -
116 - - - - - -
     */
- -
117 - - - - - -
    function _callOptionalReturn(IERC20 token, bytes memory data) private {
- -
118 - - - - - -
        // We need to perform a low level call here, to bypass Solidity's return data size checking mechanism, since
- -
119 - - - - - -
        // we're implementing it ourselves. We use {Address-functionCall} to perform this call, which verifies that
- -
120 - - - - - -
        // the target address contains contract code and also asserts for success in the low-level call.
- -
121 - - - - - -

-                            
-                        
122 - - - - - -
        bytes memory returndata = address(token).functionCall(data, "SafeERC20: low-level call failed");
- -
123 - - - - - -
        require(returndata.length == 0 || abi.decode(returndata, (bool)), "SafeERC20: ERC20 operation did not succeed");
- -
124 - - - - - -
    }
- -
125 - - - - - -

-                            
-                        
126 - - - - - -
    /**
- -
127 - - - - - -
     * @dev Imitates a Solidity high-level call (i.e. a regular function call to a contract), relaxing the requirement
- -
128 - - - - - -
     * on the return value: the return value is optional (but if data is returned, it must not be false).
- -
129 - - - - - -
     * @param token The token targeted by the call.
- -
130 - - - - - -
     * @param data The call data (encoded using abi.encode or one of its variants).
- -
131 - - - - - -
     *
- -
132 - - - - - -
     * This is a variant of {_callOptionalReturn} that silents catches all reverts and returns a bool instead.
- -
133 - - - - - -
     */
- -
134 - - - - - -
    function _callOptionalReturnBool(IERC20 token, bytes memory data) private returns (bool) {
- -
135 - - - - - -
        // We need to perform a low level call here, to bypass Solidity's return data size checking mechanism, since
- -
136 - - - - - -
        // we're implementing it ourselves. We cannot use {Address-functionCall} here since this should return false
- -
137 - - - - - -
        // and not revert is the subcall reverts.
- -
138 - - - - - -

-                            
-                        
139 - - - - - -
        (bool success, bytes memory returndata) = address(token).call(data);
- -
140 - - - - - -
        return
- -
141 - - - - - -
            success && (returndata.length == 0 || abi.decode(returndata, (bool))) && Address.isContract(address(token));
- -
142 - - - - - -
    }
- -
143 - - - - - -
}
- -
144 - - - - - -

-                            
-                        
-
-
- - - - - - - - - - -
-
-
- - - - - - -
Lines covered: 0 / 18 (0.0%)
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
1 - - - - - -
// SPDX-License-Identifier: MIT
- -
2 - - - - - -
// OpenZeppelin Contracts (last updated v4.9.0) (utils/Address.sol)
- -
3 - - - - - -

-                            
-                        
4 - - - - - -
pragma solidity ^0.8.1;
- -
5 - - - - - -

-                            
-                        
6 - - - - - -
/**
- -
7 - - - - - -
 * @dev Collection of functions related to the address type
- -
8 - - - - - -
 */
- -
9 - - - - - -
library Address {
- -
10 - - - - - -
    /**
- -
11 - - - - - -
     * @dev Returns true if `account` is a contract.
- -
12 - - - - - -
     *
- -
13 - - - - - -
     * [IMPORTANT]
- -
14 - - - - - -
     * ====
- -
15 - - - - - -
     * It is unsafe to assume that an address for which this function returns
- -
16 - - - - - -
     * false is an externally-owned account (EOA) and not a contract.
- -
17 - - - - - -
     *
- -
18 - - - - - -
     * Among others, `isContract` will return false for the following
- -
19 - - - - - -
     * types of addresses:
- -
20 - - - - - -
     *
- -
21 - - - - - -
     *  - an externally-owned account
- -
22 - - - - - -
     *  - a contract in construction
- -
23 - - - - - -
     *  - an address where a contract will be created
- -
24 - - - - - -
     *  - an address where a contract lived, but was destroyed
- -
25 - - - - - -
     *
- -
26 - - - - - -
     * Furthermore, `isContract` will also return true if the target contract within
- -
27 - - - - - -
     * the same transaction is already scheduled for destruction by `SELFDESTRUCT`,
- -
28 - - - - - -
     * which only has an effect at the end of a transaction.
- -
29 - - - - - -
     * ====
- -
30 - - - - - -
     *
- -
31 - - - - - -
     * [IMPORTANT]
- -
32 - - - - - -
     * ====
- -
33 - - - - - -
     * You shouldn't rely on `isContract` to protect against flash loan attacks!
- -
34 - - - - - -
     *
- -
35 - - - - - -
     * Preventing calls from contracts is highly discouraged. It breaks composability, breaks support for smart wallets
- -
36 - - - - - -
     * like Gnosis Safe, and does not provide security since it can be circumvented by calling from a contract
- -
37 - - - - - -
     * constructor.
- -
38 - - - - - -
     * ====
- -
39 - - - - - -
     */
- -
40 - - - - - -
    function isContract(address account) internal view returns (bool) {
- -
41 - - - - - -
        // This method relies on extcodesize/address.code.length, which returns 0
- -
42 - - - - - -
        // for contracts in construction, since the code is only stored at the end
- -
43 - - - - - -
        // of the constructor execution.
- -
44 - - - - - -

-                            
-                        
45 - - - - - -
        return account.code.length > 0;
- -
46 - - - - - -
    }
- -
47 - - - - - -

-                            
-                        
48 - - - - - -
    /**
- -
49 - - - - - -
     * @dev Replacement for Solidity's `transfer`: sends `amount` wei to
- -
50 - - - - - -
     * `recipient`, forwarding all available gas and reverting on errors.
- -
51 - - - - - -
     *
- -
52 - - - - - -
     * https://eips.ethereum.org/EIPS/eip-1884[EIP1884] increases the gas cost
- -
53 - - - - - -
     * of certain opcodes, possibly making contracts go over the 2300 gas limit
- -
54 - - - - - -
     * imposed by `transfer`, making them unable to receive funds via
- -
55 - - - - - -
     * `transfer`. {sendValue} removes this limitation.
- -
56 - - - - - -
     *
- -
57 - - - - - -
     * https://consensys.net/diligence/blog/2019/09/stop-using-soliditys-transfer-now/[Learn more].
- -
58 - - - - - -
     *
- -
59 - - - - - -
     * IMPORTANT: because control is transferred to `recipient`, care must be
- -
60 - - - - - -
     * taken to not create reentrancy vulnerabilities. Consider using
- -
61 - - - - - -
     * {ReentrancyGuard} or the
- -
62 - - - - - -
     * https://solidity.readthedocs.io/en/v0.8.0/security-considerations.html#use-the-checks-effects-interactions-pattern[checks-effects-interactions pattern].
- -
63 - - - - - -
     */
- -
64 - - - - - -
    function sendValue(address payable recipient, uint256 amount) internal {
- -
65 - - - - - -
        require(address(this).balance >= amount, "Address: insufficient balance");
- -
66 - - - - - -

-                            
-                        
67 - - - - - -
        (bool success, ) = recipient.call{value: amount}("");
- -
68 - - - - - -
        require(success, "Address: unable to send value, recipient may have reverted");
- -
69 - - - - - -
    }
- -
70 - - - - - -

-                            
-                        
71 - - - - - -
    /**
- -
72 - - - - - -
     * @dev Performs a Solidity function call using a low level `call`. A
- -
73 - - - - - -
     * plain `call` is an unsafe replacement for a function call: use this
- -
74 - - - - - -
     * function instead.
- -
75 - - - - - -
     *
- -
76 - - - - - -
     * If `target` reverts with a revert reason, it is bubbled up by this
- -
77 - - - - - -
     * function (like regular Solidity function calls).
- -
78 - - - - - -
     *
- -
79 - - - - - -
     * Returns the raw returned data. To convert to the expected return value,
- -
80 - - - - - -
     * use https://solidity.readthedocs.io/en/latest/units-and-global-variables.html?highlight=abi.decode#abi-encoding-and-decoding-functions[`abi.decode`].
- -
81 - - - - - -
     *
- -
82 - - - - - -
     * Requirements:
- -
83 - - - - - -
     *
- -
84 - - - - - -
     * - `target` must be a contract.
- -
85 - - - - - -
     * - calling `target` with `data` must not revert.
- -
86 - - - - - -
     *
- -
87 - - - - - -
     * _Available since v3.1._
- -
88 - - - - - -
     */
- -
89 - - - - - -
    function functionCall(address target, bytes memory data) internal returns (bytes memory) {
- -
90 - - - - - -
        return functionCallWithValue(target, data, 0, "Address: low-level call failed");
- -
91 - - - - - -
    }
- -
92 - - - - - -

-                            
-                        
93 - - - - - -
    /**
- -
94 - - - - - -
     * @dev Same as {xref-Address-functionCall-address-bytes-}[`functionCall`], but with
- -
95 - - - - - -
     * `errorMessage` as a fallback revert reason when `target` reverts.
- -
96 - - - - - -
     *
- -
97 - - - - - -
     * _Available since v3.1._
- -
98 - - - - - -
     */
- -
99 - - - - - -
    function functionCall(
- -
100 - - - - - -
        address target,
- -
101 - - - - - -
        bytes memory data,
- -
102 - - - - - -
        string memory errorMessage
- -
103 - - - - - -
    ) internal returns (bytes memory) {
- -
104 - - - - - -
        return functionCallWithValue(target, data, 0, errorMessage);
- -
105 - - - - - -
    }
- -
106 - - - - - -

-                            
-                        
107 - - - - - -
    /**
- -
108 - - - - - -
     * @dev Same as {xref-Address-functionCall-address-bytes-}[`functionCall`],
- -
109 - - - - - -
     * but also transferring `value` wei to `target`.
- -
110 - - - - - -
     *
- -
111 - - - - - -
     * Requirements:
- -
112 - - - - - -
     *
- -
113 - - - - - -
     * - the calling contract must have an ETH balance of at least `value`.
- -
114 - - - - - -
     * - the called Solidity function must be `payable`.
- -
115 - - - - - -
     *
- -
116 - - - - - -
     * _Available since v3.1._
- -
117 - - - - - -
     */
- -
118 - - - - - -
    function functionCallWithValue(address target, bytes memory data, uint256 value) internal returns (bytes memory) {
- -
119 - - - - - -
        return functionCallWithValue(target, data, value, "Address: low-level call with value failed");
- -
120 - - - - - -
    }
- -
121 - - - - - -

-                            
-                        
122 - - - - - -
    /**
- -
123 - - - - - -
     * @dev Same as {xref-Address-functionCallWithValue-address-bytes-uint256-}[`functionCallWithValue`], but
- -
124 - - - - - -
     * with `errorMessage` as a fallback revert reason when `target` reverts.
- -
125 - - - - - -
     *
- -
126 - - - - - -
     * _Available since v3.1._
- -
127 - - - - - -
     */
- -
128 - - - - - -
    function functionCallWithValue(
- -
129 - - - - - -
        address target,
- -
130 - - - - - -
        bytes memory data,
- -
131 - - - - - -
        uint256 value,
- -
132 - - - - - -
        string memory errorMessage
- -
133 - - - - - -
    ) internal returns (bytes memory) {
- -
134 - - - - - -
        require(address(this).balance >= value, "Address: insufficient balance for call");
- -
135 - - - - - -
        (bool success, bytes memory returndata) = target.call{value: value}(data);
- -
136 - - - - - -
        return verifyCallResultFromTarget(target, success, returndata, errorMessage);
- -
137 - - - - - -
    }
- -
138 - - - - - -

-                            
-                        
139 - - - - - -
    /**
- -
140 - - - - - -
     * @dev Same as {xref-Address-functionCall-address-bytes-}[`functionCall`],
- -
141 - - - - - -
     * but performing a static call.
- -
142 - - - - - -
     *
- -
143 - - - - - -
     * _Available since v3.3._
- -
144 - - - - - -
     */
- -
145 - - - - - -
    function functionStaticCall(address target, bytes memory data) internal view returns (bytes memory) {
- -
146 - - - - - -
        return functionStaticCall(target, data, "Address: low-level static call failed");
- -
147 - - - - - -
    }
- -
148 - - - - - -

-                            
-                        
149 - - - - - -
    /**
- -
150 - - - - - -
     * @dev Same as {xref-Address-functionCall-address-bytes-string-}[`functionCall`],
- -
151 - - - - - -
     * but performing a static call.
- -
152 - - - - - -
     *
- -
153 - - - - - -
     * _Available since v3.3._
- -
154 - - - - - -
     */
- -
155 - - - - - -
    function functionStaticCall(
- -
156 - - - - - -
        address target,
- -
157 - - - - - -
        bytes memory data,
- -
158 - - - - - -
        string memory errorMessage
- -
159 - - - - - -
    ) internal view returns (bytes memory) {
- -
160 - - - - - -
        (bool success, bytes memory returndata) = target.staticcall(data);
- -
161 - - - - - -
        return verifyCallResultFromTarget(target, success, returndata, errorMessage);
- -
162 - - - - - -
    }
- -
163 - - - - - -

-                            
-                        
164 - - - - - -
    /**
- -
165 - - - - - -
     * @dev Same as {xref-Address-functionCall-address-bytes-}[`functionCall`],
- -
166 - - - - - -
     * but performing a delegate call.
- -
167 - - - - - -
     *
- -
168 - - - - - -
     * _Available since v3.4._
- -
169 - - - - - -
     */
- -
170 - - - - - -
    function functionDelegateCall(address target, bytes memory data) internal returns (bytes memory) {
- -
171 - - - - - -
        return functionDelegateCall(target, data, "Address: low-level delegate call failed");
- -
172 - - - - - -
    }
- -
173 - - - - - -

-                            
-                        
174 - - - - - -
    /**
- -
175 - - - - - -
     * @dev Same as {xref-Address-functionCall-address-bytes-string-}[`functionCall`],
- -
176 - - - - - -
     * but performing a delegate call.
- -
177 - - - - - -
     *
- -
178 - - - - - -
     * _Available since v3.4._
- -
179 - - - - - -
     */
- -
180 - - - - - -
    function functionDelegateCall(
- -
181 - - - - - -
        address target,
- -
182 - - - - - -
        bytes memory data,
- -
183 - - - - - -
        string memory errorMessage
- -
184 - - - - - -
    ) internal returns (bytes memory) {
- -
185 - - - - - -
        (bool success, bytes memory returndata) = target.delegatecall(data);
- -
186 - - - - - -
        return verifyCallResultFromTarget(target, success, returndata, errorMessage);
- -
187 - - - - - -
    }
- -
188 - - - - - -

-                            
-                        
189 - - - - - -
    /**
- -
190 - - - - - -
     * @dev Tool to verify that a low level call to smart-contract was successful, and revert (either by bubbling
- -
191 - - - - - -
     * the revert reason or using the provided one) in case of unsuccessful call or if target was not a contract.
- -
192 - - - - - -
     *
- -
193 - - - - - -
     * _Available since v4.8._
- -
194 - - - - - -
     */
- -
195 - - - - - -
    function verifyCallResultFromTarget(
- -
196 - - - - - -
        address target,
- -
197 - - - - - -
        bool success,
- -
198 - - - - - -
        bytes memory returndata,
- -
199 - - - - - -
        string memory errorMessage
- -
200 - - - - - -
    ) internal view returns (bytes memory) {
- -
201 - - - - - -
        if (success) {
- -
202 - - - - - -
            if (returndata.length == 0) {
- -
203 - - - - - -
                // only check isContract if the call was successful and the return data is empty
- -
204 - - - - - -
                // otherwise we already know that it was a contract
- -
205 - - - - - -
                require(isContract(target), "Address: call to non-contract");
- -
206 - - - - - -
            }
- -
207 - - - - - -
            return returndata;
- -
208 - - - - - -
        } else {
- -
209 - - - - - -
            _revert(returndata, errorMessage);
- -
210 - - - - - -
        }
- -
211 - - - - - -
    }
- -
212 - - - - - -

-                            
-                        
213 - - - - - -
    /**
- -
214 - - - - - -
     * @dev Tool to verify that a low level call was successful, and revert if it wasn't, either by bubbling the
- -
215 - - - - - -
     * revert reason or using the provided one.
- -
216 - - - - - -
     *
- -
217 - - - - - -
     * _Available since v4.3._
- -
218 - - - - - -
     */
- -
219 - - - - - -
    function verifyCallResult(
- -
220 - - - - - -
        bool success,
- -
221 - - - - - -
        bytes memory returndata,
- -
222 - - - - - -
        string memory errorMessage
- -
223 - - - - - -
    ) internal pure returns (bytes memory) {
- -
224 - - - - - -
        if (success) {
- -
225 - - - - - -
            return returndata;
- -
226 - - - - - -
        } else {
- -
227 - - - - - -
            _revert(returndata, errorMessage);
- -
228 - - - - - -
        }
- -
229 - - - - - -
    }
- -
230 - - - - - -

-                            
-                        
231 - - - - - -
    function _revert(bytes memory returndata, string memory errorMessage) private pure {
- -
232 - - - - - -
        // Look for revert reason and bubble it up if present
- -
233 - - - - - -
        if (returndata.length > 0) {
- -
234 - - - - - -
            // The easiest way to bubble the revert reason is using memory via assembly
- -
235 - - - - - -
            /// @solidity memory-safe-assembly
- -
236 - - - - - -
            assembly {
- -
237 - - - - - -
                let returndata_size := mload(returndata)
- -
238 - - - - - -
                revert(add(32, returndata), returndata_size)
- -
239 - - - - - -
            }
- -
240 - - - - - -
        } else {
- -
241 - - - - - -
            revert(errorMessage);
- -
242 - - - - - -
        }
- -
243 - - - - - -
    }
- -
244 - - - - - -
}
- -
245 - - - - - -

-                            
-                        
-
-
- - - - - - - - - - -
-
-
- - - - - - -
Lines covered: 0 / 1 (0.0%)
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
1 - - - - - -
// SPDX-License-Identifier: MIT
- -
2 - - - - - -
// OpenZeppelin Contracts (last updated v4.9.4) (utils/Context.sol)
- -
3 - - - - - -

-                            
-                        
4 - - - - - -
pragma solidity ^0.8.0;
- -
5 - - - - - -

-                            
-                        
6 - - - - - -
/**
- -
7 - - - - - -
 * @dev Provides information about the current execution context, including the
- -
8 - - - - - -
 * sender of the transaction and its data. While these are generally available
- -
9 - - - - - -
 * via msg.sender and msg.data, they should not be accessed in such a direct
- -
10 - - - - - -
 * manner, since when dealing with meta-transactions the account sending and
- -
11 - - - - - -
 * paying for execution may not be the actual sender (as far as an application
- -
12 - - - - - -
 * is concerned).
- -
13 - - - - - -
 *
- -
14 - - - - - -
 * This contract is only required for intermediate, library-like contracts.
- -
15 - - - - - -
 */
- -
16 - - - - - -
abstract contract Context {
- -
17 - - - - - -
    function _msgSender() internal view virtual returns (address) {
- -
18 - - - - - -
        return msg.sender;
- -
19 - - - - - -
    }
- -
20 - - - - - -

-                            
-                        
21 - - - - - -
    function _msgData() internal view virtual returns (bytes calldata) {
- -
22 - - - - - -
        return msg.data;
- -
23 - - - - - -
    }
- -
24 - - - - - -

-                            
-                        
25 - - - - - -
    function _contextSuffixLength() internal view virtual returns (uint256) {
- -
26 - - - - - -
        return 0;
- -
27 - - - - - -
    }
- -
28 - - - - - -
}
- -
29 - - - - - -

-                            
-                        
-
-
- - - - - - - - - - -
-
-
- - - - - - -
Lines covered: 27 / 45 (60.0%)
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
1 - - - - - -
// SPDX-License-Identifier: MIT
- -
2 - - - - - -
// OpenZeppelin Contracts (last updated v4.9.0) (utils/structs/EnumerableSet.sol)
- -
3 - - - - - -
// This file was procedurally generated from scripts/generate/templates/EnumerableSet.js.
- -
4 - - - - - -

-                            
-                        
5 - - - - - -
pragma solidity ^0.8.0;
- -
6 - - - - - -

-                            
-                        
7 - - - - - -
/**
- -
8 - - - - - -
 * @dev Library for managing
- -
9 - - - - - -
 * https://en.wikipedia.org/wiki/Set_(abstract_data_type)[sets] of primitive
- -
10 - - - - - -
 * types.
- -
11 - - - - - -
 *
- -
12 - - - - - -
 * Sets have the following properties:
- -
13 - - - - - -
 *
- -
14 - - - - - -
 * - Elements are added, removed, and checked for existence in constant time
- -
15 - - - - - -
 * (O(1)).
- -
16 - - - - - -
 * - Elements are enumerated in O(n). No guarantees are made on the ordering.
- -
17 - - - - - -
 *
- -
18 - - - - - -
 * ```solidity
- -
19 - - - - - -
 * contract Example {
- -
20 - - - - - -
 *     // Add the library methods
- -
21 - - - - - -
 *     using EnumerableSet for EnumerableSet.AddressSet;
- -
22 - - - - - -
 *
- -
23 - - - - - -
 *     // Declare a set state variable
- -
24 - - - - - -
 *     EnumerableSet.AddressSet private mySet;
- -
25 - - - - - -
 * }
- -
26 - - - - - -
 * ```
- -
27 - - - - - -
 *
- -
28 - - - - - -
 * As of v3.3.0, sets of type `bytes32` (`Bytes32Set`), `address` (`AddressSet`)
- -
29 - - - - - -
 * and `uint256` (`UintSet`) are supported.
- -
30 - - - - - -
 *
- -
31 - - - - - -
 * [WARNING]
- -
32 - - - - - -
 * ====
- -
33 - - - - - -
 * Trying to delete such a structure from storage will likely result in data corruption, rendering the structure
- -
34 - - - - - -
 * unusable.
- -
35 - - - - - -
 * See https://github.com/ethereum/solidity/pull/11843[ethereum/solidity#11843] for more info.
- -
36 - - - - - -
 *
- -
37 - - - - - -
 * In order to clean an EnumerableSet, you can either remove all elements one by one or create a fresh instance using an
- -
38 - - - - - -
 * array of EnumerableSet.
- -
39 - - - - - -
 * ====
- -
40 - - - - - -
 */
- -
41 - - - - - -
library EnumerableSet {
- -
42 - - - - - -
    // To implement this library for multiple types with as little code
- -
43 - - - - - -
    // repetition as possible, we write it in terms of a generic Set type with
- -
44 - - - - - -
    // bytes32 values.
- -
45 - - - - - -
    // The Set implementation uses private functions, and user-facing
- -
46 - - - - - -
    // implementations (such as AddressSet) are just wrappers around the
- -
47 - - - - - -
    // underlying Set.
- -
48 - - - - - -
    // This means that we can only create new EnumerableSets for types that fit
- -
49 - - - - - -
    // in bytes32.
- -
50 - - - - - -

-                            
-                        
51 - - - - - -
    struct Set {
- -
52 - - - - - -
        // Storage of set values
- -
53 - - - - - -
        bytes32[] _values;
- -
54 - - - - - -
        // Position of the value in the `values` array, plus 1 because index 0
- -
55 - - - - - -
        // means a value is not in the set.
- -
56 - - - - - -
        mapping(bytes32 => uint256) _indexes;
- -
57 - - - - - -
    }
- -
58 - - - - - -

-                            
-                        
59 - - - - - -
    /**
- -
60 - - - - - -
     * @dev Add a value to a set. O(1).
- -
61 - - - - - -
     *
- -
62 - - - - - -
     * Returns true if the value was added to the set, that is if it was not
- -
63 - - - - - -
     * already present.
- -
64 - - - - - -
     */
- -
65 - -
- -
- -
- -
- -
    function _add(Set storage set, bytes32 value) private returns (bool) {
- -
66 - - - - - -
        if (!_contains(set, value)) {
- -
67 - -
- -
- - - -
            set._values.push(value);
- -
68 - - - - - -
            // The value is stored at length-1, but we add 1 to all indexes
- -
69 - - - - - -
            // and use 0 as a sentinel value
- -
70 - -
- -
- - - -
            set._indexes[value] = set._values.length;
- -
71 - -
- -
- - - -
            return true;
- -
72 - - - - - -
        } else {
- -
73 - -
- -
- -
- -
- -
            return false;
- -
74 - - - - - -
        }
- -
75 - - - - - -
    }
- -
76 - - - - - -

-                            
-                        
77 - - - - - -
    /**
- -
78 - - - - - -
     * @dev Removes a value from a set. O(1).
- -
79 - - - - - -
     *
- -
80 - - - - - -
     * Returns true if the value was removed from the set, that is if it was
- -
81 - - - - - -
     * present.
- -
82 - - - - - -
     */
- -
83 - -
- -
- -
- -
- -
    function _remove(Set storage set, bytes32 value) private returns (bool) {
- -
84 - - - - - -
        // We read and store the value's index to prevent multiple reads from the same storage slot
- -
85 - -
- -
- -
- -
- -
        uint256 valueIndex = set._indexes[value];
- -
86 - - - - - -

-                            
-                        
87 - -
- -
- -
- -
- -
        if (valueIndex != 0) {
- -
88 - - - - - -
            // Equivalent to contains(set, value)
- -
89 - - - - - -
            // To delete an element from the _values array in O(1), we swap the element to delete with the last one in
- -
90 - - - - - -
            // the array, and then remove the last element (sometimes called as 'swap and pop').
- -
91 - - - - - -
            // This modifies the order of the array, as noted in {at}.
- -
92 - - - - - -

-                            
-                        
93 - -
- -
- - - -
            uint256 toDeleteIndex = valueIndex - 1;
- -
94 - -
- -
- - - -
            uint256 lastIndex = set._values.length - 1;
- -
95 - - - - - -

-                            
-                        
96 - -
- -
- - - -
            if (lastIndex != toDeleteIndex) {
- -
97 - -
- -
- - - -
                bytes32 lastValue = set._values[lastIndex];
- -
98 - - - - - -

-                            
-                        
99 - - - - - -
                // Move the last value to the index where the value to delete is
- -
100 - -
- -
- - - -
                set._values[toDeleteIndex] = lastValue;
- -
101 - - - - - -
                // Update the index for the moved value
- -
102 - -
- -
- - - -
                set._indexes[lastValue] = valueIndex; // Replace lastValue's index to valueIndex
- -
103 - - - - - -
            }
- -
104 - - - - - -

-                            
-                        
105 - - - - - -
            // Delete the slot where the moved value was stored
- -
106 - -
- -
- - - -
            set._values.pop();
- -
107 - - - - - -

-                            
-                        
108 - - - - - -
            // Delete the index for the deleted slot
- -
109 - -
- -
- - - -
            delete set._indexes[value];
- -
110 - - - - - -

-                            
-                        
111 - -
- -
- - - -
            return true;
- -
112 - - - - - -
        } else {
- -
113 - -
- -
- -
- -
- -
            return false;
- -
114 - - - - - -
        }
- -
115 - - - - - -
    }
- -
116 - - - - - -

-                            
-                        
117 - - - - - -
    /**
- -
118 - - - - - -
     * @dev Returns true if the value is in the set. O(1).
- -
119 - - - - - -
     */
- -
120 - - - - - -
    function _contains(Set storage set, bytes32 value) private view returns (bool) {
- -
121 - -
- -
- -
- -
- -
        return set._indexes[value] != 0;
- -
122 - - - - - -
    }
- -
123 - - - - - -

-                            
-                        
124 - - - - - -
    /**
- -
125 - - - - - -
     * @dev Returns the number of values on the set. O(1).
- -
126 - - - - - -
     */
- -
127 - - - - - -
    function _length(Set storage set) private view returns (uint256) {
- -
128 - - - - - -
        return set._values.length;
- -
129 - - - - - -
    }
- -
130 - - - - - -

-                            
-                        
131 - - - - - -
    /**
- -
132 - - - - - -
     * @dev Returns the value stored at position `index` in the set. O(1).
- -
133 - - - - - -
     *
- -
134 - - - - - -
     * Note that there are no guarantees on the ordering of values inside the
- -
135 - - - - - -
     * array, and it may change when more values are added or removed.
- -
136 - - - - - -
     *
- -
137 - - - - - -
     * Requirements:
- -
138 - - - - - -
     *
- -
139 - - - - - -
     * - `index` must be strictly less than {length}.
- -
140 - - - - - -
     */
- -
141 - - - - - -
    function _at(Set storage set, uint256 index) private view returns (bytes32) {
- -
142 - - - - - -
        return set._values[index];
- -
143 - - - - - -
    }
- -
144 - - - - - -

-                            
-                        
145 - - - - - -
    /**
- -
146 - - - - - -
     * @dev Return the entire set in an array
- -
147 - - - - - -
     *
- -
148 - - - - - -
     * WARNING: This operation will copy the entire storage to memory, which can be quite expensive. This is designed
- -
149 - - - - - -
     * to mostly be used by view accessors that are queried without any gas fees. Developers should keep in mind that
- -
150 - - - - - -
     * this function has an unbounded cost, and using it as part of a state-changing function may render the function
- -
151 - - - - - -
     * uncallable if the set grows to a point where copying to memory consumes too much gas to fit in a block.
- -
152 - - - - - -
     */
- -
153 - - - - - -
    function _values(Set storage set) private view returns (bytes32[] memory) {
- -
154 - - - - - -
        return set._values;
- -
155 - - - - - -
    }
- -
156 - - - - - -

-                            
-                        
157 - - - - - -
    // Bytes32Set
- -
158 - - - - - -

-                            
-                        
159 - - - - - -
    struct Bytes32Set {
- -
160 - - - - - -
        Set _inner;
- -
161 - - - - - -
    }
- -
162 - - - - - -

-                            
-                        
163 - - - - - -
    /**
- -
164 - - - - - -
     * @dev Add a value to a set. O(1).
- -
165 - - - - - -
     *
- -
166 - - - - - -
     * Returns true if the value was added to the set, that is if it was not
- -
167 - - - - - -
     * already present.
- -
168 - - - - - -
     */
- -
169 - -
- -
- -
- -
- -
    function add(Bytes32Set storage set, bytes32 value) internal returns (bool) {
- -
170 - -
- -
- -
- -
- -
        return _add(set._inner, value);
- -
171 - - - - - -
    }
- -
172 - - - - - -

-                            
-                        
173 - - - - - -
    /**
- -
174 - - - - - -
     * @dev Removes a value from a set. O(1).
- -
175 - - - - - -
     *
- -
176 - - - - - -
     * Returns true if the value was removed from the set, that is if it was
- -
177 - - - - - -
     * present.
- -
178 - - - - - -
     */
- -
179 - -
- -
- -
- -
- -
    function remove(Bytes32Set storage set, bytes32 value) internal returns (bool) {
- -
180 - -
- -
- -
- -
- -
        return _remove(set._inner, value);
- -
181 - - - - - -
    }
- -
182 - - - - - -

-                            
-                        
183 - - - - - -
    /**
- -
184 - - - - - -
     * @dev Returns true if the value is in the set. O(1).
- -
185 - - - - - -
     */
- -
186 - - - - - -
    function contains(Bytes32Set storage set, bytes32 value) internal view returns (bool) {
- -
187 - - - - - -
        return _contains(set._inner, value);
- -
188 - - - - - -
    }
- -
189 - - - - - -

-                            
-                        
190 - - - - - -
    /**
- -
191 - - - - - -
     * @dev Returns the number of values in the set. O(1).
- -
192 - - - - - -
     */
- -
193 - - - - - -
    function length(Bytes32Set storage set) internal view returns (uint256) {
- -
194 - - - - - -
        return _length(set._inner);
- -
195 - - - - - -
    }
- -
196 - - - - - -

-                            
-                        
197 - - - - - -
    /**
- -
198 - - - - - -
     * @dev Returns the value stored at position `index` in the set. O(1).
- -
199 - - - - - -
     *
- -
200 - - - - - -
     * Note that there are no guarantees on the ordering of values inside the
- -
201 - - - - - -
     * array, and it may change when more values are added or removed.
- -
202 - - - - - -
     *
- -
203 - - - - - -
     * Requirements:
- -
204 - - - - - -
     *
- -
205 - - - - - -
     * - `index` must be strictly less than {length}.
- -
206 - - - - - -
     */
- -
207 - - - - - -
    function at(Bytes32Set storage set, uint256 index) internal view returns (bytes32) {
- -
208 - - - - - -
        return _at(set._inner, index);
- -
209 - - - - - -
    }
- -
210 - - - - - -

-                            
-                        
211 - - - - - -
    /**
- -
212 - - - - - -
     * @dev Return the entire set in an array
- -
213 - - - - - -
     *
- -
214 - - - - - -
     * WARNING: This operation will copy the entire storage to memory, which can be quite expensive. This is designed
- -
215 - - - - - -
     * to mostly be used by view accessors that are queried without any gas fees. Developers should keep in mind that
- -
216 - - - - - -
     * this function has an unbounded cost, and using it as part of a state-changing function may render the function
- -
217 - - - - - -
     * uncallable if the set grows to a point where copying to memory consumes too much gas to fit in a block.
- -
218 - - - - - -
     */
- -
219 - - - - - -
    function values(Bytes32Set storage set) internal view returns (bytes32[] memory) {
- -
220 - - - - - -
        bytes32[] memory store = _values(set._inner);
- -
221 - - - - - -
        bytes32[] memory result;
- -
222 - - - - - -

-                            
-                        
223 - - - - - -
        /// @solidity memory-safe-assembly
- -
224 - - - - - -
        assembly {
- -
225 - - - - - -
            result := store
- -
226 - - - - - -
        }
- -
227 - - - - - -

-                            
-                        
228 - - - - - -
        return result;
- -
229 - - - - - -
    }
- -
230 - - - - - -

-                            
-                        
231 - - - - - -
    // AddressSet
- -
232 - - - - - -

-                            
-                        
233 - - - - - -
    struct AddressSet {
- -
234 - - - - - -
        Set _inner;
- -
235 - - - - - -
    }
- -
236 - - - - - -

-                            
-                        
237 - - - - - -
    /**
- -
238 - - - - - -
     * @dev Add a value to a set. O(1).
- -
239 - - - - - -
     *
- -
240 - - - - - -
     * Returns true if the value was added to the set, that is if it was not
- -
241 - - - - - -
     * already present.
- -
242 - - - - - -
     */
- -
243 - -
- -
- - - -
    function add(AddressSet storage set, address value) internal returns (bool) {
- -
244 - -
- -
- - - -
        return _add(set._inner, bytes32(uint256(uint160(value))));
- -
245 - - - - - -
    }
- -
246 - - - - - -

-                            
-                        
247 - - - - - -
    /**
- -
248 - - - - - -
     * @dev Removes a value from a set. O(1).
- -
249 - - - - - -
     *
- -
250 - - - - - -
     * Returns true if the value was removed from the set, that is if it was
- -
251 - - - - - -
     * present.
- -
252 - - - - - -
     */
- -
253 - -
- -
- - - -
    function remove(AddressSet storage set, address value) internal returns (bool) {
- -
254 - -
- -
- - - -
        return _remove(set._inner, bytes32(uint256(uint160(value))));
- -
255 - - - - - -
    }
- -
256 - - - - - -

-                            
-                        
257 - - - - - -
    /**
- -
258 - - - - - -
     * @dev Returns true if the value is in the set. O(1).
- -
259 - - - - - -
     */
- -
260 - - - - - -
    function contains(AddressSet storage set, address value) internal view returns (bool) {
- -
261 - - - - - -
        return _contains(set._inner, bytes32(uint256(uint160(value))));
- -
262 - - - - - -
    }
- -
263 - - - - - -

-                            
-                        
264 - - - - - -
    /**
- -
265 - - - - - -
     * @dev Returns the number of values in the set. O(1).
- -
266 - - - - - -
     */
- -
267 - - - - - -
    function length(AddressSet storage set) internal view returns (uint256) {
- -
268 - - - - - -
        return _length(set._inner);
- -
269 - - - - - -
    }
- -
270 - - - - - -

-                            
-                        
271 - - - - - -
    /**
- -
272 - - - - - -
     * @dev Returns the value stored at position `index` in the set. O(1).
- -
273 - - - - - -
     *
- -
274 - - - - - -
     * Note that there are no guarantees on the ordering of values inside the
- -
275 - - - - - -
     * array, and it may change when more values are added or removed.
- -
276 - - - - - -
     *
- -
277 - - - - - -
     * Requirements:
- -
278 - - - - - -
     *
- -
279 - - - - - -
     * - `index` must be strictly less than {length}.
- -
280 - - - - - -
     */
- -
281 - - - - - -
    function at(AddressSet storage set, uint256 index) internal view returns (address) {
- -
282 - - - - - -
        return address(uint160(uint256(_at(set._inner, index))));
- -
283 - - - - - -
    }
- -
284 - - - - - -

-                            
-                        
285 - - - - - -
    /**
- -
286 - - - - - -
     * @dev Return the entire set in an array
- -
287 - - - - - -
     *
- -
288 - - - - - -
     * WARNING: This operation will copy the entire storage to memory, which can be quite expensive. This is designed
- -
289 - - - - - -
     * to mostly be used by view accessors that are queried without any gas fees. Developers should keep in mind that
- -
290 - - - - - -
     * this function has an unbounded cost, and using it as part of a state-changing function may render the function
- -
291 - - - - - -
     * uncallable if the set grows to a point where copying to memory consumes too much gas to fit in a block.
- -
292 - - - - - -
     */
- -
293 - - - - - -
    function values(AddressSet storage set) internal view returns (address[] memory) {
- -
294 - - - - - -
        bytes32[] memory store = _values(set._inner);
- -
295 - - - - - -
        address[] memory result;
- -
296 - - - - - -

-                            
-                        
297 - - - - - -
        /// @solidity memory-safe-assembly
- -
298 - - - - - -
        assembly {
- -
299 - - - - - -
            result := store
- -
300 - - - - - -
        }
- -
301 - - - - - -

-                            
-                        
302 - - - - - -
        return result;
- -
303 - - - - - -
    }
- -
304 - - - - - -

-                            
-                        
305 - - - - - -
    // UintSet
- -
306 - - - - - -

-                            
-                        
307 - - - - - -
    struct UintSet {
- -
308 - - - - - -
        Set _inner;
- -
309 - - - - - -
    }
- -
310 - - - - - -

-                            
-                        
311 - - - - - -
    /**
- -
312 - - - - - -
     * @dev Add a value to a set. O(1).
- -
313 - - - - - -
     *
- -
314 - - - - - -
     * Returns true if the value was added to the set, that is if it was not
- -
315 - - - - - -
     * already present.
- -
316 - - - - - -
     */
- -
317 - - - - - -
    function add(UintSet storage set, uint256 value) internal returns (bool) {
- -
318 - - - - - -
        return _add(set._inner, bytes32(value));
- -
319 - - - - - -
    }
- -
320 - - - - - -

-                            
-                        
321 - - - - - -
    /**
- -
322 - - - - - -
     * @dev Removes a value from a set. O(1).
- -
323 - - - - - -
     *
- -
324 - - - - - -
     * Returns true if the value was removed from the set, that is if it was
- -
325 - - - - - -
     * present.
- -
326 - - - - - -
     */
- -
327 - - - - - -
    function remove(UintSet storage set, uint256 value) internal returns (bool) {
- -
328 - - - - - -
        return _remove(set._inner, bytes32(value));
- -
329 - - - - - -
    }
- -
330 - - - - - -

-                            
-                        
331 - - - - - -
    /**
- -
332 - - - - - -
     * @dev Returns true if the value is in the set. O(1).
- -
333 - - - - - -
     */
- -
334 - - - - - -
    function contains(UintSet storage set, uint256 value) internal view returns (bool) {
- -
335 - - - - - -
        return _contains(set._inner, bytes32(value));
- -
336 - - - - - -
    }
- -
337 - - - - - -

-                            
-                        
338 - - - - - -
    /**
- -
339 - - - - - -
     * @dev Returns the number of values in the set. O(1).
- -
340 - - - - - -
     */
- -
341 - - - - - -
    function length(UintSet storage set) internal view returns (uint256) {
- -
342 - - - - - -
        return _length(set._inner);
- -
343 - - - - - -
    }
- -
344 - - - - - -

-                            
-                        
345 - - - - - -
    /**
- -
346 - - - - - -
     * @dev Returns the value stored at position `index` in the set. O(1).
- -
347 - - - - - -
     *
- -
348 - - - - - -
     * Note that there are no guarantees on the ordering of values inside the
- -
349 - - - - - -
     * array, and it may change when more values are added or removed.
- -
350 - - - - - -
     *
- -
351 - - - - - -
     * Requirements:
- -
352 - - - - - -
     *
- -
353 - - - - - -
     * - `index` must be strictly less than {length}.
- -
354 - - - - - -
     */
- -
355 - - - - - -
    function at(UintSet storage set, uint256 index) internal view returns (uint256) {
- -
356 - - - - - -
        return uint256(_at(set._inner, index));
- -
357 - - - - - -
    }
- -
358 - - - - - -

-                            
-                        
359 - - - - - -
    /**
- -
360 - - - - - -
     * @dev Return the entire set in an array
- -
361 - - - - - -
     *
- -
362 - - - - - -
     * WARNING: This operation will copy the entire storage to memory, which can be quite expensive. This is designed
- -
363 - - - - - -
     * to mostly be used by view accessors that are queried without any gas fees. Developers should keep in mind that
- -
364 - - - - - -
     * this function has an unbounded cost, and using it as part of a state-changing function may render the function
- -
365 - - - - - -
     * uncallable if the set grows to a point where copying to memory consumes too much gas to fit in a block.
- -
366 - - - - - -
     */
- -
367 - - - - - -
    function values(UintSet storage set) internal view returns (uint256[] memory) {
- -
368 - - - - - -
        bytes32[] memory store = _values(set._inner);
- -
369 - - - - - -
        uint256[] memory result;
- -
370 - - - - - -

-                            
-                        
371 - - - - - -
        /// @solidity memory-safe-assembly
- -
372 - - - - - -
        assembly {
- -
373 - - - - - -
            result := store
- -
374 - - - - - -
        }
- -
375 - - - - - -

-                            
-                        
376 - - - - - -
        return result;
- -
377 - - - - - -
    }
- -
378 - - - - - -
}
- -
379 - - - - - -

-                            
-                        
-
-
- - - - - - - - - - -
-
-
- - - - - - -
Lines covered: 0 / 5 (0.0%)
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
1 - - - - - -
// SPDX-License-Identifier: AGPL-3.0-only
- -
2 - - - - - -
pragma solidity >=0.8.0;
- -
3 - - - - - -

-                            
-                        
4 - - - - - -
/// @notice Arithmetic library with operations for fixed-point numbers.
- -
5 - - - - - -
/// @author Solmate (https://github.com/transmissions11/solmate/blob/main/src/utils/FixedPointMathLib.sol)
- -
6 - - - - - -
/// @author Inspired by USM (https://github.com/usmfum/USM/blob/master/contracts/WadMath.sol)
- -
7 - - - - - -
library FixedPointMathLib {
- -
8 - - - - - -
    /*//////////////////////////////////////////////////////////////
- -
9 - - - - - -
                    SIMPLIFIED FIXED POINT OPERATIONS
- -
10 - - - - - -
    //////////////////////////////////////////////////////////////*/
- -
11 - - - - - -

-                            
-                        
12 - - - - - -
    uint256 internal constant MAX_UINT256 = 2**256 - 1;
- -
13 - - - - - -

-                            
-                        
14 - - - - - -
    uint256 internal constant WAD = 1e18; // The scalar of ETH and most ERC20s.
- -
15 - - - - - -

-                            
-                        
16 - - - - - -
    function mulWadDown(uint256 x, uint256 y) internal pure returns (uint256) {
- -
17 - - - - - -
        return mulDivDown(x, y, WAD); // Equivalent to (x * y) / WAD rounded down.
- -
18 - - - - - -
    }
- -
19 - - - - - -

-                            
-                        
20 - - - - - -
    function mulWadUp(uint256 x, uint256 y) internal pure returns (uint256) {
- -
21 - - - - - -
        return mulDivUp(x, y, WAD); // Equivalent to (x * y) / WAD rounded up.
- -
22 - - - - - -
    }
- -
23 - - - - - -

-                            
-                        
24 - - - - - -
    function divWadDown(uint256 x, uint256 y) internal pure returns (uint256) {
- -
25 - - - - - -
        return mulDivDown(x, WAD, y); // Equivalent to (x * WAD) / y rounded down.
- -
26 - - - - - -
    }
- -
27 - - - - - -

-                            
-                        
28 - - - - - -
    function divWadUp(uint256 x, uint256 y) internal pure returns (uint256) {
- -
29 - - - - - -
        return mulDivUp(x, WAD, y); // Equivalent to (x * WAD) / y rounded up.
- -
30 - - - - - -
    }
- -
31 - - - - - -

-                            
-                        
32 - - - - - -
    /*//////////////////////////////////////////////////////////////
- -
33 - - - - - -
                    LOW LEVEL FIXED POINT OPERATIONS
- -
34 - - - - - -
    //////////////////////////////////////////////////////////////*/
- -
35 - - - - - -

-                            
-                        
36 - - - - - -
    function mulDivDown(
- -
37 - - - - - -
        uint256 x,
- -
38 - - - - - -
        uint256 y,
- -
39 - - - - - -
        uint256 denominator
- -
40 - - - - - -
    ) internal pure returns (uint256 z) {
- -
41 - - - - - -
        /// @solidity memory-safe-assembly
- -
42 - - - - - -
        assembly {
- -
43 - - - - - -
            // Equivalent to require(denominator != 0 && (y == 0 || x <= type(uint256).max / y))
- -
44 - - - - - -
            if iszero(mul(denominator, iszero(mul(y, gt(x, div(MAX_UINT256, y)))))) {
- -
45 - - - - - -
                revert(0, 0)
- -
46 - - - - - -
            }
- -
47 - - - - - -

-                            
-                        
48 - - - - - -
            // Divide x * y by the denominator.
- -
49 - - - - - -
            z := div(mul(x, y), denominator)
- -
50 - - - - - -
        }
- -
51 - - - - - -
    }
- -
52 - - - - - -

-                            
-                        
53 - - - - - -
    function mulDivUp(
- -
54 - - - - - -
        uint256 x,
- -
55 - - - - - -
        uint256 y,
- -
56 - - - - - -
        uint256 denominator
- -
57 - - - - - -
    ) internal pure returns (uint256 z) {
- -
58 - - - - - -
        /// @solidity memory-safe-assembly
- -
59 - - - - - -
        assembly {
- -
60 - - - - - -
            // Equivalent to require(denominator != 0 && (y == 0 || x <= type(uint256).max / y))
- -
61 - - - - - -
            if iszero(mul(denominator, iszero(mul(y, gt(x, div(MAX_UINT256, y)))))) {
- -
62 - - - - - -
                revert(0, 0)
- -
63 - - - - - -
            }
- -
64 - - - - - -

-                            
-                        
65 - - - - - -
            // If x * y modulo the denominator is strictly greater than 0,
- -
66 - - - - - -
            // 1 is added to round up the division of x * y by the denominator.
- -
67 - - - - - -
            z := add(gt(mod(mul(x, y), denominator), 0), div(mul(x, y), denominator))
- -
68 - - - - - -
        }
- -
69 - - - - - -
    }
- -
70 - - - - - -

-                            
-                        
71 - - - - - -
    function rpow(
- -
72 - - - - - -
        uint256 x,
- -
73 - - - - - -
        uint256 n,
- -
74 - - - - - -
        uint256 scalar
- -
75 - - - - - -
    ) internal pure returns (uint256 z) {
- -
76 - - - - - -
        /// @solidity memory-safe-assembly
- -
77 - - - - - -
        assembly {
- -
78 - - - - - -
            switch x
- -
79 - - - - - -
            case 0 {
- -
80 - - - - - -
                switch n
- -
81 - - - - - -
                case 0 {
- -
82 - - - - - -
                    // 0 ** 0 = 1
- -
83 - - - - - -
                    z := scalar
- -
84 - - - - - -
                }
- -
85 - - - - - -
                default {
- -
86 - - - - - -
                    // 0 ** n = 0
- -
87 - - - - - -
                    z := 0
- -
88 - - - - - -
                }
- -
89 - - - - - -
            }
- -
90 - - - - - -
            default {
- -
91 - - - - - -
                switch mod(n, 2)
- -
92 - - - - - -
                case 0 {
- -
93 - - - - - -
                    // If n is even, store scalar in z for now.
- -
94 - - - - - -
                    z := scalar
- -
95 - - - - - -
                }
- -
96 - - - - - -
                default {
- -
97 - - - - - -
                    // If n is odd, store x in z for now.
- -
98 - - - - - -
                    z := x
- -
99 - - - - - -
                }
- -
100 - - - - - -

-                            
-                        
101 - - - - - -
                // Shifting right by 1 is like dividing by 2.
- -
102 - - - - - -
                let half := shr(1, scalar)
- -
103 - - - - - -

-                            
-                        
104 - - - - - -
                for {
- -
105 - - - - - -
                    // Shift n right by 1 before looping to halve it.
- -
106 - - - - - -
                    n := shr(1, n)
- -
107 - - - - - -
                } n {
- -
108 - - - - - -
                    // Shift n right by 1 each iteration to halve it.
- -
109 - - - - - -
                    n := shr(1, n)
- -
110 - - - - - -
                } {
- -
111 - - - - - -
                    // Revert immediately if x ** 2 would overflow.
- -
112 - - - - - -
                    // Equivalent to iszero(eq(div(xx, x), x)) here.
- -
113 - - - - - -
                    if shr(128, x) {
- -
114 - - - - - -
                        revert(0, 0)
- -
115 - - - - - -
                    }
- -
116 - - - - - -

-                            
-                        
117 - - - - - -
                    // Store x squared.
- -
118 - - - - - -
                    let xx := mul(x, x)
- -
119 - - - - - -

-                            
-                        
120 - - - - - -
                    // Round to the nearest number.
- -
121 - - - - - -
                    let xxRound := add(xx, half)
- -
122 - - - - - -

-                            
-                        
123 - - - - - -
                    // Revert if xx + half overflowed.
- -
124 - - - - - -
                    if lt(xxRound, xx) {
- -
125 - - - - - -
                        revert(0, 0)
- -
126 - - - - - -
                    }
- -
127 - - - - - -

-                            
-                        
128 - - - - - -
                    // Set x to scaled xxRound.
- -
129 - - - - - -
                    x := div(xxRound, scalar)
- -
130 - - - - - -

-                            
-                        
131 - - - - - -
                    // If n is even:
- -
132 - - - - - -
                    if mod(n, 2) {
- -
133 - - - - - -
                        // Compute z * x.
- -
134 - - - - - -
                        let zx := mul(z, x)
- -
135 - - - - - -

-                            
-                        
136 - - - - - -
                        // If z * x overflowed:
- -
137 - - - - - -
                        if iszero(eq(div(zx, x), z)) {
- -
138 - - - - - -
                            // Revert if x is non-zero.
- -
139 - - - - - -
                            if iszero(iszero(x)) {
- -
140 - - - - - -
                                revert(0, 0)
- -
141 - - - - - -
                            }
- -
142 - - - - - -
                        }
- -
143 - - - - - -

-                            
-                        
144 - - - - - -
                        // Round to the nearest number.
- -
145 - - - - - -
                        let zxRound := add(zx, half)
- -
146 - - - - - -

-                            
-                        
147 - - - - - -
                        // Revert if zx + half overflowed.
- -
148 - - - - - -
                        if lt(zxRound, zx) {
- -
149 - - - - - -
                            revert(0, 0)
- -
150 - - - - - -
                        }
- -
151 - - - - - -

-                            
-                        
152 - - - - - -
                        // Return properly scaled zxRound.
- -
153 - - - - - -
                        z := div(zxRound, scalar)
- -
154 - - - - - -
                    }
- -
155 - - - - - -
                }
- -
156 - - - - - -
            }
- -
157 - - - - - -
        }
- -
158 - - - - - -
    }
- -
159 - - - - - -

-                            
-                        
160 - - - - - -
    /*//////////////////////////////////////////////////////////////
- -
161 - - - - - -
                        GENERAL NUMBER UTILITIES
- -
162 - - - - - -
    //////////////////////////////////////////////////////////////*/
- -
163 - - - - - -

-                            
-                        
164 - - - - - -
    function sqrt(uint256 x) internal pure returns (uint256 z) {
- -
165 - - - - - -
        /// @solidity memory-safe-assembly
- -
166 - - - - - -
        assembly {
- -
167 - - - - - -
            let y := x // We start y at x, which will help us make our initial estimate.
- -
168 - - - - - -

-                            
-                        
169 - - - - - -
            z := 181 // The "correct" value is 1, but this saves a multiplication later.
- -
170 - - - - - -

-                            
-                        
171 - - - - - -
            // This segment is to get a reasonable initial estimate for the Babylonian method. With a bad
- -
172 - - - - - -
            // start, the correct # of bits increases ~linearly each iteration instead of ~quadratically.
- -
173 - - - - - -

-                            
-                        
174 - - - - - -
            // We check y >= 2^(k + 8) but shift right by k bits
- -
175 - - - - - -
            // each branch to ensure that if x >= 256, then y >= 256.
- -
176 - - - - - -
            if iszero(lt(y, 0x10000000000000000000000000000000000)) {
- -
177 - - - - - -
                y := shr(128, y)
- -
178 - - - - - -
                z := shl(64, z)
- -
179 - - - - - -
            }
- -
180 - - - - - -
            if iszero(lt(y, 0x1000000000000000000)) {
- -
181 - - - - - -
                y := shr(64, y)
- -
182 - - - - - -
                z := shl(32, z)
- -
183 - - - - - -
            }
- -
184 - - - - - -
            if iszero(lt(y, 0x10000000000)) {
- -
185 - - - - - -
                y := shr(32, y)
- -
186 - - - - - -
                z := shl(16, z)
- -
187 - - - - - -
            }
- -
188 - - - - - -
            if iszero(lt(y, 0x1000000)) {
- -
189 - - - - - -
                y := shr(16, y)
- -
190 - - - - - -
                z := shl(8, z)
- -
191 - - - - - -
            }
- -
192 - - - - - -

-                            
-                        
193 - - - - - -
            // Goal was to get z*z*y within a small factor of x. More iterations could
- -
194 - - - - - -
            // get y in a tighter range. Currently, we will have y in [256, 256*2^16).
- -
195 - - - - - -
            // We ensured y >= 256 so that the relative difference between y and y+1 is small.
- -
196 - - - - - -
            // That's not possible if x < 256 but we can just verify those cases exhaustively.
- -
197 - - - - - -

-                            
-                        
198 - - - - - -
            // Now, z*z*y <= x < z*z*(y+1), and y <= 2^(16+8), and either y >= 256, or x < 256.
- -
199 - - - - - -
            // Correctness can be checked exhaustively for x < 256, so we assume y >= 256.
- -
200 - - - - - -
            // Then z*sqrt(y) is within sqrt(257)/sqrt(256) of sqrt(x), or about 20bps.
- -
201 - - - - - -

-                            
-                        
202 - - - - - -
            // For s in the range [1/256, 256], the estimate f(s) = (181/1024) * (s+1) is in the range
- -
203 - - - - - -
            // (1/2.84 * sqrt(s), 2.84 * sqrt(s)), with largest error when s = 1 and when s = 256 or 1/256.
- -
204 - - - - - -

-                            
-                        
205 - - - - - -
            // Since y is in [256, 256*2^16), let a = y/65536, so that a is in [1/256, 256). Then we can estimate
- -
206 - - - - - -
            // sqrt(y) using sqrt(65536) * 181/1024 * (a + 1) = 181/4 * (y + 65536)/65536 = 181 * (y + 65536)/2^18.
- -
207 - - - - - -

-                            
-                        
208 - - - - - -
            // There is no overflow risk here since y < 2^136 after the first branch above.
- -
209 - - - - - -
            z := shr(18, mul(z, add(y, 65536))) // A mul() is saved from starting z at 181.
- -
210 - - - - - -

-                            
-                        
211 - - - - - -
            // Given the worst case multiplicative error of 2.84 above, 7 iterations should be enough.
- -
212 - - - - - -
            z := shr(1, add(z, div(x, z)))
- -
213 - - - - - -
            z := shr(1, add(z, div(x, z)))
- -
214 - - - - - -
            z := shr(1, add(z, div(x, z)))
- -
215 - - - - - -
            z := shr(1, add(z, div(x, z)))
- -
216 - - - - - -
            z := shr(1, add(z, div(x, z)))
- -
217 - - - - - -
            z := shr(1, add(z, div(x, z)))
- -
218 - - - - - -
            z := shr(1, add(z, div(x, z)))
- -
219 - - - - - -

-                            
-                        
220 - - - - - -
            // If x+1 is a perfect square, the Babylonian method cycles between
- -
221 - - - - - -
            // floor(sqrt(x)) and ceil(sqrt(x)). This statement ensures we return floor.
- -
222 - - - - - -
            // See: https://en.wikipedia.org/wiki/Integer_square_root#Using_only_integer_division
- -
223 - - - - - -
            // Since the ceil is rare, we save gas on the assignment and repeat division in the rare case.
- -
224 - - - - - -
            // If you don't care whether the floor or ceil square root is returned, you can remove this statement.
- -
225 - - - - - -
            z := sub(z, lt(div(x, z), z))
- -
226 - - - - - -
        }
- -
227 - - - - - -
    }
- -
228 - - - - - -

-                            
-                        
229 - - - - - -
    function unsafeMod(uint256 x, uint256 y) internal pure returns (uint256 z) {
- -
230 - - - - - -
        /// @solidity memory-safe-assembly
- -
231 - - - - - -
        assembly {
- -
232 - - - - - -
            // Mod x by y. Note this will return
- -
233 - - - - - -
            // 0 instead of reverting if y is zero.
- -
234 - - - - - -
            z := mod(x, y)
- -
235 - - - - - -
        }
- -
236 - - - - - -
    }
- -
237 - - - - - -

-                            
-                        
238 - - - - - -
    function unsafeDiv(uint256 x, uint256 y) internal pure returns (uint256 r) {
- -
239 - - - - - -
        /// @solidity memory-safe-assembly
- -
240 - - - - - -
        assembly {
- -
241 - - - - - -
            // Divide x by y. Note this will return
- -
242 - - - - - -
            // 0 instead of reverting if y is zero.
- -
243 - - - - - -
            r := div(x, y)
- -
244 - - - - - -
        }
- -
245 - - - - - -
    }
- -
246 - - - - - -

-                            
-                        
247 - - - - - -
    function unsafeDivUp(uint256 x, uint256 y) internal pure returns (uint256 z) {
- -
248 - - - - - -
        /// @solidity memory-safe-assembly
- -
249 - - - - - -
        assembly {
- -
250 - - - - - -
            // Add 1 to x * y if x % y > 0. Note this will
- -
251 - - - - - -
            // return 0 instead of reverting if y is zero.
- -
252 - - - - - -
            z := add(gt(mod(x, y), 0), div(x, y))
- -
253 - - - - - -
        }
- -
254 - - - - - -
    }
- -
255 - - - - - -
}
- -
256 - - - - - -

-                            
-                        
-
-
- - - - - - - - - - -
-
-
- - - - - - -
Lines covered: 13 / 19 (68.4%)
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
1 - - - - - -
// SPDX-License-Identifier: GPL-3.0
- -
2 - - - - - -
pragma solidity 0.8.26;
- -
3 - - - - - -

-                            
-                        
4 - - - - - -
import {IArbitrable} from 'interfaces/IArbitrable.sol';
- -
5 - - - - - -

-                            
-                        
6 - - - - - -
/**
- -
7 - - - - - -
 * @title Arbitrable
- -
8 - - - - - -
 * @notice Arbitrable contract for The Graph to manage arbitrator and council
- -
9 - - - - - -
 */
- -
10 - - - - - -
contract Arbitrable is IArbitrable {
- -
11 - - - - - -
  address private _arbitrator;
- -
12 - - - - - -
  address private _council;
- -
13 - - - - - -
  address private _pendingCouncil;
- -
14 - - - - - -

-                            
-                        
15 - - - - - -
  /**
- -
16 - - - - - -
   * @notice Checks that the caller is The Graph's Council
- -
17 - - - - - -
   */
- -
18 - - - - - -
  modifier onlyCouncil() {
- -
19 - -
- -
- - - -
    if (msg.sender != _council) revert Arbitrable_OnlyCouncil();
- -
20 - - - - - -
    _;
- -
21 - - - - - -
  }
- -
22 - - - - - -

-                            
-                        
23 - - - - - -
  /**
- -
24 - - - - - -
   * @notice Checks that the caller is the pending The Graph's Council
- -
25 - - - - - -
   */
- -
26 - - - - - -
  modifier onlyPendingCouncil() {
- -
27 - - - -
- -
- -
    if (msg.sender != _pendingCouncil) revert Arbitrable_OnlyPendingCouncil();
- -
28 - - - - - -
    _;
- -
29 - - - - - -
  }
- -
30 - - - - - -

-                            
-                        
31 - - - - - -
  /**
- -
32 - - - - - -
   * @notice Constructor
- -
33 - - - - - -
   * @param __arbitrator The address of The Graph's Arbitrator
- -
34 - - - - - -
   * @param __council The address of The Graph's Council
- -
35 - - - - - -
   */
- -
36 - - - - - -
  constructor(address __arbitrator, address __council) {
- -
37 - -
- -
- - - -
    _setArbitrator(__arbitrator);
- -
38 - -
- -
- - - -
    _setCouncil(__council);
- -
39 - - - - - -
  }
- -
40 - - - - - -

-                            
-                        
41 - - - - - -
  /// @inheritdoc IArbitrable
- -
42 - - - - - -
  function arbitrator() public view returns (address __arbitrator) {
- -
43 - - - - - -
    __arbitrator = _arbitrator;
- -
44 - - - - - -
  }
- -
45 - - - - - -

-                            
-                        
46 - - - - - -
  /// @inheritdoc IArbitrable
- -
47 - - - - - -
  function council() public view returns (address __council) {
- -
48 - - - - - -
    __council = _council;
- -
49 - - - - - -
  }
- -
50 - - - - - -

-                            
-                        
51 - - - - - -
  /// @inheritdoc IArbitrable
- -
52 - - - - - -
  function pendingCouncil() public view returns (address __pendingCouncil) {
- -
53 - - - - - -
    __pendingCouncil = _pendingCouncil;
- -
54 - - - - - -
  }
- -
55 - - - - - -

-                            
-                        
56 - - - - - -
  /// @inheritdoc IArbitrable
- -
57 - - - - - -
  function validateArbitrator(address _caller) public view {
- -
58 - -
- -
- -
- -
- -
    if (_caller != _arbitrator) revert Arbitrable_OnlyArbitrator();
- -
59 - - - - - -
  }
- -
60 - - - - - -

-                            
-                        
61 - - - - - -
  /// @inheritdoc IArbitrable
- -
62 - - - - - -
  function setArbitrator(address __arbitrator) external onlyCouncil {
- -
63 - -
- -
- - - -
    _setArbitrator(__arbitrator);
- -
64 - - - - - -
  }
- -
65 - - - - - -

-                            
-                        
66 - - - - - -
  /// @inheritdoc IArbitrable
- -
67 - - - - - -
  function setPendingCouncil(address __pendingCouncil) external onlyCouncil {
- -
68 - -
- -
- - - -
    _setPendingCouncil(__pendingCouncil);
- -
69 - - - - - -
  }
- -
70 - - - - - -

-                            
-                        
71 - - - - - -
  /// @inheritdoc IArbitrable
- -
72 - - - - - -
  function confirmCouncil() external onlyPendingCouncil {
- -
73 - - - - - -
    _setCouncil(_pendingCouncil);
- -
74 - - - - - -
    delete _pendingCouncil;
- -
75 - - - - - -
  }
- -
76 - - - - - -

-                            
-                        
77 - - - - - -
  /**
- -
78 - - - - - -
   * @notice Sets the address of The Graph's Arbitrator
- -
79 - - - - - -
   * @param __arbitrator The address of The Graph's Arbitrator
- -
80 - - - - - -
   */
- -
81 - - - - - -
  function _setArbitrator(address __arbitrator) private {
- -
82 - -
- -
- - - -
    _arbitrator = __arbitrator;
- -
83 - -
- -
- - - -
    emit SetArbitrator(__arbitrator);
- -
84 - - - - - -
  }
- -
85 - - - - - -

-                            
-                        
86 - - - - - -
  /**
- -
87 - - - - - -
   * @notice Sets the address of The Graph's Council
- -
88 - - - - - -
   * @param __council The address of The Graph's Council
- -
89 - - - - - -
   */
- -
90 - - - - - -
  function _setCouncil(address __council) private {
- -
91 - -
- -
- - - -
    _council = __council;
- -
92 - -
- -
- - - -
    emit SetCouncil(__council);
- -
93 - - - - - -
  }
- -
94 - - - - - -

-                            
-                        
95 - - - - - -
  /**
- -
96 - - - - - -
   * @notice Sets the address of the pending The Graph's Council
- -
97 - - - - - -
   * @param __pendingCouncil The address of the pending The Graph's Council
- -
98 - - - - - -
   */
- -
99 - - - - - -
  function _setPendingCouncil(address __pendingCouncil) private {
- -
100 - -
- -
- - - -
    _pendingCouncil = __pendingCouncil;
- -
101 - -
- -
- - - -
    emit SetPendingCouncil(__pendingCouncil);
- -
102 - - - - - -
  }
- -
103 - - - - - -
}
- -
104 - - - - - -

-                            
-                        
-
-
- - - - - - - - - - -
-
-
- - - - - - -
Lines covered: 3 / 27 (11.1%)
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
1 - - - - - -
// SPDX-License-Identifier: GPL-3.0
- -
2 - - - - - -
pragma solidity 0.8.26;
- -
3 - - - - - -

-                            
-                        
4 - - - - - -
import {ValidatorLib} from '@defi-wonderland/prophet-core/solidity/libraries/ValidatorLib.sol';
- -
5 - - - - - -
import {IArbitrator} from '@defi-wonderland/prophet-modules/solidity/interfaces/IArbitrator.sol';
- -
6 - - - - - -

-                            
-                        
7 - - - - - -
import {IArbitrable, IArbitratorModule, ICouncilArbitrator, IOracle} from 'interfaces/ICouncilArbitrator.sol';
- -
8 - - - - - -

-                            
-                        
9 - - - - - -
/**
- -
10 - - - - - -
 * @title CouncilArbitrator
- -
11 - - - - - -
 * @notice Resolves disputes by arbitration by The Graph
- -
12 - - - - - -
 */
- -
13 - - - - - -
contract CouncilArbitrator is ICouncilArbitrator {
- -
14 - - - - - -
  using ValidatorLib for IOracle.Dispute;
- -
15 - - - - - -

-                            
-                        
16 - - - - - -
  /// @inheritdoc ICouncilArbitrator
- -
17 - - - - - -
  IOracle public immutable ORACLE;
- -
18 - - - - - -
  /// @inheritdoc ICouncilArbitrator
- -
19 - - - - - -
  IArbitratorModule public immutable ARBITRATOR_MODULE;
- -
20 - - - - - -
  /// @inheritdoc ICouncilArbitrator
- -
21 - - - - - -
  IArbitrable public immutable ARBITRABLE;
- -
22 - - - - - -

-                            
-                        
23 - - - - - -
  /// @inheritdoc ICouncilArbitrator
- -
24 - - - - - -
  mapping(bytes32 _disputeId => ResolutionParameters _resolutionParams) public resolutions;
- -
25 - - - - - -
  /// @inheritdoc IArbitrator
- -
26 - - - - - -
  mapping(bytes32 _disputeId => IOracle.DisputeStatus _status) public getAnswer;
- -
27 - - - - - -

-                            
-                        
28 - - - - - -
  /**
- -
29 - - - - - -
   * @notice Checks that the caller is the Arbitrator Module
- -
30 - - - - - -
   */
- -
31 - - - - - -
  modifier onlyArbitratorModule() {
- -
32 - - - - - -
    if (msg.sender != address(ARBITRATOR_MODULE)) revert CouncilArbitrator_OnlyArbitratorModule();
- -
33 - - - - - -
    _;
- -
34 - - - - - -
  }
- -
35 - - - - - -

-                            
-                        
36 - - - - - -
  /**
- -
37 - - - - - -
   * @notice Constructor
- -
38 - - - - - -
   * @param _arbitratorModule The address of the Arbitrator Module
- -
39 - - - - - -
   * @param _arbitrable The address of the Arbitrable contract
- -
40 - - - - - -
   */
- -
41 - - - - - -
  constructor(IArbitratorModule _arbitratorModule, IArbitrable _arbitrable) {
- -
42 - -
- -
- - - -
    ORACLE = _arbitratorModule.ORACLE();
- -
43 - -
- -
- - - -
    ARBITRATOR_MODULE = _arbitratorModule;
- -
44 - -
- -
- - - -
    ARBITRABLE = _arbitrable;
- -
45 - - - - - -
  }
- -
46 - - - - - -

-                            
-                        
47 - - - - - -
  /// @inheritdoc IArbitrator
- -
48 - - - - - -
  function resolve(
- -
49 - - - - - -
    IOracle.Request calldata _request,
- -
50 - - - - - -
    IOracle.Response calldata _response,
- -
51 - - - - - -
    IOracle.Dispute calldata _dispute
- -
52 - - - - - -
  ) external onlyArbitratorModule returns (bytes memory /* _data */ ) {
- -
53 - - - - - -
    bytes32 _disputeId = _dispute._getId();
- -
54 - - - - - -

-                            
-                        
55 - - - - - -
    resolutions[_disputeId] = ResolutionParameters(_request, _response, _dispute);
- -
56 - - - - - -

-                            
-                        
57 - - - - - -
    emit ResolutionStarted(_disputeId, _request, _response, _dispute);
- -
58 - - - - - -
  }
- -
59 - - - - - -

-                            
-                        
60 - - - - - -
  /// @inheritdoc ICouncilArbitrator
- -
61 - - - - - -
  function arbitrateDispute(bytes32 _disputeId, IOracle.DisputeStatus _award) external {
- -
62 - - - - - -
    ARBITRABLE.validateArbitrator(msg.sender);
- -
63 - - - - - -

-                            
-                        
64 - - - - - -
    ResolutionParameters memory _resolutionParams = resolutions[_disputeId];
- -
65 - - - - - -

-                            
-                        
66 - - - - - -
    if (_resolutionParams.dispute.disputer == address(0)) revert CouncilArbitrator_InvalidDispute();
- -
67 - - - - - -
    if (_award <= IOracle.DisputeStatus.Escalated) revert CouncilArbitrator_InvalidAward();
- -
68 - - - - - -
    if (getAnswer[_disputeId] != IOracle.DisputeStatus.None) revert CouncilArbitrator_DisputeAlreadyArbitrated();
- -
69 - - - - - -

-                            
-                        
70 - - - - - -
    getAnswer[_disputeId] = _award;
- -
71 - - - - - -

-                            
-                        
72 - - - - - -
    ORACLE.resolveDispute(_resolutionParams.request, _resolutionParams.response, _resolutionParams.dispute);
- -
73 - - - - - -

-                            
-                        
74 - - - - - -
    // If the request was not finalized, finalize it
- -
75 - - - - - -
    if (ORACLE.finalizedAt(_resolutionParams.dispute.requestId) == 0) {
- -
76 - - - - - -
      // If the dispute was lost, finalize with response
- -
77 - - - - - -
      if (_award != IOracle.DisputeStatus.Lost) {
- -
78 - - - - - -
        _resolutionParams.response.requestId = 0;
- -
79 - - - - - -
      }
- -
80 - - - - - -
      ORACLE.finalize(_resolutionParams.request, _resolutionParams.response);
- -
81 - - - - - -
    }
- -
82 - - - - - -

-                            
-                        
83 - - - - - -
    emit DisputeArbitrated(_disputeId, _award);
- -
84 - - - - - -
  }
- -
85 - - - - - -

-                            
-                        
86 - - - - - -
  /// @inheritdoc ICouncilArbitrator
- -
87 - - - - - -
  function getResolution(bytes32 _disputeId) external view returns (ResolutionParameters memory _resolutionParams) {
- -
88 - - - - - -
    _resolutionParams = resolutions[_disputeId];
- -
89 - - - - - -
  }
- -
90 - - - - - -
}
- -
91 - - - - - -

-                            
-                        
-
-
- - - - - - - - - - -
-
-
- - - - - - -
Lines covered: 8 / 28 (28.6%)
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
1 - - - - - -
// SPDX-License-Identifier: GPL-3.0
- -
2 - - - - - -
pragma solidity 0.8.26;
- -
3 - - - - - -

-                            
-                        
4 - - - - - -
import {IModule, Module} from '@defi-wonderland/prophet-core/solidity/contracts/Module.sol';
- -
5 - - - - - -

-                            
-                        
6 - - - - - -
import {EnumerableSet} from '@openzeppelin/contracts/utils/structs/EnumerableSet.sol';
- -
7 - - - - - -

-                            
-                        
8 - - - - - -
import {
- -
9 - - - - - -
  IArbitrable,
- -
10 - - - - - -
  IEBOFinalityModule,
- -
11 - - - - - -
  IEBORequestCreator,
- -
12 - - - - - -
  IEBORequestModule,
- -
13 - - - - - -
  IOracle
- -
14 - - - - - -
} from 'interfaces/IEBOFinalityModule.sol';
- -
15 - - - - - -

-                            
-                        
16 - - - - - -
/**
- -
17 - - - - - -
 * @title EBOFinalityModule
- -
18 - - - - - -
 * @notice Module allowing users to index data into the subgraph
- -
19 - - - - - -
 * as a result of a request being finalized
- -
20 - - - - - -
 */
- -
21 - - - - - -
contract EBOFinalityModule is Module, IEBOFinalityModule {
- -
22 - - - - - -
  using EnumerableSet for EnumerableSet.AddressSet;
- -
23 - - - - - -

-                            
-                        
24 - - - - - -
  /// @inheritdoc IEBOFinalityModule
- -
25 - - - - - -
  IArbitrable public immutable ARBITRABLE;
- -
26 - - - - - -

-                            
-                        
27 - - - - - -
  /**
- -
28 - - - - - -
   * @notice The set of EBORequestCreators allowed
- -
29 - - - - - -
   */
- -
30 - - - - - -
  EnumerableSet.AddressSet internal _eboRequestCreatorsAllowed;
- -
31 - - - - - -

-                            
-                        
32 - - - - - -
  /**
- -
33 - - - - - -
   * @notice Constructor
- -
34 - - - - - -
   * @param _oracle The address of the Oracle
- -
35 - - - - - -
   * @param _eboRequestCreator The address of the EBORequestCreator
- -
36 - - - - - -
   * @param _arbitrable The address of the Arbitrable contract
- -
37 - - - - - -
   */
- -
38 - - - - - -
  constructor(IOracle _oracle, IEBORequestCreator _eboRequestCreator, IArbitrable _arbitrable) Module(_oracle) {
- -
39 - -
- -
- - - -
    _addEBORequestCreator(_eboRequestCreator);
- -
40 - -
- -
- - - -
    ARBITRABLE = _arbitrable;
- -
41 - - - - - -
  }
- -
42 - - - - - -

-                            
-                        
43 - - - - - -
  /// @inheritdoc IEBOFinalityModule
- -
44 - - - - - -
  function finalizeRequest(
- -
45 - - - - - -
    IOracle.Request calldata _request,
- -
46 - - - - - -
    IOracle.Response calldata _response,
- -
47 - - - - - -
    address _finalizer
- -
48 - - - - - -
  ) external override(Module, IEBOFinalityModule) onlyOracle {
- -
49 - - - - - -
    if (!_eboRequestCreatorsAllowed.contains(address(_request.requester))) revert EBOFinalityModule_InvalidRequester();
- -
50 - - - - - -

-                            
-                        
51 - - - - - -
    if (_response.requestId != 0) {
- -
52 - - - - - -
      IEBORequestModule.RequestParameters memory _requestParams = decodeRequestData(_request.requestModuleData);
- -
53 - - - - - -
      uint256 _block = decodeResponseData(_response.response);
- -
54 - - - - - -

-                            
-                        
55 - - - - - -
      emit NewEpoch(_requestParams.epoch, _requestParams.chainId, _block);
- -
56 - - - - - -
    }
- -
57 - - - - - -

-                            
-                        
58 - - - - - -
    emit RequestFinalized(_response.requestId, _response, _finalizer);
- -
59 - - - - - -
  }
- -
60 - - - - - -

-                            
-                        
61 - - - - - -
  /// @inheritdoc IEBOFinalityModule
- -
62 - - - - - -
  function amendEpoch(uint256 _epoch, string[] calldata _chainIds, uint256[] calldata _blockNumbers) external {
- -
63 - - - - - -
    ARBITRABLE.validateArbitrator(msg.sender);
- -
64 - - - - - -

-                            
-                        
65 - - - - - -
    uint256 _length = _chainIds.length;
- -
66 - - - - - -
    if (_length != _blockNumbers.length) revert EBOFinalityModule_LengthMismatch();
- -
67 - - - - - -

-                            
-                        
68 - - - - - -
    for (uint256 _i; _i < _length; ++_i) {
- -
69 - - - - - -
      emit AmendEpoch(_epoch, _chainIds[_i], _blockNumbers[_i]);
- -
70 - - - - - -
    }
- -
71 - - - - - -
  }
- -
72 - - - - - -

-                            
-                        
73 - - - - - -
  /// @inheritdoc IEBOFinalityModule
- -
74 - - - - - -
  function addEBORequestCreator(IEBORequestCreator _eboRequestCreator) external {
- -
75 - -
- -
- - - -
    ARBITRABLE.validateArbitrator(msg.sender);
- -
76 - -
- -
- - - -
    _addEBORequestCreator(_eboRequestCreator);
- -
77 - - - - - -
  }
- -
78 - - - - - -

-                            
-                        
79 - - - - - -
  /// @inheritdoc IEBOFinalityModule
- -
80 - - - - - -
  function removeEBORequestCreator(IEBORequestCreator _eboRequestCreator) external {
- -
81 - -
- -
- -
- -
- -
    ARBITRABLE.validateArbitrator(msg.sender);
- -
82 - -
- -
- - - -
    if (_eboRequestCreatorsAllowed.remove(address(_eboRequestCreator))) {
- -
83 - - - - - -
      emit RemoveEBORequestCreator(_eboRequestCreator);
- -
84 - - - - - -
    }
- -
85 - - - - - -
  }
- -
86 - - - - - -

-                            
-                        
87 - - - - - -
  /// @inheritdoc IEBOFinalityModule
- -
88 - - - - - -
  function decodeRequestData(bytes calldata _data)
- -
89 - - - - - -
    public
- -
90 - - - - - -
    pure
- -
91 - - - - - -
    returns (IEBORequestModule.RequestParameters memory _params)
- -
92 - - - - - -
  {
- -
93 - - - - - -
    _params = abi.decode(_data, (IEBORequestModule.RequestParameters));
- -
94 - - - - - -
  }
- -
95 - - - - - -

-                            
-                        
96 - - - - - -
  /// @inheritdoc IEBOFinalityModule
- -
97 - - - - - -
  function decodeResponseData(bytes calldata _data) public pure returns (uint256 _block) {
- -
98 - - - - - -
    _block = abi.decode(_data, (uint256));
- -
99 - - - - - -
  }
- -
100 - - - - - -

-                            
-                        
101 - - - - - -
  /// @inheritdoc IEBOFinalityModule
- -
102 - - - - - -
  function getAllowedEBORequestCreators() external view returns (address[] memory _eboRequestCreators) {
- -
103 - - - - - -
    _eboRequestCreators = _eboRequestCreatorsAllowed.values();
- -
104 - - - - - -
  }
- -
105 - - - - - -

-                            
-                        
106 - - - - - -
  /// @inheritdoc IModule
- -
107 - - - - - -
  function moduleName() external pure returns (string memory _moduleName) {
- -
108 - - - - - -
    _moduleName = 'EBOFinalityModule';
- -
109 - - - - - -
  }
- -
110 - - - - - -

-                            
-                        
111 - - - - - -
  /**
- -
112 - - - - - -
   * @notice Adds the address of the EBORequestCreator
- -
113 - - - - - -
   * @param _eboRequestCreator The address of the EBORequestCreator
- -
114 - - - - - -
   */
- -
115 - - - - - -
  function _addEBORequestCreator(IEBORequestCreator _eboRequestCreator) private {
- -
116 - -
- -
- - - -
    if (_eboRequestCreatorsAllowed.add(address(_eboRequestCreator))) {
- -
117 - -
- -
- - - -
      emit AddEBORequestCreator(_eboRequestCreator);
- -
118 - - - - - -
    }
- -
119 - - - - - -
  }
- -
120 - - - - - -
}
- -
121 - - - - - -

-                            
-                        
-
-
- - - - - - - - - - -
-
-
- - - - - - -
Lines covered: 49 / 67 (73.1%)
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
1 - - - - - -
// SPDX-License-Identifier: GPL-3.0
- -
2 - - - - - -
pragma solidity 0.8.26;
- -
3 - - - - - -

-                            
-                        
4 - - - - - -
import {EnumerableSet} from '@openzeppelin/contracts/utils/structs/EnumerableSet.sol';
- -
5 - - - - - -

-                            
-                        
6 - - - - - -
import {
- -
7 - - - - - -
  IArbitrable,
- -
8 - - - - - -
  IArbitratorModule,
- -
9 - - - - - -
  IBondEscalationModule,
- -
10 - - - - - -
  IBondedResponseModule,
- -
11 - - - - - -
  IEBORequestCreator,
- -
12 - - - - - -
  IEBORequestModule,
- -
13 - - - - - -
  IEpochManager,
- -
14 - - - - - -
  IOracle
- -
15 - - - - - -
} from 'interfaces/IEBORequestCreator.sol';
- -
16 - - - - - -

-                            
-                        
17 - - - - - -
contract EBORequestCreator is IEBORequestCreator {
- -
18 - - - - - -
  using EnumerableSet for EnumerableSet.Bytes32Set;
- -
19 - - - - - -

-                            
-                        
20 - - - - - -
  /// @inheritdoc IEBORequestCreator
- -
21 - - - -
- -
- -
  IOracle public immutable ORACLE;
- -
22 - - - - - -

-                            
-                        
23 - - - - - -
  /// @inheritdoc IEBORequestCreator
- -
24 - - - -
- -
- -
  IArbitrable public immutable ARBITRABLE;
- -
25 - - - - - -

-                            
-                        
26 - - - - - -
  /// @inheritdoc IEBORequestCreator
- -
27 - - - -
- -
- -
  uint256 public immutable START_EPOCH;
- -
28 - - - - - -

-                            
-                        
29 - - - - - -
  /// @inheritdoc IEBORequestCreator
- -
30 - - - -
- -
- -
  IEpochManager public epochManager;
- -
31 - - - - - -

-                            
-                        
32 - - - - - -
  /// @inheritdoc IEBORequestCreator
- -
33 - - - - - -
  IOracle.Request public requestData;
- -
34 - - - - - -

-                            
-                        
35 - - - - - -
  /// @inheritdoc IEBORequestCreator
- -
36 - - - -
- -
- -
  mapping(string _chainId => mapping(uint256 _epoch => bytes32 _requestId)) public requestIdPerChainAndEpoch;
- -
37 - - - - - -

-                            
-                        
38 - - - - - -
  /**
- -
39 - - - - - -
   * @notice The set of chain ids allowed
- -
40 - - - - - -
   */
- -
41 - - - - - -
  EnumerableSet.Bytes32Set internal _chainIdsAllowed;
- -
42 - - - - - -

-                            
-                        
43 - - - - - -
  constructor(
- -
44 - - - - - -
    IOracle _oracle,
- -
45 - - - - - -
    IEpochManager _epochManager,
- -
46 - - - - - -
    IArbitrable _arbitrable,
- -
47 - - - - - -
    IOracle.Request memory _requestData
- -
48 - - - - - -
  ) {
- -
49 - -
- -
- - - -
    if (_requestData.nonce != 0) revert EBORequestCreator_InvalidNonce();
- -
50 - - - - - -

-                            
-                        
51 - -
- -
- - - -
    ARBITRABLE = _arbitrable;
- -
52 - - - - - -

-                            
-                        
53 - -
- -
- - - -
    ORACLE = _oracle;
- -
54 - -
- -
- - - -
    _setEpochManager(_epochManager);
- -
55 - - - - - -

-                            
-                        
56 - -
- -
- - - -
    _requestData.requester = address(this);
- -
57 - -
- -
- - - -
    requestData = _requestData;
- -
58 - - - - - -

-                            
-                        
59 - -
- -
- - - -
    START_EPOCH = epochManager.currentEpoch();
- -
60 - - - - - -
  }
- -
61 - - - - - -

-                            
-                        
62 - - - - - -
  /// @inheritdoc IEBORequestCreator
- -
63 - - - - - -
  function createRequest(uint256 _epoch, string calldata _chainId) external {
- -
64 - - - -
- -
- -
    if (_epoch > epochManager.currentEpoch() || START_EPOCH > _epoch) revert EBORequestCreator_InvalidEpoch();
- -
65 - - - - - -

-                            
-                        
66 - - - - - -
    bytes32 _encodedChainId = _encodeChainId(_chainId);
- -
67 - - - - - -
    if (!_chainIdsAllowed.contains(_encodedChainId)) revert EBORequestCreator_ChainNotAdded();
- -
68 - - - - - -

-                            
-                        
69 - - - - - -
    IOracle.Request memory _requestData = requestData;
- -
70 - - - - - -

-                            
-                        
71 - - - - - -
    IEBORequestModule.RequestParameters memory _requestModuleData =
- -
72 - - - - - -
      IEBORequestModule(_requestData.requestModule).decodeRequestData(_requestData.requestModuleData);
- -
73 - - - - - -

-                            
-                        
74 - - - - - -
    _requestModuleData.epoch = _epoch;
- -
75 - - - - - -

-                            
-                        
76 - - - - - -
    bytes32 _requestId = requestIdPerChainAndEpoch[_chainId][_epoch];
- -
77 - - - - - -

-                            
-                        
78 - - - - - -
    if (
- -
79 - - - - - -
      _requestId != bytes32(0)
- -
80 - - - - - -
        && (ORACLE.finalizedAt(_requestId) == 0 || ORACLE.finalizedResponseId(_requestId) != bytes32(0))
- -
81 - - - - - -
    ) revert EBORequestCreator_RequestAlreadyCreated();
- -
82 - - - - - -

-                            
-                        
83 - - - - - -
    _requestModuleData.chainId = _chainId;
- -
84 - - - - - -

-                            
-                        
85 - - - - - -
    _requestData.requestModuleData = abi.encode(_requestModuleData);
- -
86 - - - - - -

-                            
-                        
87 - - - - - -
    _requestId = ORACLE.createRequest(_requestData, bytes32(0));
- -
88 - - - - - -

-                            
-                        
89 - - - - - -
    requestIdPerChainAndEpoch[_chainId][_epoch] = _requestId;
- -
90 - - - - - -

-                            
-                        
91 - - - - - -
    emit RequestCreated(_requestId, _requestData, _epoch, _chainId);
- -
92 - - - - - -
  }
- -
93 - - - - - -

-                            
-                        
94 - - - - - -
  /// @inheritdoc IEBORequestCreator
- -
95 - - - - - -
  function addChain(string calldata _chainId) external {
- -
96 - -
- -
- -
- -
- -
    ARBITRABLE.validateArbitrator(msg.sender);
- -
97 - -
- -
- -
- -
- -
    bytes32 _encodedChainId = _encodeChainId(_chainId);
- -
98 - -
- -
- -
- -
- -
    if (!_chainIdsAllowed.add(_encodedChainId)) {
- -
99 - - - -
- -
- -
      revert EBORequestCreator_ChainAlreadyAdded();
- -
100 - - - - - -
    }
- -
101 - - - - - -

-                            
-                        
102 - -
- -
- - - -
    emit ChainAdded(_chainId);
- -
103 - - - - - -
  }
- -
104 - - - - - -

-                            
-                        
105 - - - - - -
  /// @inheritdoc IEBORequestCreator
- -
106 - - - - - -
  function removeChain(string calldata _chainId) external {
- -
107 - -
- -
- -
- -
- -
    ARBITRABLE.validateArbitrator(msg.sender);
- -
108 - -
- -
- -
- -
- -
    bytes32 _encodedChainId = _encodeChainId(_chainId);
- -
109 - -
- -
- -
- -
- -
    if (!_chainIdsAllowed.remove(_encodedChainId)) {
- -
110 - - - -
- -
- -
      revert EBORequestCreator_ChainNotAdded();
- -
111 - - - - - -
    }
- -
112 - - - - - -

-                            
-                        
113 - -
- -
- - - -
    emit ChainRemoved(_chainId);
- -
114 - - - - - -
  }
- -
115 - - - - - -

-                            
-                        
116 - - - - - -
  /// @inheritdoc IEBORequestCreator
- -
117 - - - - - -
  function setRequestModuleData(
- -
118 - - - - - -
    address _requestModule,
- -
119 - - - - - -
    IEBORequestModule.RequestParameters calldata _requestModuleData
- -
120 - - - - - -
  ) external {
- -
121 - -
- -
- -
- -
- -
    ARBITRABLE.validateArbitrator(msg.sender);
- -
122 - -
- -
- - - -
    requestData.requestModule = _requestModule;
- -
123 - -
- -
- - - -
    requestData.requestModuleData = abi.encode(_requestModuleData);
- -
124 - - - - - -

-                            
-                        
125 - -
- -
- - - -
    emit RequestModuleDataSet(_requestModule, _requestModuleData);
- -
126 - - - - - -
  }
- -
127 - - - - - -

-                            
-                        
128 - - - - - -
  /// @inheritdoc IEBORequestCreator
- -
129 - - - - - -
  function setResponseModuleData(
- -
130 - - - - - -
    address _responseModule,
- -
131 - - - - - -
    IBondedResponseModule.RequestParameters calldata _responseModuleData
- -
132 - - - - - -
  ) external {
- -
133 - -
- -
- -
- -
- -
    ARBITRABLE.validateArbitrator(msg.sender);
- -
134 - -
- -
- - - -
    requestData.responseModule = _responseModule;
- -
135 - -
- -
- - - -
    requestData.responseModuleData = abi.encode(_responseModuleData);
- -
136 - - - - - -

-                            
-                        
137 - -
- -
- - - -
    emit ResponseModuleDataSet(_responseModule, _responseModuleData);
- -
138 - - - - - -
  }
- -
139 - - - - - -

-                            
-                        
140 - - - - - -
  /// @inheritdoc IEBORequestCreator
- -
141 - - - - - -
  function setDisputeModuleData(
- -
142 - - - - - -
    address _disputeModule,
- -
143 - - - - - -
    IBondEscalationModule.RequestParameters calldata _disputeModuleData
- -
144 - - - - - -
  ) external {
- -
145 - -
- -
- -
- -
- -
    ARBITRABLE.validateArbitrator(msg.sender);
- -
146 - -
- -
- - - -
    requestData.disputeModule = _disputeModule;
- -
147 - -
- -
- - - -
    requestData.disputeModuleData = abi.encode(_disputeModuleData);
- -
148 - - - - - -

-                            
-                        
149 - -
- -
- - - -
    emit DisputeModuleDataSet(_disputeModule, _disputeModuleData);
- -
150 - - - - - -
  }
- -
151 - - - - - -

-                            
-                        
152 - - - - - -
  /// @inheritdoc IEBORequestCreator
- -
153 - - - - - -
  function setResolutionModuleData(
- -
154 - - - - - -
    address _resolutionModule,
- -
155 - - - - - -
    IArbitratorModule.RequestParameters calldata _resolutionModuleData
- -
156 - - - - - -
  ) external {
- -
157 - -
- -
- -
- -
- -
    ARBITRABLE.validateArbitrator(msg.sender);
- -
158 - -
- -
- - - -
    requestData.resolutionModule = _resolutionModule;
- -
159 - -
- -
- - - -
    requestData.resolutionModuleData = abi.encode(_resolutionModuleData);
- -
160 - - - - - -

-                            
-                        
161 - -
- -
- - - -
    emit ResolutionModuleDataSet(_resolutionModule, _resolutionModuleData);
- -
162 - - - - - -
  }
- -
163 - - - - - -

-                            
-                        
164 - - - - - -
  /// @inheritdoc IEBORequestCreator
- -
165 - - - - - -
  function setFinalityModuleData(address _finalityModule) external {
- -
166 - -
- -
- -
- -
- -
    ARBITRABLE.validateArbitrator(msg.sender);
- -
167 - -
- -
- - - -
    requestData.finalityModule = _finalityModule;
- -
168 - - - - - -

-                            
-                        
169 - -
- -
- - - -
    emit FinalityModuleDataSet(_finalityModule, new bytes(0));
- -
170 - - - - - -
  }
- -
171 - - - - - -

-                            
-                        
172 - - - - - -
  /// @inheritdoc IEBORequestCreator
- -
173 - - - - - -
  function setEpochManager(IEpochManager _epochManager) external {
- -
174 - -
- -
- -
- -
- -
    ARBITRABLE.validateArbitrator(msg.sender);
- -
175 - -
- -
- - - -
    _setEpochManager(_epochManager);
- -
176 - - - - - -
  }
- -
177 - - - - - -

-                            
-                        
178 - - - - - -
  /// @inheritdoc IEBORequestCreator
- -
179 - - - - - -
  function getRequestData() external view returns (IOracle.Request memory _requestData) {
- -
180 - - - -
- -
- -
    _requestData = requestData;
- -
181 - - - - - -
  }
- -
182 - - - - - -

-                            
-                        
183 - - - - - -
  /// @inheritdoc IEBORequestCreator
- -
184 - - - - - -
  function getAllowedChainIds() external view returns (bytes32[] memory _chainIds) {
- -
185 - - - - - -
    _chainIds = _chainIdsAllowed.values();
- -
186 - - - - - -
  }
- -
187 - - - - - -

-                            
-                        
188 - - - - - -
  /**
- -
189 - - - - - -
   * @notice Set the epoch manager
- -
190 - - - - - -
   * @param _epochManager The epoch manager
- -
191 - - - - - -
   */
- -
192 - - - - - -
  function _setEpochManager(IEpochManager _epochManager) internal {
- -
193 - -
- -
- - - -
    epochManager = _epochManager;
- -
194 - - - - - -

-                            
-                        
195 - -
- -
- - - -
    emit EpochManagerSet(_epochManager);
- -
196 - - - - - -
  }
- -
197 - - - - - -

-                            
-                        
198 - - - - - -
  /**
- -
199 - - - - - -
   * @notice Encodes the chain id
- -
200 - - - - - -
   * @dev The chain id is hashed to have a enumerable set to avoid duplicates
- -
201 - - - - - -
   */
- -
202 - -
- -
- -
- -
- -
  function _encodeChainId(string calldata _chainId) internal pure returns (bytes32 _encodedChainId) {
- -
203 - -
- -
- -
- -
- -
    _encodedChainId = keccak256(abi.encodePacked(_chainId));
- -
204 - - - - - -
  }
- -
205 - - - - - -
}
- -
206 - - - - - -

-                            
-                        
-
-
- - - - - - - - - - -
-
-
- - - - - - -
Lines covered: 9 / 19 (47.4%)
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
1 - - - - - -
// SPDX-License-Identifier: GPL-3.0
- -
2 - - - - - -
pragma solidity 0.8.26;
- -
3 - - - - - -

-                            
-                        
4 - - - - - -
import {IModule, Module} from '@defi-wonderland/prophet-core/solidity/contracts/Module.sol';
- -
5 - - - - - -

-                            
-                        
6 - - - - - -
import {EnumerableSet} from '@openzeppelin/contracts/utils/structs/EnumerableSet.sol';
- -
7 - - - - - -

-                            
-                        
8 - - - - - -
import {IArbitrable, IEBORequestCreator, IEBORequestModule, IOracle} from 'interfaces/IEBORequestModule.sol';
- -
9 - - - - - -

-                            
-                        
10 - - - - - -
/**
- -
11 - - - - - -
 * @title EBORequestModule
- -
12 - - - - - -
 * @notice Module allowing users to create a request for RPC data for a specific epoch
- -
13 - - - - - -
 */
- -
14 - - - - - -
contract EBORequestModule is Module, IEBORequestModule {
- -
15 - - - - - -
  using EnumerableSet for EnumerableSet.AddressSet;
- -
16 - - - - - -

-                            
-                        
17 - - - - - -
  /// @inheritdoc IEBORequestModule
- -
18 - - - - - -
  IArbitrable public immutable ARBITRABLE;
- -
19 - - - - - -

-                            
-                        
20 - - - - - -
  /**
- -
21 - - - - - -
   * @notice The set of EBORequestCreators allowed
- -
22 - - - - - -
   */
- -
23 - - - - - -
  EnumerableSet.AddressSet internal _eboRequestCreatorsAllowed;
- -
24 - - - - - -

-                            
-                        
25 - - - - - -
  /**
- -
26 - - - - - -
   * @notice Constructor
- -
27 - - - - - -
   * @param _oracle The address of the Oracle
- -
28 - - - - - -
   * @param _eboRequestCreator The address of the EBORequestCreator
- -
29 - - - - - -
   * @param _arbitrable The address of the Arbitrable contract
- -
30 - - - - - -
   */
- -
31 - - - - - -
  constructor(IOracle _oracle, IEBORequestCreator _eboRequestCreator, IArbitrable _arbitrable) Module(_oracle) {
- -
32 - -
- -
- - - -
    _addEBORequestCreator(_eboRequestCreator);
- -
33 - -
- -
- - - -
    ARBITRABLE = _arbitrable;
- -
34 - - - - - -
  }
- -
35 - - - - - -

-                            
-                        
36 - - - - - -
  /// @inheritdoc IEBORequestModule
- -
37 - - - - - -
  function createRequest(
- -
38 - - - - - -
    bytes32, /* _requestId */
- -
39 - - - - - -
    bytes calldata, /* _data */
- -
40 - - - - - -
    address _requester
- -
41 - - - - - -
  ) external view onlyOracle {
- -
42 - - - - - -
    if (!_eboRequestCreatorsAllowed.contains(_requester)) revert EBORequestModule_InvalidRequester();
- -
43 - - - - - -
  }
- -
44 - - - - - -

-                            
-                        
45 - - - - - -
  /// @inheritdoc IEBORequestModule
- -
46 - - - - - -
  function addEBORequestCreator(IEBORequestCreator _eboRequestCreator) external {
- -
47 - -
- -
- -
- -
- -
    ARBITRABLE.validateArbitrator(msg.sender);
- -
48 - -
- -
- - - -
    _addEBORequestCreator(_eboRequestCreator);
- -
49 - - - - - -
  }
- -
50 - - - - - -

-                            
-                        
51 - - - - - -
  /// @inheritdoc IEBORequestModule
- -
52 - - - - - -
  function removeEBORequestCreator(IEBORequestCreator _eboRequestCreator) external {
- -
53 - -
- -
- -
- -
- -
    ARBITRABLE.validateArbitrator(msg.sender);
- -
54 - -
- -
- - - -
    if (_eboRequestCreatorsAllowed.remove(address(_eboRequestCreator))) {
- -
55 - -
- -
- - - -
      emit RemoveEBORequestCreator(_eboRequestCreator);
- -
56 - - - - - -
    }
- -
57 - - - - - -
  }
- -
58 - - - - - -

-                            
-                        
59 - - - - - -
  /// @inheritdoc IEBORequestModule
- -
60 - - - - - -
  function getAllowedEBORequestCreators() external view returns (address[] memory _eboRequestCreators) {
- -
61 - - - - - -
    _eboRequestCreators = _eboRequestCreatorsAllowed.values();
- -
62 - - - - - -
  }
- -
63 - - - - - -

-                            
-                        
64 - - - - - -
  /// @inheritdoc IEBORequestModule
- -
65 - - - - - -
  function decodeRequestData(bytes calldata _data) public pure returns (RequestParameters memory _params) {
- -
66 - - - - - -
    _params = abi.decode(_data, (RequestParameters));
- -
67 - - - - - -
  }
- -
68 - - - - - -

-                            
-                        
69 - - - - - -
  /// @inheritdoc IModule
- -
70 - - - - - -
  function validateParameters(bytes calldata _encodedParameters)
- -
71 - - - - - -
    external
- -
72 - - - - - -
    pure
- -
73 - - - - - -
    override(IModule, Module)
- -
74 - - - - - -
    returns (bool _valid)
- -
75 - - - - - -
  {
- -
76 - - - - - -
    RequestParameters memory _params = decodeRequestData(_encodedParameters);
- -
77 - - - - - -
    _valid =
- -
78 - - - - - -
      _params.epoch != 0 && bytes(_params.chainId).length != 0 && address(_params.accountingExtension) != address(0);
- -
79 - - - - - -
  }
- -
80 - - - - - -

-                            
-                        
81 - - - - - -
  /// @inheritdoc IModule
- -
82 - - - - - -
  function moduleName() external pure returns (string memory _moduleName) {
- -
83 - - - - - -
    _moduleName = 'EBORequestModule';
- -
84 - - - - - -
  }
- -
85 - - - - - -

-                            
-                        
86 - - - - - -
  /**
- -
87 - - - - - -
   * @notice Adds the address of the EBORequestCreator
- -
88 - - - - - -
   * @param _eboRequestCreator The address of the EBORequestCreator
- -
89 - - - - - -
   */
- -
90 - - - - - -
  function _addEBORequestCreator(IEBORequestCreator _eboRequestCreator) private {
- -
91 - -
- -
- - - -
    if (_eboRequestCreatorsAllowed.add(address(_eboRequestCreator))) {
- -
92 - -
- -
- - - -
      emit AddEBORequestCreator(_eboRequestCreator);
- -
93 - - - - - -
    }
- -
94 - - - - - -
  }
- -
95 - - - - - -
}
- -
96 - - - - - -

-                            
-                        
-
-
- - - - - - - - - - -
-
-
- - - - - - -
Lines covered: 13 / 141 (9.2%)
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
1 - - - - - -
// SPDX-License-Identifier: GPL-3.0
- -
2 - - - - - -
pragma solidity 0.8.26;
- -
3 - - - - - -

-                            
-                        
4 - - - - - -
import {SafeERC20} from '@openzeppelin/contracts/token/ERC20/utils/SafeERC20.sol';
- -
5 - - - - - -
import {EnumerableSet} from '@openzeppelin/contracts/utils/structs/EnumerableSet.sol';
- -
6 - - - - - -

-                            
-                        
7 - - - - - -
import {
- -
8 - - - - - -
  IArbitrable,
- -
9 - - - - - -
  IBondEscalationModule,
- -
10 - - - - - -
  IERC20,
- -
11 - - - - - -
  IHorizonAccountingExtension,
- -
12 - - - - - -
  IHorizonStaking,
- -
13 - - - - - -
  IOracle
- -
14 - - - - - -
} from 'interfaces/IHorizonAccountingExtension.sol';
- -
15 - - - - - -

-                            
-                        
16 - - - - - -
import {Validator} from '@defi-wonderland/prophet-core/solidity/contracts/Validator.sol';
- -
17 - - - - - -

-                            
-                        
18 - - - - - -
contract HorizonAccountingExtension is Validator, IHorizonAccountingExtension {
- -
19 - - - - - -
  using EnumerableSet for EnumerableSet.AddressSet;
- -
20 - - - - - -
  using SafeERC20 for IERC20;
- -
21 - - - - - -

-                            
-                        
22 - - - - - -
  /// @inheritdoc IHorizonAccountingExtension
- -
23 - - - - - -
  IHorizonStaking public immutable HORIZON_STAKING;
- -
24 - - - - - -

-                            
-                        
25 - - - - - -
  /// @inheritdoc IHorizonAccountingExtension
- -
26 - - - - - -
  IERC20 public immutable GRT;
- -
27 - - - - - -

-                            
-                        
28 - - - - - -
  /// @inheritdoc IHorizonAccountingExtension
- -
29 - - - - - -
  IArbitrable public immutable ARBITRABLE;
- -
30 - - - - - -

-                            
-                        
31 - - - - - -
  /// @inheritdoc IHorizonAccountingExtension
- -
32 - - - - - -
  uint64 public immutable MIN_THAWING_PERIOD;
- -
33 - - - - - -

-                            
-                        
34 - - - - - -
  /// @inheritdoc IHorizonAccountingExtension
- -
35 - - - - - -
  uint32 public constant MAX_USERS_TO_SLASH = 1;
- -
36 - - - - - -

-                            
-                        
37 - - - - - -
  /// @inheritdoc IHorizonAccountingExtension
- -
38 - - - - - -
  uint32 public constant MAX_VERIFIER_CUT = 1_000_000;
- -
39 - - - - - -

-                            
-                        
40 - - - - - -
  /// @inheritdoc IHorizonAccountingExtension
- -
41 - - - - - -
  uint128 public maxUsersToCheck;
- -
42 - - - - - -

-                            
-                        
43 - - - - - -
  /// @inheritdoc IHorizonAccountingExtension
- -
44 - - - - - -
  mapping(address _user => uint256 _bonded) public totalBonded;
- -
45 - - - - - -

-                            
-                        
46 - - - - - -
  /// @inheritdoc IHorizonAccountingExtension
- -
47 - - - - - -
  mapping(address _bonder => mapping(bytes32 _requestId => uint256 _amount)) public bondedForRequest;
- -
48 - - - - - -

-                            
-                        
49 - - - - - -
  /// @inheritdoc IHorizonAccountingExtension
- -
50 - - - - - -
  mapping(bytes32 _disputeId => uint256 _amount) public pledges;
- -
51 - - - - - -

-                            
-                        
52 - - - - - -
  /// @inheritdoc IHorizonAccountingExtension
- -
53 - - - - - -
  mapping(bytes32 _disputeId => EscalationResult _result) public escalationResults;
- -
54 - - - - - -

-                            
-                        
55 - - - - - -
  /// @inheritdoc IHorizonAccountingExtension
- -
56 - - - - - -
  mapping(bytes32 _requestId => mapping(address _pledger => bool _claimed)) public pledgerClaimed;
- -
57 - - - - - -

-                            
-                        
58 - - - - - -
  /// @inheritdoc IHorizonAccountingExtension
- -
59 - - - - - -
  mapping(address _caller => bool _authorized) public authorizedCallers;
- -
60 - - - - - -

-                            
-                        
61 - - - - - -
  /// @inheritdoc IHorizonAccountingExtension
- -
62 - - - - - -
  mapping(bytes32 _disputeId => uint256 _balance) public disputeBalance;
- -
63 - - - - - -

-                            
-                        
64 - - - - - -
  /**
- -
65 - - - - - -
   * @notice Storing which modules have the users approved to bond their tokens.
- -
66 - - - - - -
   */
- -
67 - - - - - -
  mapping(address _bonder => EnumerableSet.AddressSet _modules) internal _approvals;
- -
68 - - - - - -

-                            
-                        
69 - - - - - -
  /**
- -
70 - - - - - -
   * @notice Storing the users that have pledged for a dispute.
- -
71 - - - - - -
   */
- -
72 - - - - - -
  mapping(bytes32 _disputeId => EnumerableSet.AddressSet _pledger) internal _pledgers;
- -
73 - - - - - -

-                            
-                        
74 - - - - - -
  /**
- -
75 - - - - - -
   * @notice Constructor
- -
76 - - - - - -
   * @param _horizonStaking The address of the Oracle
- -
77 - - - - - -
   * @param _oracle The address of the Oracle
- -
78 - - - - - -
   * @param _grt The address of the GRT token
- -
79 - - - - - -
   * @param _minThawingPeriod The minimum thawing period for the staking
- -
80 - - - - - -
   * @param _maxUsersToCheck The maximum number of users to check
- -
81 - - - - - -
   * @param _authorizedCallers The addresses of the authorized callers
- -
82 - - - - - -
   */
- -
83 - - - - - -
  constructor(
- -
84 - - - - - -
    IHorizonStaking _horizonStaking,
- -
85 - - - - - -
    IOracle _oracle,
- -
86 - - - - - -
    IERC20 _grt,
- -
87 - - - - - -
    IArbitrable _arbitrable,
- -
88 - - - - - -
    uint64 _minThawingPeriod,
- -
89 - - - - - -
    uint128 _maxUsersToCheck,
- -
90 - - - - - -
    address[] memory _authorizedCallers
- -
91 - - - - - -
  ) Validator(_oracle) {
- -
92 - -
- -
- - - -
    HORIZON_STAKING = _horizonStaking;
- -
93 - -
- -
- - - -
    GRT = _grt;
- -
94 - -
- -
- - - -
    ARBITRABLE = _arbitrable;
- -
95 - -
- -
- - - -
    MIN_THAWING_PERIOD = _minThawingPeriod;
- -
96 - -
- -
- - - -
    _setMaxUsersToCheck(_maxUsersToCheck);
- -
97 - - - - - -

-                            
-                        
98 - - - - - -
    // Set the authorized callers
- -
99 - -
- -
- - - -
    for (uint256 _i; _i < _authorizedCallers.length; ++_i) {
- -
100 - -
- -
- - - -
      authorizedCallers[_authorizedCallers[_i]] = true;
- -
101 - - - - - -
    }
- -
102 - - - - - -
  }
- -
103 - - - - - -

-                            
-                        
104 - - - - - -
  /**
- -
105 - - - - - -
   * @notice Checks that the caller is an authorized caller.
- -
106 - - - - - -
   */
- -
107 - - - - - -
  modifier onlyAuthorizedCaller() {
- -
108 - - - - - -
    if (!authorizedCallers[msg.sender]) revert HorizonAccountingExtension_UnauthorizedCaller();
- -
109 - - - - - -
    _;
- -
110 - - - - - -
  }
- -
111 - - - - - -

-                            
-                        
112 - - - - - -
  /**
- -
113 - - - - - -
   * @notice Checks that the caller is an allowed module used in the request.
- -
114 - - - - - -
   * @param _requestId The request ID.
- -
115 - - - - - -
   */
- -
116 - - - - - -
  modifier onlyAllowedModule(bytes32 _requestId) {
- -
117 - - - - - -
    if (!ORACLE.allowedModule(_requestId, msg.sender)) revert HorizonAccountingExtension_UnauthorizedModule();
- -
118 - - - - - -
    _;
- -
119 - - - - - -
  }
- -
120 - - - - - -

-                            
-                        
121 - - - - - -
  /**
- -
122 - - - - - -
   * @notice Checks if the user is either the requester or a proposer, or a disputer.
- -
123 - - - - - -
   * @param _requestId The request ID.
- -
124 - - - - - -
   * @param _user The address to check.
- -
125 - - - - - -
   */
- -
126 - - - - - -
  modifier onlyParticipant(bytes32 _requestId, address _user) {
- -
127 - - - - - -
    if (!ORACLE.isParticipant(_requestId, _user)) revert HorizonAccountingExtension_UnauthorizedUser();
- -
128 - - - - - -
    _;
- -
129 - - - - - -
  }
- -
130 - - - - - -

-                            
-                        
131 - - - - - -
  /// @inheritdoc IHorizonAccountingExtension
- -
132 - - - - - -
  function approveModule(address _module) external {
- -
133 - -
- -
- - - -
    _approvals[msg.sender].add(_module);
- -
134 - - - - - -
  }
- -
135 - - - - - -

-                            
-                        
136 - - - - - -
  /// @inheritdoc IHorizonAccountingExtension
- -
137 - - - - - -
  function revokeModule(address _module) external {
- -
138 - -
- -
- - - -
    _approvals[msg.sender].remove(_module);
- -
139 - - - - - -
  }
- -
140 - - - - - -

-                            
-                        
141 - - - - - -
  /// @inheritdoc IHorizonAccountingExtension
- -
142 - - - - - -
  function pledge(
- -
143 - - - - - -
    address _pledger,
- -
144 - - - - - -
    IOracle.Request calldata _request,
- -
145 - - - - - -
    IOracle.Dispute calldata _dispute,
- -
146 - - - - - -
    IERC20, /* _token */
- -
147 - - - - - -
    uint256 _amount
- -
148 - - - - - -
  ) external onlyAuthorizedCaller {
- -
149 - - - - - -
    bytes32 _requestId = _getId(_request);
- -
150 - - - - - -
    bytes32 _disputeId = _validateDispute(_request, _dispute);
- -
151 - - - - - -

-                            
-                        
152 - - - - - -
    if (!ORACLE.allowedModule(_requestId, msg.sender)) revert HorizonAccountingExtension_UnauthorizedModule();
- -
153 - - - - - -

-                            
-                        
154 - - - - - -
    pledges[_disputeId] += _amount;
- -
155 - - - - - -

-                            
-                        
156 - - - - - -
    _pledgers[_disputeId].add(_pledger);
- -
157 - - - - - -

-                            
-                        
158 - - - - - -
    _bond(_pledger, _amount);
- -
159 - - - - - -

-                            
-                        
160 - - - - - -
    emit Pledged({_pledger: _pledger, _requestId: _requestId, _disputeId: _disputeId, _amount: _amount});
- -
161 - - - - - -
  }
- -
162 - - - - - -

-                            
-                        
163 - - - - - -
  /// @inheritdoc IHorizonAccountingExtension
- -
164 - - - - - -
  function onSettleBondEscalation(
- -
165 - - - - - -
    IOracle.Request calldata _request,
- -
166 - - - - - -
    IOracle.Dispute calldata _dispute,
- -
167 - - - - - -
    IERC20, /* _token */
- -
168 - - - - - -
    uint256 _amountPerPledger,
- -
169 - - - - - -
    uint256 _winningPledgersLength
- -
170 - - - - - -
  ) external onlyAuthorizedCaller {
- -
171 - - - - - -
    bytes32 _requestId = _getId(_request);
- -
172 - - - - - -
    bytes32 _disputeId = _validateDispute(_request, _dispute);
- -
173 - - - - - -

-                            
-                        
174 - - - - - -
    if (!ORACLE.allowedModule(_requestId, msg.sender)) revert HorizonAccountingExtension_UnauthorizedModule();
- -
175 - - - - - -

-                            
-                        
176 - - - - - -
    if (_amountPerPledger * _winningPledgersLength > pledges[_disputeId]) {
- -
177 - - - - - -
      revert HorizonAccountingExtension_InsufficientFunds();
- -
178 - - - - - -
    }
- -
179 - - - - - -

-                            
-                        
180 - - - - - -
    if (escalationResults[_disputeId].requestId != bytes32(0)) {
- -
181 - - - - - -
      revert HorizonAccountingExtension_AlreadySettled();
- -
182 - - - - - -
    }
- -
183 - - - - - -

-                            
-                        
184 - - - - - -
    IBondEscalationModule _bondEscalationModule = IBondEscalationModule(msg.sender);
- -
185 - - - - - -

-                            
-                        
186 - - - - - -
    escalationResults[_disputeId] = EscalationResult({
- -
187 - - - - - -
      requestId: _requestId,
- -
188 - - - - - -
      amountPerPledger: _amountPerPledger,
- -
189 - - - - - -
      bondSize: _bondEscalationModule.decodeRequestData(_request.disputeModuleData).bondSize,
- -
190 - - - - - -
      bondEscalationModule: _bondEscalationModule
- -
191 - - - - - -
    });
- -
192 - - - - - -

-                            
-                        
193 - - - - - -
    emit BondEscalationSettled({
- -
194 - - - - - -
      _requestId: _requestId,
- -
195 - - - - - -
      _disputeId: _disputeId,
- -
196 - - - - - -
      _amountPerPledger: _amountPerPledger,
- -
197 - - - - - -
      _winningPledgersLength: _winningPledgersLength
- -
198 - - - - - -
    });
- -
199 - - - - - -
  }
- -
200 - - - - - -

-                            
-                        
201 - - - - - -
  /// @inheritdoc IHorizonAccountingExtension
- -
202 - - - - - -
  function claimEscalationReward(bytes32 _disputeId, address _pledger) external {
- -
203 - - - - - -
    EscalationResult memory _result = escalationResults[_disputeId];
- -
204 - - - - - -
    if (_result.requestId == bytes32(0)) revert HorizonAccountingExtension_NoEscalationResult();
- -
205 - - - - - -
    bytes32 _requestId = _result.requestId;
- -
206 - - - - - -
    if (pledgerClaimed[_requestId][_pledger]) revert HorizonAccountingExtension_AlreadyClaimed();
- -
207 - - - - - -

-                            
-                        
208 - - - - - -
    IOracle.DisputeStatus _status = ORACLE.disputeStatus(_disputeId);
- -
209 - - - - - -
    uint256 _amountPerPledger = _result.amountPerPledger;
- -
210 - - - - - -
    uint256 _numberOfPledges;
- -
211 - - - - - -
    uint256 _pledgeAmount;
- -
212 - - - - - -
    uint256 _claimAmount;
- -
213 - - - - - -
    uint256 _rewardAmount;
- -
214 - - - - - -

-                            
-                        
215 - - - - - -
    if (_status == IOracle.DisputeStatus.NoResolution) {
- -
216 - - - - - -
      _numberOfPledges = _result.bondEscalationModule.pledgesForDispute(_requestId, _pledger)
- -
217 - - - - - -
        + _result.bondEscalationModule.pledgesAgainstDispute(_requestId, _pledger);
- -
218 - - - - - -

-                            
-                        
219 - - - - - -
      // If no resolution, pledge amount and claim amount are the same
- -
220 - - - - - -
      _pledgeAmount = _result.bondSize * _numberOfPledges;
- -
221 - - - - - -
      _claimAmount = _amountPerPledger * _numberOfPledges;
- -
222 - - - - - -
    } else {
- -
223 - - - - - -
      _numberOfPledges = _status == IOracle.DisputeStatus.Won
- -
224 - - - - - -
        ? _result.bondEscalationModule.pledgesForDispute(_requestId, _pledger)
- -
225 - - - - - -
        : _result.bondEscalationModule.pledgesAgainstDispute(_requestId, _pledger);
- -
226 - - - - - -

-                            
-                        
227 - - - - - -
      _pledgeAmount = _result.bondSize * _numberOfPledges;
- -
228 - - - - - -
      _claimAmount = _amountPerPledger * _numberOfPledges;
- -
229 - - - - - -
      _rewardAmount = _claimAmount - _pledgeAmount;
- -
230 - - - - - -

-                            
-                        
231 - - - - - -
      _rewardAmount = _claimAmount - _pledgeAmount;
- -
232 - - - - - -

-                            
-                        
233 - - - - - -
      // Check the balance in the contract
- -
234 - - - - - -
      // If not enough balance, slash some users to get enough balance
- -
235 - - - - - -
      // TODO: How many iterations should we do?
- -
236 - - - - - -
      while (disputeBalance[_disputeId] < _rewardAmount) {
- -
237 - - - - - -
        _slash(_disputeId, MAX_USERS_TO_SLASH, maxUsersToCheck, _result, _status);
- -
238 - - - - - -
      }
- -
239 - - - - - -

-                            
-                        
240 - - - - - -
      unchecked {
- -
241 - - - - - -
        disputeBalance[_disputeId] -= _rewardAmount;
- -
242 - - - - - -
      }
- -
243 - - - - - -
      // Send the user the amount they won by participating in the dispute
- -
244 - - - - - -
      GRT.safeTransfer(_pledger, _rewardAmount);
- -
245 - - - - - -
    }
- -
246 - - - - - -

-                            
-                        
247 - - - - - -
    // Release the winning pledges to the user
- -
248 - - - - - -
    _unbond(_pledger, _pledgeAmount);
- -
249 - - - - - -

-                            
-                        
250 - - - - - -
    pledgerClaimed[_requestId][_pledger] = true;
- -
251 - - - - - -

-                            
-                        
252 - - - - - -
    pledges[_disputeId] -= _claimAmount;
- -
253 - - - - - -

-                            
-                        
254 - - - - - -
    if (pledges[_disputeId] == 0) {
- -
255 - - - - - -
      delete _pledgers[_disputeId];
- -
256 - - - - - -
    }
- -
257 - - - - - -

-                            
-                        
258 - - - - - -
    emit EscalationRewardClaimed({
- -
259 - - - - - -
      _requestId: _requestId,
- -
260 - - - - - -
      _disputeId: _disputeId,
- -
261 - - - - - -
      _pledger: _pledger,
- -
262 - - - - - -
      _reward: _rewardAmount,
- -
263 - - - - - -
      _released: _pledgeAmount
- -
264 - - - - - -
    });
- -
265 - - - - - -
  }
- -
266 - - - - - -

-                            
-                        
267 - - - - - -
  /// @inheritdoc IHorizonAccountingExtension
- -
268 - - - - - -
  function pay(
- -
269 - - - - - -
    bytes32 _requestId,
- -
270 - - - - - -
    address _payer,
- -
271 - - - - - -
    address _receiver,
- -
272 - - - - - -
    IERC20, /* _token */
- -
273 - - - - - -
    uint256 _amount
- -
274 - - - - - -
  ) external onlyAllowedModule(_requestId) onlyParticipant(_requestId, _payer) onlyParticipant(_requestId, _receiver) {
- -
275 - - - - - -
    // Discount the payer bondedForRequest
- -
276 - - - - - -
    bondedForRequest[_payer][_requestId] -= _amount;
- -
277 - - - - - -

-                            
-                        
278 - - - - - -
    // Discout the payer totalBonded
- -
279 - - - - - -
    _unbond(_payer, _amount);
- -
280 - - - - - -

-                            
-                        
281 - - - - - -
    // Slash a payer to pay the receiver
- -
282 - - - - - -
    HORIZON_STAKING.slash(_payer, _amount, _amount, _receiver);
- -
283 - - - - - -

-                            
-                        
284 - - - - - -
    emit Paid({_requestId: _requestId, _beneficiary: _receiver, _payer: _payer, _amount: _amount});
- -
285 - - - - - -
  }
- -
286 - - - - - -

-                            
-                        
287 - - - - - -
  /// @inheritdoc IHorizonAccountingExtension
- -
288 - - - - - -
  function bond(
- -
289 - - - - - -
    address _bonder,
- -
290 - - - - - -
    bytes32 _requestId,
- -
291 - - - - - -
    IERC20, /* _token */
- -
292 - - - - - -
    uint256 _amount
- -
293 - - - - - -
  ) external onlyAllowedModule(_requestId) onlyParticipant(_requestId, _bonder) {
- -
294 - - - - - -
    if (!_approvals[_bonder].contains(msg.sender)) revert HorizonAccountingExtension_NotAllowed();
- -
295 - - - - - -

-                            
-                        
296 - - - - - -
    bondedForRequest[_bonder][_requestId] += _amount;
- -
297 - - - - - -

-                            
-                        
298 - - - - - -
    _bond(_bonder, _amount);
- -
299 - - - - - -

-                            
-                        
300 - - - - - -
    emit Bonded(_requestId, _bonder, _amount);
- -
301 - - - - - -
  }
- -
302 - - - - - -

-                            
-                        
303 - - - - - -
  /// @inheritdoc IHorizonAccountingExtension
- -
304 - - - - - -
  function bond(
- -
305 - - - - - -
    address _bonder,
- -
306 - - - - - -
    bytes32 _requestId,
- -
307 - - - - - -
    IERC20, /* _token */
- -
308 - - - - - -
    uint256 _amount,
- -
309 - - - - - -
    address _sender
- -
310 - - - - - -
  ) external onlyAllowedModule(_requestId) onlyParticipant(_requestId, _bonder) {
- -
311 - - - - - -
    bool _moduleApproved = _approvals[_bonder].contains(msg.sender);
- -
312 - - - - - -
    bool _senderApproved = _approvals[_bonder].contains(_sender);
- -
313 - - - - - -

-                            
-                        
314 - - - - - -
    if (!(_moduleApproved && _senderApproved)) {
- -
315 - - - - - -
      revert HorizonAccountingExtension_NotAllowed();
- -
316 - - - - - -
    }
- -
317 - - - - - -

-                            
-                        
318 - - - - - -
    bondedForRequest[_bonder][_requestId] += _amount;
- -
319 - - - - - -

-                            
-                        
320 - - - - - -
    _bond(_bonder, _amount);
- -
321 - - - - - -

-                            
-                        
322 - - - - - -
    emit Bonded(_requestId, _bonder, _amount);
- -
323 - - - - - -
  }
- -
324 - - - - - -

-                            
-                        
325 - - - - - -
  /// @inheritdoc IHorizonAccountingExtension
- -
326 - - - - - -
  function release(
- -
327 - - - - - -
    address _bonder,
- -
328 - - - - - -
    bytes32 _requestId,
- -
329 - - - - - -
    IERC20, /* _token */
- -
330 - - - - - -
    uint256 _amount
- -
331 - - - - - -
  ) external onlyAllowedModule(_requestId) onlyParticipant(_requestId, _bonder) {
- -
332 - - - - - -
    // Release the bond amount for the request for the user
- -
333 - - - - - -
    bondedForRequest[_bonder][_requestId] -= _amount;
- -
334 - - - - - -

-                            
-                        
335 - - - - - -
    _unbond(_bonder, _amount);
- -
336 - - - - - -

-                            
-                        
337 - - - - - -
    emit Released(_requestId, _bonder, _amount);
- -
338 - - - - - -
  }
- -
339 - - - - - -

-                            
-                        
340 - - - - - -
  /// @inheritdoc IHorizonAccountingExtension
- -
341 - - - - - -
  function slash(bytes32 _disputeId, uint256 _usersToSlash, uint256 _maxUsersToCheck) external {
- -
342 - - - - - -
    EscalationResult memory _result = escalationResults[_disputeId];
- -
343 - - - - - -

-                            
-                        
344 - - - - - -
    if (_result.requestId == bytes32(0)) revert HorizonAccountingExtension_NoEscalationResult();
- -
345 - - - - - -

-                            
-                        
346 - - - - - -
    IOracle.DisputeStatus _status = ORACLE.disputeStatus(_disputeId);
- -
347 - - - - - -

-                            
-                        
348 - - - - - -
    _slash(_disputeId, _usersToSlash, _maxUsersToCheck, _result, _status);
- -
349 - - - - - -
  }
- -
350 - - - - - -

-                            
-                        
351 - - - - - -
  /// @inheritdoc IHorizonAccountingExtension
- -
352 - - - - - -
  function getEscalationResult(bytes32 _disputeId) external view returns (EscalationResult memory _escalationResult) {
- -
353 - - - - - -
    _escalationResult = escalationResults[_disputeId];
- -
354 - - - - - -
  }
- -
355 - - - - - -

-                            
-                        
356 - - - - - -
  /// @inheritdoc IHorizonAccountingExtension
- -
357 - - - - - -
  function approvedModules(address _user) external view returns (address[] memory _approvedModules) {
- -
358 - - - - - -
    _approvedModules = _approvals[_user].values();
- -
359 - - - - - -
  }
- -
360 - - - - - -

-                            
-                        
361 - - - - - -
  /// @inheritdoc IHorizonAccountingExtension
- -
362 - - - - - -
  function setMaxUsersToCheck(uint128 _maxUsersToCheck) external {
- -
363 - -
- -
- -
- -
- -
    ARBITRABLE.validateArbitrator(msg.sender);
- -
364 - -
- -
- - - -
    _setMaxUsersToCheck(_maxUsersToCheck);
- -
365 - - - - - -
  }
- -
366 - - - - - -

-                            
-                        
367 - - - - - -
  /**
- -
368 - - - - - -
   * @notice Set the maximum number of users to check.
- -
369 - - - - - -
   * @param _maxUsersToCheck The maximum number of users to check.
- -
370 - - - - - -
   */
- -
371 - - - - - -
  function _setMaxUsersToCheck(uint128 _maxUsersToCheck) internal {
- -
372 - -
- -
- - - -
    maxUsersToCheck = _maxUsersToCheck;
- -
373 - - - - - -

-                            
-                        
374 - -
- -
- - - -
    emit MaxUsersToCheckSet(_maxUsersToCheck);
- -
375 - - - - - -
  }
- -
376 - - - - - -

-                            
-                        
377 - - - - - -
  /**
- -
378 - - - - - -
   * @notice Slash the users that have pledged for a dispute.
- -
379 - - - - - -
   * @param _disputeId The dispute id.
- -
380 - - - - - -
   * @param _usersToSlash The number of users to slash.
- -
381 - - - - - -
   * @param _maxUsersToCheck The maximum number of users to check.
- -
382 - - - - - -
   * @param _result The escalation result.
- -
383 - - - - - -
   * @param _status The dispute status.
- -
384 - - - - - -
   */
- -
385 - - - - - -
  function _slash(
- -
386 - - - - - -
    bytes32 _disputeId,
- -
387 - - - - - -
    uint256 _usersToSlash,
- -
388 - - - - - -
    uint256 _maxUsersToCheck,
- -
389 - - - - - -
    EscalationResult memory _result,
- -
390 - - - - - -
    IOracle.DisputeStatus _status
- -
391 - - - - - -
  ) internal returns (uint256 _slashedAmount) {
- -
392 - - - - - -
    EnumerableSet.AddressSet storage _users = _pledgers[_disputeId];
- -
393 - - - - - -

-                            
-                        
394 - - - - - -
    uint256 _slashedUsers;
- -
395 - - - - - -
    address _user;
- -
396 - - - - - -
    uint256 _slashAmount;
- -
397 - - - - - -

-                            
-                        
398 - - - - - -
    uint256 _length = _users.length();
- -
399 - - - - - -

-                            
-                        
400 - - - - - -
    _maxUsersToCheck = _maxUsersToCheck > _length ? _length : _maxUsersToCheck;
- -
401 - - - - - -

-                            
-                        
402 - - - - - -
    for (uint256 _i; _i < _maxUsersToCheck && _slashedUsers < _usersToSlash; ++_i) {
- -
403 - - - - - -
      _user = _users.at(0);
- -
404 - - - - - -

-                            
-                        
405 - - - - - -
      // Check if the user is actually slashable
- -
406 - - - - - -
      _slashAmount = _calculateSlashAmount(_user, _result, _status);
- -
407 - - - - - -
      if (_slashAmount > 0) {
- -
408 - - - - - -
        // Slash the user
- -
409 - - - - - -
        HORIZON_STAKING.slash(_user, _slashAmount, _slashAmount, address(this));
- -
410 - - - - - -
        // TODO: What if `MIN_THAWING_PERIOD` has passed, all provision tokens have been thawed
- -
411 - - - - - -
        //       and slashing is skipped or reverts (bricking `claimEscalationReward()`)?
- -
412 - - - - - -

-                            
-                        
413 - - - - - -
        _unbond(_user, _slashAmount);
- -
414 - - - - - -

-                            
-                        
415 - - - - - -
        _slashedAmount += _slashAmount;
- -
416 - - - - - -

-                            
-                        
417 - - - - - -
        ++_slashedUsers;
- -
418 - - - - - -
      }
- -
419 - - - - - -

-                            
-                        
420 - - - - - -
      // Remove the user from the list of users
- -
421 - - - - - -
      _users.remove(_user);
- -
422 - - - - - -
    }
- -
423 - - - - - -

-                            
-                        
424 - - - - - -
    disputeBalance[_disputeId] += _slashedAmount;
- -
425 - - - - - -
  }
- -
426 - - - - - -

-                            
-                        
427 - - - - - -
  /**
- -
428 - - - - - -
   * @notice Calculate the amount to slash for a user.
- -
429 - - - - - -
   * @param _pledger The address of the user.
- -
430 - - - - - -
   * @param _result The escalation result.
- -
431 - - - - - -
   * @param _status The dispute status.
- -
432 - - - - - -
   */
- -
433 - - - - - -
  function _calculateSlashAmount(
- -
434 - - - - - -
    address _pledger,
- -
435 - - - - - -
    EscalationResult memory _result,
- -
436 - - - - - -
    IOracle.DisputeStatus _status
- -
437 - - - - - -
  ) internal view returns (uint256 _slashAmount) {
- -
438 - - - - - -
    bytes32 _requestId = _result.requestId;
- -
439 - - - - - -

-                            
-                        
440 - - - - - -
    uint256 _numberOfPledges;
- -
441 - - - - - -

-                            
-                        
442 - - - - - -
    // If Won slash the against pledges, if Lost slash the for pledges
- -
443 - - - - - -
    if (_status != IOracle.DisputeStatus.NoResolution) {
- -
444 - - - - - -
      _numberOfPledges = _status == IOracle.DisputeStatus.Won
- -
445 - - - - - -
        ? _result.bondEscalationModule.pledgesAgainstDispute(_requestId, _pledger)
- -
446 - - - - - -
        : _result.bondEscalationModule.pledgesForDispute(_requestId, _pledger);
- -
447 - - - - - -
    }
- -
448 - - - - - -

-                            
-                        
449 - - - - - -
    _slashAmount = _result.bondSize * _numberOfPledges;
- -
450 - - - - - -
  }
- -
451 - - - - - -

-                            
-                        
452 - - - - - -
  /**
- -
453 - - - - - -
   * @notice Bonds the tokens of the user.
- -
454 - - - - - -
   * @param _bonder The address of the user.
- -
455 - - - - - -
   * @param _amount The amount of tokens to bond.
- -
456 - - - - - -
   */
- -
457 - - - - - -
  function _bond(address _bonder, uint256 _amount) internal {
- -
458 - - - - - -
    IHorizonStaking.Provision memory _provisionData = HORIZON_STAKING.getProvision(_bonder, address(this));
- -
459 - - - - - -

-                            
-                        
460 - - - - - -
    if (_provisionData.maxVerifierCut != MAX_VERIFIER_CUT) revert HorizonAccountingExtension_InvalidMaxVerifierCut();
- -
461 - - - - - -
    if (_provisionData.thawingPeriod < MIN_THAWING_PERIOD) revert HorizonAccountingExtension_InvalidThawingPeriod();
- -
462 - - - - - -

-                            
-                        
463 - - - - - -
    uint256 _availableTokens = _provisionData.tokens - _provisionData.tokensThawing;
- -
464 - - - - - -
    if (_amount > _availableTokens) revert HorizonAccountingExtension_InsufficientTokens();
- -
465 - - - - - -

-                            
-                        
466 - - - - - -
    totalBonded[_bonder] += _amount;
- -
467 - - - - - -

-                            
-                        
468 - - - - - -
    if (totalBonded[_bonder] > _provisionData.tokens) {
- -
469 - - - - - -
      revert HorizonAccountingExtension_InsufficientBondedTokens();
- -
470 - - - - - -
    }
- -
471 - - - - - -
  }
- -
472 - - - - - -

-                            
-                        
473 - - - - - -
  /**
- -
474 - - - - - -
   * @notice Unbonds the tokens of the user.
- -
475 - - - - - -
   * @param _bonder The address of the user.
- -
476 - - - - - -
   * @param _amount The amount of tokens to unbond.
- -
477 - - - - - -
   */
- -
478 - - - - - -
  function _unbond(address _bonder, uint256 _amount) internal {
- -
479 - - - - - -
    if (_amount > totalBonded[_bonder]) revert HorizonAccountingExtension_InsufficientBondedTokens();
- -
480 - - - - - -
    totalBonded[_bonder] -= _amount;
- -
481 - - - - - -
  }
- -
482 - - - - - -
}
- -
483 - - - - - -

-                            
-                        
-
-
- - - - - - - - - - -
-
-
- - - - - - -
Lines covered: 0 / 0 (0.0%)
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
1 - - - - - -
// SPDX-License-Identifier: GPL-3.0
- -
2 - - - - - -
pragma solidity 0.8.26;
- -
3 - - - - - -

-                            
-                        
4 - - - - - -
/**
- -
5 - - - - - -
 * @title Arbitrable
- -
6 - - - - - -
 * @notice Makes a contract subject to arbitration by The Graph
- -
7 - - - - - -
 */
- -
8 - - - - - -
interface IArbitrable {
- -
9 - - - - - -
  /*///////////////////////////////////////////////////////////////
- -
10 - - - - - -
                              EVENTS
- -
11 - - - - - -
  //////////////////////////////////////////////////////////////*/
- -
12 - - - - - -

-                            
-                        
13 - - - - - -
  /**
- -
14 - - - - - -
   * @notice Emitted when The Graph's Arbitrator is set
- -
15 - - - - - -
   * @param _arbitrator The address of The Graph's Arbitrator
- -
16 - - - - - -
   */
- -
17 - - - - - -
  event SetArbitrator(address indexed _arbitrator);
- -
18 - - - - - -

-                            
-                        
19 - - - - - -
  /**
- -
20 - - - - - -
   * @notice Emitted when The Graph's Council is set
- -
21 - - - - - -
   * @param _council The address of The Graph's Council
- -
22 - - - - - -
   */
- -
23 - - - - - -
  event SetCouncil(address indexed _council);
- -
24 - - - - - -

-                            
-                        
25 - - - - - -
  /**
- -
26 - - - - - -
   * @notice Emitted when the pending The Graph's Council is set
- -
27 - - - - - -
   * @param _pendingCouncil The address of the pending The Graph's Council
- -
28 - - - - - -
   */
- -
29 - - - - - -
  event SetPendingCouncil(address indexed _pendingCouncil);
- -
30 - - - - - -

-                            
-                        
31 - - - - - -
  /*///////////////////////////////////////////////////////////////
- -
32 - - - - - -
                              ERRORS
- -
33 - - - - - -
  //////////////////////////////////////////////////////////////*/
- -
34 - - - - - -

-                            
-                        
35 - - - - - -
  /**
- -
36 - - - - - -
   * @notice Thrown when the caller is not The Graph's Arbitrator
- -
37 - - - - - -
   */
- -
38 - - - - - -
  error Arbitrable_OnlyArbitrator();
- -
39 - - - - - -

-                            
-                        
40 - - - - - -
  /**
- -
41 - - - - - -
   * @notice Thrown when the caller is not The Graph's Council
- -
42 - - - - - -
   */
- -
43 - - - - - -
  error Arbitrable_OnlyCouncil();
- -
44 - - - - - -

-                            
-                        
45 - - - - - -
  /**
- -
46 - - - - - -
   * @notice Thrown when the caller is not the pending The Graph's Council
- -
47 - - - - - -
   */
- -
48 - - - - - -
  error Arbitrable_OnlyPendingCouncil();
- -
49 - - - - - -

-                            
-                        
50 - - - - - -
  /*///////////////////////////////////////////////////////////////
- -
51 - - - - - -
                              VARIABLES
- -
52 - - - - - -
  //////////////////////////////////////////////////////////////*/
- -
53 - - - - - -

-                            
-                        
54 - - - - - -
  /**
- -
55 - - - - - -
   * @notice Returns the address of The Graph's Arbitrator
- -
56 - - - - - -
   * @return __arbitrator The address of The Graph's Arbitrator
- -
57 - - - - - -
   */
- -
58 - - - - - -
  function arbitrator() external view returns (address __arbitrator);
- -
59 - - - - - -

-                            
-                        
60 - - - - - -
  /**
- -
61 - - - - - -
   * @notice Returns the address of The Graph's Council
- -
62 - - - - - -
   * @return __council The address of The Graph's Council
- -
63 - - - - - -
   */
- -
64 - - - - - -
  function council() external view returns (address __council);
- -
65 - - - - - -

-                            
-                        
66 - - - - - -
  /**
- -
67 - - - - - -
   * @notice Returns the address of the pending The Graph's Council
- -
68 - - - - - -
   * @return __pendingCouncil The address of the pending The Graph's Council
- -
69 - - - - - -
   */
- -
70 - - - - - -
  function pendingCouncil() external view returns (address __pendingCouncil);
- -
71 - - - - - -

-                            
-                        
72 - - - - - -
  /**
- -
73 - - - - - -
   * @notice Checks that the caller is The Graph's Arbitrator
- -
74 - - - - - -
   */
- -
75 - - - - - -
  function validateArbitrator(address _caller) external view;
- -
76 - - - - - -

-                            
-                        
77 - - - - - -
  /*///////////////////////////////////////////////////////////////
- -
78 - - - - - -
                              LOGIC
- -
79 - - - - - -
  //////////////////////////////////////////////////////////////*/
- -
80 - - - - - -

-                            
-                        
81 - - - - - -
  /**
- -
82 - - - - - -
   * @notice Changes the address of The Graph's Arbitrator
- -
83 - - - - - -
   * @dev Callable only by The Graph's Council
- -
84 - - - - - -
   * @param _arbitrator The address of The Graph's Arbitrator
- -
85 - - - - - -
   */
- -
86 - - - - - -
  function setArbitrator(address _arbitrator) external;
- -
87 - - - - - -

-                            
-                        
88 - - - - - -
  /**
- -
89 - - - - - -
   * @notice Sets the address of the pending The Graph's Council
- -
90 - - - - - -
   * @dev Callable only by The Graph's Council
- -
91 - - - - - -
   * @param _pendingCouncil The address of the pending The Graph's Council
- -
92 - - - - - -
   */
- -
93 - - - - - -
  function setPendingCouncil(address _pendingCouncil) external;
- -
94 - - - - - -

-                            
-                        
95 - - - - - -
  /**
- -
96 - - - - - -
   * @notice Changes the address of The Graph's Council to the pending one
- -
97 - - - - - -
   * @dev Callable only by the pending The Graph's Council
- -
98 - - - - - -
   */
- -
99 - - - - - -
  function confirmCouncil() external;
- -
100 - - - - - -
}
- -
101 - - - - - -

-                            
-                        
-
-
- - - - - - - - - - -
-
-
- - - - - - -
Lines covered: 0 / 0 (0.0%)
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
1 - - - - - -
// SPDX-License-Identifier: GPL-3.0
- -
2 - - - - - -
pragma solidity 0.8.26;
- -
3 - - - - - -

-                            
-                        
4 - - - - - -
import {IOracle} from '@defi-wonderland/prophet-core/solidity/interfaces/IOracle.sol';
- -
5 - - - - - -
import {IArbitrator} from '@defi-wonderland/prophet-modules/solidity/interfaces/IArbitrator.sol';
- -
6 - - - - - -
import {IArbitratorModule} from
- -
7 - - - - - -
  '@defi-wonderland/prophet-modules/solidity/interfaces/modules/resolution/IArbitratorModule.sol';
- -
8 - - - - - -

-                            
-                        
9 - - - - - -
import {IArbitrable} from 'interfaces/IArbitrable.sol';
- -
10 - - - - - -

-                            
-                        
11 - - - - - -
/**
- -
12 - - - - - -
 * @title CouncilArbitrator
- -
13 - - - - - -
 * @notice Resolves disputes by arbitration by The Graph
- -
14 - - - - - -
 */
- -
15 - - - - - -
interface ICouncilArbitrator is IArbitrator {
- -
16 - - - - - -
  /*///////////////////////////////////////////////////////////////
- -
17 - - - - - -
                              STRUCTS
- -
18 - - - - - -
  //////////////////////////////////////////////////////////////*/
- -
19 - - - - - -

-                            
-                        
20 - - - - - -
  /**
- -
21 - - - - - -
   * @notice Parameters of the resolution as stored in the contract
- -
22 - - - - - -
   * @param request The request data
- -
23 - - - - - -
   * @param response The response data
- -
24 - - - - - -
   * @param dispute The dispute data
- -
25 - - - - - -
   */
- -
26 - - - - - -
  struct ResolutionParameters {
- -
27 - - - - - -
    IOracle.Request request;
- -
28 - - - - - -
    IOracle.Response response;
- -
29 - - - - - -
    IOracle.Dispute dispute;
- -
30 - - - - - -
  }
- -
31 - - - - - -

-                            
-                        
32 - - - - - -
  /*///////////////////////////////////////////////////////////////
- -
33 - - - - - -
                              EVENTS
- -
34 - - - - - -
  //////////////////////////////////////////////////////////////*/
- -
35 - - - - - -

-                            
-                        
36 - - - - - -
  /**
- -
37 - - - - - -
   * @notice Emitted when a resolution is started by the Arbitrator Module
- -
38 - - - - - -
   * @param _disputeId The ID of the dispute that the resolution was started for
- -
39 - - - - - -
   * @param _request The request data
- -
40 - - - - - -
   * @param _response The response data
- -
41 - - - - - -
   * @param _dispute The dispute data
- -
42 - - - - - -
   */
- -
43 - - - - - -
  event ResolutionStarted(
- -
44 - - - - - -
    bytes32 indexed _disputeId, IOracle.Request _request, IOracle.Response _response, IOracle.Dispute _dispute
- -
45 - - - - - -
  );
- -
46 - - - - - -

-                            
-                        
47 - - - - - -
  /**
- -
48 - - - - - -
   * @notice Emitted when a dispute is arbitrated by The Graph's Arbitrator
- -
49 - - - - - -
   * @param _disputeId The ID of the dispute that was arbitrated
- -
50 - - - - - -
   * @param _award The final result of the resolution
- -
51 - - - - - -
   */
- -
52 - - - - - -
  event DisputeArbitrated(bytes32 indexed _disputeId, IOracle.DisputeStatus _award);
- -
53 - - - - - -

-                            
-                        
54 - - - - - -
  /*///////////////////////////////////////////////////////////////
- -
55 - - - - - -
                              ERRORS
- -
56 - - - - - -
  //////////////////////////////////////////////////////////////*/
- -
57 - - - - - -

-                            
-                        
58 - - - - - -
  /**
- -
59 - - - - - -
   * @notice Thrown when the caller is not the Arbitrator Module
- -
60 - - - - - -
   */
- -
61 - - - - - -
  error CouncilArbitrator_OnlyArbitratorModule();
- -
62 - - - - - -

-                            
-                        
63 - - - - - -
  /**
- -
64 - - - - - -
   * @notice Thrown when trying to arbitrate a dispute with no pending resolution
- -
65 - - - - - -
   */
- -
66 - - - - - -
  error CouncilArbitrator_InvalidDispute();
- -
67 - - - - - -

-                            
-                        
68 - - - - - -
  /**
- -
69 - - - - - -
   * @notice Thrown when trying to arbitrate a dispute with an invalid award
- -
70 - - - - - -
   */
- -
71 - - - - - -
  error CouncilArbitrator_InvalidAward();
- -
72 - - - - - -

-                            
-                        
73 - - - - - -
  /**
- -
74 - - - - - -
   * @notice Thrown when trying to arbitrate a dispute that is already arbitrated
- -
75 - - - - - -
   */
- -
76 - - - - - -
  error CouncilArbitrator_DisputeAlreadyArbitrated();
- -
77 - - - - - -

-                            
-                        
78 - - - - - -
  /*///////////////////////////////////////////////////////////////
- -
79 - - - - - -
                              VARIABLES
- -
80 - - - - - -
  //////////////////////////////////////////////////////////////*/
- -
81 - - - - - -

-                            
-                        
82 - - - - - -
  /**
- -
83 - - - - - -
   * @notice Returns the address of the Oracle
- -
84 - - - - - -
   * @return _oracle The address of the Oracle
- -
85 - - - - - -
   */
- -
86 - - - - - -
  function ORACLE() external view returns (IOracle _oracle);
- -
87 - - - - - -

-                            
-                        
88 - - - - - -
  /**
- -
89 - - - - - -
   * @notice Returns the address of the Arbitrator Module
- -
90 - - - - - -
   * @return _arbitratorModule The address of the Arbitrator Module
- -
91 - - - - - -
   */
- -
92 - - - - - -
  function ARBITRATOR_MODULE() external view returns (IArbitratorModule _arbitratorModule);
- -
93 - - - - - -

-                            
-                        
94 - - - - - -
  /**
- -
95 - - - - - -
   * @notice Returns the address of the arbitrable contract
- -
96 - - - - - -
   * @return _ARBITRABLE The address of the arbitrable contract
- -
97 - - - - - -
   */
- -
98 - - - - - -
  function ARBITRABLE() external view returns (IArbitrable _ARBITRABLE);
- -
99 - - - - - -

-                            
-                        
100 - - - - - -
  /**
- -
101 - - - - - -
   * @notice Returns the resolution data for a dispute
- -
102 - - - - - -
   * @param _disputeId The ID of the dispute
- -
103 - - - - - -
   * @return _request The request data
- -
104 - - - - - -
   * @return _response The response data
- -
105 - - - - - -
   * @return _dispute The dispute data
- -
106 - - - - - -
   */
- -
107 - - - - - -
  function resolutions(bytes32 _disputeId)
- -
108 - - - - - -
    external
- -
109 - - - - - -
    view
- -
110 - - - - - -
    returns (IOracle.Request memory _request, IOracle.Response memory _response, IOracle.Dispute memory _dispute);
- -
111 - - - - - -

-                            
-                        
112 - - - - - -
  /**
- -
113 - - - - - -
   * @notice Returns the resolution parameters for a dispute
- -
114 - - - - - -
   * @param _disputeId The ID of the dispute
- -
115 - - - - - -
   * @return _resolutionParams The resolution parameters
- -
116 - - - - - -
   */
- -
117 - - - - - -
  function getResolution(bytes32 _disputeId) external view returns (ResolutionParameters memory _resolutionParams);
- -
118 - - - - - -

-                            
-                        
119 - - - - - -
  /*///////////////////////////////////////////////////////////////
- -
120 - - - - - -
                              LOGIC
- -
121 - - - - - -
  //////////////////////////////////////////////////////////////*/
- -
122 - - - - - -

-                            
-                        
123 - - - - - -
  /**
- -
124 - - - - - -
   * @notice Publishes the arbitration award, resolves a dispute and, if applicable, finalizes a request
- -
125 - - - - - -
   * @dev Callable only by The Graph's Arbitrator
- -
126 - - - - - -
   * @param _disputeId The ID of the dispute
- -
127 - - - - - -
   * @param _award The result of the resolution for the dispute
- -
128 - - - - - -
   */
- -
129 - - - - - -
  function arbitrateDispute(bytes32 _disputeId, IOracle.DisputeStatus _award) external;
- -
130 - - - - - -
}
- -
131 - - - - - -

-                            
-                        
-
-
- - - - - - - - - - -
-
-
- - - - - - -
Lines covered: 0 / 0 (0.0%)
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
1 - - - - - -
// SPDX-License-Identifier: GPL-3.0
- -
2 - - - - - -
pragma solidity 0.8.26;
- -
3 - - - - - -

-                            
-                        
4 - - - - - -
import {IOracle} from '@defi-wonderland/prophet-core/solidity/interfaces/IOracle.sol';
- -
5 - - - - - -
import {IFinalityModule} from '@defi-wonderland/prophet-core/solidity/interfaces/modules/finality/IFinalityModule.sol';
- -
6 - - - - - -

-                            
-                        
7 - - - - - -
import {IArbitrable} from 'interfaces/IArbitrable.sol';
- -
8 - - - - - -
import {IEBORequestCreator} from 'interfaces/IEBORequestCreator.sol';
- -
9 - - - - - -
import {IEBORequestModule} from 'interfaces/IEBORequestModule.sol';
- -
10 - - - - - -

-                            
-                        
11 - - - - - -
/**
- -
12 - - - - - -
 * @title EBOFinalityModule
- -
13 - - - - - -
 * @notice Module allowing users to index data into the subgraph
- -
14 - - - - - -
 * as a result of a request being finalized
- -
15 - - - - - -
 */
- -
16 - - - - - -
interface IEBOFinalityModule is IFinalityModule {
- -
17 - - - - - -
  /*///////////////////////////////////////////////////////////////
- -
18 - - - - - -
                              EVENTS
- -
19 - - - - - -
  //////////////////////////////////////////////////////////////*/
- -
20 - - - - - -

-                            
-                        
21 - - - - - -
  /**
- -
22 - - - - - -
   * @notice Emitted when the block number has been resolved for a particular epoch-chainId pair
- -
23 - - - - - -
   * @param _epoch The new epoch
- -
24 - - - - - -
   * @param _chainId The chain ID
- -
25 - - - - - -
   * @param _blockNumber The block number for the epoch-chainId pair
- -
26 - - - - - -
   */
- -
27 - - - - - -
  event NewEpoch(uint256 indexed _epoch, string indexed _chainId, uint256 _blockNumber);
- -
28 - - - - - -

-                            
-                        
29 - - - - - -
  /**
- -
30 - - - - - -
   * @notice Emitted when a block number is amended
- -
31 - - - - - -
   * @param _epoch The epoch to amend
- -
32 - - - - - -
   * @param _chainId The chain ID to amend
- -
33 - - - - - -
   * @param _blockNumber The amended block number
- -
34 - - - - - -
   */
- -
35 - - - - - -
  event AmendEpoch(uint256 indexed _epoch, string indexed _chainId, uint256 _blockNumber);
- -
36 - - - - - -

-                            
-                        
37 - - - - - -
  /**
- -
38 - - - - - -
   * @notice Emitted when the EBORequestCreator is added
- -
39 - - - - - -
   * @param _eboRequestCreator The address of the EBORequestCreator
- -
40 - - - - - -
   */
- -
41 - - - - - -
  event AddEBORequestCreator(IEBORequestCreator indexed _eboRequestCreator);
- -
42 - - - - - -

-                            
-                        
43 - - - - - -
  /**
- -
44 - - - - - -
   * @notice Emitted when an EBORequestCreator is removed
- -
45 - - - - - -
   * @param _eboRequestCreator The address of the EBORequestCreator
- -
46 - - - - - -
   */
- -
47 - - - - - -
  event RemoveEBORequestCreator(IEBORequestCreator indexed _eboRequestCreator);
- -
48 - - - - - -

-                            
-                        
49 - - - - - -
  /*///////////////////////////////////////////////////////////////
- -
50 - - - - - -
                              ERRORS
- -
51 - - - - - -
  //////////////////////////////////////////////////////////////*/
- -
52 - - - - - -

-                            
-                        
53 - - - - - -
  /**
- -
54 - - - - - -
   * @notice Thrown when the requester is not the EBORequestCreator
- -
55 - - - - - -
   */
- -
56 - - - - - -
  error EBOFinalityModule_InvalidRequester();
- -
57 - - - - - -

-                            
-                        
58 - - - - - -
  /**
- -
59 - - - - - -
   * @notice Thrown when the lengths of chain IDs and block numbers do not match
- -
60 - - - - - -
   */
- -
61 - - - - - -
  error EBOFinalityModule_LengthMismatch();
- -
62 - - - - - -

-                            
-                        
63 - - - - - -
  /*///////////////////////////////////////////////////////////////
- -
64 - - - - - -
                              VARIABLES
- -
65 - - - - - -
  //////////////////////////////////////////////////////////////*/
- -
66 - - - - - -

-                            
-                        
67 - - - - - -
  /**
- -
68 - - - - - -
   * @notice Returns the address of the arbitrable contract
- -
69 - - - - - -
   * @return _ARBITRABLE The address of the arbitrable contract
- -
70 - - - - - -
   */
- -
71 - - - - - -
  function ARBITRABLE() external view returns (IArbitrable _ARBITRABLE);
- -
72 - - - - - -

-                            
-                        
73 - - - - - -
  /**
- -
74 - - - - - -
   * @notice Returns the EBORequestCreators allowed
- -
75 - - - - - -
   * @return _eboRequestCreators The EBORequestCreators allowed
- -
76 - - - - - -
   */
- -
77 - - - - - -
  function getAllowedEBORequestCreators() external view returns (address[] memory _eboRequestCreators);
- -
78 - - - - - -

-                            
-                        
79 - - - - - -
  /*///////////////////////////////////////////////////////////////
- -
80 - - - - - -
                              LOGIC
- -
81 - - - - - -
  //////////////////////////////////////////////////////////////*/
- -
82 - - - - - -

-                            
-                        
83 - - - - - -
  /**
- -
84 - - - - - -
   * @notice Finalizes the request by publishing the response
- -
85 - - - - - -
   * @dev Callable only by the Oracle
- -
86 - - - - - -
   * @param _request The request being finalized
- -
87 - - - - - -
   * @param _response The final response
- -
88 - - - - - -
   * @param _finalizer The address that initiated the finalization
- -
89 - - - - - -
   */
- -
90 - - - - - -
  function finalizeRequest(
- -
91 - - - - - -
    IOracle.Request calldata _request,
- -
92 - - - - - -
    IOracle.Response calldata _response,
- -
93 - - - - - -
    address _finalizer
- -
94 - - - - - -
  ) external;
- -
95 - - - - - -

-                            
-                        
96 - - - - - -
  /**
- -
97 - - - - - -
   * @notice Allows to amend data in case of an error or an emergency
- -
98 - - - - - -
   * @dev Callable only by The Graph's Arbitrator
- -
99 - - - - - -
   * @param _epoch The epoch to amend
- -
100 - - - - - -
   * @param _chainIds The chain IDs to amend
- -
101 - - - - - -
   * @param _blockNumbers The amended block numbers
- -
102 - - - - - -
   */
- -
103 - - - - - -
  function amendEpoch(uint256 _epoch, string[] calldata _chainIds, uint256[] calldata _blockNumbers) external;
- -
104 - - - - - -

-                            
-                        
105 - - - - - -
  /**
- -
106 - - - - - -
   * @notice Adds the address of the EBORequestCreator
- -
107 - - - - - -
   * @dev Callable only by The Graph's Arbitrator
- -
108 - - - - - -
   * @param _eboRequestCreator The address of the EBORequestCreator
- -
109 - - - - - -
   */
- -
110 - - - - - -
  function addEBORequestCreator(IEBORequestCreator _eboRequestCreator) external;
- -
111 - - - - - -

-                            
-                        
112 - - - - - -
  /**
- -
113 - - - - - -
   * @notice Removes the address of the EBORequestCreator
- -
114 - - - - - -
   * @dev Callable only by The Graph's Arbitrator
- -
115 - - - - - -
   * @param _eboRequestCreator The address of the EBORequestCreator
- -
116 - - - - - -
   */
- -
117 - - - - - -
  function removeEBORequestCreator(IEBORequestCreator _eboRequestCreator) external;
- -
118 - - - - - -

-                            
-                        
119 - - - - - -
  /**
- -
120 - - - - - -
   * @notice Decodes the request data
- -
121 - - - - - -
   * @param _data The request data
- -
122 - - - - - -
   * @return _params The decoded request data
- -
123 - - - - - -
   */
- -
124 - - - - - -
  function decodeRequestData(bytes calldata _data)
- -
125 - - - - - -
    external
- -
126 - - - - - -
    pure
- -
127 - - - - - -
    returns (IEBORequestModule.RequestParameters memory _params);
- -
128 - - - - - -

-                            
-                        
129 - - - - - -
  /**
- -
130 - - - - - -
   * @notice Decodes the response data
- -
131 - - - - - -
   * @param _data The response data
- -
132 - - - - - -
   * @return _block The decoded response data which is the block number
- -
133 - - - - - -
   */
- -
134 - - - - - -
  function decodeResponseData(bytes calldata _data) external pure returns (uint256 _block);
- -
135 - - - - - -
}
- -
136 - - - - - -

-                            
-                        
-
-
- - - - - - - - - - -
-
-
- - - - - - -
Lines covered: 0 / 0 (0.0%)
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
1 - - - - - -
// SPDX-License-Identifier: GPL-3.0
- -
2 - - - - - -
pragma solidity 0.8.26;
- -
3 - - - - - -

-                            
-                        
4 - - - - - -
import {IOracle} from '@defi-wonderland/prophet-core/solidity/interfaces/IOracle.sol';
- -
5 - - - - - -
import {IBondEscalationModule} from
- -
6 - - - - - -
  '@defi-wonderland/prophet-modules/solidity/interfaces/modules/dispute/IBondEscalationModule.sol';
- -
7 - - - - - -
import {IArbitratorModule} from
- -
8 - - - - - -
  '@defi-wonderland/prophet-modules/solidity/interfaces/modules/resolution/IArbitratorModule.sol';
- -
9 - - - - - -
import {IBondedResponseModule} from
- -
10 - - - - - -
  '@defi-wonderland/prophet-modules/solidity/interfaces/modules/response/IBondedResponseModule.sol';
- -
11 - - - - - -
import {IEpochManager} from 'interfaces/external/IEpochManager.sol';
- -
12 - - - - - -

-                            
-                        
13 - - - - - -
import {IArbitrable} from 'interfaces/IArbitrable.sol';
- -
14 - - - - - -
import {IEBORequestModule} from 'interfaces/IEBORequestModule.sol';
- -
15 - - - - - -

-                            
-                        
16 - - - - - -
interface IEBORequestCreator {
- -
17 - - - - - -
  /*///////////////////////////////////////////////////////////////
- -
18 - - - - - -
                            EVENTS
- -
19 - - - - - -
  //////////////////////////////////////////////////////////////*/
- -
20 - - - - - -

-                            
-                        
21 - - - - - -
  /**
- -
22 - - - - - -
   * @notice Emitted when a request is created
- -
23 - - - - - -
   * @param _requestId The id of the request
- -
24 - - - - - -
   * @param _request The request created
- -
25 - - - - - -
   * @param _epoch The epoch of the request
- -
26 - - - - - -
   * @param _chainId The chain id of the request
- -
27 - - - - - -
   */
- -
28 - - - - - -
  event RequestCreated(
- -
29 - - - - - -
    bytes32 indexed _requestId, IOracle.Request _request, uint256 indexed _epoch, string indexed _chainId
- -
30 - - - - - -
  );
- -
31 - - - - - -

-                            
-                        
32 - - - - - -
  /**
- -
33 - - - - - -
   * @notice Emitted when a chain is added
- -
34 - - - - - -
   * @param _chainId The chain id added
- -
35 - - - - - -
   */
- -
36 - - - - - -
  event ChainAdded(string indexed _chainId);
- -
37 - - - - - -

-                            
-                        
38 - - - - - -
  /**
- -
39 - - - - - -
   * @notice Emitted when a chain is removed
- -
40 - - - - - -
   * @param _chainId The chain id removed
- -
41 - - - - - -
   */
- -
42 - - - - - -
  event ChainRemoved(string indexed _chainId);
- -
43 - - - - - -

-                            
-                        
44 - - - - - -
  /**
- -
45 - - - - - -
   * @notice Emitted when the request data module is set
- -
46 - - - - - -
   * @param _requestModule The request module
- -
47 - - - - - -
   * @param _requestModuleData The request module data
- -
48 - - - - - -
   */
- -
49 - - - - - -
  event RequestModuleDataSet(address indexed _requestModule, IEBORequestModule.RequestParameters _requestModuleData);
- -
50 - - - - - -

-                            
-                        
51 - - - - - -
  /**
- -
52 - - - - - -
   * @notice Emitted when the response data module is set
- -
53 - - - - - -
   * @param _responseModule The response module
- -
54 - - - - - -
   * @param _responseModuleData The response module data
- -
55 - - - - - -
   */
- -
56 - - - - - -
  event ResponseModuleDataSet(
- -
57 - - - - - -
    address indexed _responseModule, IBondedResponseModule.RequestParameters _responseModuleData
- -
58 - - - - - -
  );
- -
59 - - - - - -

-                            
-                        
60 - - - - - -
  /**
- -
61 - - - - - -
   * @notice Emitted when the dispute data module is set
- -
62 - - - - - -
   * @param _disputeModule The dispute module
- -
63 - - - - - -
   * @param _disputeModuleData The dispute module data
- -
64 - - - - - -
   */
- -
65 - - - - - -
  event DisputeModuleDataSet(
- -
66 - - - - - -
    address indexed _disputeModule, IBondEscalationModule.RequestParameters _disputeModuleData
- -
67 - - - - - -
  );
- -
68 - - - - - -

-                            
-                        
69 - - - - - -
  /**
- -
70 - - - - - -
   * @notice Emitted when the resolution data module is set
- -
71 - - - - - -
   * @param _resolutionModule The resolution module
- -
72 - - - - - -
   * @param _resolutionModuleData The resolution module data
- -
73 - - - - - -
   */
- -
74 - - - - - -
  event ResolutionModuleDataSet(
- -
75 - - - - - -
    address indexed _resolutionModule, IArbitratorModule.RequestParameters _resolutionModuleData
- -
76 - - - - - -
  );
- -
77 - - - - - -

-                            
-                        
78 - - - - - -
  /**
- -
79 - - - - - -
   * @notice Emitted when the finality data module is set
- -
80 - - - - - -
   * @param _finalityModule The finality module
- -
81 - - - - - -
   * @param _finalityModuleData The finality module data
- -
82 - - - - - -
   */
- -
83 - - - - - -
  event FinalityModuleDataSet(address indexed _finalityModule, bytes _finalityModuleData);
- -
84 - - - - - -

-                            
-                        
85 - - - - - -
  /**
- -
86 - - - - - -
   * @notice Emitted when the epoch manager is set
- -
87 - - - - - -
   * @param _epochManager The epoch manager
- -
88 - - - - - -
   */
- -
89 - - - - - -
  event EpochManagerSet(IEpochManager indexed _epochManager);
- -
90 - - - - - -

-                            
-                        
91 - - - - - -
  /*///////////////////////////////////////////////////////////////
- -
92 - - - - - -
                            ERRORS
- -
93 - - - - - -
  //////////////////////////////////////////////////////////////*/
- -
94 - - - - - -

-                            
-                        
95 - - - - - -
  /**
- -
96 - - - - - -
   * @notice Thrown when the nonce is not zero
- -
97 - - - - - -
   */
- -
98 - - - - - -
  error EBORequestCreator_InvalidNonce();
- -
99 - - - - - -
  /**
- -
100 - - - - - -
   * @notice Thrown when the chain is already added
- -
101 - - - - - -
   */
- -
102 - - - - - -
  error EBORequestCreator_ChainAlreadyAdded();
- -
103 - - - - - -

-                            
-                        
104 - - - - - -
  /**
- -
105 - - - - - -
   * @notice Thrown when the request is already created
- -
106 - - - - - -
   */
- -
107 - - - - - -
  error EBORequestCreator_RequestAlreadyCreated();
- -
108 - - - - - -

-                            
-                        
109 - - - - - -
  /**
- -
110 - - - - - -
   * @notice Thrown when the chain is not added
- -
111 - - - - - -
   */
- -
112 - - - - - -
  error EBORequestCreator_ChainNotAdded();
- -
113 - - - - - -

-                            
-                        
114 - - - - - -
  /**
- -
115 - - - - - -
   * @notice Thrown when the epoch is not valid
- -
116 - - - - - -
   */
- -
117 - - - - - -
  error EBORequestCreator_InvalidEpoch();
- -
118 - - - - - -

-                            
-                        
119 - - - - - -
  /*///////////////////////////////////////////////////////////////
- -
120 - - - - - -
                            VARIABLES
- -
121 - - - - - -
  //////////////////////////////////////////////////////////////*/
- -
122 - - - - - -

-                            
-                        
123 - - - - - -
  /**
- -
124 - - - - - -
   * @notice The oracle contract
- -
125 - - - - - -
   * @return _ORACLE The oracle contract
- -
126 - - - - - -
   */
- -
127 - - - - - -
  function ORACLE() external view returns (IOracle _ORACLE);
- -
128 - - - - - -

-                            
-                        
129 - - - - - -
  /**
- -
130 - - - - - -
   * @notice The first valid epoch to create requests
- -
131 - - - - - -
   * @return _START_EPOCH The start epoch
- -
132 - - - - - -
   */
- -
133 - - - - - -
  function START_EPOCH() external view returns (uint256 _START_EPOCH);
- -
134 - - - - - -

-                            
-                        
135 - - - - - -
  /**
- -
136 - - - - - -
   * @notice Returns the address of the arbitrable contract
- -
137 - - - - - -
   * @return _ARBITRABLE The address of the arbitrable contract
- -
138 - - - - - -
   */
- -
139 - - - - - -
  function ARBITRABLE() external view returns (IArbitrable _ARBITRABLE);
- -
140 - - - - - -

-                            
-                        
141 - - - - - -
  /**
- -
142 - - - - - -
   * @notice The epoch manager contract
- -
143 - - - - - -
   * @return _epochManager The epoch manager contract
- -
144 - - - - - -
   */
- -
145 - - - - - -
  function epochManager() external view returns (IEpochManager _epochManager);
- -
146 - - - - - -

-                            
-                        
147 - - - - - -
  /**
- -
148 - - - - - -
   * @notice The request data
- -
149 - - - - - -
   * @return _nonce The nonce
- -
150 - - - - - -
   * @return _requester The requester address
- -
151 - - - - - -
   * @return _requestModule The request module address
- -
152 - - - - - -
   * @return _responseModule The response module address
- -
153 - - - - - -
   * @return _disputeModule The dispute module address
- -
154 - - - - - -
   * @return _resolutionModule The resolution module address
- -
155 - - - - - -
   * @return _finalityModule The finality module address
- -
156 - - - - - -
   * @return _requestModuleData The request module data
- -
157 - - - - - -
   * @return _responseModuleData The response module data
- -
158 - - - - - -
   * @return _disputeModuleData The dispute module data
- -
159 - - - - - -
   * @return _resolutionModuleData The resolution module data
- -
160 - - - - - -
   * @return _finalityModuleData The finality module data
- -
161 - - - - - -
   */
- -
162 - - - - - -
  function requestData()
- -
163 - - - - - -
    external
- -
164 - - - - - -
    view
- -
165 - - - - - -
    returns (
- -
166 - - - - - -
      uint96 _nonce,
- -
167 - - - - - -
      address _requester,
- -
168 - - - - - -
      address _requestModule,
- -
169 - - - - - -
      address _responseModule,
- -
170 - - - - - -
      address _disputeModule,
- -
171 - - - - - -
      address _resolutionModule,
- -
172 - - - - - -
      address _finalityModule,
- -
173 - - - - - -
      bytes memory _requestModuleData,
- -
174 - - - - - -
      bytes memory _responseModuleData,
- -
175 - - - - - -
      bytes memory _disputeModuleData,
- -
176 - - - - - -
      bytes memory _resolutionModuleData,
- -
177 - - - - - -
      bytes memory _finalityModuleData
- -
178 - - - - - -
    );
- -
179 - - - - - -

-                            
-                        
180 - - - - - -
  /**
- -
181 - - - - - -
   * @notice The request data
- -
182 - - - - - -
   * @return _requestData The request data
- -
183 - - - - - -
   */
- -
184 - - - - - -
  function getRequestData() external view returns (IOracle.Request memory _requestData);
- -
185 - - - - - -

-                            
-                        
186 - - - - - -
  /**
- -
187 - - - - - -
   * @notice The request id per chain and epoch
- -
188 - - - - - -
   * @param _chainId The chain id
- -
189 - - - - - -
   * @param _epoch The epoch
- -
190 - - - - - -
   * @return _requestId The request id
- -
191 - - - - - -
   */
- -
192 - - - - - -
  function requestIdPerChainAndEpoch(
- -
193 - - - - - -
    string calldata _chainId,
- -
194 - - - - - -
    uint256 _epoch
- -
195 - - - - - -
  ) external view returns (bytes32 _requestId);
- -
196 - - - - - -

-                            
-                        
197 - - - - - -
  /**
- -
198 - - - - - -
   * @notice Returns the allowed chain ids
- -
199 - - - - - -
   * @return _chainIds The allowed chain ids
- -
200 - - - - - -
   */
- -
201 - - - - - -
  function getAllowedChainIds() external view returns (bytes32[] memory _chainIds);
- -
202 - - - - - -

-                            
-                        
203 - - - - - -
  /*///////////////////////////////////////////////////////////////
- -
204 - - - - - -
                            LOGIC
- -
205 - - - - - -
  //////////////////////////////////////////////////////////////*/
- -
206 - - - - - -

-                            
-                        
207 - - - - - -
  /**
- -
208 - - - - - -
   * @notice Create request
- -
209 - - - - - -
   * @param _epoch The epoch of the request
- -
210 - - - - - -
   * @param _chainId The chain id to update
- -
211 - - - - - -
   */
- -
212 - - - - - -
  function createRequest(uint256 _epoch, string calldata _chainId) external;
- -
213 - - - - - -

-                            
-                        
214 - - - - - -
  /**
- -
215 - - - - - -
   * @notice Add a chain to the allowed chains which can be updated
- -
216 - - - - - -
   * @param _chainId The chain id to add
- -
217 - - - - - -
   */
- -
218 - - - - - -
  function addChain(string calldata _chainId) external;
- -
219 - - - - - -

-                            
-                        
220 - - - - - -
  /**
- -
221 - - - - - -
   * @notice Remove a chain from the allowed chains which can be updated
- -
222 - - - - - -
   * @param _chainId The chain id to remove
- -
223 - - - - - -
   */
- -
224 - - - - - -
  function removeChain(string calldata _chainId) external;
- -
225 - - - - - -

-                            
-                        
226 - - - - - -
  /**
- -
227 - - - - - -
   * @notice Set the request data module
- -
228 - - - - - -
   * @param _requestModule The request module
- -
229 - - - - - -
   * @param _requestModuleData The request module data
- -
230 - - - - - -
   */
- -
231 - - - - - -
  function setRequestModuleData(
- -
232 - - - - - -
    address _requestModule,
- -
233 - - - - - -
    IEBORequestModule.RequestParameters calldata _requestModuleData
- -
234 - - - - - -
  ) external;
- -
235 - - - - - -

-                            
-                        
236 - - - - - -
  /**
- -
237 - - - - - -
   * @notice Set the response data module
- -
238 - - - - - -
   * @param _responseModule The response module
- -
239 - - - - - -
   * @param _responseModuleData The response module data
- -
240 - - - - - -
   */
- -
241 - - - - - -
  function setResponseModuleData(
- -
242 - - - - - -
    address _responseModule,
- -
243 - - - - - -
    IBondedResponseModule.RequestParameters calldata _responseModuleData
- -
244 - - - - - -
  ) external;
- -
245 - - - - - -

-                            
-                        
246 - - - - - -
  /**
- -
247 - - - - - -
   * @notice Set the dispute data module
- -
248 - - - - - -
   * @param _disputeModule The dispute module
- -
249 - - - - - -
   * @param _disputeModuleData The dispute module data
- -
250 - - - - - -
   */
- -
251 - - - - - -
  function setDisputeModuleData(
- -
252 - - - - - -
    address _disputeModule,
- -
253 - - - - - -
    IBondEscalationModule.RequestParameters calldata _disputeModuleData
- -
254 - - - - - -
  ) external;
- -
255 - - - - - -

-                            
-                        
256 - - - - - -
  /**
- -
257 - - - - - -
   * @notice Set the resolution data module
- -
258 - - - - - -
   * @param _resolutionModule The resolution module
- -
259 - - - - - -
   * @param _resolutionModuleData The resolution module data
- -
260 - - - - - -
   */
- -
261 - - - - - -
  function setResolutionModuleData(
- -
262 - - - - - -
    address _resolutionModule,
- -
263 - - - - - -
    IArbitratorModule.RequestParameters calldata _resolutionModuleData
- -
264 - - - - - -
  ) external;
- -
265 - - - - - -

-                            
-                        
266 - - - - - -
  /**
- -
267 - - - - - -
   * @notice Set the finality data module
- -
268 - - - - - -
   * @param _finalityModule The finality module
- -
269 - - - - - -
   */
- -
270 - - - - - -
  function setFinalityModuleData(address _finalityModule) external;
- -
271 - - - - - -

-                            
-                        
272 - - - - - -
  /**
- -
273 - - - - - -
   * @notice Set the epoch manager
- -
274 - - - - - -
   * @param _epochManager The epoch manager
- -
275 - - - - - -
   */
- -
276 - - - - - -
  function setEpochManager(IEpochManager _epochManager) external;
- -
277 - - - - - -
}
- -
278 - - - - - -

-                            
-                        
-
-
- - - - - - - - - - -
-
-
- - - - - - -
Lines covered: 0 / 0 (0.0%)
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
1 - - - - - -
// SPDX-License-Identifier: GPL-3.0
- -
2 - - - - - -
pragma solidity 0.8.26;
- -
3 - - - - - -

-                            
-                        
4 - - - - - -
import {IOracle} from '@defi-wonderland/prophet-core/solidity/interfaces/IOracle.sol';
- -
5 - - - - - -
import {IRequestModule} from '@defi-wonderland/prophet-core/solidity/interfaces/modules/request/IRequestModule.sol';
- -
6 - - - - - -
import {IAccountingExtension} from
- -
7 - - - - - -
  '@defi-wonderland/prophet-modules/solidity/interfaces/extensions/IAccountingExtension.sol';
- -
8 - - - - - -

-                            
-                        
9 - - - - - -
import {IArbitrable} from 'interfaces/IArbitrable.sol';
- -
10 - - - - - -
import {IEBORequestCreator} from 'interfaces/IEBORequestCreator.sol';
- -
11 - - - - - -

-                            
-                        
12 - - - - - -
/**
- -
13 - - - - - -
 * @title EBORequestModule
- -
14 - - - - - -
 * @notice Module allowing users to create a request for RPC data for a specific epoch
- -
15 - - - - - -
 */
- -
16 - - - - - -
interface IEBORequestModule is IRequestModule {
- -
17 - - - - - -
  /*///////////////////////////////////////////////////////////////
- -
18 - - - - - -
                              STRUCTS
- -
19 - - - - - -
  //////////////////////////////////////////////////////////////*/
- -
20 - - - - - -

-                            
-                        
21 - - - - - -
  /**
- -
22 - - - - - -
   * @notice Parameters of the request as stored in the module
- -
23 - - - - - -
   * @param epoch The epoch for which the data is requested
- -
24 - - - - - -
   * @param chainId The chain ID for which the data is requested
- -
25 - - - - - -
   * @param accountingExtension The address of the AccountingExtension
- -
26 - - - - - -
   * @param paymentAmount The amount of payment for the request
- -
27 - - - - - -
   */
- -
28 - - - - - -
  struct RequestParameters {
- -
29 - - - - - -
    uint256 epoch;
- -
30 - - - - - -
    string chainId;
- -
31 - - - - - -
    IAccountingExtension accountingExtension;
- -
32 - - - - - -
    uint256 paymentAmount;
- -
33 - - - - - -
  }
- -
34 - - - - - -

-                            
-                        
35 - - - - - -
  /*///////////////////////////////////////////////////////////////
- -
36 - - - - - -
                              EVENTS
- -
37 - - - - - -
  //////////////////////////////////////////////////////////////*/
- -
38 - - - - - -

-                            
-                        
39 - - - - - -
  /**
- -
40 - - - - - -
   * @notice Emitted when the EBORequestCreator is added
- -
41 - - - - - -
   * @param _eboRequestCreator The address of the EBORequestCreator
- -
42 - - - - - -
   */
- -
43 - - - - - -
  event AddEBORequestCreator(IEBORequestCreator indexed _eboRequestCreator);
- -
44 - - - - - -

-                            
-                        
45 - - - - - -
  /**
- -
46 - - - - - -
   * @notice Emitted when an EBORequestCreator is removed
- -
47 - - - - - -
   * @param _eboRequestCreator The address of the EBORequestCreator
- -
48 - - - - - -
   */
- -
49 - - - - - -
  event RemoveEBORequestCreator(IEBORequestCreator indexed _eboRequestCreator);
- -
50 - - - - - -

-                            
-                        
51 - - - - - -
  /*///////////////////////////////////////////////////////////////
- -
52 - - - - - -
                              ERRORS
- -
53 - - - - - -
  //////////////////////////////////////////////////////////////*/
- -
54 - - - - - -

-                            
-                        
55 - - - - - -
  /**
- -
56 - - - - - -
   * @notice Thrown when the requester is not the EBORequestCreator
- -
57 - - - - - -
   */
- -
58 - - - - - -
  error EBORequestModule_InvalidRequester();
- -
59 - - - - - -

-                            
-                        
60 - - - - - -
  /*///////////////////////////////////////////////////////////////
- -
61 - - - - - -
                              VARIABLES
- -
62 - - - - - -
  //////////////////////////////////////////////////////////////*/
- -
63 - - - - - -

-                            
-                        
64 - - - - - -
  /**
- -
65 - - - - - -
   * @notice Returns the address of the arbitrable contract
- -
66 - - - - - -
   * @return _ARBITRABLE The address of the arbitrable contract
- -
67 - - - - - -
   */
- -
68 - - - - - -
  function ARBITRABLE() external view returns (IArbitrable _ARBITRABLE);
- -
69 - - - - - -

-                            
-                        
70 - - - - - -
  /**
- -
71 - - - - - -
   * @notice Returns the EBORequestCreators allowed
- -
72 - - - - - -
   * @return _eboRequestCreators The EBORequestCreators allowed
- -
73 - - - - - -
   */
- -
74 - - - - - -
  function getAllowedEBORequestCreators() external view returns (address[] memory _eboRequestCreators);
- -
75 - - - - - -

-                            
-                        
76 - - - - - -
  /*///////////////////////////////////////////////////////////////
- -
77 - - - - - -
                              LOGIC
- -
78 - - - - - -
  //////////////////////////////////////////////////////////////*/
- -
79 - - - - - -

-                            
-                        
80 - - - - - -
  /**
- -
81 - - - - - -
   * @notice Executes pre-request logic, bonding the requester's funds
- -
82 - - - - - -
   * @dev Callable only by the Oracle
- -
83 - - - - - -
   * @param _requestId The ID of the request
- -
84 - - - - - -
   * @param _data The data of the request
- -
85 - - - - - -
   * @param _requester The address of the requester
- -
86 - - - - - -
   */
- -
87 - - - - - -
  function createRequest(bytes32 _requestId, bytes calldata _data, address _requester) external;
- -
88 - - - - - -

-                            
-                        
89 - - - - - -
  /**
- -
90 - - - - - -
   * @notice Adds the address of the EBORequestCreator
- -
91 - - - - - -
   * @dev Callable only by The Graph's Arbitrator
- -
92 - - - - - -
   * @param _eboRequestCreator The address of the EBORequestCreator
- -
93 - - - - - -
   */
- -
94 - - - - - -
  function addEBORequestCreator(IEBORequestCreator _eboRequestCreator) external;
- -
95 - - - - - -

-                            
-                        
96 - - - - - -
  /**
- -
97 - - - - - -
   * @notice Removes an EBORequestCreator
- -
98 - - - - - -
   * @dev Callable only by The Graph's Arbitrator
- -
99 - - - - - -
   * @param _eboRequestCreator The address of the EBORequestCreator
- -
100 - - - - - -
   */
- -
101 - - - - - -
  function removeEBORequestCreator(IEBORequestCreator _eboRequestCreator) external;
- -
102 - - - - - -

-                            
-                        
103 - - - - - -
  /**
- -
104 - - - - - -
   * @notice Determines how to decode the inputted request data
- -
105 - - - - - -
   * @param _data The encoded request parameters
- -
106 - - - - - -
   * @return _params The struct containing the parameters for the request
- -
107 - - - - - -
   */
- -
108 - - - - - -
  function decodeRequestData(bytes calldata _data) external pure returns (RequestParameters memory _params);
- -
109 - - - - - -
}
- -
110 - - - - - -

-                            
-                        
-
-
- - - - - - - - - - -
-
-
- - - - - - -
Lines covered: 0 / 0 (0.0%)
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
1 - - - - - -
// SPDX-License-Identifier: GPL-3.0
- -
2 - - - - - -
pragma solidity 0.8.26;
- -
3 - - - - - -

-                            
-                        
4 - - - - - -
import {IOracle} from '@defi-wonderland/prophet-core/solidity/interfaces/IOracle.sol';
- -
5 - - - - - -
import {IValidator} from '@defi-wonderland/prophet-core/solidity/interfaces/IValidator.sol';
- -
6 - - - - - -
import {IBondEscalationModule} from
- -
7 - - - - - -
  '@defi-wonderland/prophet-modules/solidity/interfaces/modules/dispute/IBondEscalationModule.sol';
- -
8 - - - - - -
import {IERC20} from '@openzeppelin/contracts/token/ERC20/IERC20.sol';
- -
9 - - - - - -
import {IHorizonStaking} from 'interfaces/external/IHorizonStaking.sol';
- -
10 - - - - - -

-                            
-                        
11 - - - - - -
import {IArbitrable} from 'interfaces/IArbitrable.sol';
- -
12 - - - - - -

-                            
-                        
13 - - - - - -
interface IHorizonAccountingExtension is IValidator {
- -
14 - - - - - -
  /*///////////////////////////////////////////////////////////////
- -
15 - - - - - -
                              EVENTS
- -
16 - - - - - -
  //////////////////////////////////////////////////////////////*/
- -
17 - - - - - -

-                            
-                        
18 - - - - - -
  /**
- -
19 - - - - - -
   * @notice A payment between users has been made
- -
20 - - - - - -
   * @param _requestId    The ID of the request
- -
21 - - - - - -
   * @param _beneficiary  The user receiving the tokens
- -
22 - - - - - -
   * @param _payer        The user who is getting its tokens transferred
- -
23 - - - - - -
   * @param _amount       The amount of GRT transferred
- -
24 - - - - - -
   */
- -
25 - - - - - -
  event Paid(bytes32 indexed _requestId, address indexed _beneficiary, address indexed _payer, uint256 _amount);
- -
26 - - - - - -

-                            
-                        
27 - - - - - -
  /**
- -
28 - - - - - -
   * @notice User's funds have been bonded
- -
29 - - - - - -
   * @param _requestId    The ID of the request
- -
30 - - - - - -
   * @param _bonder       The user who is getting its tokens bonded
- -
31 - - - - - -
   * @param _amount       The amount of GRT bonded
- -
32 - - - - - -
   */
- -
33 - - - - - -
  event Bonded(bytes32 indexed _requestId, address indexed _bonder, uint256 _amount);
- -
34 - - - - - -

-                            
-                        
35 - - - - - -
  /**
- -
36 - - - - - -
   * @notice User's funds have been released
- -
37 - - - - - -
   * @param _requestId    The ID of the request
- -
38 - - - - - -
   * @param _beneficiary  The user who is getting its tokens released
- -
39 - - - - - -
   * @param _amount       The amount of GRT released
- -
40 - - - - - -
   */
- -
41 - - - - - -
  event Released(bytes32 indexed _requestId, address indexed _beneficiary, uint256 _amount);
- -
42 - - - - - -

-                            
-                        
43 - - - - - -
  /**
- -
44 - - - - - -
   * @notice A user pledged tokens for one of the sides of a dispute
- -
45 - - - - - -
   *
- -
46 - - - - - -
   * @param _pledger          The user who pledged the tokens
- -
47 - - - - - -
   * @param _requestId        The ID of the bond-escalated request
- -
48 - - - - - -
   * @param _disputeId        The ID of the bond-escalated dispute
- -
49 - - - - - -
   * @param _amount           The amount of GRT pledged by the user
- -
50 - - - - - -
   */
- -
51 - - - - - -
  event Pledged(address indexed _pledger, bytes32 indexed _requestId, bytes32 indexed _disputeId, uint256 _amount);
- -
52 - - - - - -

-                            
-                        
53 - - - - - -
  /**
- -
54 - - - - - -
   * @notice The pledgers of the winning side of a dispute have been paid
- -
55 - - - - - -
   *
- -
56 - - - - - -
   * @param _requestId        The ID of the bond-escalated request
- -
57 - - - - - -
   * @param _disputeId        The ID of the bond-escalated dispute
- -
58 - - - - - -
   * @param _winningPledgers  The users who got paid for pledging for the winning side
- -
59 - - - - - -
   * @param _amountPerPledger The amount of GRT paid to each of the winning pledgers
- -
60 - - - - - -
   */
- -
61 - - - - - -
  event WinningPledgersPaid(
- -
62 - - - - - -
    bytes32 indexed _requestId,
- -
63 - - - - - -
    bytes32 indexed _disputeId,
- -
64 - - - - - -
    address[] indexed _winningPledgers,
- -
65 - - - - - -
    uint256 _amountPerPledger
- -
66 - - - - - -
  );
- -
67 - - - - - -

-                            
-                        
68 - - - - - -
  /**
- -
69 - - - - - -
   * @notice A bond escalation has been settled
- -
70 - - - - - -
   *
- -
71 - - - - - -
   * @param _requestId             The ID of the bond-escalated request
- -
72 - - - - - -
   * @param _disputeId             The ID of the bond-escalated dispute
- -
73 - - - - - -
   * @param _amountPerPledger      The amount of GRT to be paid for each winning pledgers
- -
74 - - - - - -
   * @param _winningPledgersLength The number of winning pledgers
- -
75 - - - - - -
   */
- -
76 - - - - - -
  event BondEscalationSettled(
- -
77 - - - - - -
    bytes32 _requestId, bytes32 _disputeId, uint256 _amountPerPledger, uint256 _winningPledgersLength
- -
78 - - - - - -
  );
- -
79 - - - - - -

-                            
-                        
80 - - - - - -
  /**
- -
81 - - - - - -
   * @notice A user claimed their reward for pledging for the winning side of a dispute
- -
82 - - - - - -
   *
- -
83 - - - - - -
   * @param _requestId        The ID of the bond-escalated request
- -
84 - - - - - -
   * @param _disputeId        The ID of the bond-escalated dispute
- -
85 - - - - - -
   * @param _pledger          The user who claimed their reward
- -
86 - - - - - -
   * @param _reward           The amount of GRT the user claimed
- -
87 - - - - - -
   * @param _released         The amount of GRT released to the user
- -
88 - - - - - -
   */
- -
89 - - - - - -
  event EscalationRewardClaimed(
- -
90 - - - - - -
    bytes32 indexed _requestId, bytes32 indexed _disputeId, address indexed _pledger, uint256 _reward, uint256 _released
- -
91 - - - - - -
  );
- -
92 - - - - - -

-                            
-                        
93 - - - - - -
  /**
- -
94 - - - - - -
   * @notice Emitted when max users to check is set
- -
95 - - - - - -
   *
- -
96 - - - - - -
   * @param _maxUsersToCheck   The new value of max users to check
- -
97 - - - - - -
   */
- -
98 - - - - - -
  event MaxUsersToCheckSet(uint256 _maxUsersToCheck);
- -
99 - - - - - -

-                            
-                        
100 - - - - - -
  /*///////////////////////////////////////////////////////////////
- -
101 - - - - - -
                              ERRORS
- -
102 - - - - - -
  //////////////////////////////////////////////////////////////*/
- -
103 - - - - - -

-                            
-                        
104 - - - - - -
  /**
- -
105 - - - - - -
   * @notice Thrown when depositing tokens with a fee on transfer
- -
106 - - - - - -
   */
- -
107 - - - - - -
  error HorizonAccountingExtension_FeeOnTransferToken();
- -
108 - - - - - -

-                            
-                        
109 - - - - - -
  /**
- -
110 - - - - - -
   * @notice Thrown when the module bonding user tokens hasn't been approved by the user.
- -
111 - - - - - -
   */
- -
112 - - - - - -
  error HorizonAccountingExtension_NotAllowed();
- -
113 - - - - - -

-                            
-                        
114 - - - - - -
  /**
- -
115 - - - - - -
   * @notice Thrown when an `onlyAllowedModule` function is called by something
- -
116 - - - - - -
   * else than a module being used in the corresponding request
- -
117 - - - - - -
   */
- -
118 - - - - - -
  error HorizonAccountingExtension_UnauthorizedModule();
- -
119 - - - - - -

-                            
-                        
120 - - - - - -
  /**
- -
121 - - - - - -
   * @notice Thrown when an `onlyParticipant` function is called with an address
- -
122 - - - - - -
   * that is not part of the request.
- -
123 - - - - - -
   */
- -
124 - - - - - -
  error HorizonAccountingExtension_UnauthorizedUser();
- -
125 - - - - - -

-                            
-                        
126 - - - - - -
  /**
- -
127 - - - - - -
   * @notice Thrown when the thawing period is invalid
- -
128 - - - - - -
   */
- -
129 - - - - - -
  error HorizonAccountingExtension_InvalidThawingPeriod();
- -
130 - - - - - -

-                            
-                        
131 - - - - - -
  /**
- -
132 - - - - - -
   * @notice Thrown when the user has insufficient tokens
- -
133 - - - - - -
   */
- -
134 - - - - - -
  error HorizonAccountingExtension_InsufficientTokens();
- -
135 - - - - - -

-                            
-                        
136 - - - - - -
  /**
- -
137 - - - - - -
   * @notice Thrown when the user has insufficient bonded tokens
- -
138 - - - - - -
   */
- -
139 - - - - - -
  error HorizonAccountingExtension_InsufficientBondedTokens();
- -
140 - - - - - -

-                            
-                        
141 - - - - - -
  /**
- -
142 - - - - - -
   * @notice Thrown when the user tries to claim their pledge for an escalation that was already claimed
- -
143 - - - - - -
   */
- -
144 - - - - - -
  error HorizonAccountingExtension_AlreadyClaimed();
- -
145 - - - - - -

-                            
-                        
146 - - - - - -
  /**
- -
147 - - - - - -
   * @notice Thrown when the user tries to claim their pledge for an escalation that wasn't finished yet
- -
148 - - - - - -
   */
- -
149 - - - - - -
  error HorizonAccountingExtension_NoEscalationResult();
- -
150 - - - - - -

-                            
-                        
151 - - - - - -
  /**
- -
152 - - - - - -
   * @notice Thrown when the user doesn't have enough funds to pledge
- -
153 - - - - - -
   */
- -
154 - - - - - -
  error HorizonAccountingExtension_InsufficientFunds();
- -
155 - - - - - -

-                            
-                        
156 - - - - - -
  /**
- -
157 - - - - - -
   * @notice Thrown when trying to settle an already settled escalation
- -
158 - - - - - -
   */
- -
159 - - - - - -
  error HorizonAccountingExtension_AlreadySettled();
- -
160 - - - - - -

-                            
-                        
161 - - - - - -
  /**
- -
162 - - - - - -
   * @notice Thrown when the max verifier cut is invalid
- -
163 - - - - - -
   */
- -
164 - - - - - -
  error HorizonAccountingExtension_InvalidMaxVerifierCut();
- -
165 - - - - - -

-                            
-                        
166 - - - - - -
  /**
- -
167 - - - - - -
   * @notice Thrown when caller is not authorized
- -
168 - - - - - -
   */
- -
169 - - - - - -
  error HorizonAccountingExtension_UnauthorizedCaller();
- -
170 - - - - - -

-                            
-                        
171 - - - - - -
  /*///////////////////////////////////////////////////////////////
- -
172 - - - - - -
                              STRUCTS
- -
173 - - - - - -
  //////////////////////////////////////////////////////////////*/
- -
174 - - - - - -

-                            
-                        
175 - - - - - -
  /**
- -
176 - - - - - -
   * @notice Contains the data of the result of an escalation. Is used by users to claim their pledges
- -
177 - - - - - -
   * @param requestId         The ID of the bond-escalated request
- -
178 - - - - - -
   * @param amountPerPledger  The amount of token paid to each of the winning pledgers
- -
179 - - - - - -
   * @param bondSize             The size of the bond required for bond escalation
- -
180 - - - - - -
   * @param bondEscalationModule The address of the bond escalation module that was used
- -
181 - - - - - -
   */
- -
182 - - - - - -
  struct EscalationResult {
- -
183 - - - - - -
    bytes32 requestId;
- -
184 - - - - - -
    uint256 amountPerPledger;
- -
185 - - - - - -
    uint256 bondSize;
- -
186 - - - - - -
    IBondEscalationModule bondEscalationModule;
- -
187 - - - - - -
  }
- -
188 - - - - - -

-                            
-                        
189 - - - - - -
  /*///////////////////////////////////////////////////////////////
- -
190 - - - - - -
                              VARIABLES
- -
191 - - - - - -
  //////////////////////////////////////////////////////////////*/
- -
192 - - - - - -

-                            
-                        
193 - - - - - -
  /**
- -
194 - - - - - -
   * @notice The Horizon Staking contract
- -
195 - - - - - -
   * @return _horizonStaking The Horizon Staking contract
- -
196 - - - - - -
   */
- -
197 - - - - - -
  function HORIZON_STAKING() external view returns (IHorizonStaking _horizonStaking);
- -
198 - - - - - -

-                            
-                        
199 - - - - - -
  /**
- -
200 - - - - - -
   * @notice The GRT token
- -
201 - - - - - -
   * @return _GRT The GRT token
- -
202 - - - - - -
   */
- -
203 - - - - - -
  function GRT() external view returns (IERC20 _GRT);
- -
204 - - - - - -

-                            
-                        
205 - - - - - -
  /**
- -
206 - - - - - -
   * @notice The Arbitrable contract
- -
207 - - - - - -
   * @return _arbitrable The Arbitrable contract
- -
208 - - - - - -
   */
- -
209 - - - - - -
  function ARBITRABLE() external view returns (IArbitrable _arbitrable);
- -
210 - - - - - -

-                            
-                        
211 - - - - - -
  /**
- -
212 - - - - - -
   * @notice The minimum thawing period
- -
213 - - - - - -
   * @return _MIN_THAWING_PERIOD The minimum thawing period
- -
214 - - - - - -
   */
- -
215 - - - - - -
  function MIN_THAWING_PERIOD() external view returns (uint64 _MIN_THAWING_PERIOD);
- -
216 - - - - - -

-                            
-                        
217 - - - - - -
  /**
- -
218 - - - - - -
   * @notice The maximum verifier cut
- -
219 - - - - - -
   * @return _MAX_VERIFIER_CUT The maximum verifier cut
- -
220 - - - - - -
   */
- -
221 - - - - - -
  function MAX_VERIFIER_CUT() external view returns (uint32 _MAX_VERIFIER_CUT);
- -
222 - - - - - -

-                            
-                        
223 - - - - - -
  /**
- -
224 - - - - - -
   * @notice The max number of users to slash
- -
225 - - - - - -
   * @return _MAX_USERS_TO_SLASH The number of users to slash
- -
226 - - - - - -
   */
- -
227 - - - - - -
  function MAX_USERS_TO_SLASH() external view returns (uint32 _MAX_USERS_TO_SLASH);
- -
228 - - - - - -

-                            
-                        
229 - - - - - -
  /**
- -
230 - - - - - -
   * @notice The maximum users to check
- -
231 - - - - - -
   * @return _maxUsersToCheck The maximum users to check
- -
232 - - - - - -
   */
- -
233 - - - - - -
  function maxUsersToCheck() external view returns (uint128 _maxUsersToCheck);
- -
234 - - - - - -

-                            
-                        
235 - - - - - -
  /**
- -
236 - - - - - -
   * @notice The total bonded tokens for a user
- -
237 - - - - - -
   * @param _user The user address
- -
238 - - - - - -
   * @return _totalBonded The total bonded tokens for a user
- -
239 - - - - - -
   */
- -
240 - - - - - -
  function totalBonded(address _user) external view returns (uint256 _totalBonded);
- -
241 - - - - - -

-                            
-                        
242 - - - - - -
  /**
- -
243 - - - - - -
   * @notice The bound amount of tokens for a user in a request
- -
244 - - - - - -
   * @param _user The user address
- -
245 - - - - - -
   * @param _requestId The ID of the request
- -
246 - - - - - -
   * @return _amount The amount of tokens bonded
- -
247 - - - - - -
   */
- -
248 - - - - - -
  function bondedForRequest(address _user, bytes32 _requestId) external view returns (uint256 _amount);
- -
249 - - - - - -

-                            
-                        
250 - - - - - -
  /**
- -
251 - - - - - -
   * @notice The total pledged tokens for a user
- -
252 - - - - - -
   * @param _disputeId The ID of the dispute
- -
253 - - - - - -
   * @return _amount The total pledged tokens for a user
- -
254 - - - - - -
   */
- -
255 - - - - - -
  function pledges(bytes32 _disputeId) external view returns (uint256 _amount);
- -
256 - - - - - -

-                            
-                        
257 - - - - - -
  /**
- -
258 - - - - - -
   * @notice The escalation result of a dispute
- -
259 - - - - - -
   * @param _disputeId The ID of the dispute
- -
260 - - - - - -
   * @return _requestId The ID of the request
- -
261 - - - - - -
   * @return _amountPerPledger The amount of token paid to each of the winning pledgers
- -
262 - - - - - -
   * @return _bondSize             The size of the bond required for bond escalation
- -
263 - - - - - -
   * @return _bondEscalationModule The address of the bond escalation module that was used
- -
264 - - - - - -
   */
- -
265 - - - - - -
  function escalationResults(bytes32 _disputeId)
- -
266 - - - - - -
    external
- -
267 - - - - - -
    view
- -
268 - - - - - -
    returns (
- -
269 - - - - - -
      bytes32 _requestId,
- -
270 - - - - - -
      uint256 _amountPerPledger,
- -
271 - - - - - -
      uint256 _bondSize,
- -
272 - - - - - -
      IBondEscalationModule _bondEscalationModule
- -
273 - - - - - -
    );
- -
274 - - - - - -

-                            
-                        
275 - - - - - -
  /**
- -
276 - - - - - -
   * @notice The escalation result of a dispute
- -
277 - - - - - -
   * @param _disputeId The ID of the dispute
- -
278 - - - - - -
   * @return _escalationResult The escalation result
- -
279 - - - - - -
   */
- -
280 - - - - - -
  function getEscalationResult(bytes32 _disputeId) external view returns (EscalationResult memory _escalationResult);
- -
281 - - - - - -

-                            
-                        
282 - - - - - -
  /**
- -
283 - - - - - -
   * @notice The claim status of a user for a pledge
- -
284 - - - - - -
   * @param _requestId The ID of the request
- -
285 - - - - - -
   * @param _pledger The user address
- -
286 - - - - - -
   * @return _claimed True if the user claimed their pledge
- -
287 - - - - - -
   */
- -
288 - - - - - -
  function pledgerClaimed(bytes32 _requestId, address _pledger) external view returns (bool _claimed);
- -
289 - - - - - -

-                            
-                        
290 - - - - - -
  /**
- -
291 - - - - - -
   * @notice Checks whether an address is an authorized caller
- -
292 - - - - - -
   *
- -
293 - - - - - -
   * @param _caller      The address to check
- -
294 - - - - - -
   * @return _authorized True if the address is authorized, false otherwise
- -
295 - - - - - -
   */
- -
296 - - - - - -
  function authorizedCallers(address _caller) external returns (bool _authorized);
- -
297 - - - - - -

-                            
-                        
298 - - - - - -
  /**
- -
299 - - - - - -
   * @notice Returns the approved modules for bonding tokens
- -
300 - - - - - -
   * @param _user The address of the user
- -
301 - - - - - -
   * @return _approvedModules The approved modules for bonding tokens
- -
302 - - - - - -
   */
- -
303 - - - - - -
  function approvedModules(address _user) external view returns (address[] memory _approvedModules);
- -
304 - - - - - -

-                            
-                        
305 - - - - - -
  /**
- -
306 - - - - - -
   * @notice Returns the available balance to claim for a specific dispute
- -
307 - - - - - -
   *
- -
308 - - - - - -
   * @param _disputeId The id of the dispute to get the balance
- -
309 - - - - - -
   * @return _balance  The balance of the dispute
- -
310 - - - - - -
   */
- -
311 - - - - - -
  function disputeBalance(bytes32 _disputeId) external returns (uint256 _balance);
- -
312 - - - - - -

-                            
-                        
313 - - - - - -
  /*///////////////////////////////////////////////////////////////
- -
314 - - - - - -
                              LOGIC
- -
315 - - - - - -
  //////////////////////////////////////////////////////////////*/
- -
316 - - - - - -

-                            
-                        
317 - - - - - -
  /**
- -
318 - - - - - -
   * @notice Allows a user to approve a module for bonding tokens
- -
319 - - - - - -
   * @param _module The address of the module to be approved
- -
320 - - - - - -
   */
- -
321 - - - - - -
  function approveModule(address _module) external;
- -
322 - - - - - -

-                            
-                        
323 - - - - - -
  /**
- -
324 - - - - - -
   * @notice Allows a user to revoke a module's approval for bonding tokens
- -
325 - - - - - -
   * @param _module The address of the module to be revoked
- -
326 - - - - - -
   */
- -
327 - - - - - -
  function revokeModule(address _module) external;
- -
328 - - - - - -

-                            
-                        
329 - - - - - -
  /**
- -
330 - - - - - -
   * @notice Pledges the given amount of token to the provided dispute ID of the provided request ID
- -
331 - - - - - -
   * @param _pledger Address of the pledger
- -
332 - - - - - -
   * @param _request The bond-escalated request
- -
333 - - - - - -
   * @param _dispute The bond-escalated dispute
- -
334 - - - - - -
   * @param _token Address of the token being paid as a reward for winning the bond escalation
- -
335 - - - - - -
   * @param _amount Amount of GRT to pledge
- -
336 - - - - - -
   */
- -
337 - - - - - -
  function pledge(
- -
338 - - - - - -
    address _pledger,
- -
339 - - - - - -
    IOracle.Request calldata _request,
- -
340 - - - - - -
    IOracle.Dispute calldata _dispute,
- -
341 - - - - - -
    IERC20 _token,
- -
342 - - - - - -
    uint256 _amount
- -
343 - - - - - -
  ) external;
- -
344 - - - - - -

-                            
-                        
345 - - - - - -
  /**
- -
346 - - - - - -
   *
- -
347 - - - - - -
   * @notice Updates the accounting of the given dispute to reflect the result of the bond escalation
- -
348 - - - - - -
   * @param _request The bond-escalated request
- -
349 - - - - - -
   * @param _dispute The bond-escalated dispute
- -
350 - - - - - -
   * @param _token Address of the token being paid as a reward for winning the bond escalation
- -
351 - - - - - -
   * @param _amountPerPledger Amount of GRT to be rewarded to each of the winning pledgers
- -
352 - - - - - -
   * @param _winningPledgersLength Amount of pledges that won the dispute
- -
353 - - - - - -
   */
- -
354 - - - - - -
  function onSettleBondEscalation(
- -
355 - - - - - -
    IOracle.Request calldata _request,
- -
356 - - - - - -
    IOracle.Dispute calldata _dispute,
- -
357 - - - - - -
    IERC20 _token,
- -
358 - - - - - -
    uint256 _amountPerPledger,
- -
359 - - - - - -
    uint256 _winningPledgersLength
- -
360 - - - - - -
  ) external;
- -
361 - - - - - -

-                            
-                        
362 - - - - - -
  /**
- -
363 - - - - - -
   * @notice Claims the reward for the pledger the given dispute
- -
364 - - - - - -
   * @dev After the established thawing period the losing pledgers can withdraw their stake from Horizon.
- -
365 - - - - - -
   *    Rewards should be claimed before that period ends to ensure that funds are available.
- -
366 - - - - - -
   * @param _disputeId The ID of the bond-escalated dispute
- -
367 - - - - - -
   * @param _pledger Address of the pledger to claim the rewards
- -
368 - - - - - -
   */
- -
369 - - - - - -
  function claimEscalationReward(bytes32 _disputeId, address _pledger) external;
- -
370 - - - - - -

-                            
-                        
371 - - - - - -
  /**
- -
372 - - - - - -
   * @notice Allows a allowed module to transfer bonded tokens from one user to another
- -
373 - - - - - -
   * @param _requestId The ID of the request handling the user's tokens
- -
374 - - - - - -
   * @param _payer The address of the user paying the tokens
- -
375 - - - - - -
   * @param _receiver The address of the user receiving the tokens
- -
376 - - - - - -
   * @param _token The address of the token being transferred
- -
377 - - - - - -
   * @param _amount The amount of GRT being transferred
- -
378 - - - - - -
   */
- -
379 - - - - - -
  function pay(bytes32 _requestId, address _payer, address _receiver, IERC20 _token, uint256 _amount) external;
- -
380 - - - - - -

-                            
-                        
381 - - - - - -
  /**
- -
382 - - - - - -
   * @notice Allows an allowed module to bond a user's tokens for a request
- -
383 - - - - - -
   * @param _bonder The address of the user to bond tokens for
- -
384 - - - - - -
   * @param _requestId The ID of the request the user is bonding for
- -
385 - - - - - -
   * @param _token The address of the token being bonded
- -
386 - - - - - -
   * @param _amount The amount of GRT to bond
- -
387 - - - - - -
   */
- -
388 - - - - - -
  function bond(address _bonder, bytes32 _requestId, IERC20 _token, uint256 _amount) external;
- -
389 - - - - - -

-                            
-                        
390 - - - - - -
  /**
- -
391 - - - - - -
   * @notice Allows a valid module to bond a user's tokens for a request
- -
392 - - - - - -
   * @param _bonder The address of the user to bond tokens for
- -
393 - - - - - -
   * @param _requestId The ID of the request the user is bonding for
- -
394 - - - - - -
   * @param _token The address of the token being bonded
- -
395 - - - - - -
   * @param _amount The amount of GRT to bond
- -
396 - - - - - -
   * @param _sender The address starting the propose call on the Oracle
- -
397 - - - - - -
   */
- -
398 - - - - - -
  function bond(address _bonder, bytes32 _requestId, IERC20 _token, uint256 _amount, address _sender) external;
- -
399 - - - - - -

-                            
-                        
400 - - - - - -
  /**
- -
401 - - - - - -
   * @notice Allows a valid module to release a user's tokens
- -
402 - - - - - -
   * @param _bonder The address of the user to release tokens for
- -
403 - - - - - -
   * @param _requestId The ID of the request where the tokens were bonded
- -
404 - - - - - -
   * @param _token The address of the token being released
- -
405 - - - - - -
   * @param _amount The amount of GRT to release
- -
406 - - - - - -
   */
- -
407 - - - - - -
  function release(address _bonder, bytes32 _requestId, IERC20 _token, uint256 _amount) external;
- -
408 - - - - - -

-                            
-                        
409 - - - - - -
  /**
- -
410 - - - - - -
   * @notice Allows a anyone to slash a number of users for a dispute
- -
411 - - - - - -
   * @dev After the established thawing period the losing pledgers can withdraw their stake from Horizon.
- -
412 - - - - - -
   *    Users should be slashed before that period ends to ensure that funds are available.
- -
413 - - - - - -
   * @param _disputeId The ID of the dispute
- -
414 - - - - - -
   * @param _usersToSlash The number of users to slash
- -
415 - - - - - -
   * @param _maxUsersToCheck The maximum number of users to check before finishing the slashing
- -
416 - - - - - -
   */
- -
417 - - - - - -
  function slash(bytes32 _disputeId, uint256 _usersToSlash, uint256 _maxUsersToCheck) external;
- -
418 - - - - - -

-                            
-                        
419 - - - - - -
  /**
- -
420 - - - - - -
   * @notice Sets the maximum users to check
- -
421 - - - - - -
   * @param _maxUsersToCheck The new value of max users to check
- -
422 - - - - - -
   */
- -
423 - - - - - -
  function setMaxUsersToCheck(uint128 _maxUsersToCheck) external;
- -
424 - - - - - -
}
- -
425 - - - - - -

-                            
-                        
-
-
- - - - - - - - - - -
-
-
- - - - - - -
Lines covered: 0 / 0 (0.0%)
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
1 - - - - - -
// SPDX-License-Identifier: GPL-3.0
- -
2 - - - - - -
pragma solidity 0.8.26;
- -
3 - - - - - -

-                            
-                        
4 - - - - - -
interface IEpochManager {
- -
5 - - - - - -
  /*///////////////////////////////////////////////////////////////
- -
6 - - - - - -
                              FUNCTIONS
- -
7 - - - - - -
  //////////////////////////////////////////////////////////////*/
- -
8 - - - - - -

-                            
-                        
9 - - - - - -
  function currentEpoch() external view returns (uint256 _currentEpoch);
- -
10 - - - - - -
}
- -
11 - - - - - -

-                            
-                        
-
-
- - - - - - - - - - -
-
-
- - - - - - -
Lines covered: 0 / 0 (0.0%)
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
1 - - - - - -
// SPDX-License-Identifier: GPL-3.0
- -
2 - - - - - -
pragma solidity 0.8.26;
- -
3 - - - - - -

-                            
-                        
4 - - - - - -
interface IHorizonStaking {
- -
5 - - - - - -
  /**
- -
6 - - - - - -
   * @notice Gets the details of a provision.
- -
7 - - - - - -
   * @param serviceProvider The address of the service provider.
- -
8 - - - - - -
   * @param verifier The address of the verifier.
- -
9 - - - - - -
   * @return The provision details.
- -
10 - - - - - -
   */
- -
11 - - - - - -
  function getProvision(address serviceProvider, address verifier) external view returns (Provision memory);
- -
12 - - - - - -

-                            
-                        
13 - - - - - -
  /**
- -
14 - - - - - -
   * @notice Deposit tokens on the staking contract.
- -
15 - - - - - -
   * @dev Pulls tokens from the caller.
- -
16 - - - - - -
   *
- -
17 - - - - - -
   * Requirements:
- -
18 - - - - - -
   * - `_tokens` cannot be zero.
- -
19 - - - - - -
   * - Caller must have previously approved this contract to pull tokens from their balance.
- -
20 - - - - - -
   *
- -
21 - - - - - -
   * Emits a {StakeDeposited} event.
- -
22 - - - - - -
   *
- -
23 - - - - - -
   * @param tokens Amount of tokens to stake
- -
24 - - - - - -
   */
- -
25 - - - - - -
  function stake(uint256 tokens) external;
- -
26 - - - - - -

-                            
-                        
27 - - - - - -
  /**
- -
28 - - - - - -
   * @notice Provision stake to a verifier. The tokens will be locked with a thawing period
- -
29 - - - - - -
   * and will be slashable by the verifier. This is the main mechanism to provision stake to a data
- -
30 - - - - - -
   * service, where the data service is the verifier.
- -
31 - - - - - -
   * This function can be called by the service provider or by an operator authorized by the provider
- -
32 - - - - - -
   * for this specific verifier.
- -
33 - - - - - -
   * @dev Requirements:
- -
34 - - - - - -
   * - `tokens` cannot be zero and must be over the data service minimum required.
- -
35 - - - - - -
   * - Provision parameters must be within the range allowed by the verifier (`maxVerifierCut` and `thawingPeriod`)
- -
36 - - - - - -
   * - The `serviceProvider` must have enough idle stake to cover the tokens to provision.
- -
37 - - - - - -
   *
- -
38 - - - - - -
   * Emits a {ProvisionCreated} event.
- -
39 - - - - - -
   *
- -
40 - - - - - -
   * @param serviceProvider The service provider address
- -
41 - - - - - -
   * @param verifier The verifier address for which the tokens are provisioned (who will be able to slash the tokens)
- -
42 - - - - - -
   * @param tokens The amount of tokens that will be locked and slashable
- -
43 - - - - - -
   * @param maxVerifierCut The maximum cut, expressed in PPM, that a verifier can transfer instead of burning when slashing
- -
44 - - - - - -
   * @param thawingPeriod The period in seconds that the tokens will be thawing before they can be removed from the provision
- -
45 - - - - - -
   */
- -
46 - - - - - -
  function provision(
- -
47 - - - - - -
    address serviceProvider,
- -
48 - - - - - -
    address verifier,
- -
49 - - - - - -
    uint256 tokens,
- -
50 - - - - - -
    uint32 maxVerifierCut,
- -
51 - - - - - -
    uint64 thawingPeriod
- -
52 - - - - - -
  ) external;
- -
53 - - - - - -

-                            
-                        
54 - - - - - -
  /**
- -
55 - - - - - -
   * @notice Adds tokens from the service provider's idle stake to a provision
- -
56 - - - - - -
   * @dev
- -
57 - - - - - -
   *
- -
58 - - - - - -
   * Requirements:
- -
59 - - - - - -
   * - The `serviceProvider` must have previously provisioned stake to `verifier`.
- -
60 - - - - - -
   * - `tokens` cannot be zero.
- -
61 - - - - - -
   * - The `serviceProvider` must have enough idle stake to cover the tokens to add.
- -
62 - - - - - -
   *
- -
63 - - - - - -
   * Emits a {ProvisionIncreased} event.
- -
64 - - - - - -
   *
- -
65 - - - - - -
   * @param serviceProvider The service provider address
- -
66 - - - - - -
   * @param verifier The verifier address
- -
67 - - - - - -
   * @param tokens The amount of tokens to add to the provision
- -
68 - - - - - -
   */
- -
69 - - - - - -
  function addToProvision(address serviceProvider, address verifier, uint256 tokens) external;
- -
70 - - - - - -

-                            
-                        
71 - - - - - -
  struct Provision {
- -
72 - - - - - -
    // Service provider tokens in the provision (does not include delegated tokens)
- -
73 - - - - - -
    uint256 tokens;
- -
74 - - - - - -
    // Service provider tokens that are being thawed (and will stop being slashable soon)
- -
75 - - - - - -
    uint256 tokensThawing;
- -
76 - - - - - -
    // Shares representing the thawing tokens
- -
77 - - - - - -
    uint256 sharesThawing;
- -
78 - - - - - -
    // Max amount that can be taken by the verifier when slashing, expressed in parts-per-million of the amount slashed
- -
79 - - - - - -
    uint32 maxVerifierCut;
- -
80 - - - - - -
    // Time, in seconds, tokens must thaw before being withdrawn
- -
81 - - - - - -
    uint64 thawingPeriod;
- -
82 - - - - - -
    // Timestamp when the provision was created
- -
83 - - - - - -
    uint64 createdAt;
- -
84 - - - - - -
    // Pending value for `maxVerifierCut`. Verifier needs to accept it before it becomes active.
- -
85 - - - - - -
    uint32 maxVerifierCutPending;
- -
86 - - - - - -
    // Pending value for `thawingPeriod`. Verifier needs to accept it before it becomes active.
- -
87 - - - - - -
    uint64 thawingPeriodPending;
- -
88 - - - - - -
  }
- -
89 - - - - - -

-                            
-                        
90 - - - - - -
  /**
- -
91 - - - - - -
   * @notice Start thawing tokens to remove them from a provision.
- -
92 - - - - - -
   * This function can be called by the service provider or by an operator authorized by the provider
- -
93 - - - - - -
   * for this specific verifier.
- -
94 - - - - - -
   *
- -
95 - - - - - -
   * Note that removing tokens from a provision is a two step process:
- -
96 - - - - - -
   * - First the tokens are thawed using this function.
- -
97 - - - - - -
   * - Then after the thawing period, the tokens are removed from the provision using {deprovision}
- -
98 - - - - - -
   *   or {reprovision}.
- -
99 - - - - - -
   *
- -
100 - - - - - -
   * @dev Requirements:
- -
101 - - - - - -
   * - The provision must have enough tokens available to thaw.
- -
102 - - - - - -
   * - `tokens` cannot be zero.
- -
103 - - - - - -
   *
- -
104 - - - - - -
   * Emits {ProvisionThawed} and {ThawRequestCreated} events.
- -
105 - - - - - -
   *
- -
106 - - - - - -
   * @param serviceProvider The service provider address
- -
107 - - - - - -
   * @param verifier The verifier address for which the tokens are provisioned
- -
108 - - - - - -
   * @param tokens The amount of tokens to thaw
- -
109 - - - - - -
   * @return The ID of the thaw request
- -
110 - - - - - -
   */
- -
111 - - - - - -
  function thaw(address serviceProvider, address verifier, uint256 tokens) external returns (bytes32);
- -
112 - - - - - -

-                            
-                        
113 - - - - - -
  /**
- -
114 - - - - - -
   * @notice Slash a service provider. This can only be called by a verifier to which
- -
115 - - - - - -
   * the provider has provisioned stake, and up to the amount of tokens they have provisioned.
- -
116 - - - - - -
   * If the service provider's stake is not enough, the associated delegation pool might be slashed
- -
117 - - - - - -
   * depending on the value of the global delegation slashing flag.
- -
118 - - - - - -
   *
- -
119 - - - - - -
   * Part of the slashed tokens are sent to the `verifierDestination` as a reward.
- -
120 - - - - - -
   *
- -
121 - - - - - -
   * @dev Requirements:
- -
122 - - - - - -
   * - `tokens` must be less than or equal to the amount of tokens provisioned by the service provider.
- -
123 - - - - - -
   * - `tokensVerifier` must be less than the provision's tokens times the provision's maximum verifier cut.
- -
124 - - - - - -
   *
- -
125 - - - - - -
   * Emits a {ProvisionSlashed} and {VerifierTokensSent} events.
- -
126 - - - - - -
   * Emits a {DelegationSlashed} or {DelegationSlashingSkipped} event depending on the global delegation slashing
- -
127 - - - - - -
   * flag.
- -
128 - - - - - -
   *
- -
129 - - - - - -
   * @param serviceProvider The service provider to slash
- -
130 - - - - - -
   * @param tokens The amount of tokens to slash
- -
131 - - - - - -
   * @param tokensVerifier The amount of tokens to transfer instead of burning
- -
132 - - - - - -
   * @param verifierDestination The address to transfer the verifier cut to
- -
133 - - - - - -
   */
- -
134 - - - - - -
  function slash(address serviceProvider, uint256 tokens, uint256 tokensVerifier, address verifierDestination) external;
- -
135 - - - - - -
}
- -
136 - - - - - -

-                            
-                        
-
-
- - - - - - - - - - -
-
-
- - - - - - -
Lines covered: 1 / 1 (100.0%)
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
1 - - - - - -
// SPDX-License-Identifier: MIT
- -
2 - - - - - -
pragma solidity 0.8.26;
- -
3 - - - - - -

-                            
-                        
4 - - - - - -
import {PropertyParent} from './properties/PropertyParent.t.sol';
- -
5 - - - - - -

-                            
-                        
6 - -
- -
- -
- -
- -
contract FuzzTest is PropertyParent {
- -
7 - - - - - -
  function test_debug() public {
- -
8 - - - - - -
    assert(true);
- -
9 - - - - - -
  }
- -
10 - - - - - -
}
- -
11 - - - - - -

-                            
-                        
-
-
- - - - - - - - - - -
-
-
- - - - - - -
Lines covered: 57 / 58 (98.3%)
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
1 - - - - - -
// SPDX-License-Identifier: MIT
- -
2 - - - - - -
pragma solidity 0.8.26;
- -
3 - - - - - -

-                            
-                        
4 - - - - - -
import {ValidatorLib} from '@defi-wonderland/prophet-core/solidity/libraries/ValidatorLib.sol';
- -
5 - - - - - -

-                            
-                        
6 - - - - - -
import {
- -
7 - - - - - -
  BondEscalationModule,
- -
8 - - - - - -
  IBondEscalationModule
- -
9 - - - - - -
} from '@defi-wonderland/prophet-modules/solidity/contracts/modules/dispute/BondEscalationModule.sol';
- -
10 - - - - - -

-                            
-                        
11 - - - - - -
import {
- -
12 - - - - - -
  ArbitratorModule,
- -
13 - - - - - -
  IArbitratorModule
- -
14 - - - - - -
} from '@defi-wonderland/prophet-modules/solidity/contracts/modules/resolution/ArbitratorModule.sol';
- -
15 - - - - - -
import {
- -
16 - - - - - -
  BondedResponseModule,
- -
17 - - - - - -
  IBondedResponseModule
- -
18 - - - - - -
} from '@defi-wonderland/prophet-modules/solidity/contracts/modules/response/BondedResponseModule.sol';
- -
19 - - - - - -
import {IArbitrator} from '@defi-wonderland/prophet-modules/solidity/interfaces/IArbitrator.sol';
- -
20 - - - - - -
import {IAccountingExtension} from
- -
21 - - - - - -
  '@defi-wonderland/prophet-modules/solidity/interfaces/extensions/IAccountingExtension.sol';
- -
22 - - - - - -
import {IBondEscalationAccounting} from
- -
23 - - - - - -
  '@defi-wonderland/prophet-modules/solidity/interfaces/extensions/IBondEscalationAccounting.sol';
- -
24 - - - - - -

-                            
-                        
25 - - - - - -
import {IArbitrable, IArbitratorModule, ICouncilArbitrator, IOracle} from 'interfaces/ICouncilArbitrator.sol';
- -
26 - - - - - -

-                            
-                        
27 - - - - - -
import {Utils} from './helpers/Utils.t.sol';
- -
28 - - - - - -

-                            
-                        
29 - - - - - -
import {IEBOFinalityModule} from 'interfaces/IEBOFinalityModule.sol';
- -
30 - - - - - -
import {IEBORequestModule} from 'interfaces/IEBORequestModule.sol';
- -
31 - - - - - -

-                            
-                        
32 - - - - - -
import {IEpochManager} from 'interfaces/external/IEpochManager.sol';
- -
33 - - - - - -
import {IHorizonStaking} from 'interfaces/external/IHorizonStaking.sol';
- -
34 - - - - - -

-                            
-                        
35 - - - - - -
import {FuzzERC20, IERC20} from './helpers/FuzzERC20.sol';
- -
36 - - - - - -

-                            
-                        
37 - - - - - -
import {IOracle, Oracle} from '@defi-wonderland/prophet-core/solidity/contracts/Oracle.sol';
- -
38 - - - - - -

-                            
-                        
39 - - - - - -
import {BondEscalationModule} from
- -
40 - - - - - -
  '@defi-wonderland/prophet-modules/solidity/contracts/modules/dispute/BondEscalationModule.sol';
- -
41 - - - - - -
import {BondedResponseModule} from
- -
42 - - - - - -
  '@defi-wonderland/prophet-modules/solidity/contracts/modules/response/BondedResponseModule.sol';
- -
43 - - - - - -

-                            
-                        
44 - - - - - -
import {Arbitrable} from 'contracts/Arbitrable.sol';
- -
45 - - - - - -
import {CouncilArbitrator} from 'contracts/CouncilArbitrator.sol';
- -
46 - - - - - -
import {EBOFinalityModule} from 'contracts/EBOFinalityModule.sol';
- -
47 - - - - - -
import {EBORequestCreator, IEBORequestCreator} from 'contracts/EBORequestCreator.sol';
- -
48 - - - - - -
import {EBORequestModule} from 'contracts/EBORequestModule.sol';
- -
49 - - - - - -

-                            
-                        
50 - - - - - -
import {HorizonAccountingExtension} from 'contracts/HorizonAccountingExtension.sol';
- -
51 - - - - - -

-                            
-                        
52 - - - - - -
import {MockEpochManager} from './helpers/MockEpochManager.t.sol';
- -
53 - - - - - -
import {MockHorizonStaking} from './helpers/MockHorizonStaking.t.sol';
- -
54 - - - - - -

-                            
-                        
55 - - - - - -
contract Setup is Utils {
- -
56 - - - - - -
  // Core contracts
- -
57 - - - - - -
  Oracle internal oracle;
- -
58 - - - - - -
  EBORequestCreator internal eboRequestCreator;
- -
59 - - - - - -
  EBORequestModule internal eboRequestModule;
- -
60 - - - - - -
  BondedResponseModule internal bondedResponseModule;
- -
61 - - - - - -
  BondEscalationModule internal bondEscalationModule;
- -
62 - - - - - -
  CouncilArbitrator internal councilArbitrator;
- -
63 - - - - - -
  EBOFinalityModule internal eboFinalityModule;
- -
64 - - - - - -
  Arbitrable internal arbitrable;
- -
65 - - - - - -
  HorizonAccountingExtension internal horizonAccountingExtension;
- -
66 - - - - - -
  ArbitratorModule internal arbitratorModule;
- -
67 - - - - - -

-                            
-                        
68 - - - - - -
  // External contracts (mocked)
- -
69 - - - - - -
  IHorizonStaking internal horizonStaking;
- -
70 - - - - - -
  IERC20 internal GRT;
- -
71 - - - - - -
  IEpochManager internal epochManager;
- -
72 - - - - - -

-                            
-                        
73 - - - - - -
  // Constants
- -
74 - -
- -
- -
- -
- -
  uint256 internal constant START_EPOCH = 1000;
- -
75 - -
- -
- - - -
  uint64 internal constant MIN_THAWING_PERIOD = 1 days;
- -
76 - -
- -
- - - -
  uint128 internal constant INITIAL_MAX_USERS_TO_CHECK = 10;
- -
77 - - - - - -
  uint32 internal constant MAX_VERIFIER_CUT = 1_000_000;
- -
78 - - - - - -

-                            
-                        
79 - - - - - -
  uint256 internal constant PAYMENT_AMOUNT = 0 ether;
- -
80 - - - - - -

-                            
-                        
81 - -
- -
- - - -
  uint256 internal constant RESPONSE_BOND_SIZE = 0.5 ether;
- -
82 - -
- -
- - - -
  uint256 internal constant RESPONSE_DEADLINE = 5 days;
- -
83 - -
- -
- - - -
  uint256 internal constant RESPONSE_DISPUTE_WINDOW = 1 weeks;
- -
84 - - - - - -

-                            
-                        
85 - -
- -
- - - -
  uint256 internal constant DISPUTE_BOND_SIZE = 0.3 ether;
- -
86 - -
- -
- - - -
  uint256 internal constant MAX_NB_ESCALATION = 2;
- -
87 - -
- -
- - - -
  uint256 internal constant DISPUTE_DEADLINE = 10 days;
- -
88 - -
- -
- - - -
  uint256 internal constant TYING_BUFFER = 3 days;
- -
89 - -
- -
- - - -
  uint256 internal constant DISPUTE_DISPUTE_WINDOW = 2 weeks;
- -
90 - - - - - -

-                            
-                        
91 - - - - - -
  constructor() {
- -
92 - - - - - -
    // Deploy mock contracts
- -
93 - -
- -
- - - -
    GRT = IERC20(address(new FuzzERC20()));
- -
94 - -
- -
- - - -
    epochManager = IEpochManager(address(new MockEpochManager(START_EPOCH)));
- -
95 - -
- -
- - - -
    horizonStaking = IHorizonStaking(address(new MockHorizonStaking(GRT)));
- -
96 - - - - - -

-                            
-                        
97 - - - - - -
    // Deploy core contracts
- -
98 - -
- -
- - - -
    arbitrable = new Arbitrable(
- -
99 - -
- -
- - - -
      address(this), // Initial arbitrator
- -
100 - -
- -
- - - -
      address(this) // Initial council
- -
101 - - - - - -
    );
- -
102 - - - - - -

-                            
-                        
103 - -
- -
- - - -
    oracle = new Oracle();
- -
104 - - - - - -

-                            
-                        
105 - -
- -
- - - -
    eboRequestModule = new EBORequestModule(
- -
106 - - - - - -
      oracle,
- -
107 - - - - - -
      EBORequestCreator(address(0)), //eboRequestCreator will be set after creation
- -
108 - -
- -
- - - -
      arbitrable
- -
109 - - - - - -
    );
- -
110 - - - - - -

-                            
-                        
111 - -
- -
- - - -
    bondedResponseModule = new BondedResponseModule(oracle);
- -
112 - - - - - -

-                            
-                        
113 - -
- -
- - - -
    bondEscalationModule = new BondEscalationModule(oracle);
- -
114 - - - - - -

-                            
-                        
115 - -
- -
- - - -
    arbitratorModule = new ArbitratorModule(oracle);
- -
116 - - - - - -

-                            
-                        
117 - -
- -
- - - -
    councilArbitrator = new CouncilArbitrator(arbitratorModule, arbitrable);
- -
118 - - - - - -

-                            
-                        
119 - -
- -
- - - -
    eboFinalityModule = new EBOFinalityModule(
- -
120 - -
- -
- - - -
      oracle,
- -
121 - - - - - -
      EBORequestCreator(address(0)), // Will be set after creation
- -
122 - -
- -
- - - -
      arbitrable
- -
123 - - - - - -
    );
- -
124 - - - - - -

-                            
-                        
125 - - - - - -
    // Set up accounting extension
- -
126 - -
- -
- - - -
    address[] memory authorizedCallers = new address[](1);
- -
127 - -
- -
- - - -
    authorizedCallers[0] = address(bondEscalationModule);
- -
128 - - - - - -

-                            
-                        
129 - -
- -
- - - -
    horizonAccountingExtension = new HorizonAccountingExtension(
- -
130 - -
- -
- - - -
      horizonStaking, oracle, GRT, arbitrable, MIN_THAWING_PERIOD, INITIAL_MAX_USERS_TO_CHECK, authorizedCallers
- -
131 - - - - - -
    );
- -
132 - - - - - -

-                            
-                        
133 - - - - - -
    // Create EBO request creator with initial parameters
- -
134 - - - - - -
    IOracle.Request memory initialRequest = IOracle.Request({
- -
135 - -
- -
- - - -
      requestModule: address(eboRequestModule),
- -
136 - -
- -
- - - -
      responseModule: address(bondedResponseModule),
- -
137 - -
- -
- - - -
      disputeModule: address(bondEscalationModule),
- -
138 - -
- -
- - - -
      resolutionModule: address(arbitratorModule),
- -
139 - -
- -
- - - -
      finalityModule: address(eboFinalityModule),
- -
140 - - - - - -
      requester: address(0), // Will be set to eboRequestCreator's address
- -
141 - - - - - -
      requestModuleData: '',
- -
142 - - - - - -
      responseModuleData: '',
- -
143 - - - - - -
      disputeModuleData: '',
- -
144 - - - - - -
      resolutionModuleData: '',
- -
145 - - - - - -
      finalityModuleData: '',
- -
146 - - - - - -
      nonce: 0
- -
147 - - - - - -
    });
- -
148 - - - - - -

-                            
-                        
149 - -
- -
- - - -
    eboRequestCreator = new EBORequestCreator(oracle, epochManager, arbitrable, initialRequest);
- -
150 - - - - - -

-                            
-                        
151 - - - - - -
    // Initialize modules with eboRequestCreator
- -
152 - -
- -
- - - -
    eboRequestModule.addEBORequestCreator(eboRequestCreator);
- -
153 - -
- -
- - - -
    eboFinalityModule.addEBORequestCreator(eboRequestCreator);
- -
154 - - - - - -

-                            
-                        
155 - - - - - -
    // Set up module permissions
- -
156 - -
- -
- - - -
    horizonAccountingExtension.approveModule(address(bondedResponseModule));
- -
157 - -
- -
- - - -
    horizonAccountingExtension.approveModule(address(bondEscalationModule));
- -
158 - - - - - -

-                            
-                        
159 - - - - - -
    // Set up initial chain IDs
- -
160 - -
- -
- - - -
    eboRequestCreator.addChain('mainnet');
- -
161 - -
- -
- - - -
    eboRequestCreator.addChain('optimism');
- -
162 - -
- -
- - - -
    eboRequestCreator.addChain('arbitrum');
- -
163 - - - - - -

-                            
-                        
164 - - - - - -
    // Set up initial module parameters
- -
165 - -
- -
- - - -
    _setupModuleParameters();
- -
166 - - - - - -
  }
- -
167 - - - - - -

-                            
-                        
168 - - - - - -
  function _setupModuleParameters() internal {
- -
169 - - - - - -
    // Set up request module parameters
- -
170 - -
- -
- - - -
    IEBORequestModule.RequestParameters memory requestParams = IEBORequestModule.RequestParameters({
- -
171 - - - - - -
      epoch: START_EPOCH,
- -
172 - - - - - -
      chainId: 'mainnet',
- -
173 - -
- -
- - - -
      accountingExtension: IAccountingExtension(address(horizonAccountingExtension)),
- -
174 - - - - - -
      paymentAmount: PAYMENT_AMOUNT
- -
175 - - - - - -
    });
- -
176 - -
- -
- - - -
    eboRequestCreator.setRequestModuleData(address(eboRequestModule), requestParams);
- -
177 - - - - - -

-                            
-                        
178 - - - - - -
    // Set up response module parameters
- -
179 - - - - - -
    IBondedResponseModule.RequestParameters memory responseParams = IBondedResponseModule.RequestParameters({
- -
180 - -
- -
- - - -
      accountingExtension: IAccountingExtension(address(horizonAccountingExtension)),
- -
181 - -
- -
- - - -
      bondToken: GRT,
- -
182 - - - - - -
      bondSize: RESPONSE_BOND_SIZE,
- -
183 - - - - - -
      deadline: RESPONSE_DEADLINE,
- -
184 - - - - - -
      disputeWindow: RESPONSE_DISPUTE_WINDOW
- -
185 - - - - - -
    });
- -
186 - -
- -
- - - -
    eboRequestCreator.setResponseModuleData(address(bondedResponseModule), responseParams);
- -
187 - - - - - -

-                            
-                        
188 - - - - - -
    // Set up dispute module parameters
- -
189 - - - - - -
    IBondEscalationModule.RequestParameters memory disputeParams = IBondEscalationModule.RequestParameters({
- -
190 - -
- -
- - - -
      accountingExtension: IBondEscalationAccounting(address(horizonAccountingExtension)),
- -
191 - -
- -
- - - -
      bondToken: GRT,
- -
192 - - - - - -
      bondSize: DISPUTE_BOND_SIZE,
- -
193 - - - - - -
      maxNumberOfEscalations: MAX_NB_ESCALATION,
- -
194 - - - - - -
      bondEscalationDeadline: DISPUTE_DEADLINE,
- -
195 - - - - - -
      tyingBuffer: TYING_BUFFER,
- -
196 - - - - - -
      disputeWindow: DISPUTE_DISPUTE_WINDOW
- -
197 - - - - - -
    });
- -
198 - -
- -
- - - -
    eboRequestCreator.setDisputeModuleData(address(bondEscalationModule), disputeParams);
- -
199 - - - - - -

-                            
-                        
200 - - - - - -
    // Set up resolution module parameters
- -
201 - - - - - -
    IArbitratorModule.RequestParameters memory resolutionParams =
- -
202 - -
- -
- - - -
      IArbitratorModule.RequestParameters({arbitrator: address(councilArbitrator)});
- -
203 - -
- -
- - - -
    eboRequestCreator.setResolutionModuleData(address(arbitratorModule), resolutionParams);
- -
204 - - - - - -

-                            
-                        
205 - - - - - -
    // Set finality module
- -
206 - -
- -
- - - -
    eboRequestCreator.setFinalityModuleData(address(eboFinalityModule));
- -
207 - - - - - -
  }
- -
208 - - - - - -
}
- -
209 - - - - - -

-                            
-                        
-
-
- - - - - - - - - - -
-
-
- - - - - - -
Lines covered: 7 / 20 (35.0%)
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
1 - - - - - -
// SPDX-License-Identifier: MIT
- -
2 - - - - - -
pragma solidity 0.8.26;
- -
3 - - - - - -

-                            
-                        
4 - - - - - -
import /*{} from*/ '../Setup.t.sol';
- -
5 - - - - - -
import {Actors} from '../helpers/Actors.t.sol';
- -
6 - - - - - -

-                            
-                        
7 - - - - - -
// Base handler with tracking logic
- -
8 - - - - - -
contract BaseHandler is Setup, Actors {
- -
9 - - - - - -
  // Track all created request IDs
- -
10 - - - - - -
  bytes32[] internal _ghost_requests;
- -
11 - - - - - -

-                            
-                        
12 - - - - - -
  // Track request details
- -
13 - - - - - -
  mapping(bytes32 => IOracle.Request) internal _ghost_requestData;
- -
14 - - - - - -

-                            
-                        
15 - - - - - -
  // Track responses for requests
- -
16 - - - - - -
  mapping(bytes32 => bytes32) internal _ghost_activeResponses; // requestId => responseId
- -
17 - - - - - -
  mapping(bytes32 => IOracle.Response) internal _ghost_responseData;
- -
18 - - - - - -
  mapping(bytes32 => bool) internal _ghost_finalizedResponses;
- -
19 - - - - - -

-                            
-                        
20 - - - - - -
  // Track disputes
- -
21 - - - - - -
  mapping(bytes32 => bytes32[]) internal _ghost_disputes; // requestId => disputeIds
- -
22 - - - - - -
  mapping(bytes32 => IOracle.Dispute) internal _ghost_disputeData;
- -
23 - - - - - -
  mapping(bytes32 => IOracle.DisputeStatus) internal _ghost_disputeStatuses;
- -
24 - - - - - -

-                            
-                        
25 - - - - - -
  // Track which requests came from EBORequestCreator
- -
26 - - - - - -
  mapping(bytes32 => bool) internal _ghost_validRequests;
- -
27 - - - - - -

-                            
-                        
28 - - - - - -
  // Track chain IDs used per epoch to prevent duplicates
- -
29 - - - - - -
  mapping(uint256 => mapping(string => bool)) internal _ghost_epochChainIds;
- -
30 - - - - - -

-                            
-                        
31 - - - - - -
  // Track bonds and pledges
- -
32 - - - - - -
  mapping(address => mapping(bytes32 => uint256)) internal _ghost_bonds;
- -
33 - - - - - -
  mapping(address => mapping(bytes32 => uint256)) internal _ghost_pledgesFor;
- -
34 - - - - - -
  mapping(address => mapping(bytes32 => uint256)) internal _ghost_pledgesAgainst;
- -
35 - - - - - -

-                            
-                        
36 - - - - - -
  // Helper functions
- -
37 - - - -
- -
- -
  function _boundEpoch(uint256 _epoch) internal view returns (uint256) {
- -
38 - - - -
- -
- -
    return bound(_epoch, START_EPOCH, START_EPOCH + 1000);
- -
39 - - - - - -
  }
- -
40 - - - - - -

-                            
-                        
41 - - - - - -
  function _boundAmount(uint256 _amount) internal pure returns (uint256) {
- -
42 - - - - - -
    return bound(_amount, 1, 1_000_000e18);
- -
43 - - - - - -
  }
- -
44 - - - - - -

-                            
-                        
45 - - - - - -
  function _boundBlockNumber(uint256 _blockNumber) internal view returns (uint256) {
- -
46 - - - - - -
    return bound(_blockNumber, block.number - 1000, block.number);
- -
47 - - - - - -
  }
- -
48 - - - - - -

-                            
-                        
49 - -
- -
- -
- -
- -
  function _generateChainId(uint256 _seed) internal pure returns (string memory) {
- -
50 - -
- -
- -
- -
- -
    string[3] memory chains = ['mainnet', 'optimism', 'arbitrum'];
- -
51 - -
- -
- -
- -
- -
    return chains[_seed % 3];
- -
52 - - - - - -
  }
- -
53 - - - - - -

-                            
-                        
54 - -
- -
- - - -
  function _getRandomRequest(uint256 _seed) internal view returns (bytes32) {
- -
55 - -
- -
- - - -
    if (_ghost_requests.length == 0) return bytes32(0);
- -
56 - - - - - -
    return _ghost_requests[_seed % _ghost_requests.length];
- -
57 - - - - - -
  }
- -
58 - - - - - -

-                            
-                        
59 - - - - - -
  function _getRandomActiveResponse(bytes32 _requestId) internal view returns (IOracle.Response memory) {
- -
60 - - - - - -
    bytes32 responseId = _ghost_activeResponses[_requestId];
- -
61 - - - - - -
    return _ghost_responseData[responseId];
- -
62 - - - - - -
  }
- -
63 - - - - - -

-                            
-                        
64 - - - - - -
  function _getRandomDispute(bytes32 _requestId, uint256 _seed) internal view returns (IOracle.Dispute memory) {
- -
65 - - - - - -
    bytes32[] storage disputes = _ghost_disputes[_requestId];
- -
66 - - - - - -
    if (disputes.length == 0) {
- -
67 - - - - - -
      return IOracle.Dispute(address(0), address(0), bytes32(0), 0);
- -
68 - - - - - -
    }
- -
69 - - - - - -
    bytes32 disputeId = disputes[_seed % disputes.length];
- -
70 - - - - - -
    return _ghost_disputeData[disputeId];
- -
71 - - - - - -
  }
- -
72 - - - - - -

-                            
-                        
73 - - - - - -
  // Events to track state changes
- -
74 - - - - - -
  event RequestCreated(bytes32 indexed requestId, uint256 epoch, string chainId);
- -
75 - - - - - -
  event ResponseProposed(bytes32 indexed requestId, bytes32 indexed responseId);
- -
76 - - - - - -
  event DisputeCreated(bytes32 indexed requestId, bytes32 indexed responseId, bytes32 indexed disputeId);
- -
77 - - - - - -
  event ResponseFinalized(bytes32 indexed requestId, bytes32 indexed responseId);
- -
78 - - - - - -
  event DisputeResolved(bytes32 indexed disputeId, IOracle.DisputeStatus status);
- -
79 - - - - - -
}
- -
80 - - - - - -

-                            
-                        
-
-
- - - - - - - - - - -
-
-
- - - - - - -
Lines covered: 7 / 8 (87.5%)
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
1 - - - - - -
// SPDX-License-Identifier: MIT
- -
2 - - - - - -
pragma solidity 0.8.26;
- -
3 - - - - - -

-                            
-                        
4 - - - - - -
import {BaseHandler} from './BaseHandler.t.sol';
- -
5 - - - - - -

-                            
-                        
6 - - - - - -
contract HandlerArbitrable is BaseHandler {
- -
7 - - - - - -
  function handleValidateArbitrator(uint256 _actorSeed) external {
- -
8 - - - -
- -
- -
    address caller = _pickActor(_actorSeed);
- -
9 - - - -
- -
- -
    arbitrable.validateArbitrator(caller);
- -
10 - - - - - -
  }
- -
11 - - - - - -

-                            
-                        
12 - - - - - -
  function handleSetArbitrator(uint256 _actorSeed) external {
- -
13 - -
- -
- - - -
    address newArbitrator = _pickActor(_actorSeed);
- -
14 - -
- -
- - - -
    arbitrable.setArbitrator(newArbitrator);
- -
15 - - - - - -
  }
- -
16 - - - - - -

-                            
-                        
17 - - - - - -
  function handleSetPendingCouncil(uint256 _actorSeed) external {
- -
18 - -
- -
- - - -
    address pendingCouncil = _pickActor(_actorSeed);
- -
19 - -
- -
- - - -
    arbitrable.setPendingCouncil(pendingCouncil);
- -
20 - - - - - -
  }
- -
21 - - - - - -

-                            
-                        
22 - - - - - -
  function handleConfirmCouncil() external {
- -
23 - - - -
- -
- -
    arbitrable.confirmCouncil();
- -
24 - - - - - -
  }
- -
25 - - - - - -
}
- -
26 - - - - - -

-                            
-                        
-
-
- - - - - - - - - - -
-
-
- - - - - - -
Lines covered: 10 / 49 (20.4%)
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
1 - - - - - -
// SPDX-License-Identifier: MIT
- -
2 - - - - - -
pragma solidity 0.8.26;
- -
3 - - - - - -

-                            
-                        
4 - - - - - -
import {BaseHandler, IOracle} from './BaseHandler.t.sol';
- -
5 - - - - - -

-                            
-                        
6 - - - - - -
contract HandlerBondEscalationModule is BaseHandler {
- -
7 - - - - - -
  function handleDisputeResponseBondEscalationModule(uint256 _requestSeed, uint256 _actorSeed) external {
- -
8 - -
- -
- - - -
    bytes32 requestId = _getRandomRequest(_requestSeed);
- -
9 - -
- -
- - - -
    if (requestId == bytes32(0) || !_ghost_validRequests[requestId]) return;
- -
10 - - - - - -

-                            
-                        
11 - - - - - -
    bytes32 responseId = _ghost_activeResponses[requestId];
- -
12 - - - - - -
    if (responseId == bytes32(0)) return;
- -
13 - - - - - -

-                            
-                        
14 - - - - - -
    IOracle.Response memory response = _ghost_responseData[responseId];
- -
15 - - - - - -
    if (_ghost_finalizedResponses[responseId]) return;
- -
16 - - - - - -

-                            
-                        
17 - - - - - -
    // Create dispute data
- -
18 - - - - - -
    address disputer = _pickActor(_actorSeed);
- -
19 - - - - - -
    uint256 bond = _boundAmount(1e18);
- -
20 - - - - - -

-                            
-                        
21 - - - - - -
    IOracle.Dispute memory dispute =
- -
22 - - - - - -
      IOracle.Dispute({disputer: disputer, proposer: msg.sender, responseId: responseId, requestId: requestId});
- -
23 - - - - - -

-                            
-                        
24 - - - - - -
    // Submit dispute
- -
25 - - - - - -
    bondEscalationModule.disputeResponse(_ghost_requestData[requestId], response, dispute);
- -
26 - - - - - -

-                            
-                        
27 - - - - - -
    // Track dispute
- -
28 - - - - - -
    bytes32 disputeId = keccak256(abi.encode(dispute));
- -
29 - - - - - -
    _ghost_disputes[requestId].push(disputeId);
- -
30 - - - - - -
    _ghost_disputeData[disputeId] = dispute;
- -
31 - - - - - -
    _ghost_bonds[disputer][requestId] = bond;
- -
32 - - - - - -
    _ghost_disputeStatuses[disputeId] = IOracle.DisputeStatus.Escalated;
- -
33 - - - - - -

-                            
-                        
34 - - - - - -
    emit DisputeCreated(requestId, responseId, disputeId);
- -
35 - - - - - -
  }
- -
36 - - - - - -

-                            
-                        
37 - - - - - -
  function handleOnDisputeStatusChange(uint256 _requestSeed, uint256 _disputeIndex) external {
- -
38 - -
- -
- - - -
    bytes32 requestId = _getRandomRequest(_requestSeed);
- -
39 - -
- -
- - - -
    if (requestId == bytes32(0)) return;
- -
40 - - - - - -

-                            
-                        
41 - - - - - -
    IOracle.Dispute memory dispute = _getRandomDispute(requestId, _disputeIndex);
- -
42 - - - - - -
    if (dispute.requestId == bytes32(0)) return;
- -
43 - - - - - -

-                            
-                        
44 - - - - - -
    bytes32 disputeId = keccak256(abi.encode(dispute));
- -
45 - - - - - -
    bondEscalationModule.onDisputeStatusChange(
- -
46 - - - - - -
      disputeId, _ghost_requestData[requestId], _ghost_responseData[dispute.responseId], dispute
- -
47 - - - - - -
    );
- -
48 - - - - - -
  }
- -
49 - - - - - -

-                            
-                        
50 - - - - - -
  function handlePledgeForDispute(uint256 _requestSeed, uint256 _disputeIndex, uint256 _actorSeed) external {
- -
51 - -
- -
- - - -
    bytes32 requestId = _getRandomRequest(_requestSeed);
- -
52 - -
- -
- - - -
    if (requestId == bytes32(0)) return;
- -
53 - - - - - -

-                            
-                        
54 - - - - - -
    IOracle.Dispute memory dispute = _getRandomDispute(requestId, _disputeIndex);
- -
55 - - - - - -
    if (dispute.requestId == bytes32(0)) return;
- -
56 - - - - - -

-                            
-                        
57 - - - - - -
    if (_ghost_disputeStatuses[keccak256(abi.encode(dispute))] != IOracle.DisputeStatus.Escalated) return;
- -
58 - - - - - -

-                            
-                        
59 - - - - - -
    address pledger = _pickActor(_actorSeed);
- -
60 - - - - - -
    bondEscalationModule.pledgeForDispute(_ghost_requestData[requestId], dispute);
- -
61 - - - - - -

-                            
-                        
62 - - - - - -
    bytes32 disputeId = keccak256(abi.encode(dispute));
- -
63 - - - - - -
    _ghost_pledgesFor[pledger][disputeId] += _boundAmount(1e18);
- -
64 - - - - - -
  }
- -
65 - - - - - -

-                            
-                        
66 - - - - - -
  function handlePledgeAgainstDispute(uint256 _requestSeed, uint256 _disputeIndex, uint256 _actorSeed) external {
- -
67 - -
- -
- - - -
    bytes32 requestId = _getRandomRequest(_requestSeed);
- -
68 - -
- -
- - - -
    if (requestId == bytes32(0)) return;
- -
69 - - - - - -

-                            
-                        
70 - - - - - -
    IOracle.Dispute memory dispute = _getRandomDispute(requestId, _disputeIndex);
- -
71 - - - - - -
    if (dispute.requestId == bytes32(0)) return;
- -
72 - - - - - -

-                            
-                        
73 - - - - - -
    if (_ghost_disputeStatuses[keccak256(abi.encode(dispute))] != IOracle.DisputeStatus.Escalated) return;
- -
74 - - - - - -

-                            
-                        
75 - - - - - -
    address pledger = _pickActor(_actorSeed);
- -
76 - - - - - -
    bondEscalationModule.pledgeAgainstDispute(_ghost_requestData[requestId], dispute);
- -
77 - - - - - -

-                            
-                        
78 - - - - - -
    bytes32 disputeId = keccak256(abi.encode(dispute));
- -
79 - - - - - -
    _ghost_pledgesAgainst[pledger][disputeId] += _boundAmount(1e18);
- -
80 - - - - - -
  }
- -
81 - - - - - -

-                            
-                        
82 - - - - - -
  function handleSettleBondEscalation(uint256 _requestSeed, uint256 _disputeIndex) external {
- -
83 - -
- -
- - - -
    bytes32 requestId = _getRandomRequest(_requestSeed);
- -
84 - -
- -
- - - -
    if (requestId == bytes32(0)) return;
- -
85 - - - - - -

-                            
-                        
86 - - - - - -
    IOracle.Dispute memory dispute = _getRandomDispute(requestId, _disputeIndex);
- -
87 - - - - - -
    if (dispute.requestId == bytes32(0)) return;
- -
88 - - - - - -

-                            
-                        
89 - - - - - -
    IOracle.Response memory response = _ghost_responseData[dispute.responseId];
- -
90 - - - - - -
    bondEscalationModule.settleBondEscalation(_ghost_requestData[requestId], response, dispute);
- -
91 - - - - - -
  }
- -
92 - - - - - -
}
- -
93 - - - - - -

-                            
-                        
-
-
- - - - - - - - - - -
-
-
- - - - - - -
Lines covered: 6 / 28 (21.4%)
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
1 - - - - - -
// SPDX-License-Identifier: MIT
- -
2 - - - - - -
pragma solidity 0.8.26;
- -
3 - - - - - -

-                            
-                        
4 - - - - - -
import {BaseHandler, IOracle} from './BaseHandler.t.sol';
- -
5 - - - - - -

-                            
-                        
6 - - - - - -
contract HandlerBondedResponseModule is BaseHandler {
- -
7 - - - - - -
  function handlePropose(uint256 _requestSeed, uint256 _blockNumber, uint256 _actorSeed) external {
- -
8 - -
- -
- - - -
    bytes32 requestId = _getRandomRequest(_requestSeed);
- -
9 - -
- -
- - - -
    if (requestId == bytes32(0) || !_ghost_validRequests[requestId]) return;
- -
10 - - - - - -
    if (_ghost_activeResponses[requestId] != bytes32(0)) return; // Only one active response at a time
- -
11 - - - - - -

-                            
-                        
12 - - - - - -
    // Create response data
- -
13 - - - - - -
    address proposer = _pickActor(_actorSeed);
- -
14 - - - - - -
    _blockNumber = _boundBlockNumber(_blockNumber);
- -
15 - - - - - -

-                            
-                        
16 - - - - - -
    IOracle.Request memory request = _ghost_requestData[requestId];
- -
17 - - - - - -
    IOracle.Response memory response =
- -
18 - - - - - -
      IOracle.Response({requestId: requestId, response: abi.encode(_blockNumber), proposer: proposer});
- -
19 - - - - - -

-                            
-                        
20 - - - - - -
    // Submit response
- -
21 - - - - - -
    bondedResponseModule.propose(request, response, proposer);
- -
22 - - - - - -

-                            
-                        
23 - - - - - -
    // Track response
- -
24 - - - - - -
    bytes32 responseId = keccak256(abi.encode(response));
- -
25 - - - - - -
    _ghost_activeResponses[requestId] = responseId;
- -
26 - - - - - -
    _ghost_responseData[responseId] = response;
- -
27 - - - - - -

-                            
-                        
28 - - - - - -
    emit ResponseProposed(requestId, responseId);
- -
29 - - - - - -
  }
- -
30 - - - - - -

-                            
-                        
31 - - - - - -
  function handleFinalizeRequestResponseModule(uint256 _requestSeed) external {
- -
32 - -
- -
- - - -
    bytes32 requestId = _getRandomRequest(_requestSeed);
- -
33 - -
- -
- - - -
    if (requestId == bytes32(0) || !_ghost_validRequests[requestId]) return;
- -
34 - - - - - -

-                            
-                        
35 - - - - - -
    bytes32 responseId = _ghost_activeResponses[requestId];
- -
36 - - - - - -
    if (responseId == bytes32(0)) return;
- -
37 - - - - - -

-                            
-                        
38 - - - - - -
    IOracle.Response memory response = _ghost_responseData[responseId];
- -
39 - - - - - -
    if (_ghost_finalizedResponses[responseId]) return;
- -
40 - - - - - -

-                            
-                        
41 - - - - - -
    bondedResponseModule.finalizeRequest(_ghost_requestData[requestId], response, response.proposer);
- -
42 - - - - - -

-                            
-                        
43 - - - - - -
    _ghost_finalizedResponses[responseId] = true;
- -
44 - - - - - -
    emit ResponseFinalized(requestId, responseId);
- -
45 - - - - - -
  }
- -
46 - - - - - -

-                            
-                        
47 - - - - - -
  function handleReleaseUnutilizedResponse(uint256 _requestSeed) external {
- -
48 - -
- -
- - - -
    bytes32 requestId = _getRandomRequest(_requestSeed);
- -
49 - -
- -
- - - -
    if (requestId == bytes32(0)) return;
- -
50 - - - - - -

-                            
-                        
51 - - - - - -
    IOracle.Response memory response = _getRandomActiveResponse(requestId);
- -
52 - - - - - -
    if (response.requestId == bytes32(0)) return;
- -
53 - - - - - -

-                            
-                        
54 - - - - - -
    bondedResponseModule.releaseUnutilizedResponse(_ghost_requestData[requestId], response);
- -
55 - - - - - -
  }
- -
56 - - - - - -
}
- -
57 - - - - - -

-                            
-                        
-
-
- - - - - - - - - - -
-
-
- - - - - - -
Lines covered: 4 / 17 (23.5%)
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
1 - - - - - -
// SPDX-License-Identifier: MIT
- -
2 - - - - - -
pragma solidity 0.8.26;
- -
3 - - - - - -

-                            
-                        
4 - - - - - -
import {BaseHandler, IOracle} from './BaseHandler.t.sol';
- -
5 - - - - - -

-                            
-                        
6 - - - - - -
contract HandlerCouncilArbitrator is BaseHandler {
- -
7 - - - - - -
  function handleResolve(uint256 _requestSeed, uint256 _disputeIndex) external {
- -
8 - -
- -
- - - -
    bytes32 requestId = _getRandomRequest(_requestSeed);
- -
9 - -
- -
- - - -
    if (requestId == bytes32(0)) return;
- -
10 - - - - - -

-                            
-                        
11 - - - - - -
    IOracle.Dispute memory dispute = _getRandomDispute(requestId, _disputeIndex);
- -
12 - - - - - -
    if (dispute.requestId == bytes32(0)) return;
- -
13 - - - - - -

-                            
-                        
14 - - - - - -
    IOracle.Response memory response = _ghost_responseData[dispute.responseId];
- -
15 - - - - - -
    councilArbitrator.resolve(_ghost_requestData[requestId], response, dispute);
- -
16 - - - - - -
  }
- -
17 - - - - - -

-                            
-                        
18 - - - - - -
  function handleArbitrateDispute(uint256 _requestSeed, uint256 _disputeIndex, uint256 _statusSeed) external {
- -
19 - -
- -
- - - -
    bytes32 requestId = _getRandomRequest(_requestSeed);
- -
20 - -
- -
- - - -
    if (requestId == bytes32(0)) return;
- -
21 - - - - - -

-                            
-                        
22 - - - - - -
    IOracle.Dispute memory dispute = _getRandomDispute(requestId, _disputeIndex);
- -
23 - - - - - -
    if (dispute.requestId == bytes32(0)) return;
- -
24 - - - - - -

-                            
-                        
25 - - - - - -
    bytes32 disputeId = keccak256(abi.encode(dispute));
- -
26 - - - - - -

-                            
-                        
27 - - - - - -
    // Generate a valid dispute status (NoResolution, Won, Lost)
- -
28 - - - - - -
    IOracle.DisputeStatus status = IOracle.DisputeStatus(
- -
29 - - - - - -
      bound(_statusSeed, uint8(IOracle.DisputeStatus.NoResolution), uint8(IOracle.DisputeStatus.Lost))
- -
30 - - - - - -
    );
- -
31 - - - - - -

-                            
-                        
32 - - - - - -
    councilArbitrator.arbitrateDispute(disputeId, status);
- -
33 - - - - - -
    _ghost_disputeStatuses[disputeId] = status;
- -
34 - - - - - -

-                            
-                        
35 - - - - - -
    emit DisputeResolved(disputeId, status);
- -
36 - - - - - -
  }
- -
37 - - - - - -
}
- -
38 - - - - - -

-                            
-                        
-
-
- - - - - - - - - - -
-
-
- - - - - - -
Lines covered: 7 / 19 (36.8%)
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
1 - - - - - -
// SPDX-License-Identifier: MIT
- -
2 - - - - - -
pragma solidity 0.8.26;
- -
3 - - - - - -

-                            
-                        
4 - - - - - -
import {BaseHandler, IEBORequestCreator, IOracle} from './BaseHandler.t.sol';
- -
5 - - - - - -

-                            
-                        
6 - - - - - -
contract HandlerEBOFinalityModule is BaseHandler {
- -
7 - - - - - -
  function handleFinalizeRequestFinalityModule(uint256 _requestSeed) external {
- -
8 - -
- -
- - - -
    bytes32 requestId = _getRandomRequest(_requestSeed);
- -
9 - -
- -
- - - -
    if (requestId == bytes32(0) || !_ghost_validRequests[requestId]) return;
- -
10 - - - - - -

-                            
-                        
11 - - - - - -
    bytes32 responseId = _ghost_activeResponses[requestId];
- -
12 - - - - - -
    if (responseId == bytes32(0)) return;
- -
13 - - - - - -

-                            
-                        
14 - - - - - -
    IOracle.Response memory response = _ghost_responseData[responseId];
- -
15 - - - - - -
    eboFinalityModule.finalizeRequest(_ghost_requestData[requestId], response, response.proposer);
- -
16 - - - - - -
  }
- -
17 - - - - - -

-                            
-                        
18 - - - - - -
  function handleAmendEpoch(
- -
19 - - - - - -
    uint256 _epoch,
- -
20 - - - - - -
    uint256[] calldata _chainIdSeeds,
- -
21 - - - - - -
    uint256[] calldata _blockNumbers
- -
22 - - - - - -
  ) external {
- -
23 - -
- -
- - - -
    if (_chainIdSeeds.length != _blockNumbers.length) return;
- -
24 - - - - - -

-                            
-                        
25 - - - - - -
    _epoch = _boundEpoch(_epoch);
- -
26 - - - - - -
    string[] memory chainIds = new string[](_chainIdSeeds.length);
- -
27 - - - - - -
    uint256[] memory blockNums = new uint256[](_blockNumbers.length);
- -
28 - - - - - -

-                            
-                        
29 - - - - - -
    for (uint256 i = 0; i < _chainIdSeeds.length; i++) {
- -
30 - - - - - -
      chainIds[i] = _generateChainId(_chainIdSeeds[i]);
- -
31 - - - - - -
      blockNums[i] = _boundBlockNumber(_blockNumbers[i]);
- -
32 - - - - - -
    }
- -
33 - - - - - -

-                            
-                        
34 - - - - - -
    eboFinalityModule.amendEpoch(_epoch, chainIds, blockNums);
- -
35 - - - - - -
  }
- -
36 - - - - - -

-                            
-                        
37 - - - - - -
  function handleAddEBORequestCreatorFinalityModule(uint256 _actorSeed) external {
- -
38 - -
- -
- - - -
    address creator = _pickActor(_actorSeed);
- -
39 - -
- -
- - - -
    eboFinalityModule.addEBORequestCreator(IEBORequestCreator(creator));
- -
40 - - - - - -
  }
- -
41 - - - - - -

-                            
-                        
42 - - - - - -
  function handleRemoveEBORequestCreatorFinalityModule(uint256 _actorSeed) external {
- -
43 - -
- -
- -
- -
- -
    address creator = _pickActor(_actorSeed);
- -
44 - -
- -
- -
- -
- -
    eboFinalityModule.removeEBORequestCreator(IEBORequestCreator(creator));
- -
45 - - - - - -
  }
- -
46 - - - - - -
}
- -
47 - - - - - -

-                            
-                        
-
-
- - - - - - - - - - -
-
-
- - - - - - -
Lines covered: 20 / 28 (71.4%)
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
1 - - - - - -
// SPDX-License-Identifier: MIT
- -
2 - - - - - -
pragma solidity 0.8.26;
- -
3 - - - - - -

-                            
-                        
4 - - - - - -
import {
- -
5 - - - - - -
  BaseHandler,
- -
6 - - - - - -
  IArbitratorModule,
- -
7 - - - - - -
  IBondEscalationModule,
- -
8 - - - - - -
  IBondedResponseModule,
- -
9 - - - - - -
  IEBORequestModule,
- -
10 - - - - - -
  IEpochManager,
- -
11 - - - - - -
  IOracle
- -
12 - - - - - -
} from './BaseHandler.t.sol';
- -
13 - - - - - -

-                            
-                        
14 - - - - - -
contract HandlerEBORequestCreator is BaseHandler {
- -
15 - - - - - -
  function handleCreateRequest(uint256 _epoch, uint256 _chainIdSeed) external {
- -
16 - - - -
- -
- -
    _epoch = _boundEpoch(_epoch);
- -
17 - - - -
- -
- -
    string memory chainId = _generateChainId(_chainIdSeed);
- -
18 - - - - - -

-                            
-                        
19 - - - - - -
    // Prevent duplicate chainId for same epoch
- -
20 - - - -
- -
- -
    if (_ghost_epochChainIds[_epoch][chainId]) return;
- -
21 - - - - - -

-                            
-                        
22 - - - - - -
    // Create request via EBORequestCreator
- -
23 - - - -
- -
- -
    eboRequestCreator.createRequest(_epoch, chainId);
- -
24 - - - - - -

-                            
-                        
25 - - - - - -
    // Get current request data
- -
26 - - - - - -
    IOracle.Request memory requestData = eboRequestCreator.getRequestData();
- -
27 - - - - - -

-                            
-                        
28 - - - - - -
    // Calculate request ID using same logic as Oracle
- -
29 - - - - - -
    bytes32 requestId = keccak256(abi.encode(requestData));
- -
30 - - - - - -

-                            
-                        
31 - - - - - -
    // Track the request
- -
32 - - - - - -
    _ghost_requests.push(requestId);
- -
33 - - - - - -
    _ghost_requestData[requestId] = requestData;
- -
34 - - - - - -
    _ghost_validRequests[requestId] = true;
- -
35 - - - - - -
    _ghost_epochChainIds[_epoch][chainId] = true;
- -
36 - - - - - -

-                            
-                        
37 - - - - - -
    emit RequestCreated(requestId, _epoch, chainId);
- -
38 - - - - - -
  }
- -
39 - - - - - -

-                            
-                        
40 - - - - - -
  function handleAddChain(uint256 _chainIdSeed) external {
- -
41 - - - -
- -
- -
    string memory chainId = _generateChainId(_chainIdSeed);
- -
42 - - - -
- -
- -
    eboRequestCreator.addChain(chainId);
- -
43 - - - - - -
  }
- -
44 - - - - - -

-                            
-                        
45 - - - - - -
  function handleRemoveChain(uint256 _chainIdSeed) external {
- -
46 - -
- -
- -
- -
- -
    string memory chainId = _generateChainId(_chainIdSeed);
- -
47 - -
- -
- -
- -
- -
    eboRequestCreator.removeChain(chainId);
- -
48 - - - - - -
  }
- -
49 - - - - - -

-                            
-                        
50 - - - - - -
  function handleSetRequestModuleData(
- -
51 - - - - - -
    uint256 _actorSeed,
- -
52 - - - - - -
    IEBORequestModule.RequestParameters calldata _params
- -
53 - - - - - -
  ) external {
- -
54 - -
- -
- -
- -
- -
    address module = _pickActor(_actorSeed);
- -
55 - -
- -
- -
- -
- -
    eboRequestCreator.setRequestModuleData(module, _params);
- -
56 - - - - - -
  }
- -
57 - - - - - -

-                            
-                        
58 - - - - - -
  function handleSetResponseModuleData(
- -
59 - - - - - -
    uint256 _actorSeed,
- -
60 - - - - - -
    IBondedResponseModule.RequestParameters calldata _params
- -
61 - - - - - -
  ) external {
- -
62 - -
- -
- -
- -
- -
    address module = _pickActor(_actorSeed);
- -
63 - -
- -
- -
- -
- -
    eboRequestCreator.setResponseModuleData(module, _params);
- -
64 - - - - - -
  }
- -
65 - - - - - -

-                            
-                        
66 - - - - - -
  function handleSetDisputeModuleData(
- -
67 - - - - - -
    uint256 _actorSeed,
- -
68 - - - - - -
    IBondEscalationModule.RequestParameters calldata _params
- -
69 - - - - - -
  ) external {
- -
70 - -
- -
- -
- -
- -
    address module = _pickActor(_actorSeed);
- -
71 - -
- -
- -
- -
- -
    eboRequestCreator.setDisputeModuleData(module, _params);
- -
72 - - - - - -
  }
- -
73 - - - - - -

-                            
-                        
74 - - - - - -
  function handleSetResolutionModuleData(
- -
75 - - - - - -
    uint256 _actorSeed,
- -
76 - - - - - -
    IArbitratorModule.RequestParameters calldata _params
- -
77 - - - - - -
  ) external {
- -
78 - -
- -
- -
- -
- -
    address module = _pickActor(_actorSeed);
- -
79 - -
- -
- -
- -
- -
    eboRequestCreator.setResolutionModuleData(module, _params);
- -
80 - - - - - -
  }
- -
81 - - - - - -

-                            
-                        
82 - - - - - -
  function handleSetFinalityModuleData(uint256 _actorSeed) external {
- -
83 - -
- -
- -
- -
- -
    address module = _pickActor(_actorSeed);
- -
84 - -
- -
- -
- -
- -
    eboRequestCreator.setFinalityModuleData(module);
- -
85 - - - - - -
  }
- -
86 - - - - - -

-                            
-                        
87 - - - - - -
  function handleSetEpochManager(uint256 _actorSeed) external {
- -
88 - -
- -
- -
- -
- -
    address manager = _pickActor(_actorSeed);
- -
89 - -
- -
- -
- -
- -
    eboRequestCreator.setEpochManager(IEpochManager(manager));
- -
90 - - - - - -
  }
- -
91 - - - - - -
}
- -
92 - - - - - -

-                            
-                        
-
-
- - - - - - - - - - -
-
-
- - - - - - -
Lines covered: 4 / 5 (80.0%)
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
1 - - - - - -
// SPDX-License-Identifier: MIT
- -
2 - - - - - -
pragma solidity 0.8.26;
- -
3 - - - - - -

-                            
-                        
4 - - - - - -
import {BaseHandler, IEBORequestCreator} from './BaseHandler.t.sol';
- -
5 - - - - - -

-                            
-                        
6 - - - - - -
contract HandlerEBORequestModule is BaseHandler {
- -
7 - - - - - -
  function handleAddEBORequestCreatorRequestModule(uint256 _actorSeed) external {
- -
8 - -
- -
- -
- -
- -
    address creator = _pickActor(_actorSeed);
- -
9 - -
- -
- -
- -
- -
    eboRequestModule.addEBORequestCreator(IEBORequestCreator(creator));
- -
10 - - - - - -
  }
- -
11 - - - - - -

-                            
-                        
12 - - - - - -
  function handleRemoveEBORequestCreatorRequestModule(uint256 _actorSeed) external {
- -
13 - -
- -
- -
- -
- -
    address creator = _pickActor(_actorSeed);
- -
14 - -
- -
- -
- -
- -
    eboRequestModule.removeEBORequestCreator(IEBORequestCreator(creator));
- -
15 - - - - - -
  }
- -
16 - - - - - -
}
- -
17 - - - - - -

-                            
-                        
-
-
- - - - - - - - - - -
-
-
- - - - - - -
Lines covered: 26 / 58 (44.8%)
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
1 - - - - - -
// SPDX-License-Identifier: MIT
- -
2 - - - - - -
pragma solidity 0.8.26;
- -
3 - - - - - -

-                            
-                        
4 - - - - - -
import {BaseHandler, IOracle} from './BaseHandler.t.sol';
- -
5 - - - - - -

-                            
-                        
6 - - - - - -
contract HandlerHorizonAccountingExtension is BaseHandler {
- -
7 - - - - - -
  function handleApproveModule(uint256 _actorSeed) external {
- -
8 - -
- -
- - - -
    address module = _pickActor(_actorSeed);
- -
9 - -
- -
- - - -
    horizonAccountingExtension.approveModule(module);
- -
10 - - - - - -
  }
- -
11 - - - - - -

-                            
-                        
12 - - - - - -
  function handleRevokeModule(uint256 _actorSeed) external {
- -
13 - -
- -
- - - -
    address module = _pickActor(_actorSeed);
- -
14 - -
- -
- - - -
    horizonAccountingExtension.revokeModule(module);
- -
15 - - - - - -
  }
- -
16 - - - - - -

-                            
-                        
17 - - - - - -
  function handlePledge(uint256 _pledgerSeed, uint256 _requestSeed, uint256 _disputeIndex, uint256 _amount) external {
- -
18 - -
- -
- - - -
    address pledger = _pickActor(_pledgerSeed);
- -
19 - -
- -
- - - -
    bytes32 requestId = _getRandomRequest(_requestSeed);
- -
20 - -
- -
- - - -
    if (requestId == bytes32(0)) return;
- -
21 - - - - - -

-                            
-                        
22 - - - - - -
    IOracle.Dispute memory dispute = _getRandomDispute(requestId, _disputeIndex);
- -
23 - - - - - -
    if (dispute.requestId == bytes32(0)) return;
- -
24 - - - - - -

-                            
-                        
25 - - - - - -
    _amount = _boundAmount(_amount);
- -
26 - - - - - -
    horizonAccountingExtension.pledge(pledger, _ghost_requestData[requestId], dispute, GRT, _amount);
- -
27 - - - - - -
  }
- -
28 - - - - - -

-                            
-                        
29 - - - - - -
  function handleOnSettleBondEscalation(
- -
30 - - - - - -
    uint256 _requestSeed,
- -
31 - - - - - -
    uint256 _disputeIndex,
- -
32 - - - - - -
    uint256 _amountPerPledger,
- -
33 - - - - - -
    uint256 _winningPledgersLength
- -
34 - - - - - -
  ) external {
- -
35 - -
- -
- - - -
    bytes32 requestId = _getRandomRequest(_requestSeed);
- -
36 - -
- -
- - - -
    if (requestId == bytes32(0)) return;
- -
37 - - - - - -

-                            
-                        
38 - - - - - -
    IOracle.Dispute memory dispute = _getRandomDispute(requestId, _disputeIndex);
- -
39 - - - - - -
    if (dispute.requestId == bytes32(0)) return;
- -
40 - - - - - -

-                            
-                        
41 - - - - - -
    _amountPerPledger = _boundAmount(_amountPerPledger);
- -
42 - - - - - -
    horizonAccountingExtension.onSettleBondEscalation(
- -
43 - - - - - -
      _ghost_requestData[requestId], dispute, GRT, _amountPerPledger, _winningPledgersLength
- -
44 - - - - - -
    );
- -
45 - - - - - -
  }
- -
46 - - - - - -

-                            
-                        
47 - - - - - -
  function handleClaimEscalationReward(uint256 _requestSeed, uint256 _disputeIndex, uint256 _actorSeed) external {
- -
48 - -
- -
- - - -
    bytes32 requestId = _getRandomRequest(_requestSeed);
- -
49 - -
- -
- - - -
    if (requestId == bytes32(0)) return;
- -
50 - - - - - -

-                            
-                        
51 - - - - - -
    IOracle.Dispute memory dispute = _getRandomDispute(requestId, _disputeIndex);
- -
52 - - - - - -
    if (dispute.requestId == bytes32(0)) return;
- -
53 - - - - - -

-                            
-                        
54 - - - - - -
    address pledger = _pickActor(_actorSeed);
- -
55 - - - - - -
    bytes32 disputeId = keccak256(abi.encode(dispute));
- -
56 - - - - - -

-                            
-                        
57 - - - - - -
    horizonAccountingExtension.claimEscalationReward(disputeId, pledger);
- -
58 - - - - - -
  }
- -
59 - - - - - -

-                            
-                        
60 - - - - - -
  function handlePay(uint256 _requestSeed, uint256 _payerSeed, uint256 _receiverSeed, uint256 _amount) external {
- -
61 - -
- -
- - - -
    bytes32 requestId = _getRandomRequest(_requestSeed);
- -
62 - -
- -
- - - -
    if (requestId == bytes32(0)) return;
- -
63 - - - - - -

-                            
-                        
64 - - - - - -
    address payer = _pickActor(_payerSeed);
- -
65 - - - - - -
    address receiver = _pickActor(_receiverSeed);
- -
66 - - - - - -
    _amount = _boundAmount(_amount);
- -
67 - - - - - -

-                            
-                        
68 - - - - - -
    horizonAccountingExtension.pay(requestId, payer, receiver, GRT, _amount);
- -
69 - - - - - -
  }
- -
70 - - - - - -

-                            
-                        
71 - - - - - -
  function handleBond(uint256 _bonderSeed, uint256 _requestSeed, uint256 _amount) external {
- -
72 - -
- -
- - - -
    address bonder = _pickActor(_bonderSeed);
- -
73 - -
- -
- - - -
    bytes32 requestId = _getRandomRequest(_requestSeed);
- -
74 - -
- -
- - - -
    if (requestId == bytes32(0)) return;
- -
75 - - - - - -

-                            
-                        
76 - - - - - -
    _amount = _boundAmount(_amount);
- -
77 - - - - - -
    horizonAccountingExtension.bond(bonder, requestId, GRT, _amount);
- -
78 - - - - - -
  }
- -
79 - - - - - -

-                            
-                        
80 - - - - - -
  function handleBondWithSender(
- -
81 - - - - - -
    uint256 _bonderSeed,
- -
82 - - - - - -
    uint256 _requestSeed,
- -
83 - - - - - -
    uint256 _amount,
- -
84 - - - - - -
    uint256 _senderSeed
- -
85 - - - - - -
  ) external {
- -
86 - -
- -
- - - -
    address bonder = _pickActor(_bonderSeed);
- -
87 - -
- -
- - - -
    bytes32 requestId = _getRandomRequest(_requestSeed);
- -
88 - -
- -
- - - -
    if (requestId == bytes32(0)) return;
- -
89 - - - - - -

-                            
-                        
90 - - - - - -
    _amount = _boundAmount(_amount);
- -
91 - - - - - -
    address sender = _pickActor(_senderSeed);
- -
92 - - - - - -

-                            
-                        
93 - - - - - -
    horizonAccountingExtension.bond(bonder, requestId, GRT, _amount, sender);
- -
94 - - - - - -
  }
- -
95 - - - - - -

-                            
-                        
96 - - - - - -
  function handleRelease(uint256 _bonderSeed, uint256 _requestSeed, uint256 _amount) external {
- -
97 - -
- -
- - - -
    address bonder = _pickActor(_bonderSeed);
- -
98 - -
- -
- - - -
    bytes32 requestId = _getRandomRequest(_requestSeed);
- -
99 - -
- -
- - - -
    if (requestId == bytes32(0)) return;
- -
100 - - - - - -

-                            
-                        
101 - - - - - -
    _amount = _boundAmount(_amount);
- -
102 - - - - - -
    horizonAccountingExtension.release(bonder, requestId, GRT, _amount);
- -
103 - - - - - -
  }
- -
104 - - - - - -

-                            
-                        
105 - - - - - -
  function handleSlash(
- -
106 - - - - - -
    uint256 _requestSeed,
- -
107 - - - - - -
    uint256 _disputeIndex,
- -
108 - - - - - -
    uint256 _usersToSlash,
- -
109 - - - - - -
    uint256 _maxUsersToCheck
- -
110 - - - - - -
  ) external {
- -
111 - -
- -
- - - -
    bytes32 requestId = _getRandomRequest(_requestSeed);
- -
112 - -
- -
- - - -
    if (requestId == bytes32(0)) return;
- -
113 - - - - - -

-                            
-                        
114 - - - - - -
    IOracle.Dispute memory dispute = _getRandomDispute(requestId, _disputeIndex);
- -
115 - - - - - -
    if (dispute.requestId == bytes32(0)) return;
- -
116 - - - - - -

-                            
-                        
117 - - - - - -
    bytes32 disputeId = keccak256(abi.encode(dispute));
- -
118 - - - - - -
    _usersToSlash = bound(_usersToSlash, 1, 10);
- -
119 - - - - - -
    _maxUsersToCheck = bound(_maxUsersToCheck, _usersToSlash, 20);
- -
120 - - - - - -

-                            
-                        
121 - - - - - -
    horizonAccountingExtension.slash(disputeId, _usersToSlash, _maxUsersToCheck);
- -
122 - - - - - -
  }
- -
123 - - - - - -

-                            
-                        
124 - - - - - -
  function handleSetMaxUsersToCheck(uint256 _maxUsers) external {
- -
125 - -
- -
- -
- -
- -
    _maxUsers = bound(_maxUsers, 1, 100);
- -
126 - -
- -
- -
- -
- -
    horizonAccountingExtension.setMaxUsersToCheck(uint128(_maxUsers));
- -
127 - - - - - -
  }
- -
128 - - - - - -
}
- -
129 - - - - - -

-                            
-                        
-
-
- - - - - - - - - - -
-
-
- - - - - - -
Lines covered: 22 / 80 (27.5%)
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
1 - - - - - -
// SPDX-License-Identifier: MIT
- -
2 - - - - - -
pragma solidity 0.8.26;
- -
3 - - - - - -

-                            
-                        
4 - - - - - -
import {BaseHandler, IOracle} from './BaseHandler.t.sol';
- -
5 - - - - - -

-                            
-                        
6 - - - - - -
contract HandlerOracle is BaseHandler {
- -
7 - -
- -
- - - -
  function handleCreateRequest(uint256 _requestSeed, bytes32 _previousId) external returns (bytes32) {
- -
8 - -
- -
- - - -
    bytes32 requestId = _getRandomRequest(_requestSeed);
- -
9 - -
- -
- - - -
    if (requestId == bytes32(0)) return bytes32(0);
- -
10 - - - - - -

-                            
-                        
11 - - - - - -
    return oracle.createRequest(_ghost_requestData[requestId], _previousId);
- -
12 - - - - - -
  }
- -
13 - - - - - -

-                            
-                        
14 - - - - - -
  function handleCreateRequests(
- -
15 - - - - - -
    uint256[] calldata _requestSeeds,
- -
16 - - - - - -
    bytes32[] calldata _previousIds
- -
17 - -
- -
- - - -
  ) external returns (bytes32[] memory) {
- -
18 - -
- -
- - - -
    if (_requestSeeds.length != _previousIds.length) {
- -
19 - -
- -
- - - -
      return new bytes32[](0);
- -
20 - - - - - -
    }
- -
21 - - - - - -

-                            
-                        
22 - - - - - -
    IOracle.Request[] memory requests = new IOracle.Request[](_requestSeeds.length);
- -
23 - - - - - -
    for (uint256 i = 0; i < _requestSeeds.length; i++) {
- -
24 - - - - - -
      bytes32 requestId = _getRandomRequest(_requestSeeds[i]);
- -
25 - - - - - -
      if (requestId == bytes32(0)) return new bytes32[](0);
- -
26 - - - - - -
      requests[i] = _ghost_requestData[requestId];
- -
27 - - - - - -
    }
- -
28 - - - - - -

-                            
-                        
29 - - - - - -
    return oracle.createRequests(requests, _previousIds);
- -
30 - - - - - -
  }
- -
31 - - - - - -

-                            
-                        
32 - - - - - -
  function handleProposeResponse(
- -
33 - - - - - -
    uint256 _requestSeed,
- -
34 - - - - - -
    uint256 _blockNumber,
- -
35 - - - - - -
    uint256 _actorSeed
- -
36 - -
- -
- - - -
  ) external returns (bytes32) {
- -
37 - -
- -
- - - -
    bytes32 requestId = _getRandomRequest(_requestSeed);
- -
38 - -
- -
- - - -
    if (requestId == bytes32(0) || !_ghost_validRequests[requestId]) {
- -
39 - -
- -
- - - -
      return bytes32(0);
- -
40 - - - - - -
    }
- -
41 - - - - - -
    if (_ghost_activeResponses[requestId] != bytes32(0)) return bytes32(0);
- -
42 - - - - - -

-                            
-                        
43 - - - - - -
    address proposer = _pickActor(_actorSeed);
- -
44 - - - - - -
    _blockNumber = _boundBlockNumber(_blockNumber);
- -
45 - - - - - -

-                            
-                        
46 - - - - - -
    IOracle.Request memory request = _ghost_requestData[requestId];
- -
47 - - - - - -
    IOracle.Response memory response =
- -
48 - - - - - -
      IOracle.Response({requestId: requestId, response: abi.encode(_blockNumber), proposer: proposer});
- -
49 - - - - - -

-                            
-                        
50 - - - - - -
    bytes32 responseId = oracle.proposeResponse(request, response);
- -
51 - - - - - -

-                            
-                        
52 - - - - - -
    // Track response
- -
53 - - - - - -
    _ghost_activeResponses[requestId] = responseId;
- -
54 - - - - - -
    _ghost_responseData[responseId] = response;
- -
55 - - - - - -

-                            
-                        
56 - - - - - -
    emit ResponseProposed(requestId, responseId);
- -
57 - - - - - -

-                            
-                        
58 - - - - - -
    return responseId;
- -
59 - - - - - -
  }
- -
60 - - - - - -

-                            
-                        
61 - -
- -
- - - -
  function handleDisputeResponseOracle(uint256 _requestSeed, uint256 _actorSeed) external returns (bytes32) {
- -
62 - -
- -
- - - -
    bytes32 requestId = _getRandomRequest(_requestSeed);
- -
63 - -
- -
- - - -
    if (requestId == bytes32(0) || !_ghost_validRequests[requestId]) {
- -
64 - -
- -
- - - -
      return bytes32(0);
- -
65 - - - - - -
    }
- -
66 - - - - - -

-                            
-                        
67 - - - - - -
    bytes32 responseId = _ghost_activeResponses[requestId];
- -
68 - - - - - -
    if (responseId == bytes32(0)) return bytes32(0);
- -
69 - - - - - -

-                            
-                        
70 - - - - - -
    IOracle.Response memory response = _ghost_responseData[responseId];
- -
71 - - - - - -
    if (_ghost_finalizedResponses[responseId]) return bytes32(0);
- -
72 - - - - - -

-                            
-                        
73 - - - - - -
    address disputer = _pickActor(_actorSeed);
- -
74 - - - - - -
    uint256 bond = _boundAmount(1e18);
- -
75 - - - - - -

-                            
-                        
76 - - - - - -
    IOracle.Dispute memory dispute =
- -
77 - - - - - -
      IOracle.Dispute({disputer: disputer, proposer: response.proposer, requestId: requestId, responseId: responseId});
- -
78 - - - - - -

-                            
-                        
79 - - - - - -
    bytes32 disputeId = oracle.disputeResponse(_ghost_requestData[requestId], response, dispute);
- -
80 - - - - - -

-                            
-                        
81 - - - - - -
    // Track dispute
- -
82 - - - - - -
    _ghost_disputes[requestId].push(disputeId);
- -
83 - - - - - -
    _ghost_disputeData[disputeId] = dispute;
- -
84 - - - - - -
    _ghost_bonds[disputer][requestId] = bond;
- -
85 - - - - - -
    _ghost_disputeStatuses[disputeId] = IOracle.DisputeStatus.Escalated;
- -
86 - - - - - -

-                            
-                        
87 - - - - - -
    emit DisputeCreated(requestId, responseId, disputeId);
- -
88 - - - - - -

-                            
-                        
89 - - - - - -
    return disputeId;
- -
90 - - - - - -
  }
- -
91 - - - - - -

-                            
-                        
92 - - - - - -
  function handleEscalateDispute(uint256 _requestSeed, uint256 _disputeIndex) external {
- -
93 - -
- -
- - - -
    bytes32 requestId = _getRandomRequest(_requestSeed);
- -
94 - -
- -
- - - -
    if (requestId == bytes32(0)) return;
- -
95 - - - - - -

-                            
-                        
96 - - - - - -
    IOracle.Dispute memory dispute = _getRandomDispute(requestId, _disputeIndex);
- -
97 - - - - - -
    if (dispute.requestId == bytes32(0)) return;
- -
98 - - - - - -

-                            
-                        
99 - - - - - -
    if (_ghost_disputeStatuses[keccak256(abi.encode(dispute))] != IOracle.DisputeStatus.Escalated) return;
- -
100 - - - - - -

-                            
-                        
101 - - - - - -
    IOracle.Response memory response = _ghost_responseData[dispute.responseId];
- -
102 - - - - - -
    oracle.escalateDispute(_ghost_requestData[requestId], response, dispute);
- -
103 - - - - - -
  }
- -
104 - - - - - -

-                            
-                        
105 - - - - - -
  function handleResolveDispute(uint256 _requestSeed, uint256 _disputeIndex) external {
- -
106 - -
- -
- - - -
    bytes32 requestId = _getRandomRequest(_requestSeed);
- -
107 - -
- -
- - - -
    if (requestId == bytes32(0)) return;
- -
108 - - - - - -

-                            
-                        
109 - - - - - -
    IOracle.Dispute memory dispute = _getRandomDispute(requestId, _disputeIndex);
- -
110 - - - - - -
    if (dispute.requestId == bytes32(0)) return;
- -
111 - - - - - -

-                            
-                        
112 - - - - - -
    IOracle.Response memory response = _ghost_responseData[dispute.responseId];
- -
113 - - - - - -
    oracle.resolveDispute(_ghost_requestData[requestId], response, dispute);
- -
114 - - - - - -
  }
- -
115 - - - - - -

-                            
-                        
116 - - - - - -
  function handleUpdateDisputeStatus(uint256 _requestSeed, uint256 _disputeIndex, uint256 _statusSeed) external {
- -
117 - -
- -
- - - -
    bytes32 requestId = _getRandomRequest(_requestSeed);
- -
118 - -
- -
- - - -
    if (requestId == bytes32(0)) return;
- -
119 - - - - - -

-                            
-                        
120 - - - - - -
    IOracle.Dispute memory dispute = _getRandomDispute(requestId, _disputeIndex);
- -
121 - - - - - -
    if (dispute.requestId == bytes32(0)) return;
- -
122 - - - - - -

-                            
-                        
123 - - - - - -
    // Generate a valid dispute status (NoResolution, Won, Lost)
- -
124 - - - - - -
    IOracle.DisputeStatus status = IOracle.DisputeStatus(
- -
125 - - - - - -
      bound(_statusSeed, uint8(IOracle.DisputeStatus.NoResolution), uint8(IOracle.DisputeStatus.Lost))
- -
126 - - - - - -
    );
- -
127 - - - - - -

-                            
-                        
128 - - - - - -
    IOracle.Response memory response = _ghost_responseData[dispute.responseId];
- -
129 - - - - - -
    oracle.updateDisputeStatus(_ghost_requestData[requestId], response, dispute, status);
- -
130 - - - - - -

-                            
-                        
131 - - - - - -
    bytes32 disputeId = keccak256(abi.encode(dispute));
- -
132 - - - - - -
    _ghost_disputeStatuses[disputeId] = status;
- -
133 - - - - - -

-                            
-                        
134 - - - - - -
    emit DisputeResolved(disputeId, status);
- -
135 - - - - - -
  }
- -
136 - - - - - -

-                            
-                        
137 - - - - - -
  function handleFinalize(uint256 _requestSeed) external {
- -
138 - -
- -
- - - -
    bytes32 requestId = _getRandomRequest(_requestSeed);
- -
139 - -
- -
- - - -
    if (requestId == bytes32(0)) return;
- -
140 - - - - - -

-                            
-                        
141 - - - - - -
    bytes32 responseId = _ghost_activeResponses[requestId];
- -
142 - - - - - -
    if (responseId == bytes32(0)) return;
- -
143 - - - - - -

-                            
-                        
144 - - - - - -
    IOracle.Response memory response = _ghost_responseData[responseId];
- -
145 - - - - - -
    oracle.finalize(_ghost_requestData[requestId], response);
- -
146 - - - - - -

-                            
-                        
147 - - - - - -
    _ghost_finalizedResponses[responseId] = true;
- -
148 - - - - - -
    emit ResponseFinalized(requestId, responseId);
- -
149 - - - - - -
  }
- -
150 - - - - - -
}
- -
151 - - - - - -

-                            
-                        
-
-
- - - - - - - - - - -
-
-
- - - - - - -
Lines covered: 0 / 2 (0.0%)
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
1 - - - - - -
// SPDX-License-Identifier: MIT
- -
2 - - - - - -
pragma solidity 0.8.26;
- -
3 - - - - - -

-                            
-                        
4 - - - - - -
import {HandlerArbitrable} from './HandlerArbitrable.t.sol';
- -
5 - - - - - -

-                            
-                        
6 - - - - - -
import {HandlerBondEscalationModule} from './HandlerBondEscalationModule.t.sol';
- -
7 - - - - - -
import {HandlerBondedResponseModule} from './HandlerBondedResponseModule.t.sol';
- -
8 - - - - - -
import {HandlerCouncilArbitrator} from './HandlerCouncilArbitrator.t.sol';
- -
9 - - - - - -
import {HandlerEBOFinalityModule} from './HandlerEBOFinalityModule.t.sol';
- -
10 - - - - - -
import {HandlerEBORequestCreator} from './HandlerEBORequestCreator.t.sol';
- -
11 - - - - - -
import {HandlerEBORequestModule} from './HandlerEBORequestModule.t.sol';
- -
12 - - - - - -
import {HandlerHorizonAccountingExtension} from './HandlerHorizonAccountingExtension.t.sol';
- -
13 - - - - - -
import {HandlerOracle} from './HandlerOracle.t.sol';
- -
14 - - - - - -

-                            
-                        
15 - - - - - -
contract HandlerParent is
- -
16 - - - - - -
  HandlerArbitrable,
- -
17 - - - - - -
  HandlerBondedResponseModule,
- -
18 - - - - - -
  HandlerBondEscalationModule,
- -
19 - - - - - -
  HandlerCouncilArbitrator,
- -
20 - - - - - -
  HandlerEBOFinalityModule,
- -
21 - - - - - -
  HandlerEBORequestCreator,
- -
22 - - - - - -
  HandlerEBORequestModule,
- -
23 - - - - - -
  HandlerHorizonAccountingExtension,
- -
24 - - - - - -
  HandlerOracle
- -
25 - - - - - -
{
- -
26 - - - - - -
  //solhint-disable no-empty-blocks
- -
27 - - - - - -
  constructor() {}
- -
28 - - - - - -
}
- -
29 - - - - - -

-                            
-                        
-
-
- - - - - - - - - - -
-
-
- - - - - - -
Lines covered: 12 / 13 (92.3%)
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
1 - - - - - -
// SPDX-License-Identifier: UNLICENSED
- -
2 - - - - - -
pragma solidity ^0.8.19;
- -
3 - - - - - -

-                            
-                        
4 - - - - - -
import {Utils} from './Utils.t.sol';
- -
5 - - - - - -

-                            
-                        
6 - - - - - -
contract Actors is Utils {
- -
7 - - - - - -
  address[] internal _ghost_actors = [
- -
8 - -
- -
- - - -
    address(0x10000),
- -
9 - -
- -
- - - -
    address(0x20000),
- -
10 - -
- -
- - - -
    address(0x30000),
- -
11 - -
- -
- - - -
    address(0x40000),
- -
12 - -
- -
- - - -
    address(0x50000),
- -
13 - -
- -
- - - -
    address(0x60000),
- -
14 - -
- -
- - - -
    address(0x70000),
- -
15 - -
- -
- - - -
    address(0x80000),
- -
16 - -
- -
- - - -
    address(0x90000),
- -
17 - -
- -
- - - -
    address(0xa0000)
- -
18 - - - - - -
  ];
- -
19 - - - - - -

-                            
-                        
20 - - - - - -
  event ActorsLog(string);
- -
21 - - - - - -

-                            
-                        
22 - -
- -
- -
- -
- -
  function _pickActor(uint256 _seed) internal view returns (address) {
- -
23 - -
- -
- -
- -
- -
    return _ghost_actors[_seed % _ghost_actors.length];
- -
24 - - - - - -
  }
- -
25 - - - - - -
}
- -
26 - - - - - -

-                            
-                        
-
-
- - - - - - - - - - -
-
-
- - - - - - -
Lines covered: 1 / 7 (14.3%)
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
1 - - - - - -
// SPDX-License-Identifier: MIT
- -
2 - - - - - -
pragma solidity ^0.8.19;
- -
3 - - - - - -

-                            
-                        
4 - - - - - -
import {ERC20, IERC20} from '@openzeppelin/contracts/token/ERC20/ERC20.sol';
- -
5 - - - - - -

-                            
-                        
6 - - - - - -
contract FuzzERC20 is ERC20 {
- -
7 - - - - - -
  address testContract;
- -
8 - - - - - -

-                            
-                        
9 - - - - - -
  constructor() ERC20('FuzzERC20', 'FuzzERC20') {
- -
10 - -
- -
- - - -
    testContract = msg.sender;
- -
11 - - - - - -
  }
- -
12 - - - - - -

-                            
-                        
13 - - - - - -
  function transfer(address to, uint256 amount) public override returns (bool) {
- -
14 - - - - - -
    address owner = _msgSender();
- -
15 - - - - - -

-                            
-                        
16 - - - - - -
    // FuzzTest has an infinite mint
- -
17 - - - - - -
    if (owner == testContract) {
- -
18 - - - - - -
      _mint(testContract, amount);
- -
19 - - - - - -
    }
- -
20 - - - - - -

-                            
-                        
21 - - - - - -
    _transfer(owner, to, amount);
- -
22 - - - - - -
    return true;
- -
23 - - - - - -
  }
- -
24 - - - - - -

-                            
-                        
25 - - - - - -
  function mint(address _to, uint256 _amount) public {
- -
26 - - - - - -
    _mint(_to, _amount);
- -
27 - - - - - -
  }
- -
28 - - - - - -

-                            
-                        
29 - - - - - -
  function burn(address _from, uint256 _amount) public {
- -
30 - - - - - -
    _burn(_from, _amount);
- -
31 - - - - - -
  }
- -
32 - - - - - -
}
- -
33 - - - - - -

-                            
-                        
-
-
- - - - - - - - - - -
-
-
- - - - - - -
Lines covered: 0 / 0 (0.0%)
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
1 - - - - - -
// SPDX-License-Identifier: UNLICENSED
- -
2 - - - - - -
pragma solidity ^0.8.19;
- -
3 - - - - - -

-                            
-                        
4 - - - - - -
interface IStdCheats {
- -
5 - - - - - -
  // Set block.timestamp
- -
6 - - - - - -
  function warp(uint256) external;
- -
7 - - - - - -

-                            
-                        
8 - - - - - -
  // Set block.number
- -
9 - - - - - -
  function roll(uint256) external;
- -
10 - - - - - -

-                            
-                        
11 - - - - - -
  // Set block.basefee
- -
12 - - - - - -
  function fee(uint256) external;
- -
13 - - - - - -

-                            
-                        
14 - - - - - -
  // Set block.difficulty and block.prevrandao
- -
15 - - - - - -
  function difficulty(uint256) external;
- -
16 - - - - - -

-                            
-                        
17 - - - - - -
  // Set block.chainid
- -
18 - - - - - -
  function chainId(uint256) external;
- -
19 - - - - - -

-                            
-                        
20 - - - - - -
  // Sets the block.coinbase
- -
21 - - - - - -
  function coinbase(address) external;
- -
22 - - - - - -

-                            
-                        
23 - - - - - -
  // Loads a storage slot from an address
- -
24 - - - - - -
  function load(address account, bytes32 slot) external returns (bytes32);
- -
25 - - - - - -

-                            
-                        
26 - - - - - -
  // Stores a value to an address' storage slot
- -
27 - - - - - -
  function store(address account, bytes32 slot, bytes32 value) external;
- -
28 - - - - - -

-                            
-                        
29 - - - - - -
  // Sets the *next* call's msg.sender to be the input address
- -
30 - - - - - -
  function prank(address) external;
- -
31 - - - - - -

-                            
-                        
32 - - - - - -
  // Set msg.sender to the input address until the current call exits
- -
33 - - - - - -
  function prankHere(address) external;
- -
34 - - - - - -

-                            
-                        
35 - - - - - -
  // Sets an address' balance
- -
36 - - - - - -
  function deal(address who, uint256 newBalance) external;
- -
37 - - - - - -

-                            
-                        
38 - - - - - -
  // Sets an address' code
- -
39 - - - - - -
  function etch(address who, bytes calldata code) external;
- -
40 - - - - - -

-                            
-                        
41 - - - - - -
  // Signs data
- -
42 - - - - - -
  function sign(uint256 privateKey, bytes32 digest) external returns (uint8 v, bytes32 r, bytes32 s);
- -
43 - - - - - -

-                            
-                        
44 - - - - - -
  // Computes address for a given private key
- -
45 - - - - - -
  function addr(uint256 privateKey) external returns (address);
- -
46 - - - - - -

-                            
-                        
47 - - - - - -
  // Gets the nonce of an account
- -
48 - - - - - -
  function getNonce(address account) external returns (uint64);
- -
49 - - - - - -

-                            
-                        
50 - - - - - -
  // Sets the nonce of an account
- -
51 - - - - - -
  // The new nonce must be higher than the current nonce of the account
- -
52 - - - - - -
  function setNonce(address account, uint64 nonce) external;
- -
53 - - - - - -

-                            
-                        
54 - - - - - -
  // Performs a foreign function call via terminal
- -
55 - - - - - -
  function ffi(string[] calldata) external returns (bytes memory);
- -
56 - - - - - -

-                            
-                        
57 - - - - - -
  // Take a snapshot of the current state of the EVM
- -
58 - - - - - -
  function snapshot() external returns (uint256);
- -
59 - - - - - -

-                            
-                        
60 - - - - - -
  // Revert state back to a snapshot
- -
61 - - - - - -
  function revertTo(uint256) external returns (bool);
- -
62 - - - - - -

-                            
-                        
63 - - - - - -
  // Convert Solidity types to strings
- -
64 - - - - - -
  function toString(address) external returns (string memory);
- -
65 - - - - - -

-                            
-                        
66 - - - - - -
  function toString(bytes calldata) external returns (string memory);
- -
67 - - - - - -

-                            
-                        
68 - - - - - -
  function toString(bytes32) external returns (string memory);
- -
69 - - - - - -

-                            
-                        
70 - - - - - -
  function toString(bool) external returns (string memory);
- -
71 - - - - - -

-                            
-                        
72 - - - - - -
  function toString(uint256) external returns (string memory);
- -
73 - - - - - -

-                            
-                        
74 - - - - - -
  function toString(int256) external returns (string memory);
- -
75 - - - - - -

-                            
-                        
76 - - - - - -
  // Convert strings into Solidity types
- -
77 - - - - - -
  function parseBytes(string memory) external returns (bytes memory);
- -
78 - - - - - -

-                            
-                        
79 - - - - - -
  function parseBytes32(string memory) external returns (bytes32);
- -
80 - - - - - -

-                            
-                        
81 - - - - - -
  function parseAddress(string memory) external returns (address);
- -
82 - - - - - -

-                            
-                        
83 - - - - - -
  function parseUint(string memory) external returns (uint256);
- -
84 - - - - - -

-                            
-                        
85 - - - - - -
  function parseInt(string memory) external returns (int256);
- -
86 - - - - - -

-                            
-                        
87 - - - - - -
  function parseBool(string memory) external returns (bool);
- -
88 - - - - - -
}
- -
89 - - - - - -

-                            
-                        
-
-
- - - - - - - - - - -
-
-
- - - - - - -
Lines covered: 2 / 3 (66.7%)
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
1 - - - - - -
// SPDX-License-Identifier: MIT
- -
2 - - - - - -
pragma solidity 0.8.26;
- -
3 - - - - - -

-                            
-                        
4 - - - - - -
contract MockEpochManager {
- -
5 - -
- -
- -
- -
- -
  uint256 public currentEpoch;
- -
6 - - - - - -

-                            
-                        
7 - - - - - -
  constructor(uint256 _startEpoch) {
- -
8 - -
- -
- - - -
    currentEpoch = _startEpoch;
- -
9 - - - - - -
  }
- -
10 - - - - - -

-                            
-                        
11 - - - - - -
  function setEpoch(uint256 _epoch) external {
- -
12 - - - - - -
    currentEpoch = _epoch;
- -
13 - - - - - -
  }
- -
14 - - - - - -
}
- -
15 - - - - - -

-                            
-                        
-
-
- - - - - - - - - - -
-
-
- - - - - - -
Lines covered: 1 / 7 (14.3%)
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
1 - - - - - -
// SPDX-License-Identifier: MIT
- -
2 - - - - - -
pragma solidity 0.8.26;
- -
3 - - - - - -

-                            
-                        
4 - - - - - -
import {IERC20} from '@openzeppelin/contracts/token/ERC20/IERC20.sol';
- -
5 - - - - - -
import {IHorizonStaking} from 'interfaces/external/IHorizonStaking.sol';
- -
6 - - - - - -

-                            
-                        
7 - - - - - -
contract MockHorizonStaking {
- -
8 - - - - - -
  IERC20 public immutable GRT;
- -
9 - - - - - -
  mapping(address => mapping(address => IHorizonStaking.Provision)) public provisions;
- -
10 - - - - - -

-                            
-                        
11 - - - - - -
  constructor(IERC20 _grt) {
- -
12 - -
- -
- - - -
    GRT = _grt;
- -
13 - - - - - -
  }
- -
14 - - - - - -

-                            
-                        
15 - - - - - -
  function getProvision(
- -
16 - - - - - -
    address _serviceProvider,
- -
17 - - - - - -
    address _verifier
- -
18 - - - - - -
  ) external view returns (IHorizonStaking.Provision memory) {
- -
19 - - - - - -
    return provisions[_serviceProvider][_verifier];
- -
20 - - - - - -
  }
- -
21 - - - - - -

-                            
-                        
22 - - - - - -
  function provision(
- -
23 - - - - - -
    address _serviceProvider,
- -
24 - - - - - -
    address _verifier,
- -
25 - - - - - -
    uint256 _tokens,
- -
26 - - - - - -
    uint32 _maxVerifierCut,
- -
27 - - - - - -
    uint64 _thawingPeriod
- -
28 - - - - - -
  ) external {
- -
29 - - - - - -
    provisions[_serviceProvider][_verifier] = IHorizonStaking.Provision({
- -
30 - - - - - -
      tokens: _tokens,
- -
31 - - - - - -
      tokensThawing: 0,
- -
32 - - - - - -
      sharesThawing: 0,
- -
33 - - - - - -
      maxVerifierCut: _maxVerifierCut,
- -
34 - - - - - -
      thawingPeriod: _thawingPeriod,
- -
35 - - - - - -
      createdAt: uint64(block.timestamp),
- -
36 - - - - - -
      maxVerifierCutPending: 0,
- -
37 - - - - - -
      thawingPeriodPending: 0
- -
38 - - - - - -
    });
- -
39 - - - - - -
  }
- -
40 - - - - - -

-                            
-                        
41 - - - - - -
  function slash(address, uint256, uint256 _tokensVerifier, address _verifierDestination) external {
- -
42 - - - - - -
    GRT.transfer(_verifierDestination, _tokensVerifier);
- -
43 - - - - - -
  }
- -
44 - - - - - -
}
- -
45 - - - - - -

-                            
-                        
-
-
- - - - - - - - - - -
-
-
- - - - - - -
Lines covered: 21 / 32 (65.6%)
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
1 - - - - - -
// SPDX-License-Identifier: MIT
- -
2 - - - - - -
pragma solidity ^0.8.19;
- -
3 - - - - - -

-                            
-                        
4 - - - - - -
import {IStdCheats} from "./IStdCheats.sol";
- -
5 - - - - - -

-                            
-                        
6 - - - - - -
// override forge-std:
- -
7 - - - - - -
// - vm, avoiding unsupported cheatcode
- -
8 - - - - - -
// - assertEq, allowing custom message in Medusa
- -
9 - - - - - -
// - assertTrue, allowing custom message in Medusa
- -
10 - - - - - -
// - makeAddr, bypassing the limitation of non-existing label cheatcode
- -
11 - - - - - -
// etc
- -
12 - - - - - -
contract Utils {
- -
13 - - - - - -
    IStdCheats internal vm =
- -
14 - -
- -
- - - -
        IStdCheats(address(0x7109709ECfa91a80626fF3989D68f67F5b1DD12D));
- -
15 - - - - - -

-                            
-                        
16 - - - - - -
    event TestFailure(string reason);
- -
17 - - - - - -
    event AddressMade(string label, address addressGenerated);
- -
18 - - - - - -

-                            
-                        
19 - - - - - -
    function makeAddr(string memory label) internal returns (address) {
- -
20 - - - - - -
        address genAddress = address(
- -
21 - - - - - -
            uint160(uint256(keccak256(abi.encodePacked(label))))
- -
22 - - - - - -
        );
- -
23 - - - - - -
        emit AddressMade(label, genAddress);
- -
24 - - - - - -
        return genAddress;
- -
25 - - - - - -
    }
- -
26 - - - - - -

-                            
-                        
27 - - - - - -
    // same as forge-std
- -
28 - - - - - -
    function bound(
- -
29 - - - - - -
        uint256 x,
- -
30 - - - - - -
        uint256 min,
- -
31 - - - - - -
        uint256 max
- -
32 - -
- -
- -
- -
- -
    ) internal pure returns (uint256 result) {
- -
33 - - - - - -
        //solhint-disable custom-errors
- -
34 - - - - - -
        require(
- -
35 - -
- -
- -
- -
- -
            min <= max,
- -
36 - - - - - -
            "StdUtils bound(uint256,uint256,uint256): Max is less than min."
- -
37 - - - - - -
        );
- -
38 - - - - - -

-                            
-                        
39 - -
- -
- -
- -
- -
        uint256 UINT256_MAX = 2 ** 256 - 1;
- -
40 - - - - - -

-                            
-                        
41 - - - - - -
        // If x is between min and max, return x directly. This is to ensure that dictionary values
- -
42 - - - - - -
        // do not get shifted if the min is nonzero. More info: https://github.com/foundry-rs/forge-std/issues/188
- -
43 - -
- -
- -
- -
- -
        if (x >= min && x <= max) return x;
- -
44 - - - - - -

-                            
-                        
45 - -
- -
- -
- -
- -
        uint256 size = max - min + 1;
- -
46 - - - - - -

-                            
-                        
47 - - - - - -
        // If the value is 0, 1, 2, 3, wrap that to min, min+1, min+2, min+3. Similarly for the UINT256_MAX side.
- -
48 - - - - - -
        // This helps ensure coverage of the min/max values.
- -
49 - -
- -
- -
- -
- -
        if (x <= 3 && size > x) return min + x;
- -
50 - -
- -
- -
- -
- -
        if (x >= UINT256_MAX - 3 && size > UINT256_MAX - x) {
- -
51 - -
- -
- - - -
            return max - (UINT256_MAX - x);
- -
52 - - - - - -
        }
- -
53 - - - - - -

-                            
-                        
54 - - - - - -
        // Otherwise, wrap x into the range [min, max], i.e. the range is inclusive.
- -
55 - -
- -
- -
- -
- -
        if (x > max) {
- -
56 - -
- -
- -
- -
- -
            uint256 diff = x - max;
- -
57 - -
- -
- -
- -
- -
            uint256 rem = diff % size;
- -
58 - -
- -
- -
- -
- -
            if (rem == 0) return max;
- -
59 - -
- -
- -
- -
- -
            result = min + rem - 1;
- -
60 - - - - - -
        } else if (x < min) {
- -
61 - - - - - -
            uint256 diff = min - x;
- -
62 - - - - - -
            uint256 rem = diff % size;
- -
63 - - - - - -
            if (rem == 0) return min;
- -
64 - - - - - -
            result = max - rem + 1;
- -
65 - - - - - -
        }
- -
66 - - - - - -
    }
- -
67 - - - - - -

-                            
-                        
68 - - - - - -
    // todo: convert everything to b32 (then only one implementation)
- -
69 - - - - - -

-                            
-                        
70 - - - - - -
    function assertEq(uint256 a, uint256 b) internal {
- -
71 - - - - - -
        assertEq(a, b, "assertEq: a != b");
- -
72 - - - - - -
    }
- -
73 - - - - - -

-                            
-                        
74 - - - - - -
    function assertEq(uint256 a, uint256 b, string memory reason) internal {
- -
75 - - - -
- -
- -
        if (a != b) {
- -
76 - - - - - -
            emit TestFailure(reason);
- -
77 - - - - - -
            assert(false);
- -
78 - - - - - -
        }
- -
79 - - - - - -
    }
- -
80 - - - - - -

-                            
-                        
81 - - - - - -
    function assertEq(address a, address b) internal {
- -
82 - - - - - -
        assertEq(a, b, "assertEq: a != b");
- -
83 - - - - - -
    }
- -
84 - - - - - -

-                            
-                        
85 - - - - - -
    function assertEq(address a, address b, string memory reason) internal {
- -
86 - - - -
- -
- -
        if (a != b) {
- -
87 - - - -
- -
- -
            emit TestFailure(reason);
- -
88 - - - -
- -
- -
            assert(false);
- -
89 - - - - - -
        }
- -
90 - - - - - -
    }
- -
91 - - - - - -

-                            
-                        
92 - - - - - -
    function assertEq(bytes memory a, bytes memory b) internal {
- -
93 - - - - - -
        assertEq(a, b, "assertEq: a != b");
- -
94 - - - - - -
    }
- -
95 - - - - - -

-                            
-                        
96 - - - - - -
    function assertEq(
- -
97 - - - - - -
        bytes memory a,
- -
98 - - - - - -
        bytes memory b,
- -
99 - - - - - -
        string memory reason
- -
100 - - - - - -
    ) internal {
- -
101 - - - -
- -
- -
        if (a.length != b.length) {
- -
102 - - - -
- -
- -
            emit TestFailure(reason);
- -
103 - - - -
- -
- -
            assert(false);
- -
104 - - - - - -
        }
- -
105 - - - - - -
        for (uint256 i = 0; i < a.length; i++) {
- -
106 - - - - - -
            if (a[i] != b[i]) {
- -
107 - - - - - -
                emit TestFailure(reason);
- -
108 - - - - - -
                assert(false);
- -
109 - - - - - -
            }
- -
110 - - - - - -
        }
- -
111 - - - - - -
    }
- -
112 - - - - - -

-                            
-                        
113 - - - - - -
    function assertTrue(bool a) internal {
- -
114 - - - - - -
        assertTrue(a, "assertTrue: !a");
- -
115 - - - - - -
    }
- -
116 - - - - - -

-                            
-                        
117 - - - - - -
    function assertTrue(bool a, string memory reason) internal {
- -
118 - - - - - -
        if (!a) {
- -
119 - - - - - -
            emit TestFailure(reason);
- -
120 - - - - - -
            assert(false);
- -
121 - - - - - -
        }
- -
122 - - - - - -
    }
- -
123 - - - - - -
}
- -
124 - - - - - -

-                            
-                        
-
-
- - - - - - - - - - -
-
-
- - - - - - -
Lines covered: 0 / 2 (0.0%)
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
1 - - - - - -
// SPDX-License-Identifier: MIT
- -
2 - - - - - -
pragma solidity 0.8.26;
- -
3 - - - - - -

-                            
-                        
4 - - - - - -
import {HandlerParent} from "../handlers/HandlerParent.t.sol";
- -
5 - - - - - -

-                            
-                        
6 - - - - - -
contract PropertyEbo is HandlerParent {
- -
7 - - - - - -
    //solhint-disable no-empty-blocks
- -
8 - - - - - -
    constructor() {}
- -
9 - - - - - -
}
- -
10 - - - - - -

-                            
-                        
-
-
- - - - - - - - - - -
-
-
- - - - - - -
Lines covered: 33 / 51 (64.7%)
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
1 - - - - - -
// SPDX-License-Identifier: MIT
- -
2 - - - - - -
pragma solidity 0.8.26;
- -
3 - - - - - -

-                            
-                        
4 - - - - - -
import {IOracle} from "@defi-wonderland/prophet-core/solidity/contracts/Oracle.sol";
- -
5 - - - - - -
import {PropertyEbo} from "./PropertyEbo.t.sol";
- -
6 - - - - - -

-                            
-                        
7 - - - - - -
contract PropertyParent is PropertyEbo {
- -
8 - - - - - -
    function property_sanityCheck() external {
- -
9 - - - -
- -
- -
        assertEq(
- -
10 - - - -
- -
- -
            address(eboRequestCreator.ORACLE()),
- -
11 - - - -
- -
- -
            address(oracle),
- -
12 - - - - - -
            "prop-0: wrong oracle address"
- -
13 - - - - - -
        );
- -
14 - - - - - -

-                            
-                        
15 - - - -
- -
- -
        assertEq(
- -
16 - - - -
- -
- -
            address(eboRequestCreator.ARBITRABLE()),
- -
17 - - - -
- -
- -
            address(arbitrable),
- -
18 - - - - - -
            "prop-0: wrong arbitrable address"
- -
19 - - - - - -
        );
- -
20 - - - - - -

-                            
-                        
21 - - - -
- -
- -
        assertEq(
- -
22 - - - -
- -
- -
            eboRequestCreator.START_EPOCH(),
- -
23 - - - - - -
            START_EPOCH,
- -
24 - - - - - -
            "prop-0: wrong start epoch"
- -
25 - - - - - -
        );
- -
26 - - - - - -

-                            
-                        
27 - - - -
- -
- -
        assertEq(
- -
28 - - - -
- -
- -
            address(eboRequestCreator.epochManager()),
- -
29 - - - -
- -
- -
            address(epochManager),
- -
30 - - - - - -
            "prop-0: wrong epoch manager address"
- -
31 - - - - - -
        );
- -
32 - - - - - -

-                            
-                        
33 - - - -
- -
- -
        IOracle.Request memory initialRequestStored = eboRequestCreator
- -
34 - - - - - -
            .getRequestData();
- -
35 - - - - - -

-                            
-                        
36 - - - -
- -
- -
        assertEq(
- -
37 - - - -
- -
- -
            initialRequestStored.requestModule,
- -
38 - - - -
- -
- -
            address(eboRequestModule),
- -
39 - - - - - -
            "prop-0: wrong request module in initialRequest"
- -
40 - - - - - -
        );
- -
41 - - - - - -

-                            
-                        
42 - - - -
- -
- -
        assertEq(
- -
43 - - - -
- -
- -
            initialRequestStored.responseModule,
- -
44 - - - -
- -
- -
            address(bondedResponseModule),
- -
45 - - - - - -
            "prop-0: wrong response module in initialRequest"
- -
46 - - - - - -
        );
- -
47 - - - - - -

-                            
-                        
48 - - - -
- -
- -
        assertEq(
- -
49 - - - -
- -
- -
            initialRequestStored.disputeModule,
- -
50 - - - -
- -
- -
            address(bondEscalationModule),
- -
51 - - - - - -
            "prop-0: wrong disputeModule in initialRequest"
- -
52 - - - - - -
        );
- -
53 - - - - - -

-                            
-                        
54 - - - -
- -
- -
        assertEq(
- -
55 - - - -
- -
- -
            initialRequestStored.resolutionModule,
- -
56 - - - -
- -
- -
            address(arbitratorModule),
- -
57 - - - - - -
            "prop-0: wrong resolutionModule in initialRequest"
- -
58 - - - - - -
        );
- -
59 - - - - - -

-                            
-                        
60 - - - -
- -
- -
        assertEq(
- -
61 - - - -
- -
- -
            initialRequestStored.finalityModule,
- -
62 - - - -
- -
- -
            address(eboFinalityModule),
- -
63 - - - - - -
            "prop-0: wrong finalityModule in initialRequest"
- -
64 - - - - - -
        );
- -
65 - - - - - -

-                            
-                        
66 - - - -
- -
- -
        assertEq(
- -
67 - - - -
- -
- -
            initialRequestStored.requester,
- -
68 - - - -
- -
- -
            address(eboRequestCreator),
- -
69 - - - - - -
            "prop-0: wrong requester in initialRequest"
- -
70 - - - - - -
        );
- -
71 - - - - - -

-                            
-                        
72 - - - -
- -
- -
        assertEq(
- -
73 - - - -
- -
- -
            initialRequestStored.requestModuleData,
- -
74 - - - - - -
            abi.encodePacked(
- -
75 - - - - - -
                START_EPOCH,
- -
76 - - - - - -
                "mainnet",
- -
77 - - - -
- -
- -
                horizonAccountingExtension,
- -
78 - - - - - -
                PAYMENT_AMOUNT
- -
79 - - - - - -
            ),
- -
80 - - - - - -
            "prop-0: wrong requestModuleData in initialRequest"
- -
81 - - - - - -
        );
- -
82 - - - - - -

-                            
-                        
83 - - - - - -
        assertEq(
- -
84 - - - - - -
            initialRequestStored.responseModuleData,
- -
85 - - - - - -
            abi.encode(
- -
86 - - - - - -
                horizonAccountingExtension,
- -
87 - - - - - -
                GRT,
- -
88 - - - - - -
                RESPONSE_BOND_SIZE,
- -
89 - - - - - -
                RESPONSE_DEADLINE,
- -
90 - - - - - -
                RESPONSE_DISPUTE_WINDOW
- -
91 - - - - - -
            ),
- -
92 - - - - - -
            "prop-0: wrong responseModuleData module data in initialRequest"
- -
93 - - - - - -
        );
- -
94 - - - - - -

-                            
-                        
95 - - - - - -
        assertEq(
- -
96 - - - - - -
            initialRequestStored.disputeModuleData,
- -
97 - - - - - -
            abi.encode(
- -
98 - - - - - -
                horizonAccountingExtension,
- -
99 - - - - - -
                GRT,
- -
100 - - - - - -
                DISPUTE_BOND_SIZE,
- -
101 - - - - - -
                MAX_NB_ESCALATION,
- -
102 - - - - - -
                DISPUTE_DEADLINE,
- -
103 - - - - - -
                TYING_BUFFER,
- -
104 - - - - - -
                DISPUTE_DISPUTE_WINDOW
- -
105 - - - - - -
            ),
- -
106 - - - - - -
            "prop-0: wrong disputeModuleData in initialRequest"
- -
107 - - - - - -
        );
- -
108 - - - - - -

-                            
-                        
109 - - - - - -
        assertEq(
- -
110 - - - - - -
            initialRequestStored.resolutionModuleData,
- -
111 - - - - - -
            abi.encode(councilArbitrator),
- -
112 - - - - - -
            "prop-0: wrong resolutionModuleData in initialRequest"
- -
113 - - - - - -
        );
- -
114 - - - - - -

-                            
-                        
115 - - - - - -
        assertEq(
- -
116 - - - - - -
            initialRequestStored.finalityModuleData,
- -
117 - - - - - -
            abi.encode(eboFinalityModule),
- -
118 - - - - - -
            "prop-0: wrong finality module data in initialRequest"
- -
119 - - - - - -
        );
- -
120 - - - - - -

-                            
-                        
121 - - - - - -
        assertEq(
- -
122 - - - - - -
            initialRequestStored.nonce,
- -
123 - - - - - -
            0,
- -
124 - - - - - -
            "prop-0: wrong nonce in initialRequest"
- -
125 - - - - - -
        );
- -
126 - - - - - -
    }
- -
127 - - - - - -
}
- -
128 - - - - - -

-                            
-                        
-
-
- - - - - -
- - - diff --git a/test/invariants/fuzz/corpus/test_results/1731277916310343000-32dff114-6a03-4430-9d95-836289099cbe.json b/test/invariants/fuzz/corpus/test_results/1731277916310343000-32dff114-6a03-4430-9d95-836289099cbe.json deleted file mode 100755 index 792c54a..0000000 --- a/test/invariants/fuzz/corpus/test_results/1731277916310343000-32dff114-6a03-4430-9d95-836289099cbe.json +++ /dev/null @@ -1,23 +0,0 @@ -[ - { - "call": { - "from": "0x0000000000000000000000000000000000080000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xbf938c53", - "dataAbiValues": { - "methodSignature": "property_sanityCheck()", - "inputValues": [] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 4158, - "blockTimestampDelay": 50559 - } -] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/test_results/1731277916315548000-d4125812-54d1-4fe8-b2da-34d5e34dc9fa.json b/test/invariants/fuzz/corpus/test_results/1731277916315548000-d4125812-54d1-4fe8-b2da-34d5e34dc9fa.json deleted file mode 100755 index efc380f..0000000 --- a/test/invariants/fuzz/corpus/test_results/1731277916315548000-d4125812-54d1-4fe8-b2da-34d5e34dc9fa.json +++ /dev/null @@ -1,23 +0,0 @@ -[ - { - "call": { - "from": "0x0000000000000000000000000000000000040000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xbf938c53", - "dataAbiValues": { - "methodSignature": "property_sanityCheck()", - "inputValues": [] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 23876, - "blockTimestampDelay": 471523 - } -] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/test_results/1731277916315901000-0a807f4b-d878-4428-b5b9-a9f85a8454cb.json b/test/invariants/fuzz/corpus/test_results/1731277916315901000-0a807f4b-d878-4428-b5b9-a9f85a8454cb.json deleted file mode 100755 index 577e6ab..0000000 --- a/test/invariants/fuzz/corpus/test_results/1731277916315901000-0a807f4b-d878-4428-b5b9-a9f85a8454cb.json +++ /dev/null @@ -1,23 +0,0 @@ -[ - { - "call": { - "from": "0x0000000000000000000000000000000000040000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xbf938c53", - "dataAbiValues": { - "methodSignature": "property_sanityCheck()", - "inputValues": [] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 8541, - "blockTimestampDelay": 295092 - } -] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/test_results/1731277916316125000-1ef75ec6-dacf-4714-ac4e-b14b0e6db321.json b/test/invariants/fuzz/corpus/test_results/1731277916316125000-1ef75ec6-dacf-4714-ac4e-b14b0e6db321.json deleted file mode 100755 index ebfeb42..0000000 --- a/test/invariants/fuzz/corpus/test_results/1731277916316125000-1ef75ec6-dacf-4714-ac4e-b14b0e6db321.json +++ /dev/null @@ -1,23 +0,0 @@ -[ - { - "call": { - "from": "0x0000000000000000000000000000000000050000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xbf938c53", - "dataAbiValues": { - "methodSignature": "property_sanityCheck()", - "inputValues": [] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 15835, - "blockTimestampDelay": 490250 - } -] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/test_results/1731277916317250000-ab38a60b-d225-4ae7-b02b-7b0e34fbc487.json b/test/invariants/fuzz/corpus/test_results/1731277916317250000-ab38a60b-d225-4ae7-b02b-7b0e34fbc487.json deleted file mode 100755 index e74a59e..0000000 --- a/test/invariants/fuzz/corpus/test_results/1731277916317250000-ab38a60b-d225-4ae7-b02b-7b0e34fbc487.json +++ /dev/null @@ -1,23 +0,0 @@ -[ - { - "call": { - "from": "0x0000000000000000000000000000000000050000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xbf938c53", - "dataAbiValues": { - "methodSignature": "property_sanityCheck()", - "inputValues": [] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 0, - "blockTimestampDelay": 0 - } -] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/test_results/1731277916317637000-a56168a4-d5f3-41bd-a2e4-952218f3cb5d.json b/test/invariants/fuzz/corpus/test_results/1731277916317637000-a56168a4-d5f3-41bd-a2e4-952218f3cb5d.json deleted file mode 100755 index a22759a..0000000 --- a/test/invariants/fuzz/corpus/test_results/1731277916317637000-a56168a4-d5f3-41bd-a2e4-952218f3cb5d.json +++ /dev/null @@ -1,23 +0,0 @@ -[ - { - "call": { - "from": "0x0000000000000000000000000000000000040000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xbf938c53", - "dataAbiValues": { - "methodSignature": "property_sanityCheck()", - "inputValues": [] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 11862, - "blockTimestampDelay": 520464 - } -] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/test_results/1731277916318080000-31a6e666-e7fb-4748-8532-81b12c1dcc7d.json b/test/invariants/fuzz/corpus/test_results/1731277916318080000-31a6e666-e7fb-4748-8532-81b12c1dcc7d.json deleted file mode 100755 index ad91b12..0000000 --- a/test/invariants/fuzz/corpus/test_results/1731277916318080000-31a6e666-e7fb-4748-8532-81b12c1dcc7d.json +++ /dev/null @@ -1,23 +0,0 @@ -[ - { - "call": { - "from": "0x0000000000000000000000000000000000080000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xbf938c53", - "dataAbiValues": { - "methodSignature": "property_sanityCheck()", - "inputValues": [] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 17266, - "blockTimestampDelay": 360623 - } -] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/test_results/1731277916318104000-d3a81c39-8004-4bff-b6fc-5ebcc72e5663.json b/test/invariants/fuzz/corpus/test_results/1731277916318104000-d3a81c39-8004-4bff-b6fc-5ebcc72e5663.json deleted file mode 100755 index 739ec47..0000000 --- a/test/invariants/fuzz/corpus/test_results/1731277916318104000-d3a81c39-8004-4bff-b6fc-5ebcc72e5663.json +++ /dev/null @@ -1,23 +0,0 @@ -[ - { - "call": { - "from": "0x0000000000000000000000000000000000010000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xbf938c53", - "dataAbiValues": { - "methodSignature": "property_sanityCheck()", - "inputValues": [] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 23885, - "blockTimestampDelay": 360525 - } -] \ No newline at end of file diff --git a/test/invariants/fuzz/corpus/test_results/1731277916318142000-600969d3-9967-402d-a424-4aa6f788b3cc.json b/test/invariants/fuzz/corpus/test_results/1731277916318142000-600969d3-9967-402d-a424-4aa6f788b3cc.json deleted file mode 100755 index f125715..0000000 --- a/test/invariants/fuzz/corpus/test_results/1731277916318142000-600969d3-9967-402d-a424-4aa6f788b3cc.json +++ /dev/null @@ -1,23 +0,0 @@ -[ - { - "call": { - "from": "0x00000000000000000000000000000000000a0000", - "to": "0xa647ff3c36cfab592509e13860ab8c4f28781a66", - "nonce": 0, - "value": "0x0", - "gasLimit": 12500000, - "gasPrice": "0x1", - "gasFeeCap": "0x0", - "gasTipCap": "0x0", - "data": "0xbf938c53", - "dataAbiValues": { - "methodSignature": "property_sanityCheck()", - "inputValues": [] - }, - "AccessList": null, - "SkipAccountChecks": false - }, - "blockNumberDelay": 3666, - "blockTimestampDelay": 212808 - } -] \ No newline at end of file From c0ffee6242517fe5e859e78a93e267f9c5d7c809 Mon Sep 17 00:00:00 2001 From: drgorillamd <83670532+drgorillamd@users.noreply.github.com> Date: Mon, 11 Nov 2024 11:19:25 +0100 Subject: [PATCH 09/28] test(medusa): natspec --- test/invariants/properties/PropertySanityCheck.t.sol | 2 ++ 1 file changed, 2 insertions(+) diff --git a/test/invariants/properties/PropertySanityCheck.t.sol b/test/invariants/properties/PropertySanityCheck.t.sol index 4e334fe..4dc6d69 100644 --- a/test/invariants/properties/PropertySanityCheck.t.sol +++ b/test/invariants/properties/PropertySanityCheck.t.sol @@ -6,6 +6,8 @@ import {HandlerParent} from '../handlers/HandlerParent.t.sol'; import {IOracle} from '@defi-wonderland/prophet-core/solidity/contracts/Oracle.sol'; contract PropertySanityCheck is HandlerParent { + /// @custom:property-id 0 + /// @custom:property Check if eboRequestCreator has the correct properties, including the ones set after its initial deployment function property_sanityCheck() external { assertEq(address(eboRequestCreator.ORACLE()), address(oracle), 'prop-0: wrong oracle address'); From c0ffee71dad68bc2be9783b4c172e882d262c378 Mon Sep 17 00:00:00 2001 From: drgorillamd <83670532+drgorillamd@users.noreply.github.com> Date: Mon, 11 Nov 2024 22:42:48 +0100 Subject: [PATCH 10/28] test(medusa): rm non-sensical handlers onlyoracle etc --- test/invariants/PROPERTIES.md | 29 +++++------ .../HandlerBondEscalationModule.t.sol | 29 +++++------ .../HandlerBondedResponseModule.t.sol | 46 +++-------------- .../handlers/HandlerCouncilArbitrator.t.sol | 17 +++---- .../handlers/HandlerEBOFinalityModule.t.sol | 11 ---- .../HandlerHorizonAccountingExtension.t.sol | 51 +++---------------- test/invariants/handlers/HandlerOracle.t.sol | 43 +++++++++------- test/invariants/properties/PropertyEbo.t.sol | 7 +++ 8 files changed, 79 insertions(+), 154 deletions(-) diff --git a/test/invariants/PROPERTIES.md b/test/invariants/PROPERTIES.md index b643240..32b27a2 100644 --- a/test/invariants/PROPERTIES.md +++ b/test/invariants/PROPERTIES.md @@ -58,6 +58,9 @@ bonded dispute goes to resolution if: escalateDispute or tie | Id | Properties | Type | | --- | ---------- | ---- | +| | requester can always create a request | | +| | there can only be one active request per chainId/epoch at a time | | + ## Handler coverage @@ -77,22 +80,22 @@ EBORequestCreator EBORequestModule | Function | Handler | | ------------------------------------------- | ------- | -| createRequest(bytes32,bytes,address) | [] | +| createRequest(bytes32,bytes,address) | onlyOracle | | addEBORequestCreator(IEBORequestCreator) | [] | | removeEBORequestCreator(IEBORequestCreator) | [] | BondedResponseModule | Function | Handler | | ----------------------------------------------------------- | ------- | -| propose(IOracle.Request,IOracle.Response,address) | [] | -| finalizeRequest(IOracle.Request,IOracle.Response,address) | [] | +| propose(IOracle.Request,IOracle.Response,address) | onlyOracle | +| finalizeRequest(IOracle.Request,IOracle.Response,address) | onlyOracle | | releaseUnutilizedResponse(IOracle.Request,IOracle.Response) | [] | BondEscalationModule | Function | Handler | | ------------------------------------------------------------------------------- | ------- | -| disputeResponse(IOracle.Request,IOracle.Response,IOracle.Dispute) | [] | -| onDisputeStatusChange(bytes32,IOracle.Request,IOracle.Response,IOracle.Dispute) | [] | +| disputeResponse(IOracle.Request,IOracle.Response,IOracle.Dispute) | onlyOracle | +| onDisputeStatusChange(bytes32,IOracle.Request,IOracle.Response,IOracle.Dispute) | onlyOracle | | pledgeForDispute(IOracle.Request, IOracle.Dispute) | [] | | pledgeAgainstDispute(IOracle.Request, IOracle.Dispute) | [] | | settleBondEscalation(IOracle.Request,IOracle.Response,IOracle.Dispute) | [] | @@ -100,13 +103,13 @@ BondEscalationModule CouncilArbitrator | Function | Handler | | --------------------------------------------------------- | ------- | -| resolve(IOracle.Request,IOracle.Response,IOracle.Dispute) | [] | +| resolve(IOracle.Request,IOracle.Response,IOracle.Dispute) | onlyArbitratorModule | | arbitrateDispute(bytes32,IOracle.DisputeStatus) | [] | EBOFinalityModule | Function | Handler | | --------------------------------------------------------- | ------- | -| finalizeRequest(IOracle.Request,IOracle.Response,address) | [] | +| finalizeRequest(IOracle.Request,IOracle.Response,address) | onlyOracle | | amendEpoch(uint256,string[],uint256[]) | [] | | addEBORequestCreator(IEBORequestCreator) | [] | | removeEBORequestCreator(IEBORequestCreator) | [] | @@ -119,20 +122,16 @@ HorizonAccountingExtension | pledge(address,IOracle.Request,IOracle.Dispute,IERC20,uint256) | [] | | onSettleBondEscalation(IOracle.Request,IOracle.Dispute,IERC20,uint256,uint256) | [] | | claimEscalationReward(bytes32,address) | [] | -| pay(bytes32,address,address,IERC20,uint256) | [] | -| bond(address,bytes32,IERC20,uint256) | [] | -| bond(address,bytes32,IERC20,uint256,address) | [] | -| release(address,bytes32,IERC20,uint256) | [] | +| pay(bytes32,address,address,IERC20,uint256) | onlyAllowedModule | +| bond(address,bytes32,IERC20,uint256) | onlyAllowedModule | +| bond(address,bytes32,IERC20,uint256,address) | onlyAllowedModule | +| release(address,bytes32,IERC20,uint256) | onlyAllowedModule | | slash(bytes32,uint256,uint256) | [] | | setMaxUsersToCheck(uint128) | [] | Arbitrable | Function | Handler | | --------------------------- | ------- | -| arbitrator() | [] | -| council() | [] | -| pendingCouncil() | [] | -| validateArbitrator(address) | [] | | setArbitrator(address) | [] | | setPendingCouncil(address) | [] | | confirmCouncil() | [] | diff --git a/test/invariants/handlers/HandlerBondEscalationModule.t.sol b/test/invariants/handlers/HandlerBondEscalationModule.t.sol index 791e280..1aec7a3 100644 --- a/test/invariants/handlers/HandlerBondEscalationModule.t.sol +++ b/test/invariants/handlers/HandlerBondEscalationModule.t.sol @@ -30,23 +30,12 @@ contract HandlerBondEscalationModule is BaseHandler { _ghost_disputeData[disputeId] = dispute; _ghost_bonds[disputer][requestId] = bond; _ghost_disputeStatuses[disputeId] = IOracle.DisputeStatus.Escalated; + _ghost_pledgesFor[disputer][disputeId] = 0; + _ghost_pledgesAgainst[disputer][disputeId] = 0; emit DisputeCreated(requestId, responseId, disputeId); } - function handleOnDisputeStatusChange(uint256 _requestSeed, uint256 _disputeIndex) external { - bytes32 requestId = _getRandomRequest(_requestSeed); - if (requestId == bytes32(0)) return; - - IOracle.Dispute memory dispute = _getRandomDispute(requestId, _disputeIndex); - if (dispute.requestId == bytes32(0)) return; - - bytes32 disputeId = keccak256(abi.encode(dispute)); - bondEscalationModule.onDisputeStatusChange( - disputeId, _ghost_requestData[requestId], _ghost_responseData[dispute.responseId], dispute - ); - } - function handlePledgeForDispute(uint256 _requestSeed, uint256 _disputeIndex, uint256 _actorSeed) external { bytes32 requestId = _getRandomRequest(_requestSeed); if (requestId == bytes32(0)) return; @@ -60,7 +49,8 @@ contract HandlerBondEscalationModule is BaseHandler { bondEscalationModule.pledgeForDispute(_ghost_requestData[requestId], dispute); bytes32 disputeId = keccak256(abi.encode(dispute)); - _ghost_pledgesFor[pledger][disputeId] += _boundAmount(1e18); + _ghost_pledgesFor[pledger][disputeId] += DISPUTE_BOND_SIZE; + _ghost_bonds[pledger][requestId] += DISPUTE_BOND_SIZE; // Track bond amount } function handlePledgeAgainstDispute(uint256 _requestSeed, uint256 _disputeIndex, uint256 _actorSeed) external { @@ -76,7 +66,8 @@ contract HandlerBondEscalationModule is BaseHandler { bondEscalationModule.pledgeAgainstDispute(_ghost_requestData[requestId], dispute); bytes32 disputeId = keccak256(abi.encode(dispute)); - _ghost_pledgesAgainst[pledger][disputeId] += _boundAmount(1e18); + _ghost_pledgesAgainst[pledger][disputeId] += DISPUTE_BOND_SIZE; + _ghost_bonds[pledger][requestId] += DISPUTE_BOND_SIZE; // Track bond amount } function handleSettleBondEscalation(uint256 _requestSeed, uint256 _disputeIndex) external { @@ -88,5 +79,13 @@ contract HandlerBondEscalationModule is BaseHandler { IOracle.Response memory response = _ghost_responseData[dispute.responseId]; bondEscalationModule.settleBondEscalation(_ghost_requestData[requestId], response, dispute); + + // Update ghost variables + bytes32 disputeId = keccak256(abi.encode(dispute)); + // Clear dispute pledges as they're now settled + delete _ghost_pledgesFor[dispute.disputer][disputeId]; + delete _ghost_pledgesAgainst[dispute.disputer][disputeId]; + // Update dispute status + _ghost_disputeStatuses[disputeId] = IOracle.DisputeStatus.NoResolution; } } diff --git a/test/invariants/handlers/HandlerBondedResponseModule.t.sol b/test/invariants/handlers/HandlerBondedResponseModule.t.sol index 53f36fc..3705ff8 100644 --- a/test/invariants/handlers/HandlerBondedResponseModule.t.sol +++ b/test/invariants/handlers/HandlerBondedResponseModule.t.sol @@ -4,46 +4,6 @@ pragma solidity 0.8.26; import {BaseHandler, IOracle} from './BaseHandler.t.sol'; contract HandlerBondedResponseModule is BaseHandler { - function handlePropose(uint256 _requestSeed, uint256 _blockNumber, uint256 _actorSeed) external { - bytes32 requestId = _getRandomRequest(_requestSeed); - if (requestId == bytes32(0) || !_ghost_validRequests[requestId]) return; - if (_ghost_activeResponses[requestId] != bytes32(0)) return; // Only one active response at a time - - // Create response data - address proposer = _pickActor(_actorSeed); - _blockNumber = _boundBlockNumber(_blockNumber); - - IOracle.Request memory request = _ghost_requestData[requestId]; - IOracle.Response memory response = - IOracle.Response({requestId: requestId, response: abi.encode(_blockNumber), proposer: proposer}); - - // Submit response - bondedResponseModule.propose(request, response, proposer); - - // Track response - bytes32 responseId = keccak256(abi.encode(response)); - _ghost_activeResponses[requestId] = responseId; - _ghost_responseData[responseId] = response; - - emit ResponseProposed(requestId, responseId); - } - - function handleFinalizeRequestResponseModule(uint256 _requestSeed) external { - bytes32 requestId = _getRandomRequest(_requestSeed); - if (requestId == bytes32(0) || !_ghost_validRequests[requestId]) return; - - bytes32 responseId = _ghost_activeResponses[requestId]; - if (responseId == bytes32(0)) return; - - IOracle.Response memory response = _ghost_responseData[responseId]; - if (_ghost_finalizedResponses[responseId]) return; - - bondedResponseModule.finalizeRequest(_ghost_requestData[requestId], response, response.proposer); - - _ghost_finalizedResponses[responseId] = true; - emit ResponseFinalized(requestId, responseId); - } - function handleReleaseUnutilizedResponse(uint256 _requestSeed) external { bytes32 requestId = _getRandomRequest(_requestSeed); if (requestId == bytes32(0)) return; @@ -52,5 +12,11 @@ contract HandlerBondedResponseModule is BaseHandler { if (response.requestId == bytes32(0)) return; bondedResponseModule.releaseUnutilizedResponse(_ghost_requestData[requestId], response); + + // Update ghost variables - clear response state + bytes32 responseId = keccak256(abi.encode(response)); + delete _ghost_activeResponses[requestId]; + delete _ghost_responseData[responseId]; + delete _ghost_bonds[response.proposer][requestId]; } } diff --git a/test/invariants/handlers/HandlerCouncilArbitrator.t.sol b/test/invariants/handlers/HandlerCouncilArbitrator.t.sol index b1129e0..9a8c0c3 100644 --- a/test/invariants/handlers/HandlerCouncilArbitrator.t.sol +++ b/test/invariants/handlers/HandlerCouncilArbitrator.t.sol @@ -4,17 +4,6 @@ pragma solidity 0.8.26; import {BaseHandler, IOracle} from './BaseHandler.t.sol'; contract HandlerCouncilArbitrator is BaseHandler { - function handleResolve(uint256 _requestSeed, uint256 _disputeIndex) external { - bytes32 requestId = _getRandomRequest(_requestSeed); - if (requestId == bytes32(0)) return; - - IOracle.Dispute memory dispute = _getRandomDispute(requestId, _disputeIndex); - if (dispute.requestId == bytes32(0)) return; - - IOracle.Response memory response = _ghost_responseData[dispute.responseId]; - councilArbitrator.resolve(_ghost_requestData[requestId], response, dispute); - } - function handleArbitrateDispute(uint256 _requestSeed, uint256 _disputeIndex, uint256 _statusSeed) external { bytes32 requestId = _getRandomRequest(_requestSeed); if (requestId == bytes32(0)) return; @@ -30,8 +19,14 @@ contract HandlerCouncilArbitrator is BaseHandler { ); councilArbitrator.arbitrateDispute(disputeId, status); + // Update ghost variables _ghost_disputeStatuses[disputeId] = status; + // If dispute lost, potentially update request finalization state + if (status == IOracle.DisputeStatus.Lost) { + _ghost_finalizedResponses[dispute.responseId] = true; + } + emit DisputeResolved(disputeId, status); } } diff --git a/test/invariants/handlers/HandlerEBOFinalityModule.t.sol b/test/invariants/handlers/HandlerEBOFinalityModule.t.sol index 26d7ecf..35eb801 100644 --- a/test/invariants/handlers/HandlerEBOFinalityModule.t.sol +++ b/test/invariants/handlers/HandlerEBOFinalityModule.t.sol @@ -4,17 +4,6 @@ pragma solidity 0.8.26; import {BaseHandler, IEBORequestCreator, IOracle} from './BaseHandler.t.sol'; contract HandlerEBOFinalityModule is BaseHandler { - function handleFinalizeRequestFinalityModule(uint256 _requestSeed) external { - bytes32 requestId = _getRandomRequest(_requestSeed); - if (requestId == bytes32(0) || !_ghost_validRequests[requestId]) return; - - bytes32 responseId = _ghost_activeResponses[requestId]; - if (responseId == bytes32(0)) return; - - IOracle.Response memory response = _ghost_responseData[responseId]; - eboFinalityModule.finalizeRequest(_ghost_requestData[requestId], response, response.proposer); - } - function handleAmendEpoch( uint256 _epoch, uint256[] calldata _chainIdSeeds, diff --git a/test/invariants/handlers/HandlerHorizonAccountingExtension.t.sol b/test/invariants/handlers/HandlerHorizonAccountingExtension.t.sol index fb6dfd1..5d1abde 100644 --- a/test/invariants/handlers/HandlerHorizonAccountingExtension.t.sol +++ b/test/invariants/handlers/HandlerHorizonAccountingExtension.t.sol @@ -55,51 +55,11 @@ contract HandlerHorizonAccountingExtension is BaseHandler { bytes32 disputeId = keccak256(abi.encode(dispute)); horizonAccountingExtension.claimEscalationReward(disputeId, pledger); - } - - function handlePay(uint256 _requestSeed, uint256 _payerSeed, uint256 _receiverSeed, uint256 _amount) external { - bytes32 requestId = _getRandomRequest(_requestSeed); - if (requestId == bytes32(0)) return; - - address payer = _pickActor(_payerSeed); - address receiver = _pickActor(_receiverSeed); - _amount = _boundAmount(_amount); - - horizonAccountingExtension.pay(requestId, payer, receiver, GRT, _amount); - } - - function handleBond(uint256 _bonderSeed, uint256 _requestSeed, uint256 _amount) external { - address bonder = _pickActor(_bonderSeed); - bytes32 requestId = _getRandomRequest(_requestSeed); - if (requestId == bytes32(0)) return; - - _amount = _boundAmount(_amount); - horizonAccountingExtension.bond(bonder, requestId, GRT, _amount); - } - function handleBondWithSender( - uint256 _bonderSeed, - uint256 _requestSeed, - uint256 _amount, - uint256 _senderSeed - ) external { - address bonder = _pickActor(_bonderSeed); - bytes32 requestId = _getRandomRequest(_requestSeed); - if (requestId == bytes32(0)) return; - - _amount = _boundAmount(_amount); - address sender = _pickActor(_senderSeed); - - horizonAccountingExtension.bond(bonder, requestId, GRT, _amount, sender); - } - - function handleRelease(uint256 _bonderSeed, uint256 _requestSeed, uint256 _amount) external { - address bonder = _pickActor(_bonderSeed); - bytes32 requestId = _getRandomRequest(_requestSeed); - if (requestId == bytes32(0)) return; - - _amount = _boundAmount(_amount); - horizonAccountingExtension.release(bonder, requestId, GRT, _amount); + // Update ghost variables - clear claimed rewards + delete _ghost_pledgesFor[pledger][disputeId]; + delete _ghost_pledgesAgainst[pledger][disputeId]; + delete _ghost_bonds[pledger][requestId]; } function handleSlash( @@ -119,6 +79,9 @@ contract HandlerHorizonAccountingExtension is BaseHandler { _maxUsersToCheck = bound(_maxUsersToCheck, _usersToSlash, 20); horizonAccountingExtension.slash(disputeId, _usersToSlash, _maxUsersToCheck); + + // Clear bonds for slashed users + delete _ghost_bonds[dispute.disputer][dispute.requestId]; } function handleSetMaxUsersToCheck(uint256 _maxUsers) external { diff --git a/test/invariants/handlers/HandlerOracle.t.sol b/test/invariants/handlers/HandlerOracle.t.sol index 1bff9c2..ba0e5f1 100644 --- a/test/invariants/handlers/HandlerOracle.t.sol +++ b/test/invariants/handlers/HandlerOracle.t.sol @@ -11,24 +11,6 @@ contract HandlerOracle is BaseHandler { return oracle.createRequest(_ghost_requestData[requestId], _previousId); } - function handleCreateRequests( - uint256[] calldata _requestSeeds, - bytes32[] calldata _previousIds - ) external returns (bytes32[] memory) { - if (_requestSeeds.length != _previousIds.length) { - return new bytes32[](0); - } - - IOracle.Request[] memory requests = new IOracle.Request[](_requestSeeds.length); - for (uint256 i = 0; i < _requestSeeds.length; i++) { - bytes32 requestId = _getRandomRequest(_requestSeeds[i]); - if (requestId == bytes32(0)) return new bytes32[](0); - requests[i] = _ghost_requestData[requestId]; - } - - return oracle.createRequests(requests, _previousIds); - } - function handleProposeResponse( uint256 _requestSeed, uint256 _blockNumber, @@ -131,6 +113,11 @@ contract HandlerOracle is BaseHandler { bytes32 disputeId = keccak256(abi.encode(dispute)); _ghost_disputeStatuses[disputeId] = status; + // If dispute resolved with Lost status, mark response as finalized + if (status == IOracle.DisputeStatus.Lost) { + _ghost_finalizedResponses[response.requestId] = true; + } + emit DisputeResolved(disputeId, status); } @@ -144,7 +131,27 @@ contract HandlerOracle is BaseHandler { IOracle.Response memory response = _ghost_responseData[responseId]; oracle.finalize(_ghost_requestData[requestId], response); + // Update ghost variables _ghost_finalizedResponses[responseId] = true; + delete _ghost_activeResponses[requestId]; // Clear active response + delete _ghost_disputeStatuses[responseId]; // Clear any dispute status + _ghost_validRequests[requestId] = false; // Mark request as no longer valid/active + + // If there were any disputes, clear their state + bytes32[] storage disputes = _ghost_disputes[requestId]; + for (uint256 i = 0; i < disputes.length; i++) { + bytes32 disputeId = disputes[i]; + delete _ghost_disputeData[disputeId]; + delete _ghost_disputeStatuses[disputeId]; + } + delete _ghost_disputes[requestId]; + + // Update bonds and pledges + address proposer = response.proposer; + if (proposer != address(0)) { + delete _ghost_bonds[proposer][requestId]; + } + emit ResponseFinalized(requestId, responseId); } } diff --git a/test/invariants/properties/PropertyEbo.t.sol b/test/invariants/properties/PropertyEbo.t.sol index 4d22216..da2bfa4 100644 --- a/test/invariants/properties/PropertyEbo.t.sol +++ b/test/invariants/properties/PropertyEbo.t.sol @@ -6,4 +6,11 @@ import {HandlerParent} from '../handlers/HandlerParent.t.sol'; contract PropertyEbo is HandlerParent { //solhint-disable no-empty-blocks constructor() {} + + /// @custom:property-id 1 + /// @custom:property Requester can always create a request as long as the same chainId/epoch isn't requested yet + function property_canAlwaysCreateRequest(uint256 _epoch, uint256 _chainId) external { + _epoch = _boundEpoch(_epoch); + string memory _chainId = _generateChainId(_chainId); + } } From c0ffeede46579f360bdf028677fa8212ee57bb49 Mon Sep 17 00:00:00 2001 From: drgorillamd <83670532+drgorillamd@users.noreply.github.com> Date: Wed, 13 Nov 2024 18:06:56 +0100 Subject: [PATCH 11/28] test(medusa): ghosts refactor --- test/invariants/handlers/BaseHandler.t.sol | 24 +++++++------- .../HandlerBondEscalationModule.t.sol | 32 ------------------- 2 files changed, 12 insertions(+), 44 deletions(-) diff --git a/test/invariants/handlers/BaseHandler.t.sol b/test/invariants/handlers/BaseHandler.t.sol index 51301fd..bcdfc01 100644 --- a/test/invariants/handlers/BaseHandler.t.sol +++ b/test/invariants/handlers/BaseHandler.t.sol @@ -10,28 +10,28 @@ contract BaseHandler is Setup, Actors { bytes32[] internal _ghost_requests; // Track request details - mapping(bytes32 => IOracle.Request) internal _ghost_requestData; + mapping(bytes32 _requestId => IOracle.Request _data) internal _ghost_requestData; // Track responses for requests - mapping(bytes32 => bytes32) internal _ghost_activeResponses; // requestId => responseId - mapping(bytes32 => IOracle.Response) internal _ghost_responseData; - mapping(bytes32 => bool) internal _ghost_finalizedResponses; + mapping(bytes32 _requestId => bytes32 _responseId) internal _ghost_activeResponses; // requestId => responseId + mapping(bytes32 _responseId => IOracle.Response _data) internal _ghost_responseData; + mapping(bytes32 _responseId => bool _isFinalized) internal _ghost_finalizedResponses; // Track disputes - mapping(bytes32 => bytes32[]) internal _ghost_disputes; // requestId => disputeIds - mapping(bytes32 => IOracle.Dispute) internal _ghost_disputeData; - mapping(bytes32 => IOracle.DisputeStatus) internal _ghost_disputeStatuses; + mapping(bytes32 _requestId => bytes32[] _disputeIds) internal _ghost_disputes; // requestId => disputeIds + mapping(bytes32 _disputeId => IOracle.Dispute _data) internal _ghost_disputeData; + mapping(bytes32 _disputeId => IOracle.DisputeStatus _status) internal _ghost_disputeStatuses; // Track which requests came from EBORequestCreator - mapping(bytes32 => bool) internal _ghost_validRequests; + mapping(bytes32 _requestId => bool _isFromRequestCreator) internal _ghost_validRequests; // Track chain IDs used per epoch to prevent duplicates - mapping(uint256 => mapping(string => bool)) internal _ghost_epochChainIds; + mapping(uint256 _epoch => mapping(string _chainId => bool _isRequested)) internal _ghost_epochChainIds; // Track bonds and pledges - mapping(address => mapping(bytes32 => uint256)) internal _ghost_bonds; - mapping(address => mapping(bytes32 => uint256)) internal _ghost_pledgesFor; - mapping(address => mapping(bytes32 => uint256)) internal _ghost_pledgesAgainst; + mapping(address _owner => mapping(bytes32 _requestId => uint256 _boundedAmount)) internal _ghost_bonds; + mapping(address _pledger => mapping(bytes32 _disputeId => uint256 _pledgedAmount)) internal _ghost_pledgesFor; + mapping(address _pledger => mapping(bytes32 _disputeId => uint256 _pledgedAmount)) internal _ghost_pledgesAgainst; // Helper functions function _boundEpoch(uint256 _epoch) internal view returns (uint256) { diff --git a/test/invariants/handlers/HandlerBondEscalationModule.t.sol b/test/invariants/handlers/HandlerBondEscalationModule.t.sol index 1aec7a3..f9c2ba0 100644 --- a/test/invariants/handlers/HandlerBondEscalationModule.t.sol +++ b/test/invariants/handlers/HandlerBondEscalationModule.t.sol @@ -4,38 +4,6 @@ pragma solidity 0.8.26; import {BaseHandler, IOracle} from './BaseHandler.t.sol'; contract HandlerBondEscalationModule is BaseHandler { - function handleDisputeResponseBondEscalationModule(uint256 _requestSeed, uint256 _actorSeed) external { - bytes32 requestId = _getRandomRequest(_requestSeed); - if (requestId == bytes32(0) || !_ghost_validRequests[requestId]) return; - - bytes32 responseId = _ghost_activeResponses[requestId]; - if (responseId == bytes32(0)) return; - - IOracle.Response memory response = _ghost_responseData[responseId]; - if (_ghost_finalizedResponses[responseId]) return; - - // Create dispute data - address disputer = _pickActor(_actorSeed); - uint256 bond = _boundAmount(1e18); - - IOracle.Dispute memory dispute = - IOracle.Dispute({disputer: disputer, proposer: msg.sender, responseId: responseId, requestId: requestId}); - - // Submit dispute - bondEscalationModule.disputeResponse(_ghost_requestData[requestId], response, dispute); - - // Track dispute - bytes32 disputeId = keccak256(abi.encode(dispute)); - _ghost_disputes[requestId].push(disputeId); - _ghost_disputeData[disputeId] = dispute; - _ghost_bonds[disputer][requestId] = bond; - _ghost_disputeStatuses[disputeId] = IOracle.DisputeStatus.Escalated; - _ghost_pledgesFor[disputer][disputeId] = 0; - _ghost_pledgesAgainst[disputer][disputeId] = 0; - - emit DisputeCreated(requestId, responseId, disputeId); - } - function handlePledgeForDispute(uint256 _requestSeed, uint256 _disputeIndex, uint256 _actorSeed) external { bytes32 requestId = _getRandomRequest(_requestSeed); if (requestId == bytes32(0)) return; From c0ffee6a1a1c72452ce120248ead811e4f7b0338 Mon Sep 17 00:00:00 2001 From: drgorillamd <83670532+drgorillamd@users.noreply.github.com> Date: Wed, 13 Nov 2024 21:02:16 +0100 Subject: [PATCH 12/28] test(medusa): more handler fixes --- test/invariants/PROPERTIES.md | 1 - test/invariants/handlers/BaseHandler.t.sol | 7 ++-- .../handlers/HandlerArbitrable.t.sol | 5 --- .../HandlerBondEscalationModule.t.sol | 6 +-- .../HandlerBondedResponseModule.t.sol | 2 +- .../handlers/HandlerCouncilArbitrator.t.sol | 2 - test/invariants/handlers/HandlerOracle.t.sol | 42 +++---------------- test/invariants/properties/PropertyEbo.t.sol | 8 ++-- 8 files changed, 16 insertions(+), 57 deletions(-) diff --git a/test/invariants/PROPERTIES.md b/test/invariants/PROPERTIES.md index 32b27a2..f015bff 100644 --- a/test/invariants/PROPERTIES.md +++ b/test/invariants/PROPERTIES.md @@ -146,5 +146,4 @@ Oracle | disputeResponse(Request,Response,Dispute) external returns (bytes32) | [] | | escalateDispute(Request,Response,Dispute) external | [] | | resolveDispute(Request,Response,Dispute) external | [] | -| updateDisputeStatus(Request,Response,Dispute,DisputeStatus) external | [] | | finalize(Request,Response) external | [] | diff --git a/test/invariants/handlers/BaseHandler.t.sol b/test/invariants/handlers/BaseHandler.t.sol index bcdfc01..da1edae 100644 --- a/test/invariants/handlers/BaseHandler.t.sol +++ b/test/invariants/handlers/BaseHandler.t.sol @@ -13,14 +13,13 @@ contract BaseHandler is Setup, Actors { mapping(bytes32 _requestId => IOracle.Request _data) internal _ghost_requestData; // Track responses for requests - mapping(bytes32 _requestId => bytes32 _responseId) internal _ghost_activeResponses; // requestId => responseId + mapping(bytes32 _requestId => bytes32[] _responsesId) internal _ghost_activeResponses; // requestId => responseId's mapping(bytes32 _responseId => IOracle.Response _data) internal _ghost_responseData; mapping(bytes32 _responseId => bool _isFinalized) internal _ghost_finalizedResponses; // Track disputes mapping(bytes32 _requestId => bytes32[] _disputeIds) internal _ghost_disputes; // requestId => disputeIds mapping(bytes32 _disputeId => IOracle.Dispute _data) internal _ghost_disputeData; - mapping(bytes32 _disputeId => IOracle.DisputeStatus _status) internal _ghost_disputeStatuses; // Track which requests came from EBORequestCreator mapping(bytes32 _requestId => bool _isFromRequestCreator) internal _ghost_validRequests; @@ -56,8 +55,8 @@ contract BaseHandler is Setup, Actors { return _ghost_requests[_seed % _ghost_requests.length]; } - function _getRandomActiveResponse(bytes32 _requestId) internal view returns (IOracle.Response memory) { - bytes32 responseId = _ghost_activeResponses[_requestId]; + function _getRandomActiveResponse(bytes32 _requestId, uint256 _seed) internal view returns (IOracle.Response memory) { + bytes32 responseId = _ghost_activeResponses[_requestId][_seed % _ghost_activeResponses[_requestId].length]; return _ghost_responseData[responseId]; } diff --git a/test/invariants/handlers/HandlerArbitrable.t.sol b/test/invariants/handlers/HandlerArbitrable.t.sol index 7fb7cfd..38a2f6d 100644 --- a/test/invariants/handlers/HandlerArbitrable.t.sol +++ b/test/invariants/handlers/HandlerArbitrable.t.sol @@ -4,11 +4,6 @@ pragma solidity 0.8.26; import {BaseHandler} from './BaseHandler.t.sol'; contract HandlerArbitrable is BaseHandler { - function handleValidateArbitrator(uint256 _actorSeed) external { - address caller = _pickActor(_actorSeed); - arbitrable.validateArbitrator(caller); - } - function handleSetArbitrator(uint256 _actorSeed) external { address newArbitrator = _pickActor(_actorSeed); arbitrable.setArbitrator(newArbitrator); diff --git a/test/invariants/handlers/HandlerBondEscalationModule.t.sol b/test/invariants/handlers/HandlerBondEscalationModule.t.sol index f9c2ba0..3861603 100644 --- a/test/invariants/handlers/HandlerBondEscalationModule.t.sol +++ b/test/invariants/handlers/HandlerBondEscalationModule.t.sol @@ -11,7 +11,7 @@ contract HandlerBondEscalationModule is BaseHandler { IOracle.Dispute memory dispute = _getRandomDispute(requestId, _disputeIndex); if (dispute.requestId == bytes32(0)) return; - if (_ghost_disputeStatuses[keccak256(abi.encode(dispute))] != IOracle.DisputeStatus.Escalated) return; + if (oracle.disputeStatus(keccak256(abi.encode(dispute))) != IOracle.DisputeStatus.Escalated) return; address pledger = _pickActor(_actorSeed); bondEscalationModule.pledgeForDispute(_ghost_requestData[requestId], dispute); @@ -28,7 +28,7 @@ contract HandlerBondEscalationModule is BaseHandler { IOracle.Dispute memory dispute = _getRandomDispute(requestId, _disputeIndex); if (dispute.requestId == bytes32(0)) return; - if (_ghost_disputeStatuses[keccak256(abi.encode(dispute))] != IOracle.DisputeStatus.Escalated) return; + if (oracle.disputeStatus(keccak256(abi.encode(dispute))) != IOracle.DisputeStatus.Escalated) return; address pledger = _pickActor(_actorSeed); bondEscalationModule.pledgeAgainstDispute(_ghost_requestData[requestId], dispute); @@ -53,7 +53,5 @@ contract HandlerBondEscalationModule is BaseHandler { // Clear dispute pledges as they're now settled delete _ghost_pledgesFor[dispute.disputer][disputeId]; delete _ghost_pledgesAgainst[dispute.disputer][disputeId]; - // Update dispute status - _ghost_disputeStatuses[disputeId] = IOracle.DisputeStatus.NoResolution; } } diff --git a/test/invariants/handlers/HandlerBondedResponseModule.t.sol b/test/invariants/handlers/HandlerBondedResponseModule.t.sol index 3705ff8..7a1822b 100644 --- a/test/invariants/handlers/HandlerBondedResponseModule.t.sol +++ b/test/invariants/handlers/HandlerBondedResponseModule.t.sol @@ -8,7 +8,7 @@ contract HandlerBondedResponseModule is BaseHandler { bytes32 requestId = _getRandomRequest(_requestSeed); if (requestId == bytes32(0)) return; - IOracle.Response memory response = _getRandomActiveResponse(requestId); + IOracle.Response memory response = _getRandomActiveResponse(requestId, _requestSeed); if (response.requestId == bytes32(0)) return; bondedResponseModule.releaseUnutilizedResponse(_ghost_requestData[requestId], response); diff --git a/test/invariants/handlers/HandlerCouncilArbitrator.t.sol b/test/invariants/handlers/HandlerCouncilArbitrator.t.sol index 9a8c0c3..ed08aa2 100644 --- a/test/invariants/handlers/HandlerCouncilArbitrator.t.sol +++ b/test/invariants/handlers/HandlerCouncilArbitrator.t.sol @@ -19,8 +19,6 @@ contract HandlerCouncilArbitrator is BaseHandler { ); councilArbitrator.arbitrateDispute(disputeId, status); - // Update ghost variables - _ghost_disputeStatuses[disputeId] = status; // If dispute lost, potentially update request finalization state if (status == IOracle.DisputeStatus.Lost) { diff --git a/test/invariants/handlers/HandlerOracle.t.sol b/test/invariants/handlers/HandlerOracle.t.sol index ba0e5f1..0714b44 100644 --- a/test/invariants/handlers/HandlerOracle.t.sol +++ b/test/invariants/handlers/HandlerOracle.t.sol @@ -20,7 +20,6 @@ contract HandlerOracle is BaseHandler { if (requestId == bytes32(0) || !_ghost_validRequests[requestId]) { return bytes32(0); } - if (_ghost_activeResponses[requestId] != bytes32(0)) return bytes32(0); address proposer = _pickActor(_actorSeed); _blockNumber = _boundBlockNumber(_blockNumber); @@ -32,7 +31,7 @@ contract HandlerOracle is BaseHandler { bytes32 responseId = oracle.proposeResponse(request, response); // Track response - _ghost_activeResponses[requestId] = responseId; + _ghost_activeResponses[requestId].push(responseId); _ghost_responseData[responseId] = response; emit ResponseProposed(requestId, responseId); @@ -46,8 +45,8 @@ contract HandlerOracle is BaseHandler { return bytes32(0); } - bytes32 responseId = _ghost_activeResponses[requestId]; - if (responseId == bytes32(0)) return bytes32(0); + if (_ghost_activeResponses[requestId].length == 0) return (bytes32(0)); + bytes32 responseId = _ghost_activeResponses[requestId][0]; IOracle.Response memory response = _ghost_responseData[responseId]; if (_ghost_finalizedResponses[responseId]) return bytes32(0); @@ -64,7 +63,6 @@ contract HandlerOracle is BaseHandler { _ghost_disputes[requestId].push(disputeId); _ghost_disputeData[disputeId] = dispute; _ghost_bonds[disputer][requestId] = bond; - _ghost_disputeStatuses[disputeId] = IOracle.DisputeStatus.Escalated; emit DisputeCreated(requestId, responseId, disputeId); @@ -78,7 +76,7 @@ contract HandlerOracle is BaseHandler { IOracle.Dispute memory dispute = _getRandomDispute(requestId, _disputeIndex); if (dispute.requestId == bytes32(0)) return; - if (_ghost_disputeStatuses[keccak256(abi.encode(dispute))] != IOracle.DisputeStatus.Escalated) return; + if (oracle.disputeStatus(keccak256(abi.encode(dispute))) != IOracle.DisputeStatus.Escalated) return; IOracle.Response memory response = _ghost_responseData[dispute.responseId]; oracle.escalateDispute(_ghost_requestData[requestId], response, dispute); @@ -95,38 +93,12 @@ contract HandlerOracle is BaseHandler { oracle.resolveDispute(_ghost_requestData[requestId], response, dispute); } - function handleUpdateDisputeStatus(uint256 _requestSeed, uint256 _disputeIndex, uint256 _statusSeed) external { - bytes32 requestId = _getRandomRequest(_requestSeed); - if (requestId == bytes32(0)) return; - - IOracle.Dispute memory dispute = _getRandomDispute(requestId, _disputeIndex); - if (dispute.requestId == bytes32(0)) return; - - // Generate a valid dispute status (NoResolution, Won, Lost) - IOracle.DisputeStatus status = IOracle.DisputeStatus( - bound(_statusSeed, uint8(IOracle.DisputeStatus.NoResolution), uint8(IOracle.DisputeStatus.Lost)) - ); - - IOracle.Response memory response = _ghost_responseData[dispute.responseId]; - oracle.updateDisputeStatus(_ghost_requestData[requestId], response, dispute, status); - - bytes32 disputeId = keccak256(abi.encode(dispute)); - _ghost_disputeStatuses[disputeId] = status; - - // If dispute resolved with Lost status, mark response as finalized - if (status == IOracle.DisputeStatus.Lost) { - _ghost_finalizedResponses[response.requestId] = true; - } - - emit DisputeResolved(disputeId, status); - } - function handleFinalize(uint256 _requestSeed) external { bytes32 requestId = _getRandomRequest(_requestSeed); if (requestId == bytes32(0)) return; - bytes32 responseId = _ghost_activeResponses[requestId]; - if (responseId == bytes32(0)) return; + if (_ghost_activeResponses[requestId].length == 0) return; + bytes32 responseId = _ghost_activeResponses[requestId][0]; IOracle.Response memory response = _ghost_responseData[responseId]; oracle.finalize(_ghost_requestData[requestId], response); @@ -134,7 +106,6 @@ contract HandlerOracle is BaseHandler { // Update ghost variables _ghost_finalizedResponses[responseId] = true; delete _ghost_activeResponses[requestId]; // Clear active response - delete _ghost_disputeStatuses[responseId]; // Clear any dispute status _ghost_validRequests[requestId] = false; // Mark request as no longer valid/active // If there were any disputes, clear their state @@ -142,7 +113,6 @@ contract HandlerOracle is BaseHandler { for (uint256 i = 0; i < disputes.length; i++) { bytes32 disputeId = disputes[i]; delete _ghost_disputeData[disputeId]; - delete _ghost_disputeStatuses[disputeId]; } delete _ghost_disputes[requestId]; diff --git a/test/invariants/properties/PropertyEbo.t.sol b/test/invariants/properties/PropertyEbo.t.sol index da2bfa4..4c2df8b 100644 --- a/test/invariants/properties/PropertyEbo.t.sol +++ b/test/invariants/properties/PropertyEbo.t.sol @@ -9,8 +9,8 @@ contract PropertyEbo is HandlerParent { /// @custom:property-id 1 /// @custom:property Requester can always create a request as long as the same chainId/epoch isn't requested yet - function property_canAlwaysCreateRequest(uint256 _epoch, uint256 _chainId) external { - _epoch = _boundEpoch(_epoch); - string memory _chainId = _generateChainId(_chainId); - } + // function property_canAlwaysCreateRequest(uint256 _epoch, uint256 _chainId) external { + // _epoch = _boundEpoch(_epoch); + // string memory _chainId = _generateChainId(_chainId); + // } } From c0ffeee2576ebc8d34207a905fc491a3e2e79c46 Mon Sep 17 00:00:00 2001 From: drgorillamd <83670532+drgorillamd@users.noreply.github.com> Date: Wed, 20 Nov 2024 21:56:26 +0100 Subject: [PATCH 13/28] test(medusa): properties md update --- test/invariants/PROPERTIES.md | 106 +++++++++++++++++++--------------- 1 file changed, 59 insertions(+), 47 deletions(-) diff --git a/test/invariants/PROPERTIES.md b/test/invariants/PROPERTIES.md index f015bff..1654482 100644 --- a/test/invariants/PROPERTIES.md +++ b/test/invariants/PROPERTIES.md @@ -12,55 +12,23 @@ Prophet modules in use (some modified from the example repo): - AccessControl: every external function is gated, for Horizon operators (ie `caller` is either msg.sender or msg.sender is authorized as operator for `caller`) - -- Requester - - Can always create a request - - only one chainId/epoch can be requested at a time (a tuple can have second request if finalized without answer) - -- Proposer - - Can always send answer before the deadline if enough token to bound in Horizon staking contract AND if any previous response is disputed OR no response at all - - Can escalate MAX ESCALATION times - - Every escalation creates a new tying buffer for further escalation (even if past deadline) - -- Disputer - - Can always dispute if before finalisation/during dispute window, if enough token to bound in Horizon staking and not previously disputed - - only first disputed response is escalated (others go to resolution) - - Can escalate MAX ESCALATION times - - every escalation creates a new tying buffer for further escalation (even if past deadline) - -- Pledgers: - - can pledge on any active dispute or resolution, during tying buffer/before deadline, if it’s that side’s turn - - Can only pledge one pledge at a time (you can only surpass other team by one pledge at a time), first to tie then to out-pledge (always 2 ties by side) - -- Protocol - - finalise only after deadline - - no possible way for a given actor to use another one’s bonded token (no bonding or pledging/claiming on behalf of someone else if not allowed in the Horison staking contract) - - bonded amount only accessible by one requestId - - disputeId and responseId can only be tied to a given requestId - - arbitrator: can always settled a dispute if not finalised (can be a no resolution) - - -- disputer - -wins → his money + proposer bonded amt -loose loose all -no resolution his money (when no pledging or max escalation on both side or other resolution module logic if only dispute module) - -- pledger -wins → their money + enemy -no resolution -> their money - -**winning determined by *pledgers* (b, c)** - -bonded dispute goes to resolution if: escalateDispute or tie - ## Properties & Invariants -| Id | Properties | Type | -| --- | ---------- | ---- | -| | requester can always create a request | | -| | there can only be one active request per chainId/epoch at a time | | - +| Id | Properties | Type | Tested | +| --- | ------------------------------------------------------------------------------------------------------------------------------------- | ---- | ------ | +| 1 | requester can always create a request | | [ ] | +| 2 | there can only be one active request per chainId/epoch at a time | | [ ] | +| 3 | a proposer can always propose an answer before the deadline, if no response has been submitted | | [ ] | +| 4 | a proposer can always propose an answer before the deadline, if previous response is disputted and has staked | | [ ] | +| 5 | a proposer or a disputer can escalate max MAX_ESCALATION times, each time creating a new tying buffer | | [ ] | +| 6 | a disputer can always dispute a response before the finalisation, if no previous dispute has been made | | [ ] | +| 7 | a disputer can only escalate the first disputed response | | [ ] | +| 8 | a pledger can only pledge for the correct side for an active dispure or resolution, during the tying buffer or before the deadline | | [ ] | +| 9 | an arbitrator can always settle a dispute if it has not been finalised yet | | [ ] | +| 10 | an answer can only be finalized after the deadline | | [ ] | +| 11 | bonded token can never be used on behalf of someone else, unless allowed by the Horizon staking contract | | [ ] | +| 12 | each bonded amount can only be tied to one requestId | | [ ] | +| 13 | each disputeId and responseId can only be tied to one requestId | | [ ] | ## Handler coverage @@ -147,3 +115,47 @@ Oracle | escalateDispute(Request,Response,Dispute) external | [] | | resolveDispute(Request,Response,Dispute) external | [] | | finalize(Request,Response) external | [] | + + + + +- Requester + - Can always create a request + - only one chainId/epoch can be requested at a time (a tuple can have second request if finalized without answer) + +- Proposer + - Can always send answer before the deadline if enough token to bound in Horizon staking contract AND if any previous response is disputed OR no response at all + - Can escalate MAX ESCALATION times + - Every escalation creates a new tying buffer for further escalation (even if past deadline) + +- Disputer + - Can always dispute if before finalisation/during dispute window, if enough token to bound in Horizon staking and not previously disputed + - only first disputed response is escalated (others go to resolution) + - Can escalate MAX ESCALATION times + - every escalation creates a new tying buffer for further escalation (even if past deadline) + +- Pledgers: + - can pledge on any active dispute or resolution, during tying buffer/before deadline, if it’s that side’s turn + - Can only pledge one pledge at a time (you can only surpass other team by one pledge at a time), first to tie then to out-pledge (always 2 ties by side) + +- Protocol + - finalise only after deadline + - no possible way for a given actor to use another one’s bonded token (no bonding or pledging/claiming on behalf of someone else if not allowed in the Horison staking contract) + - bonded amount only accessible by one requestId + - disputeId and responseId can only be tied to a given requestId + - arbitrator: can always settled a dispute if not finalised (can be a no resolution) + + +- disputer + +wins → his money + proposer bonded amt +loose loose all +no resolution his money (when no pledging or max escalation on both side or other resolution module logic if only dispute module) + +- pledger +wins → their money + enemy +no resolution -> their money + +**winning determined by *pledgers* (b, c)** + +bonded dispute goes to resolution if: escalateDispute or tie From 9c8dce2e52e95c34340f90d03416338f0f588b76 Mon Sep 17 00:00:00 2001 From: 0xJabberwock <0xjabberwock@defi.sucks> Date: Thu, 28 Nov 2024 08:12:50 -0300 Subject: [PATCH 14/28] test(medusa): requester properties (#57) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit # 🤖 Linear Closes GRT-XXX --------- Co-authored-by: drgorillamd <83670532+drgorillamd@users.noreply.github.com> Co-authored-by: Simon Something /DrGoNoGo <83670532+simon-something@users.noreply.github.com> --- .solhint.tests.json | 2 +- medusa.json | 4 +- test/invariants/FuzzTest.t.sol | 5 +- test/invariants/Setup.t.sol | 108 +++++++++++++- test/invariants/handlers/BaseHandler.t.sol | 66 +++++---- .../HandlerBondEscalationModule.t.sol | 22 ++- .../HandlerBondedResponseModule.t.sol | 7 +- .../handlers/HandlerCouncilArbitrator.t.sol | 6 +- .../handlers/HandlerEBOFinalityModule.t.sol | 6 +- .../handlers/HandlerEBORequestCreator.t.sol | 89 +++++------ .../HandlerHorizonAccountingExtension.t.sol | 50 ++++--- test/invariants/handlers/HandlerOracle.t.sol | 30 ++-- test/invariants/handlers/HandlerParent.t.sol | 1 - test/invariants/helpers/FuzzERC20.sol | 2 +- .../invariants/helpers/MockEpochManager.t.sol | 10 +- .../helpers/MockHorizonStaking.t.sol | 17 ++- test/invariants/helpers/Utils.t.sol | 120 ++++++++++++++- .../properties/PropertyDispute.t.sol | 138 ++++++++++++++++++ test/invariants/properties/PropertyEbo.t.sol | 16 -- .../properties/PropertyFinalize.t.sol | 29 ++++ .../properties/PropertyParent.t.sol | 12 +- .../properties/PropertyProposer.t.sol | 45 ++++++ .../properties/PropertyRequester.t.sol | 78 ++++++++++ .../properties/PropertySanityCheck.t.sol | 101 ------------- 24 files changed, 680 insertions(+), 284 deletions(-) create mode 100644 test/invariants/properties/PropertyDispute.t.sol delete mode 100644 test/invariants/properties/PropertyEbo.t.sol create mode 100644 test/invariants/properties/PropertyFinalize.t.sol create mode 100644 test/invariants/properties/PropertyProposer.t.sol create mode 100644 test/invariants/properties/PropertyRequester.t.sol delete mode 100644 test/invariants/properties/PropertySanityCheck.t.sol diff --git a/.solhint.tests.json b/.solhint.tests.json index fb26b4e..04950e4 100644 --- a/.solhint.tests.json +++ b/.solhint.tests.json @@ -10,7 +10,7 @@ "var-name-mixedcase": "off", "const-name-snakecase": "off", "no-inline-assembly": "off", - "no-empty-blocks": "error", + "no-empty-blocks": "off", "definition-name-capwords": "off", "named-parameters-function": "off", "no-global-import": "off", diff --git a/medusa.json b/medusa.json index 146d4a0..06d20b7 100644 --- a/medusa.json +++ b/medusa.json @@ -9,7 +9,7 @@ "corpusDirectory": "test/invariants/corpus", "coverageEnabled": true, "targetContracts": ["FuzzTest"], - "predeployedContracts": {}, + "predeployedContracts": { "ValidatorLib": "0xc0ffee" }, "targetContractsBalances": [], "constructorArgs": {}, "deployerAddress": "0x30000", @@ -76,7 +76,7 @@ "target": "test/invariants/FuzzTest.t.sol", "solcVersion": "", "exportDirectory": "", - "args": ["--compile-libraries=(ValidatorLib,0xf0)"] + "args": ["--compile-libraries=(ValidatorLib,0xc0ffee)"] } }, "logging": { diff --git a/test/invariants/FuzzTest.t.sol b/test/invariants/FuzzTest.t.sol index ce7a9b5..a2a24a9 100644 --- a/test/invariants/FuzzTest.t.sol +++ b/test/invariants/FuzzTest.t.sol @@ -4,7 +4,6 @@ pragma solidity 0.8.26; import {PropertyParent} from './properties/PropertyParent.t.sol'; contract FuzzTest is PropertyParent { - function test_debug() public { - this.property_sanityCheck(); - } + //solhint-disable no-empty-blocks + function test_debug() public {} } diff --git a/test/invariants/Setup.t.sol b/test/invariants/Setup.t.sol index 5d8a97d..f46eddf 100644 --- a/test/invariants/Setup.t.sol +++ b/test/invariants/Setup.t.sol @@ -71,7 +71,7 @@ contract Setup is Utils { IEpochManager internal epochManager; // Constants - uint256 internal constant START_EPOCH = 1000; + uint256 internal immutable START_EPOCH = block.timestamp; uint64 internal constant MIN_THAWING_PERIOD = 1 days; uint128 internal constant INITIAL_MAX_USERS_TO_CHECK = 10; uint32 internal constant MAX_VERIFIER_CUT = 1_000_000; @@ -88,10 +88,12 @@ contract Setup is Utils { uint256 internal constant TYING_BUFFER = 3 days; uint256 internal constant DISPUTE_DISPUTE_WINDOW = 2 weeks; + string[] internal INITIAL_CHAINS = ['mainnet', 'optimism', 'arbitrum']; + constructor() { // Deploy mock contracts GRT = IERC20(address(new FuzzERC20())); - epochManager = IEpochManager(address(new MockEpochManager(START_EPOCH))); + epochManager = IEpochManager(address(new MockEpochManager())); horizonStaking = IHorizonStaking(address(new MockHorizonStaking(GRT))); // Deploy core contracts @@ -157,12 +159,15 @@ contract Setup is Utils { horizonAccountingExtension.approveModule(address(bondEscalationModule)); // Set up initial chain IDs - eboRequestCreator.addChain('mainnet'); - eboRequestCreator.addChain('optimism'); - eboRequestCreator.addChain('arbitrum'); + for (uint256 i; i < INITIAL_CHAINS.length; i++) { + eboRequestCreator.addChain(INITIAL_CHAINS[i]); + } // Set up initial module parameters _setupModuleParameters(); + + // System health check + _sanityCheck(); } function _setupModuleParameters() internal { @@ -205,4 +210,97 @@ contract Setup is Utils { // Set finality module eboRequestCreator.setFinalityModuleData(address(eboFinalityModule)); } + + /// @custom:property-id 0 + /// @custom:property Check if eboRequestCreator has the correct properties, including the ones set after its initial deployment + function _sanityCheck() internal { + assertEq(address(eboRequestCreator.ORACLE()), address(oracle), 'prop-0: wrong oracle address'); + + assertEq(address(eboRequestCreator.ARBITRABLE()), address(arbitrable), 'prop-0: wrong arbitrable address'); + + assertEq(eboRequestCreator.START_EPOCH(), START_EPOCH, 'prop-0: wrong start epoch'); + + assertEq(address(eboRequestCreator.epochManager()), address(epochManager), 'prop-0: wrong epoch manager address'); + + IOracle.Request memory initialRequestStored = eboRequestCreator.getRequestData(); + + assertEq( + initialRequestStored.requestModule, address(eboRequestModule), 'prop-0: wrong request module in initialRequest' + ); + + assertEq( + initialRequestStored.responseModule, + address(bondedResponseModule), + 'prop-0: wrong response module in initialRequest' + ); + + assertEq( + initialRequestStored.disputeModule, address(bondEscalationModule), 'prop-0: wrong disputeModule in initialRequest' + ); + + assertEq( + initialRequestStored.resolutionModule, + address(arbitratorModule), + 'prop-0: wrong resolutionModule in initialRequest' + ); + + assertEq( + initialRequestStored.finalityModule, address(eboFinalityModule), 'prop-0: wrong finalityModule in initialRequest' + ); + + assertEq(initialRequestStored.requester, address(eboRequestCreator), 'prop-0: wrong requester in initialRequest'); + + assertEq( + initialRequestStored.requestModuleData, + abi.encode( + IEBORequestModule.RequestParameters({ + epoch: START_EPOCH, + chainId: 'mainnet', + accountingExtension: IAccountingExtension(address(horizonAccountingExtension)), + paymentAmount: PAYMENT_AMOUNT + }) + ), + 'prop-0: wrong requestModuleData in initialRequest' + ); + + assertEq( + initialRequestStored.responseModuleData, + abi.encode( + IBondedResponseModule.RequestParameters({ + accountingExtension: IAccountingExtension(address(horizonAccountingExtension)), + bondToken: GRT, + bondSize: RESPONSE_BOND_SIZE, + deadline: RESPONSE_DEADLINE, + disputeWindow: RESPONSE_DISPUTE_WINDOW + }) + ), + 'prop-0: wrong responseModuleData module data in initialRequest' + ); + + assertEq( + initialRequestStored.disputeModuleData, + abi.encode( + IBondEscalationModule.RequestParameters({ + accountingExtension: IBondEscalationAccounting(address(horizonAccountingExtension)), + bondToken: GRT, + bondSize: DISPUTE_BOND_SIZE, + maxNumberOfEscalations: MAX_NB_ESCALATION, + bondEscalationDeadline: DISPUTE_DEADLINE, + tyingBuffer: TYING_BUFFER, + disputeWindow: DISPUTE_DISPUTE_WINDOW + }) + ), + 'prop-0: wrong disputeModuleData in initialRequest' + ); + + assertEq( + initialRequestStored.resolutionModuleData, + abi.encode(IArbitratorModule.RequestParameters({arbitrator: address(councilArbitrator)})), + 'prop-0: wrong resolutionModuleData in initialRequest' + ); + + assertEq(initialRequestStored.finalityModuleData, bytes(''), 'prop-0: wrong finality module data in initialRequest'); + + assertEq(initialRequestStored.nonce, 0, 'prop-0: wrong nonce in initialRequest'); + } } diff --git a/test/invariants/handlers/BaseHandler.t.sol b/test/invariants/handlers/BaseHandler.t.sol index da1edae..a2ac9ef 100644 --- a/test/invariants/handlers/BaseHandler.t.sol +++ b/test/invariants/handlers/BaseHandler.t.sol @@ -8,6 +8,11 @@ import {Actors} from '../helpers/Actors.t.sol'; contract BaseHandler is Setup, Actors { // Track all created request IDs bytes32[] internal _ghost_requests; + // Track all created request IDs per epoch and chainId + mapping(uint256 _epoch => mapping(string _chainId => bytes32[] _requestIds)) internal _ghost_requestsPerEpochChainId; + + // Track the chainId->chain (reverse the hash) + mapping(bytes32 _hash => string _chain) internal _ghost_chainIdToChain; // Track request details mapping(bytes32 _requestId => IOracle.Request _data) internal _ghost_requestData; @@ -20,53 +25,64 @@ contract BaseHandler is Setup, Actors { // Track disputes mapping(bytes32 _requestId => bytes32[] _disputeIds) internal _ghost_disputes; // requestId => disputeIds mapping(bytes32 _disputeId => IOracle.Dispute _data) internal _ghost_disputeData; + mapping(bytes32 _disputeId => bool _escalated) internal _ghost_escalatedDisputes; // Track which requests came from EBORequestCreator mapping(bytes32 _requestId => bool _isFromRequestCreator) internal _ghost_validRequests; - // Track chain IDs used per epoch to prevent duplicates - mapping(uint256 _epoch => mapping(string _chainId => bool _isRequested)) internal _ghost_epochChainIds; - // Track bonds and pledges mapping(address _owner => mapping(bytes32 _requestId => uint256 _boundedAmount)) internal _ghost_bonds; mapping(address _pledger => mapping(bytes32 _disputeId => uint256 _pledgedAmount)) internal _ghost_pledgesFor; mapping(address _pledger => mapping(bytes32 _disputeId => uint256 _pledgedAmount)) internal _ghost_pledgesAgainst; // Helper functions - function _boundEpoch(uint256 _epoch) internal view returns (uint256) { - return bound(_epoch, START_EPOCH, START_EPOCH + 1000); - } - - function _boundAmount(uint256 _amount) internal pure returns (uint256) { - return bound(_amount, 1, 1_000_000e18); - } + function _getRandomChain(uint256 _seed) internal view returns (string memory) { + bytes32[] memory chainIds = eboRequestCreator.getAllowedChainIds(); + if (chainIds.length == 0) return ''; - function _boundBlockNumber(uint256 _blockNumber) internal view returns (uint256) { - return bound(_blockNumber, block.number - 1000, block.number); + return _ghost_chainIdToChain[chainIds[_seed % chainIds.length]]; } - function _generateChainId(uint256 _seed) internal pure returns (string memory) { - string[3] memory chains = ['mainnet', 'optimism', 'arbitrum']; - return chains[_seed % 3]; - } - - function _getRandomRequest(uint256 _seed) internal view returns (bytes32) { - if (_ghost_requests.length == 0) return bytes32(0); - return _ghost_requests[_seed % _ghost_requests.length]; + function _getRandomRequest(uint256 _seed) internal view returns (bytes32, IOracle.Request memory) { + if (_ghost_requests.length == 0) { + return ( + bytes32(0), + IOracle.Request( + 0, + address(0), + address(0), + address(0), + address(0), + address(0), + address(0), + bytes(''), + bytes(''), + bytes(''), + bytes(''), + bytes('') + ) + ); + } + bytes32 requestId = _ghost_requests[_seed % _ghost_requests.length]; + return (requestId, _ghost_requestData[requestId]); } - function _getRandomActiveResponse(bytes32 _requestId, uint256 _seed) internal view returns (IOracle.Response memory) { + function _getRandomActiveResponse( + bytes32 _requestId, + uint256 _seed + ) internal view returns (bytes32, IOracle.Response memory) { bytes32 responseId = _ghost_activeResponses[_requestId][_seed % _ghost_activeResponses[_requestId].length]; - return _ghost_responseData[responseId]; + + return (responseId, _ghost_responseData[responseId]); } - function _getRandomDispute(bytes32 _requestId, uint256 _seed) internal view returns (IOracle.Dispute memory) { + function _getRandomDispute(bytes32 _requestId, uint256 _seed) internal view returns (bytes32, IOracle.Dispute memory) { bytes32[] storage disputes = _ghost_disputes[_requestId]; if (disputes.length == 0) { - return IOracle.Dispute(address(0), address(0), bytes32(0), 0); + return (bytes32(0), IOracle.Dispute(address(0), address(0), bytes32(0), 0)); } bytes32 disputeId = disputes[_seed % disputes.length]; - return _ghost_disputeData[disputeId]; + return (disputeId, _ghost_disputeData[disputeId]); } // Events to track state changes diff --git a/test/invariants/handlers/HandlerBondEscalationModule.t.sol b/test/invariants/handlers/HandlerBondEscalationModule.t.sol index 3861603..00dbc0c 100644 --- a/test/invariants/handlers/HandlerBondEscalationModule.t.sol +++ b/test/invariants/handlers/HandlerBondEscalationModule.t.sol @@ -5,51 +5,47 @@ import {BaseHandler, IOracle} from './BaseHandler.t.sol'; contract HandlerBondEscalationModule is BaseHandler { function handlePledgeForDispute(uint256 _requestSeed, uint256 _disputeIndex, uint256 _actorSeed) external { - bytes32 requestId = _getRandomRequest(_requestSeed); + (bytes32 requestId, IOracle.Request memory request) = _getRandomRequest(_requestSeed); if (requestId == bytes32(0)) return; - IOracle.Dispute memory dispute = _getRandomDispute(requestId, _disputeIndex); + (bytes32 disputeId, IOracle.Dispute memory dispute) = _getRandomDispute(requestId, _disputeIndex); if (dispute.requestId == bytes32(0)) return; if (oracle.disputeStatus(keccak256(abi.encode(dispute))) != IOracle.DisputeStatus.Escalated) return; address pledger = _pickActor(_actorSeed); - bondEscalationModule.pledgeForDispute(_ghost_requestData[requestId], dispute); + bondEscalationModule.pledgeForDispute(request, dispute); - bytes32 disputeId = keccak256(abi.encode(dispute)); _ghost_pledgesFor[pledger][disputeId] += DISPUTE_BOND_SIZE; _ghost_bonds[pledger][requestId] += DISPUTE_BOND_SIZE; // Track bond amount } function handlePledgeAgainstDispute(uint256 _requestSeed, uint256 _disputeIndex, uint256 _actorSeed) external { - bytes32 requestId = _getRandomRequest(_requestSeed); + (bytes32 requestId, IOracle.Request memory request) = _getRandomRequest(_requestSeed); if (requestId == bytes32(0)) return; - IOracle.Dispute memory dispute = _getRandomDispute(requestId, _disputeIndex); + (bytes32 disputeId, IOracle.Dispute memory dispute) = _getRandomDispute(requestId, _disputeIndex); if (dispute.requestId == bytes32(0)) return; if (oracle.disputeStatus(keccak256(abi.encode(dispute))) != IOracle.DisputeStatus.Escalated) return; address pledger = _pickActor(_actorSeed); - bondEscalationModule.pledgeAgainstDispute(_ghost_requestData[requestId], dispute); + bondEscalationModule.pledgeAgainstDispute(request, dispute); - bytes32 disputeId = keccak256(abi.encode(dispute)); _ghost_pledgesAgainst[pledger][disputeId] += DISPUTE_BOND_SIZE; _ghost_bonds[pledger][requestId] += DISPUTE_BOND_SIZE; // Track bond amount } function handleSettleBondEscalation(uint256 _requestSeed, uint256 _disputeIndex) external { - bytes32 requestId = _getRandomRequest(_requestSeed); + (bytes32 requestId, IOracle.Request memory request) = _getRandomRequest(_requestSeed); if (requestId == bytes32(0)) return; - IOracle.Dispute memory dispute = _getRandomDispute(requestId, _disputeIndex); + (bytes32 disputeId, IOracle.Dispute memory dispute) = _getRandomDispute(requestId, _disputeIndex); if (dispute.requestId == bytes32(0)) return; IOracle.Response memory response = _ghost_responseData[dispute.responseId]; - bondEscalationModule.settleBondEscalation(_ghost_requestData[requestId], response, dispute); + bondEscalationModule.settleBondEscalation(request, response, dispute); - // Update ghost variables - bytes32 disputeId = keccak256(abi.encode(dispute)); // Clear dispute pledges as they're now settled delete _ghost_pledgesFor[dispute.disputer][disputeId]; delete _ghost_pledgesAgainst[dispute.disputer][disputeId]; diff --git a/test/invariants/handlers/HandlerBondedResponseModule.t.sol b/test/invariants/handlers/HandlerBondedResponseModule.t.sol index 7a1822b..f73719a 100644 --- a/test/invariants/handlers/HandlerBondedResponseModule.t.sol +++ b/test/invariants/handlers/HandlerBondedResponseModule.t.sol @@ -5,16 +5,15 @@ import {BaseHandler, IOracle} from './BaseHandler.t.sol'; contract HandlerBondedResponseModule is BaseHandler { function handleReleaseUnutilizedResponse(uint256 _requestSeed) external { - bytes32 requestId = _getRandomRequest(_requestSeed); + (bytes32 requestId, IOracle.Request memory request) = _getRandomRequest(_requestSeed); if (requestId == bytes32(0)) return; - IOracle.Response memory response = _getRandomActiveResponse(requestId, _requestSeed); + (bytes32 responseId, IOracle.Response memory response) = _getRandomActiveResponse(requestId, _requestSeed); if (response.requestId == bytes32(0)) return; - bondedResponseModule.releaseUnutilizedResponse(_ghost_requestData[requestId], response); + bondedResponseModule.releaseUnutilizedResponse(request, response); // Update ghost variables - clear response state - bytes32 responseId = keccak256(abi.encode(response)); delete _ghost_activeResponses[requestId]; delete _ghost_responseData[responseId]; delete _ghost_bonds[response.proposer][requestId]; diff --git a/test/invariants/handlers/HandlerCouncilArbitrator.t.sol b/test/invariants/handlers/HandlerCouncilArbitrator.t.sol index ed08aa2..92a4415 100644 --- a/test/invariants/handlers/HandlerCouncilArbitrator.t.sol +++ b/test/invariants/handlers/HandlerCouncilArbitrator.t.sol @@ -5,14 +5,12 @@ import {BaseHandler, IOracle} from './BaseHandler.t.sol'; contract HandlerCouncilArbitrator is BaseHandler { function handleArbitrateDispute(uint256 _requestSeed, uint256 _disputeIndex, uint256 _statusSeed) external { - bytes32 requestId = _getRandomRequest(_requestSeed); + (bytes32 requestId,) = _getRandomRequest(_requestSeed); if (requestId == bytes32(0)) return; - IOracle.Dispute memory dispute = _getRandomDispute(requestId, _disputeIndex); + (bytes32 disputeId, IOracle.Dispute memory dispute) = _getRandomDispute(requestId, _disputeIndex); if (dispute.requestId == bytes32(0)) return; - bytes32 disputeId = keccak256(abi.encode(dispute)); - // Generate a valid dispute status (NoResolution, Won, Lost) IOracle.DisputeStatus status = IOracle.DisputeStatus( bound(_statusSeed, uint8(IOracle.DisputeStatus.NoResolution), uint8(IOracle.DisputeStatus.Lost)) diff --git a/test/invariants/handlers/HandlerEBOFinalityModule.t.sol b/test/invariants/handlers/HandlerEBOFinalityModule.t.sol index 35eb801..27daab5 100644 --- a/test/invariants/handlers/HandlerEBOFinalityModule.t.sol +++ b/test/invariants/handlers/HandlerEBOFinalityModule.t.sol @@ -6,18 +6,18 @@ import {BaseHandler, IEBORequestCreator, IOracle} from './BaseHandler.t.sol'; contract HandlerEBOFinalityModule is BaseHandler { function handleAmendEpoch( uint256 _epoch, + uint256 _blockNumber, uint256[] calldata _chainIdSeeds, uint256[] calldata _blockNumbers ) external { if (_chainIdSeeds.length != _blockNumbers.length) return; - _epoch = _boundEpoch(_epoch); string[] memory chainIds = new string[](_chainIdSeeds.length); uint256[] memory blockNums = new uint256[](_blockNumbers.length); for (uint256 i = 0; i < _chainIdSeeds.length; i++) { - chainIds[i] = _generateChainId(_chainIdSeeds[i]); - blockNums[i] = _boundBlockNumber(_blockNumbers[i]); + chainIds[i] = _getRandomChain(_chainIdSeeds[i]); + blockNums[i] = _blockNumber; } eboFinalityModule.amendEpoch(_epoch, chainIds, blockNums); diff --git a/test/invariants/handlers/HandlerEBORequestCreator.t.sol b/test/invariants/handlers/HandlerEBORequestCreator.t.sol index 2104da1..c2c9a53 100644 --- a/test/invariants/handlers/HandlerEBORequestCreator.t.sol +++ b/test/invariants/handlers/HandlerEBORequestCreator.t.sol @@ -2,22 +2,36 @@ pragma solidity 0.8.26; import { + ArbitratorModule, BaseHandler, + BondEscalationModule, + BondedResponseModule, + EBOFinalityModule, + EBORequestModule, + IAccountingExtension, IArbitratorModule, + IBondEscalationAccounting, IBondEscalationModule, IBondedResponseModule, IEBORequestModule, IEpochManager, - IOracle + IOracle, + MockEpochManager } from './BaseHandler.t.sol'; contract HandlerEBORequestCreator is BaseHandler { + constructor() { + // Initialize the ghost mapping, allowing to reverse lookup the chain + for (uint256 i; i < INITIAL_CHAINS.length; i++) { + _ghost_chainIdToChain[keccak256(abi.encodePacked(INITIAL_CHAINS[i]))] = INITIAL_CHAINS[i]; + } + } + function handleCreateRequest(uint256 _epoch, uint256 _chainIdSeed) external { - _epoch = _boundEpoch(_epoch); - string memory chainId = _generateChainId(_chainIdSeed); + _epoch = bound(_epoch, START_EPOCH, block.timestamp); - // Prevent duplicate chainId for same epoch - if (_ghost_epochChainIds[_epoch][chainId]) return; + string memory chainId = _getRandomChain(_chainIdSeed); + if (bytes(chainId).length == 0) return; // Create request via EBORequestCreator eboRequestCreator.createRequest(_epoch, chainId); @@ -25,67 +39,34 @@ contract HandlerEBORequestCreator is BaseHandler { // Get current request data IOracle.Request memory requestData = eboRequestCreator.getRequestData(); + // Build request module parameters + IEBORequestModule.RequestParameters memory requestParams = + abi.decode(requestData.requestModuleData, (IEBORequestModule.RequestParameters)); + requestParams.epoch = _epoch; + requestParams.chainId = chainId; + requestData.requestModuleData = abi.encode(requestParams); + // Calculate request ID using same logic as Oracle bytes32 requestId = keccak256(abi.encode(requestData)); // Track the request _ghost_requests.push(requestId); + _ghost_requestsPerEpochChainId[_epoch][chainId].push(requestId); _ghost_requestData[requestId] = requestData; _ghost_validRequests[requestId] = true; - _ghost_epochChainIds[_epoch][chainId] = true; emit RequestCreated(requestId, _epoch, chainId); } - function handleAddChain(uint256 _chainIdSeed) external { - string memory chainId = _generateChainId(_chainIdSeed); - eboRequestCreator.addChain(chainId); - } - - function handleRemoveChain(uint256 _chainIdSeed) external { - string memory chainId = _generateChainId(_chainIdSeed); - eboRequestCreator.removeChain(chainId); - } - - function handleSetRequestModuleData( - uint256 _actorSeed, - IEBORequestModule.RequestParameters calldata _params - ) external { - address module = _pickActor(_actorSeed); - eboRequestCreator.setRequestModuleData(module, _params); - } + function handleAddChain(string memory _chainId) external { + eboRequestCreator.addChain(_chainId); - function handleSetResponseModuleData( - uint256 _actorSeed, - IBondedResponseModule.RequestParameters calldata _params - ) external { - address module = _pickActor(_actorSeed); - eboRequestCreator.setResponseModuleData(module, _params); + // Track the chain + _ghost_chainIdToChain[keccak256(abi.encodePacked(_chainId))] = _chainId; } - function handleSetDisputeModuleData( - uint256 _actorSeed, - IBondEscalationModule.RequestParameters calldata _params - ) external { - address module = _pickActor(_actorSeed); - eboRequestCreator.setDisputeModuleData(module, _params); - } - - function handleSetResolutionModuleData( - uint256 _actorSeed, - IArbitratorModule.RequestParameters calldata _params - ) external { - address module = _pickActor(_actorSeed); - eboRequestCreator.setResolutionModuleData(module, _params); - } - - function handleSetFinalityModuleData(uint256 _actorSeed) external { - address module = _pickActor(_actorSeed); - eboRequestCreator.setFinalityModuleData(module); - } - - function handleSetEpochManager(uint256 _actorSeed) external { - address manager = _pickActor(_actorSeed); - eboRequestCreator.setEpochManager(IEpochManager(manager)); - } + // function handleRemoveChain(uint256 _chainIdSeed) external { + // string memory chainId = _getRandomChainId(_chainIdSeed); + // eboRequestCreator.removeChain(chainId); + // } } diff --git a/test/invariants/handlers/HandlerHorizonAccountingExtension.t.sol b/test/invariants/handlers/HandlerHorizonAccountingExtension.t.sol index 5d1abde..b5abc2e 100644 --- a/test/invariants/handlers/HandlerHorizonAccountingExtension.t.sol +++ b/test/invariants/handlers/HandlerHorizonAccountingExtension.t.sol @@ -15,15 +15,15 @@ contract HandlerHorizonAccountingExtension is BaseHandler { } function handlePledge(uint256 _pledgerSeed, uint256 _requestSeed, uint256 _disputeIndex, uint256 _amount) external { - address pledger = _pickActor(_pledgerSeed); - bytes32 requestId = _getRandomRequest(_requestSeed); + (bytes32 requestId, IOracle.Request memory request) = _getRandomRequest(_requestSeed); if (requestId == bytes32(0)) return; - IOracle.Dispute memory dispute = _getRandomDispute(requestId, _disputeIndex); + (, IOracle.Dispute memory dispute) = _getRandomDispute(requestId, _disputeIndex); if (dispute.requestId == bytes32(0)) return; - _amount = _boundAmount(_amount); - horizonAccountingExtension.pledge(pledger, _ghost_requestData[requestId], dispute, GRT, _amount); + address pledger = _pickActor(_pledgerSeed); + + horizonAccountingExtension.pledge(pledger, request, dispute, GRT, _amount); } function handleOnSettleBondEscalation( @@ -32,27 +32,23 @@ contract HandlerHorizonAccountingExtension is BaseHandler { uint256 _amountPerPledger, uint256 _winningPledgersLength ) external { - bytes32 requestId = _getRandomRequest(_requestSeed); + (bytes32 requestId, IOracle.Request memory request) = _getRandomRequest(_requestSeed); if (requestId == bytes32(0)) return; - IOracle.Dispute memory dispute = _getRandomDispute(requestId, _disputeIndex); + (, IOracle.Dispute memory dispute) = _getRandomDispute(requestId, _disputeIndex); if (dispute.requestId == bytes32(0)) return; - _amountPerPledger = _boundAmount(_amountPerPledger); - horizonAccountingExtension.onSettleBondEscalation( - _ghost_requestData[requestId], dispute, GRT, _amountPerPledger, _winningPledgersLength - ); + horizonAccountingExtension.onSettleBondEscalation(request, dispute, GRT, _amountPerPledger, _winningPledgersLength); } function handleClaimEscalationReward(uint256 _requestSeed, uint256 _disputeIndex, uint256 _actorSeed) external { - bytes32 requestId = _getRandomRequest(_requestSeed); + (bytes32 requestId,) = _getRandomRequest(_requestSeed); if (requestId == bytes32(0)) return; - IOracle.Dispute memory dispute = _getRandomDispute(requestId, _disputeIndex); + (bytes32 disputeId, IOracle.Dispute memory dispute) = _getRandomDispute(requestId, _disputeIndex); if (dispute.requestId == bytes32(0)) return; address pledger = _pickActor(_actorSeed); - bytes32 disputeId = keccak256(abi.encode(dispute)); horizonAccountingExtension.claimEscalationReward(disputeId, pledger); @@ -68,13 +64,12 @@ contract HandlerHorizonAccountingExtension is BaseHandler { uint256 _usersToSlash, uint256 _maxUsersToCheck ) external { - bytes32 requestId = _getRandomRequest(_requestSeed); + (bytes32 requestId,) = _getRandomRequest(_requestSeed); if (requestId == bytes32(0)) return; - IOracle.Dispute memory dispute = _getRandomDispute(requestId, _disputeIndex); + (bytes32 disputeId, IOracle.Dispute memory dispute) = _getRandomDispute(requestId, _disputeIndex); if (dispute.requestId == bytes32(0)) return; - bytes32 disputeId = keccak256(abi.encode(dispute)); _usersToSlash = bound(_usersToSlash, 1, 10); _maxUsersToCheck = bound(_maxUsersToCheck, _usersToSlash, 20); @@ -88,4 +83,25 @@ contract HandlerHorizonAccountingExtension is BaseHandler { _maxUsers = bound(_maxUsers, 1, 100); horizonAccountingExtension.setMaxUsersToCheck(uint128(_maxUsers)); } + + function _stakeGRT(uint256 _amount) internal { + GRT.transfer(msg.sender, _amount); + + vm.prank(msg.sender); + GRT.approve(address(horizonStaking), _amount); + + vm.prank(msg.sender); + horizonStaking.stake(_amount); + } + + function _provisionGRT(uint256 _amount) internal { + vm.prank(msg.sender); + horizonStaking.provision( + msg.sender, + address(horizonAccountingExtension), + _amount, + horizonAccountingExtension.MAX_VERIFIER_CUT(), + horizonAccountingExtension.MIN_THAWING_PERIOD() + ); + } } diff --git a/test/invariants/handlers/HandlerOracle.t.sol b/test/invariants/handlers/HandlerOracle.t.sol index 0714b44..9bf8c05 100644 --- a/test/invariants/handlers/HandlerOracle.t.sol +++ b/test/invariants/handlers/HandlerOracle.t.sol @@ -5,10 +5,10 @@ import {BaseHandler, IOracle} from './BaseHandler.t.sol'; contract HandlerOracle is BaseHandler { function handleCreateRequest(uint256 _requestSeed, bytes32 _previousId) external returns (bytes32) { - bytes32 requestId = _getRandomRequest(_requestSeed); + (bytes32 requestId, IOracle.Request memory request) = _getRandomRequest(_requestSeed); if (requestId == bytes32(0)) return bytes32(0); - return oracle.createRequest(_ghost_requestData[requestId], _previousId); + return oracle.createRequest(request, _previousId); } function handleProposeResponse( @@ -16,15 +16,13 @@ contract HandlerOracle is BaseHandler { uint256 _blockNumber, uint256 _actorSeed ) external returns (bytes32) { - bytes32 requestId = _getRandomRequest(_requestSeed); + (bytes32 requestId, IOracle.Request memory request) = _getRandomRequest(_requestSeed); if (requestId == bytes32(0) || !_ghost_validRequests[requestId]) { return bytes32(0); } address proposer = _pickActor(_actorSeed); - _blockNumber = _boundBlockNumber(_blockNumber); - IOracle.Request memory request = _ghost_requestData[requestId]; IOracle.Response memory response = IOracle.Response({requestId: requestId, response: abi.encode(_blockNumber), proposer: proposer}); @@ -40,7 +38,7 @@ contract HandlerOracle is BaseHandler { } function handleDisputeResponseOracle(uint256 _requestSeed, uint256 _actorSeed) external returns (bytes32) { - bytes32 requestId = _getRandomRequest(_requestSeed); + (bytes32 requestId, IOracle.Request memory request) = _getRandomRequest(_requestSeed); if (requestId == bytes32(0) || !_ghost_validRequests[requestId]) { return bytes32(0); } @@ -52,12 +50,12 @@ contract HandlerOracle is BaseHandler { if (_ghost_finalizedResponses[responseId]) return bytes32(0); address disputer = _pickActor(_actorSeed); - uint256 bond = _boundAmount(1e18); + uint256 bond = DISPUTE_BOND_SIZE; IOracle.Dispute memory dispute = IOracle.Dispute({disputer: disputer, proposer: response.proposer, requestId: requestId, responseId: responseId}); - bytes32 disputeId = oracle.disputeResponse(_ghost_requestData[requestId], response, dispute); + bytes32 disputeId = oracle.disputeResponse(request, response, dispute); // Track dispute _ghost_disputes[requestId].push(disputeId); @@ -70,38 +68,38 @@ contract HandlerOracle is BaseHandler { } function handleEscalateDispute(uint256 _requestSeed, uint256 _disputeIndex) external { - bytes32 requestId = _getRandomRequest(_requestSeed); + (bytes32 requestId, IOracle.Request memory request) = _getRandomRequest(_requestSeed); if (requestId == bytes32(0)) return; - IOracle.Dispute memory dispute = _getRandomDispute(requestId, _disputeIndex); + (, IOracle.Dispute memory dispute) = _getRandomDispute(requestId, _disputeIndex); if (dispute.requestId == bytes32(0)) return; if (oracle.disputeStatus(keccak256(abi.encode(dispute))) != IOracle.DisputeStatus.Escalated) return; IOracle.Response memory response = _ghost_responseData[dispute.responseId]; - oracle.escalateDispute(_ghost_requestData[requestId], response, dispute); + oracle.escalateDispute(request, response, dispute); } function handleResolveDispute(uint256 _requestSeed, uint256 _disputeIndex) external { - bytes32 requestId = _getRandomRequest(_requestSeed); + (bytes32 requestId, IOracle.Request memory request) = _getRandomRequest(_requestSeed); if (requestId == bytes32(0)) return; - IOracle.Dispute memory dispute = _getRandomDispute(requestId, _disputeIndex); + (, IOracle.Dispute memory dispute) = _getRandomDispute(requestId, _disputeIndex); if (dispute.requestId == bytes32(0)) return; IOracle.Response memory response = _ghost_responseData[dispute.responseId]; - oracle.resolveDispute(_ghost_requestData[requestId], response, dispute); + oracle.resolveDispute(request, response, dispute); } function handleFinalize(uint256 _requestSeed) external { - bytes32 requestId = _getRandomRequest(_requestSeed); + (bytes32 requestId, IOracle.Request memory request) = _getRandomRequest(_requestSeed); if (requestId == bytes32(0)) return; if (_ghost_activeResponses[requestId].length == 0) return; bytes32 responseId = _ghost_activeResponses[requestId][0]; IOracle.Response memory response = _ghost_responseData[responseId]; - oracle.finalize(_ghost_requestData[requestId], response); + oracle.finalize(request, response); // Update ghost variables _ghost_finalizedResponses[responseId] = true; diff --git a/test/invariants/handlers/HandlerParent.t.sol b/test/invariants/handlers/HandlerParent.t.sol index 33b3297..aecc706 100644 --- a/test/invariants/handlers/HandlerParent.t.sol +++ b/test/invariants/handlers/HandlerParent.t.sol @@ -2,7 +2,6 @@ pragma solidity 0.8.26; import {HandlerArbitrable} from './HandlerArbitrable.t.sol'; - import {HandlerBondEscalationModule} from './HandlerBondEscalationModule.t.sol'; import {HandlerBondedResponseModule} from './HandlerBondedResponseModule.t.sol'; import {HandlerCouncilArbitrator} from './HandlerCouncilArbitrator.t.sol'; diff --git a/test/invariants/helpers/FuzzERC20.sol b/test/invariants/helpers/FuzzERC20.sol index ed42f9d..cdbd9f4 100644 --- a/test/invariants/helpers/FuzzERC20.sol +++ b/test/invariants/helpers/FuzzERC20.sol @@ -13,7 +13,7 @@ contract FuzzERC20 is ERC20 { function transfer(address to, uint256 amount) public override returns (bool) { address owner = _msgSender(); - // FuzzTest has an infinite mint + // FuzzTest contract has an infinite mint if (owner == testContract) { _mint(testContract, amount); } diff --git a/test/invariants/helpers/MockEpochManager.t.sol b/test/invariants/helpers/MockEpochManager.t.sol index ffd54ea..5e311d0 100644 --- a/test/invariants/helpers/MockEpochManager.t.sol +++ b/test/invariants/helpers/MockEpochManager.t.sol @@ -2,13 +2,7 @@ pragma solidity 0.8.26; contract MockEpochManager { - uint256 public currentEpoch; - - constructor(uint256 _startEpoch) { - currentEpoch = _startEpoch; - } - - function setEpoch(uint256 _epoch) external { - currentEpoch = _epoch; + function currentEpoch() external view returns (uint256) { + return block.timestamp; } } diff --git a/test/invariants/helpers/MockHorizonStaking.t.sol b/test/invariants/helpers/MockHorizonStaking.t.sol index 3ab32a3..0092f51 100644 --- a/test/invariants/helpers/MockHorizonStaking.t.sol +++ b/test/invariants/helpers/MockHorizonStaking.t.sol @@ -7,6 +7,7 @@ import {IHorizonStaking} from 'interfaces/external/IHorizonStaking.sol'; contract MockHorizonStaking { IERC20 public immutable GRT; mapping(address => mapping(address => IHorizonStaking.Provision)) public provisions; + mapping(address => uint256) public stakes; constructor(IERC20 _grt) { GRT = _grt; @@ -36,9 +37,21 @@ contract MockHorizonStaking { maxVerifierCutPending: 0, thawingPeriodPending: 0 }); + + stakes[_serviceProvider] -= _tokens; + } + + function thaw(address _serviceProvider, address _verifier, uint256 tokens) external { + provisions[_serviceProvider][_verifier].tokensThawing += tokens; + } + + function stake(uint256 _amount) external { + stakes[msg.sender] += _amount; + GRT.transferFrom(msg.sender, address(this), _amount); } - function slash(address, uint256, uint256 _tokensVerifier, address _verifierDestination) external { - GRT.transfer(_verifierDestination, _tokensVerifier); + function slash(address _serviceProvider, uint256 _tokens, uint256 _tokensVerifier, address _verifier) external { + provisions[_serviceProvider][_verifier].tokensThawing -= _tokens; + GRT.transfer(_verifier, _tokensVerifier); } } diff --git a/test/invariants/helpers/Utils.t.sol b/test/invariants/helpers/Utils.t.sol index b74fbd4..9470618 100644 --- a/test/invariants/helpers/Utils.t.sol +++ b/test/invariants/helpers/Utils.t.sol @@ -21,10 +21,9 @@ contract Utils { return genAddress; } - // same as forge-std + // same as forge-std, except for min/max validation (we swap) function bound(uint256 x, uint256 min, uint256 max) internal pure returns (uint256 result) { - //solhint-disable custom-errors - require(min <= max, 'StdUtils bound(uint256,uint256,uint256): Max is less than min.'); + if (min > max) (min, max) = (max, min); uint256 UINT256_MAX = 2 ** 256 - 1; @@ -68,6 +67,17 @@ contract Utils { } } + function assertNotEq(uint256 a, uint256 b) internal { + assertNotEq(a, b, 'assertNotEq: a == b'); + } + + function assertNotEq(uint256 a, uint256 b, string memory reason) internal { + if (a == b) { + emit TestFailure(reason); + assert(false); + } + } + function assertEq(address a, address b) internal { assertEq(a, b, 'assertEq: a != b'); } @@ -79,6 +89,39 @@ contract Utils { } } + function assertNotEq(address a, address b) internal { + assertNotEq(a, b, 'assertNotEq: a == b'); + } + + function assertNotEq(address a, address b, string memory reason) internal { + if (a == b) { + emit TestFailure(reason); + assert(false); + } + } + + function assertEq(bytes32 a, bytes32 b) internal { + assertEq(a, b, 'assertEq: a != b'); + } + + function assertEq(bytes32 a, bytes32 b, string memory reason) internal { + if (a != b) { + emit TestFailure(reason); + assert(false); + } + } + + function assertNotEq(bytes32 a, bytes32 b) internal { + assertNotEq(a, b, 'assertNotEq: a == b'); + } + + function assertNotEq(bytes32 a, bytes32 b, string memory reason) internal { + if (a == b) { + emit TestFailure(reason); + assert(false); + } + } + function assertEq(bytes memory a, bytes memory b) internal { assertEq(a, b, 'assertEq: a != b'); } @@ -96,6 +139,66 @@ contract Utils { } } + function assertNotEq(bytes memory a, bytes memory b) internal { + assertNotEq(a, b, 'assertNotEq: a == b'); + } + + function assertNotEq(bytes memory a, bytes memory b, string memory reason) internal { + if (a.length == b.length) { + for (uint256 i = 0; i < a.length; i++) { + if (a[i] != b[i]) { + return; + } + } + emit TestFailure(reason); + assert(false); + } + } + + function assertLt(uint256 a, uint256 b) internal { + assertLt(a, b, 'assertLt: a >= b'); + } + + function assertLt(uint256 a, uint256 b, string memory reason) internal { + if (a >= b) { + emit TestFailure(reason); + assert(false); + } + } + + function assertLte(uint256 a, uint256 b) internal { + assertLte(a, b, 'assertLte: a > b'); + } + + function assertLte(uint256 a, uint256 b, string memory reason) internal { + if (a > b) { + emit TestFailure(reason); + assert(false); + } + } + + function assertGt(uint256 a, uint256 b) internal { + assertGt(a, b, 'assertGt: a <= b'); + } + + function assertGt(uint256 a, uint256 b, string memory reason) internal { + if (a <= b) { + emit TestFailure(reason); + assert(false); + } + } + + function assertGte(uint256 a, uint256 b) internal { + assertGte(a, b, 'assertGte: a < b'); + } + + function assertGte(uint256 a, uint256 b, string memory reason) internal { + if (a < b) { + emit TestFailure(reason); + assert(false); + } + } + function assertTrue(bool a) internal { assertTrue(a, 'assertTrue: !a'); } @@ -106,4 +209,15 @@ contract Utils { assert(false); } } + + function assertFalse(bool a) internal { + assertFalse(a, 'assertFalse: a'); + } + + function assertFalse(bool a, string memory reason) internal { + if (a) { + emit TestFailure(reason); + assert(false); + } + } } diff --git a/test/invariants/properties/PropertyDispute.t.sol b/test/invariants/properties/PropertyDispute.t.sol new file mode 100644 index 0000000..ac698e2 --- /dev/null +++ b/test/invariants/properties/PropertyDispute.t.sol @@ -0,0 +1,138 @@ +// SPDX-License-Identifier: MIT +pragma solidity 0.8.26; + +import {IEBORequestModule, IOracle} from '../Setup.t.sol'; +import {HandlerParent} from '../handlers/HandlerParent.t.sol'; + +contract PropertyDispute is HandlerParent { + /// @custom:property-id 6 + /// @custom:property Disputer can always dispute a response before the finalisation, if no previous dispute has been made. + /// @custom:property-id 13 + /// @custom:property Each disputeId and responseId can only be tied to one requestId + function property_disputerCanAlwaysCreateDispute(uint256 _requestIdSeed, uint256 _responseIdSeed) public { + // Pick random Response + (bytes32 _requestId, IOracle.Request memory _requestData) = _getRandomRequest(_requestIdSeed); + (bytes32 _responseId, IOracle.Response memory _responseData) = _getRandomActiveResponse(_requestId, _responseIdSeed); + + IOracle.Dispute memory _disputeData = IOracle.Dispute({ + disputer: msg.sender, + proposer: _responseData.proposer, + responseId: _responseId, + requestId: _requestId + }); + + // Stake some GRT in Horizon + _stakeGRT(DISPUTE_BOND_SIZE); + _provisionGRT(DISPUTE_BOND_SIZE); + + vm.prank(msg.sender); + try oracle.disputeResponse(_requestData, _responseData, _disputeData) returns (bytes32 _disputeId) { + // check if no previous dispute + assertEq(_ghost_disputes[_requestId].length, 0, 'property 6: new dispute duplicate'); + + // check the disputeId isn't tied to another requestId + // property 13 + assertEq(_ghost_disputeData[_disputeId].requestId, bytes32(0), 'Property 13: disputeId tied to another requestId'); + + // add to ghost disputes + _ghost_disputes[_responseId].push(_disputeId); + _ghost_disputeData[_disputeId] = _disputeData; + } catch { + // check that there was a previous dispute, or...? + assertTrue(_ghost_disputes[_responseId].length > 0, 'property 6: fails but no previous active dispute'); + } + } + + /// @custom:property-id 7 + /// @custom:property A disputer can only escalate the first disputed response + function prop_disputerEscalateFirstDisputedResponse( + uint256 _requestIdSeed, + uint256 _responseIdSeed, + uint256 _disputeSeed + ) public { + _stakeGRT(DISPUTE_BOND_SIZE); + + // Pick random Dispute + (bytes32 _requestId, IOracle.Request memory _requestData) = _getRandomRequest(_requestIdSeed); + (bytes32 _responseId, IOracle.Response memory _responseData) = _getRandomActiveResponse(_requestId, _responseIdSeed); + (bytes32 _disputeId, IOracle.Dispute memory _disputeData) = _getRandomDispute(_requestId, _disputeSeed); + + // Escalate it + vm.prank(msg.sender); + try oracle.escalateDispute(_requestData, _responseData, _disputeData) { + // check that the dispute is the first one + assertEq(_ghost_activeResponses[_requestId][0], _disputeData.requestId, 'property 7: not first dispute'); + } catch { + // not first dispute or + // not past the bond escalation deadline + // past deadline/tying buffer or + // already escalated or + // bond not tied or + // + } + } + + /// @custom:property-id 8a + /// @custom:property A pledger can only pledge for the correct side for an active dispure or resolution, during the tying buffer or before the deadline + function prop_pledgerCanPledgeFor(uint256 _requestIdSeed, uint256 _disputeSeed) public { + _stakeGRT(DISPUTE_BOND_SIZE); + + // Pick random dispute + (bytes32 _requestId, IOracle.Request memory _requestData) = _getRandomRequest(_requestIdSeed); + (bytes32 _disputeId, IOracle.Dispute memory _disputeData) = _getRandomDispute(_requestId, _disputeSeed); + + vm.prank(msg.sender); + try bondEscalationModule.pledgeForDispute(_requestData, _disputeData) { + assertTrue(_ghost_escalatedDisputes[_disputeId], 'property 8a: pledging for a dispute not escalated'); + } catch { + // !_ghost_escalatedDisputes or + // past deadline/tying buffer or + // already pledged this turn or + // + } + } + + /// @custom:property-id 8b + /// @custom:property A pledger can only pledge for the correct side for an active dispure or resolution, during the tying buffer or before the deadline + function prop_pledgerCanPledgeAgainst(uint256 _requestIdSeed, uint256 _disputeSeed) public { + _stakeGRT(DISPUTE_BOND_SIZE); + + // Pick random dispute + (bytes32 _requestId, IOracle.Request memory _requestData) = _getRandomRequest(_requestIdSeed); + (bytes32 _disputeId, IOracle.Dispute memory _disputeData) = _getRandomDispute(_requestId, _disputeSeed); + + vm.prank(msg.sender); + try bondEscalationModule.pledgeAgainstDispute(_requestData, _disputeData) { + assertTrue(_ghost_escalatedDisputes[_disputeId], 'property 8a: pledging for a dispute not escalated'); + } catch { + // !_ghost_escalatedDisputes or + // past deadline/tying buffer or + // already pledged this turn or + // + } + } + + /// @custom:property-id 9 + /// @custom:property An arbitrator can always settle a dispute if it has not been finalised yet + function prop_arbitratorCanSettle(uint256 _requestIdSeed, uint256 _disputeSeed, uint256 _whoWonSeed) public { + // Pick random dispute + (bytes32 _requestId,) = _getRandomRequest(_requestIdSeed); + (bytes32 _disputeId,) = _getRandomDispute(_requestId, _disputeSeed); + + // Pick random outcome (won, lost, noResolution) + IOracle.DisputeStatus _whoWon = IOracle.DisputeStatus( + bound(_whoWonSeed, uint256(IOracle.DisputeStatus.Won), uint256(IOracle.DisputeStatus.NoResolution)) + ); + + // This test contract is the default arbitrator + try councilArbitrator.arbitrateDispute(_disputeId, _whoWon) { + // Dispute is finalised, with _whoWon + // + // ghost updates + } catch { + // not arbitrator or + // + // + } + } +} diff --git a/test/invariants/properties/PropertyEbo.t.sol b/test/invariants/properties/PropertyEbo.t.sol deleted file mode 100644 index 4c2df8b..0000000 --- a/test/invariants/properties/PropertyEbo.t.sol +++ /dev/null @@ -1,16 +0,0 @@ -// SPDX-License-Identifier: MIT -pragma solidity 0.8.26; - -import {HandlerParent} from '../handlers/HandlerParent.t.sol'; - -contract PropertyEbo is HandlerParent { - //solhint-disable no-empty-blocks - constructor() {} - - /// @custom:property-id 1 - /// @custom:property Requester can always create a request as long as the same chainId/epoch isn't requested yet - // function property_canAlwaysCreateRequest(uint256 _epoch, uint256 _chainId) external { - // _epoch = _boundEpoch(_epoch); - // string memory _chainId = _generateChainId(_chainId); - // } -} diff --git a/test/invariants/properties/PropertyFinalize.t.sol b/test/invariants/properties/PropertyFinalize.t.sol new file mode 100644 index 0000000..934614f --- /dev/null +++ b/test/invariants/properties/PropertyFinalize.t.sol @@ -0,0 +1,29 @@ +// SPDX-License-Identifier: MIT +pragma solidity 0.8.26; + +import {IEBORequestModule, IOracle} from '../Setup.t.sol'; +import {HandlerParent} from '../handlers/HandlerParent.t.sol'; + +contract PropertyFinalize is HandlerParent { + /// @custom:property-id 10 + /// @custom:property An answer can only be finalized after the deadline + function property_finalizeAfterDeadline(uint256 _requestIdSeed, uint256 _responseIdSeed) public { + // Pick random Response + (bytes32 _requestId, IOracle.Request memory _requestData) = _getRandomRequest(_requestIdSeed); + (bytes32 _responseId, IOracle.Response memory _responseData) = _getRandomActiveResponse(_requestId, _responseIdSeed); + + vm.prank(msg.sender); + try oracle.finalize(_requestData, _responseData) { + // After deadline + // + // Update ghosts + } catch { + // Before response deadline or + // No response if there is one or + // Unresolved disputed or + // + } + } + + // TODO: consider adding property for releasing unfinazible ones? +} diff --git a/test/invariants/properties/PropertyParent.t.sol b/test/invariants/properties/PropertyParent.t.sol index 5e6eeda..2e3a558 100644 --- a/test/invariants/properties/PropertyParent.t.sol +++ b/test/invariants/properties/PropertyParent.t.sol @@ -1,10 +1,12 @@ // SPDX-License-Identifier: MIT pragma solidity 0.8.26; -import {PropertyEbo} from './PropertyEbo.t.sol'; -import {PropertySanityCheck} from './PropertySanityCheck.t.sol'; +import {PropertyDispute} from './PropertyDispute.t.sol'; -contract PropertyParent is PropertyEbo, PropertySanityCheck { - //solhint-disable no-empty-blocks - constructor() {} +import {PropertyFinalize} from './PropertyFinalize.t.sol'; +import {PropertyProposer} from './PropertyProposer.t.sol'; +import {PropertyRequester} from './PropertyRequester.t.sol'; + +contract PropertyParent is PropertyRequester, PropertyProposer, PropertyDispute, PropertyFinalize { +// | 11 | bonded token can never be used on behalf of someone else, unless allowed by the Horizon staking contract | | [ ] | } diff --git a/test/invariants/properties/PropertyProposer.t.sol b/test/invariants/properties/PropertyProposer.t.sol new file mode 100644 index 0000000..4f95ee2 --- /dev/null +++ b/test/invariants/properties/PropertyProposer.t.sol @@ -0,0 +1,45 @@ +// SPDX-License-Identifier: MIT +pragma solidity 0.8.26; + +import {IOracle} from '../Setup.t.sol'; +import {HandlerParent} from '../handlers/HandlerParent.t.sol'; + +contract PropertyProposer is HandlerParent { + /// @custom:property-id 3 + /// @custom:property A proposer can always propose an answer before the deadline, if no response has been submitted + /// @custom:property-id 4 + /// @custom:property A proposer can always propose an answer before the deadline, if previous response is disputed and has staked + function property_proposeBeforeDeadlineAndNoAnswer(uint256 _requestIdSeed, bytes calldata _response) public { + // Pick random request + (bytes32 requestId, IOracle.Request memory requestData) = _getRandomRequest(_requestIdSeed); + if (requestId == bytes32(0) || !_ghost_validRequests[requestId]) return; + + // address proposer = _pickActor(_actorSeed); + + // Build response data + IOracle.Response memory responseData = IOracle.Response(msg.sender, requestId, _response); // abi.encode(_blockNumber)? + + // Calculate response ID using same logic as Oracle + bytes32 responseId = keccak256(abi.encode(responseData)); + + // Stake some GRT in Horizon + _stakeGRT(RESPONSE_BOND_SIZE); + // Provision some GRT in Horizon + _provisionGRT(RESPONSE_BOND_SIZE); + // Approve response module + vm.prank(msg.sender); + horizonAccountingExtension.approveModule(address(bondedResponseModule)); + + // Propose response + vm.prank(msg.sender); + try oracle.proposeResponse(requestData, responseData) { + // Track response + _ghost_activeResponses[requestId].push(responseId); + _ghost_responseData[responseId] = responseData; + + emit ResponseProposed(requestId, responseId); + } catch { + // assert(false); + } + } +} diff --git a/test/invariants/properties/PropertyRequester.t.sol b/test/invariants/properties/PropertyRequester.t.sol new file mode 100644 index 0000000..6a8e88b --- /dev/null +++ b/test/invariants/properties/PropertyRequester.t.sol @@ -0,0 +1,78 @@ +// SPDX-License-Identifier: MIT +pragma solidity 0.8.26; + +import {IEBORequestModule, IOracle} from '../Setup.t.sol'; +import {HandlerParent} from '../handlers/HandlerParent.t.sol'; + +contract PropertyRequester is HandlerParent { + //solhint-disable no-empty-blocks + constructor() {} + + /// @custom:property-id 1 + /// @custom:property Requester can always create a request as long as the same chainId/epoch isn't already finalized with response + /// @custom:property-id 2 + /// @custom:property Requester can always create a request as long as there is no other active request per the same chainId/epoch + function property_canAlwaysCreateRequest(uint256 _epoch, uint256 _chainIdSeed) external { + _epoch = bound(_epoch, START_EPOCH, block.timestamp); + + string memory chainId = _getRandomChain(_chainIdSeed); + if (bytes(chainId).length == 0) return; + + uint256 requestsPerEpochChainId = _ghost_requestsPerEpochChainId[_epoch][chainId].length; + bytes32 requestId; + uint256 activeRequests; + bool isFinalizedWithResponse; + + // Create request via EBORequestCreator + try eboRequestCreator.createRequest(_epoch, chainId) { + // Check if there are active requests and a request finalized with response + for (uint256 i; i < requestsPerEpochChainId; ++i) { + requestId = _ghost_requestsPerEpochChainId[_epoch][chainId][i]; + if (oracle.finalizedAt(requestId) == 0) ++activeRequests; + if (oracle.finalizedResponseId(requestId) != 0) { + isFinalizedWithResponse = true; + break; + } + } + + // property 1 + assertFalse(isFinalizedWithResponse, 'prop-1: same chainId/epoch request finalized with response'); + // property 2 + assertEq(activeRequests, 0, 'prop-2: same chainId/epoch active request'); + + // Get current request data + IOracle.Request memory requestData = eboRequestCreator.getRequestData(); + + // Build request module parameters + IEBORequestModule.RequestParameters memory requestParams = + abi.decode(requestData.requestModuleData, (IEBORequestModule.RequestParameters)); + requestParams.epoch = _epoch; + requestParams.chainId = chainId; + requestData.requestModuleData = abi.encode(requestParams); + + // Calculate request ID using same logic as Oracle + bytes32 requestId = keccak256(abi.encode(requestData)); + + // Track the request + _ghost_requests.push(requestId); + _ghost_requestsPerEpochChainId[_epoch][chainId].push(requestId); + _ghost_requestData[requestId] = requestData; + _ghost_validRequests[requestId] = true; + + emit RequestCreated(requestId, _epoch, chainId); + } catch { + // Check if there are active requests and a request finalized with response + for (uint256 i; i < requestsPerEpochChainId; ++i) { + requestId = _ghost_requestsPerEpochChainId[_epoch][chainId][i]; + if (oracle.finalizedAt(requestId) == 0) ++activeRequests; + if (oracle.finalizedResponseId(requestId) != 0) { + isFinalizedWithResponse = true; + break; + } + } + + // property 1 and 2 + assertTrue(isFinalizedWithResponse || activeRequests > 0, 'prop-1-2: create request reverted'); + } + } +} diff --git a/test/invariants/properties/PropertySanityCheck.t.sol b/test/invariants/properties/PropertySanityCheck.t.sol deleted file mode 100644 index 4dc6d69..0000000 --- a/test/invariants/properties/PropertySanityCheck.t.sol +++ /dev/null @@ -1,101 +0,0 @@ -// SPDX-License-Identifier: MIT -pragma solidity 0.8.26; - -import '../Setup.t.sol'; -import {HandlerParent} from '../handlers/HandlerParent.t.sol'; -import {IOracle} from '@defi-wonderland/prophet-core/solidity/contracts/Oracle.sol'; - -contract PropertySanityCheck is HandlerParent { - /// @custom:property-id 0 - /// @custom:property Check if eboRequestCreator has the correct properties, including the ones set after its initial deployment - function property_sanityCheck() external { - assertEq(address(eboRequestCreator.ORACLE()), address(oracle), 'prop-0: wrong oracle address'); - - assertEq(address(eboRequestCreator.ARBITRABLE()), address(arbitrable), 'prop-0: wrong arbitrable address'); - - assertEq(eboRequestCreator.START_EPOCH(), START_EPOCH, 'prop-0: wrong start epoch'); - - assertEq(address(eboRequestCreator.epochManager()), address(epochManager), 'prop-0: wrong epoch manager address'); - - IOracle.Request memory initialRequestStored = eboRequestCreator.getRequestData(); - - assertEq( - initialRequestStored.requestModule, address(eboRequestModule), 'prop-0: wrong request module in initialRequest' - ); - - assertEq( - initialRequestStored.responseModule, - address(bondedResponseModule), - 'prop-0: wrong response module in initialRequest' - ); - - assertEq( - initialRequestStored.disputeModule, address(bondEscalationModule), 'prop-0: wrong disputeModule in initialRequest' - ); - - assertEq( - initialRequestStored.resolutionModule, - address(arbitratorModule), - 'prop-0: wrong resolutionModule in initialRequest' - ); - - assertEq( - initialRequestStored.finalityModule, address(eboFinalityModule), 'prop-0: wrong finalityModule in initialRequest' - ); - - assertEq(initialRequestStored.requester, address(eboRequestCreator), 'prop-0: wrong requester in initialRequest'); - - assertEq( - initialRequestStored.requestModuleData, - abi.encode( - IEBORequestModule.RequestParameters({ - epoch: START_EPOCH, - chainId: 'mainnet', - accountingExtension: IAccountingExtension(address(horizonAccountingExtension)), - paymentAmount: PAYMENT_AMOUNT - }) - ), - 'prop-0: wrong requestModuleData in initialRequest' - ); - - assertEq( - initialRequestStored.responseModuleData, - abi.encode( - IBondedResponseModule.RequestParameters({ - accountingExtension: IAccountingExtension(address(horizonAccountingExtension)), - bondToken: GRT, - bondSize: RESPONSE_BOND_SIZE, - deadline: RESPONSE_DEADLINE, - disputeWindow: RESPONSE_DISPUTE_WINDOW - }) - ), - 'prop-0: wrong responseModuleData module data in initialRequest' - ); - - assertEq( - initialRequestStored.disputeModuleData, - abi.encode( - IBondEscalationModule.RequestParameters({ - accountingExtension: IBondEscalationAccounting(address(horizonAccountingExtension)), - bondToken: GRT, - bondSize: DISPUTE_BOND_SIZE, - maxNumberOfEscalations: MAX_NB_ESCALATION, - bondEscalationDeadline: DISPUTE_DEADLINE, - tyingBuffer: TYING_BUFFER, - disputeWindow: DISPUTE_DISPUTE_WINDOW - }) - ), - 'prop-0: wrong disputeModuleData in initialRequest' - ); - - assertEq( - initialRequestStored.resolutionModuleData, - abi.encode(IArbitratorModule.RequestParameters({arbitrator: address(councilArbitrator)})), - 'prop-0: wrong resolutionModuleData in initialRequest' - ); - - assertEq(initialRequestStored.finalityModuleData, bytes(''), 'prop-0: wrong finality module data in initialRequest'); - - assertEq(initialRequestStored.nonce, 0, 'prop-0: wrong nonce in initialRequest'); - } -} From c0ffee950a506ef1a75e2958ad5d6c347704eca2 Mon Sep 17 00:00:00 2001 From: drgorillamd <83670532+drgorillamd@users.noreply.github.com> Date: Thu, 28 Nov 2024 15:25:34 +0100 Subject: [PATCH 15/28] test(medusa): dispute window in prop6 --- .../properties/PropertyDispute.t.sol | 18 +++++++++--------- .../properties/PropertyProposer.t.sol | 2 -- 2 files changed, 9 insertions(+), 11 deletions(-) diff --git a/test/invariants/properties/PropertyDispute.t.sol b/test/invariants/properties/PropertyDispute.t.sol index ac698e2..e4595c5 100644 --- a/test/invariants/properties/PropertyDispute.t.sol +++ b/test/invariants/properties/PropertyDispute.t.sol @@ -7,8 +7,6 @@ import {HandlerParent} from '../handlers/HandlerParent.t.sol'; contract PropertyDispute is HandlerParent { /// @custom:property-id 6 /// @custom:property Disputer can always dispute a response before the finalisation, if no previous dispute has been made. - /// @custom:property-id 13 - /// @custom:property Each disputeId and responseId can only be tied to one requestId function property_disputerCanAlwaysCreateDispute(uint256 _requestIdSeed, uint256 _responseIdSeed) public { // Pick random Response (bytes32 _requestId, IOracle.Request memory _requestData) = _getRandomRequest(_requestIdSeed); @@ -30,16 +28,18 @@ contract PropertyDispute is HandlerParent { // check if no previous dispute assertEq(_ghost_disputes[_requestId].length, 0, 'property 6: new dispute duplicate'); - // check the disputeId isn't tied to another requestId - // property 13 - assertEq(_ghost_disputeData[_disputeId].requestId, bytes32(0), 'Property 13: disputeId tied to another requestId'); - // add to ghost disputes - _ghost_disputes[_responseId].push(_disputeId); + _ghost_disputes[_requestId].push(_disputeId); _ghost_disputeData[_disputeId] = _disputeData; } catch { - // check that there was a previous dispute, or...? - assertTrue(_ghost_disputes[_responseId].length > 0, 'property 6: fails but no previous active dispute'); + // check that there was a previous dispute, or + // outside of the dispute window, or + // + assertTrue( + _ghost_disputes[_responseId].length > 0 + || block.timestamp > oracle.responseCreatedAt(_responseId) + RESPONSE_DISPUTE_WINDOW, + 'property 6: fails but no previous active dispute' + ); } } diff --git a/test/invariants/properties/PropertyProposer.t.sol b/test/invariants/properties/PropertyProposer.t.sol index 4f95ee2..793a4b3 100644 --- a/test/invariants/properties/PropertyProposer.t.sol +++ b/test/invariants/properties/PropertyProposer.t.sol @@ -14,8 +14,6 @@ contract PropertyProposer is HandlerParent { (bytes32 requestId, IOracle.Request memory requestData) = _getRandomRequest(_requestIdSeed); if (requestId == bytes32(0) || !_ghost_validRequests[requestId]) return; - // address proposer = _pickActor(_actorSeed); - // Build response data IOracle.Response memory responseData = IOracle.Response(msg.sender, requestId, _response); // abi.encode(_blockNumber)? From c0ffeefcf523aa5e54ebfb109096f7eba23dc5ff Mon Sep 17 00:00:00 2001 From: drgorillamd <83670532+drgorillamd@users.noreply.github.com> Date: Thu, 28 Nov 2024 15:57:01 +0100 Subject: [PATCH 16/28] test(medusa): fix approveModule --- .../handlers/HandlerHorizonAccountingExtension.t.sol | 3 +++ 1 file changed, 3 insertions(+) diff --git a/test/invariants/handlers/HandlerHorizonAccountingExtension.t.sol b/test/invariants/handlers/HandlerHorizonAccountingExtension.t.sol index b5abc2e..fa9db96 100644 --- a/test/invariants/handlers/HandlerHorizonAccountingExtension.t.sol +++ b/test/invariants/handlers/HandlerHorizonAccountingExtension.t.sol @@ -90,6 +90,9 @@ contract HandlerHorizonAccountingExtension is BaseHandler { vm.prank(msg.sender); GRT.approve(address(horizonStaking), _amount); + vm.prank(msg.sender); + horizonAccountingExtension.approveModule(address(bondEscalationModule)); + vm.prank(msg.sender); horizonStaking.stake(_amount); } From c0ffeebc72bf60da2b3bba0161f9698e683be27e Mon Sep 17 00:00:00 2001 From: drgorillamd <83670532+drgorillamd@users.noreply.github.com> Date: Thu, 28 Nov 2024 15:59:38 +0100 Subject: [PATCH 17/28] test(medusa): fix approveModule --- .../handlers/HandlerHorizonAccountingExtension.t.sol | 3 +++ 1 file changed, 3 insertions(+) diff --git a/test/invariants/handlers/HandlerHorizonAccountingExtension.t.sol b/test/invariants/handlers/HandlerHorizonAccountingExtension.t.sol index fa9db96..23da4a9 100644 --- a/test/invariants/handlers/HandlerHorizonAccountingExtension.t.sol +++ b/test/invariants/handlers/HandlerHorizonAccountingExtension.t.sol @@ -93,6 +93,9 @@ contract HandlerHorizonAccountingExtension is BaseHandler { vm.prank(msg.sender); horizonAccountingExtension.approveModule(address(bondEscalationModule)); + vm.prank(msg.sender); + horizonAccountingExtension.approveModule(address(bondedResponseModule)); + vm.prank(msg.sender); horizonStaking.stake(_amount); } From 97fff3cdf7db182c514becf94d709541501d6809 Mon Sep 17 00:00:00 2001 From: 0xJabberwock <0xjabberwock@defi.sucks> Date: Fri, 29 Nov 2024 00:55:13 -0300 Subject: [PATCH 18/28] test(medusa): rename PropertyDispute to PropertyDisputer --- .../handlers/HandlerHorizonAccountingExtension.t.sol | 11 +++++------ .../{PropertyDispute.t.sol => PropertyDisputer.t.sol} | 10 +++++----- test/invariants/properties/PropertyParent.t.sol | 5 ++--- test/invariants/properties/PropertyProposer.t.sol | 3 --- 4 files changed, 12 insertions(+), 17 deletions(-) rename test/invariants/properties/{PropertyDispute.t.sol => PropertyDisputer.t.sol} (93%) diff --git a/test/invariants/handlers/HandlerHorizonAccountingExtension.t.sol b/test/invariants/handlers/HandlerHorizonAccountingExtension.t.sol index 23da4a9..ec90bdf 100644 --- a/test/invariants/handlers/HandlerHorizonAccountingExtension.t.sol +++ b/test/invariants/handlers/HandlerHorizonAccountingExtension.t.sol @@ -90,12 +90,6 @@ contract HandlerHorizonAccountingExtension is BaseHandler { vm.prank(msg.sender); GRT.approve(address(horizonStaking), _amount); - vm.prank(msg.sender); - horizonAccountingExtension.approveModule(address(bondEscalationModule)); - - vm.prank(msg.sender); - horizonAccountingExtension.approveModule(address(bondedResponseModule)); - vm.prank(msg.sender); horizonStaking.stake(_amount); } @@ -109,5 +103,10 @@ contract HandlerHorizonAccountingExtension is BaseHandler { horizonAccountingExtension.MAX_VERIFIER_CUT(), horizonAccountingExtension.MIN_THAWING_PERIOD() ); + + vm.prank(msg.sender); + horizonAccountingExtension.approveModule(address(bondedResponseModule)); + vm.prank(msg.sender); + horizonAccountingExtension.approveModule(address(bondEscalationModule)); } } diff --git a/test/invariants/properties/PropertyDispute.t.sol b/test/invariants/properties/PropertyDisputer.t.sol similarity index 93% rename from test/invariants/properties/PropertyDispute.t.sol rename to test/invariants/properties/PropertyDisputer.t.sol index e4595c5..530493a 100644 --- a/test/invariants/properties/PropertyDispute.t.sol +++ b/test/invariants/properties/PropertyDisputer.t.sol @@ -1,12 +1,12 @@ // SPDX-License-Identifier: MIT pragma solidity 0.8.26; -import {IEBORequestModule, IOracle} from '../Setup.t.sol'; +import {IOracle} from '../Setup.t.sol'; import {HandlerParent} from '../handlers/HandlerParent.t.sol'; -contract PropertyDispute is HandlerParent { +contract PropertyDisputer is HandlerParent { /// @custom:property-id 6 - /// @custom:property Disputer can always dispute a response before the finalisation, if no previous dispute has been made. + /// @custom:property A disputer can always dispute a response before the finalisation, if no previous dispute has been made function property_disputerCanAlwaysCreateDispute(uint256 _requestIdSeed, uint256 _responseIdSeed) public { // Pick random Response (bytes32 _requestId, IOracle.Request memory _requestData) = _getRandomRequest(_requestIdSeed); @@ -73,7 +73,7 @@ contract PropertyDispute is HandlerParent { } /// @custom:property-id 8a - /// @custom:property A pledger can only pledge for the correct side for an active dispure or resolution, during the tying buffer or before the deadline + /// @custom:property A pledger can only pledge for the correct side for an active dispute or resolution, during the tying buffer or before the deadline function prop_pledgerCanPledgeFor(uint256 _requestIdSeed, uint256 _disputeSeed) public { _stakeGRT(DISPUTE_BOND_SIZE); @@ -93,7 +93,7 @@ contract PropertyDispute is HandlerParent { } /// @custom:property-id 8b - /// @custom:property A pledger can only pledge for the correct side for an active dispure or resolution, during the tying buffer or before the deadline + /// @custom:property A pledger can only pledge for the correct side for an active dispute or resolution, during the tying buffer or before the deadline function prop_pledgerCanPledgeAgainst(uint256 _requestIdSeed, uint256 _disputeSeed) public { _stakeGRT(DISPUTE_BOND_SIZE); diff --git a/test/invariants/properties/PropertyParent.t.sol b/test/invariants/properties/PropertyParent.t.sol index 2e3a558..e3bdad9 100644 --- a/test/invariants/properties/PropertyParent.t.sol +++ b/test/invariants/properties/PropertyParent.t.sol @@ -1,12 +1,11 @@ // SPDX-License-Identifier: MIT pragma solidity 0.8.26; -import {PropertyDispute} from './PropertyDispute.t.sol'; - +import {PropertyDisputer} from './PropertyDisputer.t.sol'; import {PropertyFinalize} from './PropertyFinalize.t.sol'; import {PropertyProposer} from './PropertyProposer.t.sol'; import {PropertyRequester} from './PropertyRequester.t.sol'; -contract PropertyParent is PropertyRequester, PropertyProposer, PropertyDispute, PropertyFinalize { +contract PropertyParent is PropertyRequester, PropertyProposer, PropertyDisputer, PropertyFinalize { // | 11 | bonded token can never be used on behalf of someone else, unless allowed by the Horizon staking contract | | [ ] | } diff --git a/test/invariants/properties/PropertyProposer.t.sol b/test/invariants/properties/PropertyProposer.t.sol index 793a4b3..f247d8e 100644 --- a/test/invariants/properties/PropertyProposer.t.sol +++ b/test/invariants/properties/PropertyProposer.t.sol @@ -24,9 +24,6 @@ contract PropertyProposer is HandlerParent { _stakeGRT(RESPONSE_BOND_SIZE); // Provision some GRT in Horizon _provisionGRT(RESPONSE_BOND_SIZE); - // Approve response module - vm.prank(msg.sender); - horizonAccountingExtension.approveModule(address(bondedResponseModule)); // Propose response vm.prank(msg.sender); From 80d145f34097ab56b3ca9a9ea67baa3882c45657 Mon Sep 17 00:00:00 2001 From: 0xJabberwock <0xjabberwock@defi.sucks> Date: Fri, 29 Nov 2024 00:56:53 -0300 Subject: [PATCH 19/28] test(medusa): correct prop-6 --- test/invariants/handlers/BaseHandler.t.sol | 7 +++++-- test/invariants/handlers/HandlerOracle.t.sol | 17 ++++++++-------- .../properties/PropertyDisputer.t.sol | 20 ++++++++++++++----- .../properties/PropertyProposer.t.sol | 8 +++----- .../properties/PropertyRequester.t.sol | 2 +- 5 files changed, 33 insertions(+), 21 deletions(-) diff --git a/test/invariants/handlers/BaseHandler.t.sol b/test/invariants/handlers/BaseHandler.t.sol index a2ac9ef..67253ac 100644 --- a/test/invariants/handlers/BaseHandler.t.sol +++ b/test/invariants/handlers/BaseHandler.t.sol @@ -71,8 +71,11 @@ contract BaseHandler is Setup, Actors { bytes32 _requestId, uint256 _seed ) internal view returns (bytes32, IOracle.Response memory) { - bytes32 responseId = _ghost_activeResponses[_requestId][_seed % _ghost_activeResponses[_requestId].length]; - + bytes32[] storage responses = _ghost_activeResponses[_requestId]; + if (responses.length == 0) { + return (bytes32(0), IOracle.Response(address(0), bytes32(0), bytes(''))); + } + bytes32 responseId = responses[_seed % responses.length]; return (responseId, _ghost_responseData[responseId]); } diff --git a/test/invariants/handlers/HandlerOracle.t.sol b/test/invariants/handlers/HandlerOracle.t.sol index 9bf8c05..3129a09 100644 --- a/test/invariants/handlers/HandlerOracle.t.sol +++ b/test/invariants/handlers/HandlerOracle.t.sol @@ -31,26 +31,27 @@ contract HandlerOracle is BaseHandler { // Track response _ghost_activeResponses[requestId].push(responseId); _ghost_responseData[responseId] = response; + _ghost_bonds[proposer][requestId] += RESPONSE_BOND_SIZE; emit ResponseProposed(requestId, responseId); return responseId; } - function handleDisputeResponseOracle(uint256 _requestSeed, uint256 _actorSeed) external returns (bytes32) { + function handleDisputeResponseOracle( + uint256 _requestSeed, + uint256 _responseSeed, + uint256 _actorSeed + ) external returns (bytes32) { (bytes32 requestId, IOracle.Request memory request) = _getRandomRequest(_requestSeed); if (requestId == bytes32(0) || !_ghost_validRequests[requestId]) { return bytes32(0); } - if (_ghost_activeResponses[requestId].length == 0) return (bytes32(0)); - bytes32 responseId = _ghost_activeResponses[requestId][0]; - - IOracle.Response memory response = _ghost_responseData[responseId]; - if (_ghost_finalizedResponses[responseId]) return bytes32(0); + (bytes32 responseId, IOracle.Response memory response) = _getRandomActiveResponse(requestId, _responseSeed); + if (responseId == bytes32(0) || _ghost_finalizedResponses[responseId]) return bytes32(0); address disputer = _pickActor(_actorSeed); - uint256 bond = DISPUTE_BOND_SIZE; IOracle.Dispute memory dispute = IOracle.Dispute({disputer: disputer, proposer: response.proposer, requestId: requestId, responseId: responseId}); @@ -60,7 +61,7 @@ contract HandlerOracle is BaseHandler { // Track dispute _ghost_disputes[requestId].push(disputeId); _ghost_disputeData[disputeId] = dispute; - _ghost_bonds[disputer][requestId] = bond; + _ghost_bonds[disputer][requestId] += DISPUTE_BOND_SIZE; emit DisputeCreated(requestId, responseId, disputeId); diff --git a/test/invariants/properties/PropertyDisputer.t.sol b/test/invariants/properties/PropertyDisputer.t.sol index 530493a..ad0bec7 100644 --- a/test/invariants/properties/PropertyDisputer.t.sol +++ b/test/invariants/properties/PropertyDisputer.t.sol @@ -8,9 +8,13 @@ contract PropertyDisputer is HandlerParent { /// @custom:property-id 6 /// @custom:property A disputer can always dispute a response before the finalisation, if no previous dispute has been made function property_disputerCanAlwaysCreateDispute(uint256 _requestIdSeed, uint256 _responseIdSeed) public { - // Pick random Response + // Pick random request (bytes32 _requestId, IOracle.Request memory _requestData) = _getRandomRequest(_requestIdSeed); + if (_requestId == bytes32(0) || !_ghost_validRequests[_requestId]) return; + + // Pick random response (bytes32 _responseId, IOracle.Response memory _responseData) = _getRandomActiveResponse(_requestId, _responseIdSeed); + if (_responseId == bytes32(0)) return; IOracle.Dispute memory _disputeData = IOracle.Dispute({ disputer: msg.sender, @@ -23,21 +27,27 @@ contract PropertyDisputer is HandlerParent { _stakeGRT(DISPUTE_BOND_SIZE); _provisionGRT(DISPUTE_BOND_SIZE); + bytes32 _prevDisputeId = oracle.disputeOf(_responseId); + vm.prank(msg.sender); try oracle.disputeResponse(_requestData, _responseData, _disputeData) returns (bytes32 _disputeId) { // check if no previous dispute - assertEq(_ghost_disputes[_requestId].length, 0, 'property 6: new dispute duplicate'); + assertEq(_prevDisputeId, 0, 'property 6: new dispute duplicate'); // add to ghost disputes _ghost_disputes[_requestId].push(_disputeId); _ghost_disputeData[_disputeId] = _disputeData; + _ghost_bonds[msg.sender][_requestId] += DISPUTE_BOND_SIZE; + + emit DisputeCreated(_requestId, _responseId, _disputeId); } catch { // check that there was a previous dispute, or // outside of the dispute window, or - // + // request already finalized assertTrue( - _ghost_disputes[_responseId].length > 0 - || block.timestamp > oracle.responseCreatedAt(_responseId) + RESPONSE_DISPUTE_WINDOW, + _prevDisputeId != bytes32(0) + || block.timestamp > oracle.responseCreatedAt(_responseId) + RESPONSE_DISPUTE_WINDOW + || oracle.finalizedAt(_requestId) != 0, 'property 6: fails but no previous active dispute' ); } diff --git a/test/invariants/properties/PropertyProposer.t.sol b/test/invariants/properties/PropertyProposer.t.sol index f247d8e..3c818a5 100644 --- a/test/invariants/properties/PropertyProposer.t.sol +++ b/test/invariants/properties/PropertyProposer.t.sol @@ -9,7 +9,7 @@ contract PropertyProposer is HandlerParent { /// @custom:property A proposer can always propose an answer before the deadline, if no response has been submitted /// @custom:property-id 4 /// @custom:property A proposer can always propose an answer before the deadline, if previous response is disputed and has staked - function property_proposeBeforeDeadlineAndNoAnswer(uint256 _requestIdSeed, bytes calldata _response) public { + function property_proposerProposeBeforeDeadlineAndNoAnswer(uint256 _requestIdSeed, bytes calldata _response) public { // Pick random request (bytes32 requestId, IOracle.Request memory requestData) = _getRandomRequest(_requestIdSeed); if (requestId == bytes32(0) || !_ghost_validRequests[requestId]) return; @@ -17,9 +17,6 @@ contract PropertyProposer is HandlerParent { // Build response data IOracle.Response memory responseData = IOracle.Response(msg.sender, requestId, _response); // abi.encode(_blockNumber)? - // Calculate response ID using same logic as Oracle - bytes32 responseId = keccak256(abi.encode(responseData)); - // Stake some GRT in Horizon _stakeGRT(RESPONSE_BOND_SIZE); // Provision some GRT in Horizon @@ -27,10 +24,11 @@ contract PropertyProposer is HandlerParent { // Propose response vm.prank(msg.sender); - try oracle.proposeResponse(requestData, responseData) { + try oracle.proposeResponse(requestData, responseData) returns (bytes32 responseId) { // Track response _ghost_activeResponses[requestId].push(responseId); _ghost_responseData[responseId] = responseData; + _ghost_bonds[msg.sender][requestId] += RESPONSE_BOND_SIZE; emit ResponseProposed(requestId, responseId); } catch { diff --git a/test/invariants/properties/PropertyRequester.t.sol b/test/invariants/properties/PropertyRequester.t.sol index 6a8e88b..7cda835 100644 --- a/test/invariants/properties/PropertyRequester.t.sol +++ b/test/invariants/properties/PropertyRequester.t.sol @@ -12,7 +12,7 @@ contract PropertyRequester is HandlerParent { /// @custom:property Requester can always create a request as long as the same chainId/epoch isn't already finalized with response /// @custom:property-id 2 /// @custom:property Requester can always create a request as long as there is no other active request per the same chainId/epoch - function property_canAlwaysCreateRequest(uint256 _epoch, uint256 _chainIdSeed) external { + function property_requesterCanAlwaysCreateRequest(uint256 _epoch, uint256 _chainIdSeed) external { _epoch = bound(_epoch, START_EPOCH, block.timestamp); string memory chainId = _getRandomChain(_chainIdSeed); From 1d453421053ad1ca2a3117d52183a6951733084f Mon Sep 17 00:00:00 2001 From: 0xJabberwock <0xjabberwock@defi.sucks> Date: Fri, 29 Nov 2024 02:50:57 -0300 Subject: [PATCH 20/28] test(medusa): assert prop-7 --- test/invariants/handlers/BaseHandler.t.sol | 2 +- test/invariants/handlers/HandlerOracle.t.sol | 21 ++++-- .../helpers/MockHorizonStaking.t.sol | 4 +- .../properties/PropertyDisputer.t.sol | 69 +++++++++++-------- .../properties/PropertyProposer.t.sol | 4 +- 5 files changed, 62 insertions(+), 38 deletions(-) diff --git a/test/invariants/handlers/BaseHandler.t.sol b/test/invariants/handlers/BaseHandler.t.sol index 67253ac..a553fcb 100644 --- a/test/invariants/handlers/BaseHandler.t.sol +++ b/test/invariants/handlers/BaseHandler.t.sol @@ -82,7 +82,7 @@ contract BaseHandler is Setup, Actors { function _getRandomDispute(bytes32 _requestId, uint256 _seed) internal view returns (bytes32, IOracle.Dispute memory) { bytes32[] storage disputes = _ghost_disputes[_requestId]; if (disputes.length == 0) { - return (bytes32(0), IOracle.Dispute(address(0), address(0), bytes32(0), 0)); + return (bytes32(0), IOracle.Dispute(address(0), address(0), bytes32(0), bytes32(0))); } bytes32 disputeId = disputes[_seed % disputes.length]; return (disputeId, _ghost_disputeData[disputeId]); diff --git a/test/invariants/handlers/HandlerOracle.t.sol b/test/invariants/handlers/HandlerOracle.t.sol index 3129a09..7060282 100644 --- a/test/invariants/handlers/HandlerOracle.t.sol +++ b/test/invariants/handlers/HandlerOracle.t.sol @@ -62,30 +62,37 @@ contract HandlerOracle is BaseHandler { _ghost_disputes[requestId].push(disputeId); _ghost_disputeData[disputeId] = dispute; _ghost_bonds[disputer][requestId] += DISPUTE_BOND_SIZE; + if (_ghost_disputes[requestId].length > 1) { + _ghost_escalatedDisputes[disputeId] = true; + } emit DisputeCreated(requestId, responseId, disputeId); return disputeId; } - function handleEscalateDispute(uint256 _requestSeed, uint256 _disputeIndex) external { + function handleEscalateDispute(uint256 _requestSeed, uint256 _disputeSeed) external { (bytes32 requestId, IOracle.Request memory request) = _getRandomRequest(_requestSeed); - if (requestId == bytes32(0)) return; + if (requestId == bytes32(0) || !_ghost_validRequests[requestId]) return; - (, IOracle.Dispute memory dispute) = _getRandomDispute(requestId, _disputeIndex); - if (dispute.requestId == bytes32(0)) return; + (bytes32 disputeId, IOracle.Dispute memory dispute) = _getRandomDispute(requestId, _disputeSeed); + if (disputeId == bytes32(0)) return; - if (oracle.disputeStatus(keccak256(abi.encode(dispute))) != IOracle.DisputeStatus.Escalated) return; + if (oracle.disputeStatus(disputeId) != IOracle.DisputeStatus.Active) return; IOracle.Response memory response = _ghost_responseData[dispute.responseId]; + oracle.escalateDispute(request, response, dispute); + + // Track escalated dispute + _ghost_escalatedDisputes[disputeId] = true; } - function handleResolveDispute(uint256 _requestSeed, uint256 _disputeIndex) external { + function handleResolveDispute(uint256 _requestSeed, uint256 _disputeSeed) external { (bytes32 requestId, IOracle.Request memory request) = _getRandomRequest(_requestSeed); if (requestId == bytes32(0)) return; - (, IOracle.Dispute memory dispute) = _getRandomDispute(requestId, _disputeIndex); + (, IOracle.Dispute memory dispute) = _getRandomDispute(requestId, _disputeSeed); if (dispute.requestId == bytes32(0)) return; IOracle.Response memory response = _ghost_responseData[dispute.responseId]; diff --git a/test/invariants/helpers/MockHorizonStaking.t.sol b/test/invariants/helpers/MockHorizonStaking.t.sol index 0092f51..8a88728 100644 --- a/test/invariants/helpers/MockHorizonStaking.t.sol +++ b/test/invariants/helpers/MockHorizonStaking.t.sol @@ -27,8 +27,10 @@ contract MockHorizonStaking { uint32 _maxVerifierCut, uint64 _thawingPeriod ) external { + IHorizonStaking.Provision storage prov = provisions[_serviceProvider][_verifier]; + provisions[_serviceProvider][_verifier] = IHorizonStaking.Provision({ - tokens: _tokens, + tokens: prov.tokens + _tokens, tokensThawing: 0, sharesThawing: 0, maxVerifierCut: _maxVerifierCut, diff --git a/test/invariants/properties/PropertyDisputer.t.sol b/test/invariants/properties/PropertyDisputer.t.sol index ad0bec7..adeeb82 100644 --- a/test/invariants/properties/PropertyDisputer.t.sol +++ b/test/invariants/properties/PropertyDisputer.t.sol @@ -7,13 +7,13 @@ import {HandlerParent} from '../handlers/HandlerParent.t.sol'; contract PropertyDisputer is HandlerParent { /// @custom:property-id 6 /// @custom:property A disputer can always dispute a response before the finalisation, if no previous dispute has been made - function property_disputerCanAlwaysCreateDispute(uint256 _requestIdSeed, uint256 _responseIdSeed) public { + function property_disputerCanAlwaysCreateDispute(uint256 _requestSeed, uint256 _responseSeed) public { // Pick random request - (bytes32 _requestId, IOracle.Request memory _requestData) = _getRandomRequest(_requestIdSeed); + (bytes32 _requestId, IOracle.Request memory _requestData) = _getRandomRequest(_requestSeed); if (_requestId == bytes32(0) || !_ghost_validRequests[_requestId]) return; // Pick random response - (bytes32 _responseId, IOracle.Response memory _responseData) = _getRandomActiveResponse(_requestId, _responseIdSeed); + (bytes32 _responseId, IOracle.Response memory _responseData) = _getRandomActiveResponse(_requestId, _responseSeed); if (_responseId == bytes32(0)) return; IOracle.Dispute memory _disputeData = IOracle.Dispute({ @@ -23,12 +23,13 @@ contract PropertyDisputer is HandlerParent { requestId: _requestId }); - // Stake some GRT in Horizon + // Stake and provision some GRT in Horizon _stakeGRT(DISPUTE_BOND_SIZE); _provisionGRT(DISPUTE_BOND_SIZE); bytes32 _prevDisputeId = oracle.disputeOf(_responseId); + // Dispute response vm.prank(msg.sender); try oracle.disputeResponse(_requestData, _responseData, _disputeData) returns (bytes32 _disputeId) { // check if no previous dispute @@ -38,6 +39,9 @@ contract PropertyDisputer is HandlerParent { _ghost_disputes[_requestId].push(_disputeId); _ghost_disputeData[_disputeId] = _disputeData; _ghost_bonds[msg.sender][_requestId] += DISPUTE_BOND_SIZE; + if (_ghost_disputes[_requestId].length > 1) { + _ghost_escalatedDisputes[_disputeId] = true; + } emit DisputeCreated(_requestId, _responseId, _disputeId); } catch { @@ -55,40 +59,51 @@ contract PropertyDisputer is HandlerParent { /// @custom:property-id 7 /// @custom:property A disputer can only escalate the first disputed response - function prop_disputerEscalateFirstDisputedResponse( - uint256 _requestIdSeed, - uint256 _responseIdSeed, - uint256 _disputeSeed - ) public { - _stakeGRT(DISPUTE_BOND_SIZE); + function property_disputerEscalateFirstDisputedResponse(uint256 _requestSeed, uint256 _disputeSeed) public { + // Pick random request + (bytes32 _requestId, IOracle.Request memory _requestData) = _getRandomRequest(_requestSeed); + if (_requestId == bytes32(0) || !_ghost_validRequests[_requestId]) return; - // Pick random Dispute - (bytes32 _requestId, IOracle.Request memory _requestData) = _getRandomRequest(_requestIdSeed); - (bytes32 _responseId, IOracle.Response memory _responseData) = _getRandomActiveResponse(_requestId, _responseIdSeed); + // Pick random dispute (bytes32 _disputeId, IOracle.Dispute memory _disputeData) = _getRandomDispute(_requestId, _disputeSeed); + if (_disputeId == bytes32(0)) return; - // Escalate it + // Get disputed response + IOracle.Response memory _responseData = _ghost_responseData[_disputeData.responseId]; + + // Stake and provision some GRT in Horizon + _stakeGRT(DISPUTE_BOND_SIZE); + _provisionGRT(DISPUTE_BOND_SIZE); + + // Escalate dispute vm.prank(msg.sender); try oracle.escalateDispute(_requestData, _responseData, _disputeData) { // check that the dispute is the first one - assertEq(_ghost_activeResponses[_requestId][0], _disputeData.requestId, 'property 7: not first dispute'); + assertEq(_ghost_activeResponses[_requestId][0], _disputeData.responseId, 'property 7: not first dispute'); + + // add to ghost escalated disputes + _ghost_escalatedDisputes[_disputeId] = true; } catch { - // not first dispute or - // not past the bond escalation deadline - // past deadline/tying buffer or - // already escalated or - // bond not tied or - // + // not first dispute, or + // not past the bond escalation deadline, or + // already escalated, or + // bond not tied + assertTrue( + _ghost_activeResponses[_requestId][0] != _disputeData.responseId + || block.timestamp <= oracle.disputeCreatedAt(_disputeId) + DISPUTE_DEADLINE + || _ghost_escalatedDisputes[_disputeId], + 'property 7: fails on first disputed response' + ); } } /// @custom:property-id 8a /// @custom:property A pledger can only pledge for the correct side for an active dispute or resolution, during the tying buffer or before the deadline - function prop_pledgerCanPledgeFor(uint256 _requestIdSeed, uint256 _disputeSeed) public { + function property_pledgerCanPledgeFor(uint256 _requestSeed, uint256 _disputeSeed) public { _stakeGRT(DISPUTE_BOND_SIZE); // Pick random dispute - (bytes32 _requestId, IOracle.Request memory _requestData) = _getRandomRequest(_requestIdSeed); + (bytes32 _requestId, IOracle.Request memory _requestData) = _getRandomRequest(_requestSeed); (bytes32 _disputeId, IOracle.Dispute memory _disputeData) = _getRandomDispute(_requestId, _disputeSeed); vm.prank(msg.sender); @@ -104,11 +119,11 @@ contract PropertyDisputer is HandlerParent { /// @custom:property-id 8b /// @custom:property A pledger can only pledge for the correct side for an active dispute or resolution, during the tying buffer or before the deadline - function prop_pledgerCanPledgeAgainst(uint256 _requestIdSeed, uint256 _disputeSeed) public { + function property_pledgerCanPledgeAgainst(uint256 _requestSeed, uint256 _disputeSeed) public { _stakeGRT(DISPUTE_BOND_SIZE); // Pick random dispute - (bytes32 _requestId, IOracle.Request memory _requestData) = _getRandomRequest(_requestIdSeed); + (bytes32 _requestId, IOracle.Request memory _requestData) = _getRandomRequest(_requestSeed); (bytes32 _disputeId, IOracle.Dispute memory _disputeData) = _getRandomDispute(_requestId, _disputeSeed); vm.prank(msg.sender); @@ -124,9 +139,9 @@ contract PropertyDisputer is HandlerParent { /// @custom:property-id 9 /// @custom:property An arbitrator can always settle a dispute if it has not been finalised yet - function prop_arbitratorCanSettle(uint256 _requestIdSeed, uint256 _disputeSeed, uint256 _whoWonSeed) public { + function property_arbitratorCanSettle(uint256 _requestSeed, uint256 _disputeSeed, uint256 _whoWonSeed) public { // Pick random dispute - (bytes32 _requestId,) = _getRandomRequest(_requestIdSeed); + (bytes32 _requestId,) = _getRandomRequest(_requestSeed); (bytes32 _disputeId,) = _getRandomDispute(_requestId, _disputeSeed); // Pick random outcome (won, lost, noResolution) diff --git a/test/invariants/properties/PropertyProposer.t.sol b/test/invariants/properties/PropertyProposer.t.sol index 3c818a5..31140b0 100644 --- a/test/invariants/properties/PropertyProposer.t.sol +++ b/test/invariants/properties/PropertyProposer.t.sol @@ -9,9 +9,9 @@ contract PropertyProposer is HandlerParent { /// @custom:property A proposer can always propose an answer before the deadline, if no response has been submitted /// @custom:property-id 4 /// @custom:property A proposer can always propose an answer before the deadline, if previous response is disputed and has staked - function property_proposerProposeBeforeDeadlineAndNoAnswer(uint256 _requestIdSeed, bytes calldata _response) public { + function property_proposerProposeBeforeDeadlineAndNoAnswer(uint256 _requestSeed, bytes calldata _response) public { // Pick random request - (bytes32 requestId, IOracle.Request memory requestData) = _getRandomRequest(_requestIdSeed); + (bytes32 requestId, IOracle.Request memory requestData) = _getRandomRequest(_requestSeed); if (requestId == bytes32(0) || !_ghost_validRequests[requestId]) return; // Build response data From c0ffee66ebd33c60047ada66c71bc493cfcc0227 Mon Sep 17 00:00:00 2001 From: drgorillamd <83670532+drgorillamd@users.noreply.github.com> Date: Sat, 30 Nov 2024 15:19:56 +0100 Subject: [PATCH 21/28] test(medusa): properties 13 --- test/invariants/FuzzTest.t.sol | 70 +++++++++++++++++++ test/invariants/PROPERTIES.md | 20 +++--- .../properties/PropertyDisputer.t.sol | 8 ++- .../properties/PropertyFinalize.t.sol | 2 +- .../properties/PropertyRequester.t.sol | 9 ++- 5 files changed, 94 insertions(+), 15 deletions(-) diff --git a/test/invariants/FuzzTest.t.sol b/test/invariants/FuzzTest.t.sol index a2a24a9..210d807 100644 --- a/test/invariants/FuzzTest.t.sol +++ b/test/invariants/FuzzTest.t.sol @@ -1,9 +1,79 @@ // SPDX-License-Identifier: MIT pragma solidity 0.8.26; +import {IEBORequestModule, IOracle} from './Setup.t.sol'; import {PropertyParent} from './properties/PropertyParent.t.sol'; contract FuzzTest is PropertyParent { + /// @custom:property-id 13 + /// @custom:property each disputeId and responseId can only be tied to one requestId + /// TODO: aggregator on arrays... + function prop_singleRequestIdForSingleDisputeOrResponseId() public { + // for each request + for (uint256 currentRequestIdx; currentRequestIdx < _ghost_requests.length; currentRequestIdx++) { + bytes32 currentRequestId = _ghost_requests[currentRequestIdx]; + // for each response of this request + for ( + uint256 currentRequestResponseIdx; + currentRequestResponseIdx < _ghost_activeResponses[currentRequestId].length; + currentRequestResponseIdx++ + ) { + // for each other request + for (uint256 otherRequestsIdx; otherRequestsIdx < _ghost_requests.length; otherRequestsIdx++) { + if (otherRequestsIdx == currentRequestIdx) continue; + + bytes32 otherRequestId = _ghost_requests[otherRequestsIdx]; + + // for each response of the other request + for ( + uint256 otherRequestResponseIdx; + otherRequestResponseIdx < _ghost_activeResponses[otherRequestId].length; + otherRequestResponseIdx++ + ) { + // check that it is not pointing to the same request + assertTrue( + _ghost_activeResponses[currentRequestId][currentRequestResponseIdx] + != _ghost_activeResponses[otherRequestId][otherRequestResponseIdx], + 'prop 13: different response id for same request' + ); + } + } + } + } + + // for each request + for (uint256 currentRequestIdx; currentRequestIdx < _ghost_requests.length; currentRequestIdx++) { + bytes32 currentRequestId = _ghost_requests[currentRequestIdx]; + // for each dispute of this request + for ( + uint256 currentRequestDisputeIdx; + currentRequestDisputeIdx < _ghost_disputes[currentRequestId].length; + currentRequestDisputeIdx++ + ) { + // for each other request + for (uint256 otherRequestsIdx; otherRequestsIdx < _ghost_requests.length; otherRequestsIdx++) { + if (otherRequestsIdx == currentRequestIdx) continue; + + bytes32 otherRequestId = _ghost_requests[otherRequestsIdx]; + + // for each dispute of the other request + for ( + uint256 otherRequestDisputeIdx; + otherRequestDisputeIdx < _ghost_disputes[otherRequestId].length; + otherRequestDisputeIdx++ + ) { + // check that it is not pointing to the same request + assertTrue( + _ghost_disputes[currentRequestId][currentRequestDisputeIdx] + != _ghost_disputes[otherRequestId][otherRequestDisputeIdx], + 'prop 13: different dispute id for same request' + ); + } + } + } + } + } + //solhint-disable no-empty-blocks function test_debug() public {} } diff --git a/test/invariants/PROPERTIES.md b/test/invariants/PROPERTIES.md index 1654482..0a5486c 100644 --- a/test/invariants/PROPERTIES.md +++ b/test/invariants/PROPERTIES.md @@ -16,19 +16,19 @@ operator for `caller`) | Id | Properties | Type | Tested | | --- | ------------------------------------------------------------------------------------------------------------------------------------- | ---- | ------ | -| 1 | requester can always create a request | | [ ] | -| 2 | there can only be one active request per chainId/epoch at a time | | [ ] | -| 3 | a proposer can always propose an answer before the deadline, if no response has been submitted | | [ ] | -| 4 | a proposer can always propose an answer before the deadline, if previous response is disputted and has staked | | [ ] | +| 1 | requester can always create a request | | [x] | +| 2 | there can only be one active request per chainId/epoch at a time | | [x] | +| 3 | a proposer can always propose an answer before the deadline, if no response has been submitted | | [x] | +| 4 | a proposer can always propose an answer before the deadline, if previous response is disputted and has staked | | [x] | | 5 | a proposer or a disputer can escalate max MAX_ESCALATION times, each time creating a new tying buffer | | [ ] | -| 6 | a disputer can always dispute a response before the finalisation, if no previous dispute has been made | | [ ] | -| 7 | a disputer can only escalate the first disputed response | | [ ] | -| 8 | a pledger can only pledge for the correct side for an active dispure or resolution, during the tying buffer or before the deadline | | [ ] | -| 9 | an arbitrator can always settle a dispute if it has not been finalised yet | | [ ] | -| 10 | an answer can only be finalized after the deadline | | [ ] | +| 6 | a disputer can always dispute a response before the finalisation, if no previous dispute has been made | | [x] | +| 7 | a disputer can only escalate the first disputed response | | [x] | +| 8 | a pledger can only pledge for the correct side for an active dispure or resolution, during the tying buffer or before the deadline | | [x] | +| 9 | an arbitrator can always settle a dispute if it has not been finalised yet | | [x] | +| 10 | an answer can only be finalized after the deadline | | [x] | | 11 | bonded token can never be used on behalf of someone else, unless allowed by the Horizon staking contract | | [ ] | | 12 | each bonded amount can only be tied to one requestId | | [ ] | -| 13 | each disputeId and responseId can only be tied to one requestId | | [ ] | +| 13 | each disputeId and responseId can only be tied to one requestId | | [x] | ## Handler coverage diff --git a/test/invariants/properties/PropertyDisputer.t.sol b/test/invariants/properties/PropertyDisputer.t.sol index adeeb82..3780c11 100644 --- a/test/invariants/properties/PropertyDisputer.t.sol +++ b/test/invariants/properties/PropertyDisputer.t.sol @@ -10,7 +10,9 @@ contract PropertyDisputer is HandlerParent { function property_disputerCanAlwaysCreateDispute(uint256 _requestSeed, uint256 _responseSeed) public { // Pick random request (bytes32 _requestId, IOracle.Request memory _requestData) = _getRandomRequest(_requestSeed); - if (_requestId == bytes32(0) || !_ghost_validRequests[_requestId]) return; + if (_requestId == bytes32(0) || !_ghost_validRequests[_requestId]) { + return; + } // Pick random response (bytes32 _responseId, IOracle.Response memory _responseData) = _getRandomActiveResponse(_requestId, _responseSeed); @@ -62,7 +64,9 @@ contract PropertyDisputer is HandlerParent { function property_disputerEscalateFirstDisputedResponse(uint256 _requestSeed, uint256 _disputeSeed) public { // Pick random request (bytes32 _requestId, IOracle.Request memory _requestData) = _getRandomRequest(_requestSeed); - if (_requestId == bytes32(0) || !_ghost_validRequests[_requestId]) return; + if (_requestId == bytes32(0) || !_ghost_validRequests[_requestId]) { + return; + } // Pick random dispute (bytes32 _disputeId, IOracle.Dispute memory _disputeData) = _getRandomDispute(_requestId, _disputeSeed); diff --git a/test/invariants/properties/PropertyFinalize.t.sol b/test/invariants/properties/PropertyFinalize.t.sol index 934614f..1bda629 100644 --- a/test/invariants/properties/PropertyFinalize.t.sol +++ b/test/invariants/properties/PropertyFinalize.t.sol @@ -25,5 +25,5 @@ contract PropertyFinalize is HandlerParent { } } - // TODO: consider adding property for releasing unfinazible ones? + // TODO: consider adding property for releasing unfinalizible ones? } diff --git a/test/invariants/properties/PropertyRequester.t.sol b/test/invariants/properties/PropertyRequester.t.sol index 7cda835..fb74484 100644 --- a/test/invariants/properties/PropertyRequester.t.sol +++ b/test/invariants/properties/PropertyRequester.t.sol @@ -8,6 +8,8 @@ contract PropertyRequester is HandlerParent { //solhint-disable no-empty-blocks constructor() {} + event Test(bool); + /// @custom:property-id 1 /// @custom:property Requester can always create a request as long as the same chainId/epoch isn't already finalized with response /// @custom:property-id 2 @@ -64,14 +66,17 @@ contract PropertyRequester is HandlerParent { // Check if there are active requests and a request finalized with response for (uint256 i; i < requestsPerEpochChainId; ++i) { requestId = _ghost_requestsPerEpochChainId[_epoch][chainId][i]; - if (oracle.finalizedAt(requestId) == 0) ++activeRequests; - if (oracle.finalizedResponseId(requestId) != 0) { + if (requestId != bytes32(0) && oracle.finalizedAt(requestId) == 0) ++activeRequests; + if (requestId != bytes32(0) && oracle.finalizedResponseId(requestId) != 0) { isFinalizedWithResponse = true; break; } } // property 1 and 2 + emit RequestCreated(requestId, _epoch, chainId); + emit Test(isFinalizedWithResponse); + emit Test(activeRequests > 0); assertTrue(isFinalizedWithResponse || activeRequests > 0, 'prop-1-2: create request reverted'); } } From c0ffee96dc7c1edb5c5a23c4e227971f46815f23 Mon Sep 17 00:00:00 2001 From: drgorillamd <83670532+drgorillamd@users.noreply.github.com> Date: Sat, 7 Dec 2024 12:01:48 -0300 Subject: [PATCH 22/28] test(medusa): fix prop1 for empty finalized req --- test/invariants/FuzzTest.t.sol | 3 -- test/invariants/Reproducers.t.sol | 36 ++++++++++++++ .../handlers/HandlerEBORequestCreator.t.sol | 43 ----------------- .../properties/PropertyRequester.t.sol | 47 ++++++++++--------- 4 files changed, 62 insertions(+), 67 deletions(-) create mode 100644 test/invariants/Reproducers.t.sol diff --git a/test/invariants/FuzzTest.t.sol b/test/invariants/FuzzTest.t.sol index 210d807..71186d1 100644 --- a/test/invariants/FuzzTest.t.sol +++ b/test/invariants/FuzzTest.t.sol @@ -73,7 +73,4 @@ contract FuzzTest is PropertyParent { } } } - - //solhint-disable no-empty-blocks - function test_debug() public {} } diff --git a/test/invariants/Reproducers.t.sol b/test/invariants/Reproducers.t.sol new file mode 100644 index 0000000..6256338 --- /dev/null +++ b/test/invariants/Reproducers.t.sol @@ -0,0 +1,36 @@ +// SPDX-License-Identifier: MIT +pragma solidity 0.8.26; + +import {FuzzTest} from './FuzzTest.t.sol'; +import {IEBORequestModule, IOracle} from './Setup.t.sol'; + +contract Reproducers is FuzzTest { + function test_debug() public { + vm.roll(55_341); + vm.warp(292_791); + vm.prank(0x0000000000000000000000000000000000080000); + this.property_requesterCanAlwaysCreateRequest( + 0, 91_936_153_333_790_985_814_765_645_281_331_945_670_085_017_288_440_355_350_976_283_151_607_122_591_831 + ); + + vm.roll(114_433); + vm.warp(791_132); + vm.prank(0x0000000000000000000000000000000000080000); + this.property_finalizeAfterDeadline( + 13_479_973_333_575_319_897_333_507_543_509_815_336_818_572_211_270_290_147_286_325_345_251, + 107_839_786_668_602_559_178_668_057_886_353_385_264_177_471_300_505_974_851_760_065_510_272 + ); + + vm.roll(164_579); + vm.warp(1_050_332); + vm.prank(0x00000000000000000000000000000000000a0000); + this.property_requesterCanAlwaysCreateRequest(0, 300_000_000_001_847_143); + + vm.roll(225_050); + vm.warp(1_491_370); + vm.prank(0x00000000000000000000000000000000000a0000); + this.property_requesterCanAlwaysCreateRequest( + 0, 115_792_089_237_316_195_423_570_985_008_687_907_853_269_984_665_640_564_039_456_584_007_913_130_122_499 + ); + } +} diff --git a/test/invariants/handlers/HandlerEBORequestCreator.t.sol b/test/invariants/handlers/HandlerEBORequestCreator.t.sol index c2c9a53..fc6185a 100644 --- a/test/invariants/handlers/HandlerEBORequestCreator.t.sol +++ b/test/invariants/handlers/HandlerEBORequestCreator.t.sol @@ -26,47 +26,4 @@ contract HandlerEBORequestCreator is BaseHandler { _ghost_chainIdToChain[keccak256(abi.encodePacked(INITIAL_CHAINS[i]))] = INITIAL_CHAINS[i]; } } - - function handleCreateRequest(uint256 _epoch, uint256 _chainIdSeed) external { - _epoch = bound(_epoch, START_EPOCH, block.timestamp); - - string memory chainId = _getRandomChain(_chainIdSeed); - if (bytes(chainId).length == 0) return; - - // Create request via EBORequestCreator - eboRequestCreator.createRequest(_epoch, chainId); - - // Get current request data - IOracle.Request memory requestData = eboRequestCreator.getRequestData(); - - // Build request module parameters - IEBORequestModule.RequestParameters memory requestParams = - abi.decode(requestData.requestModuleData, (IEBORequestModule.RequestParameters)); - requestParams.epoch = _epoch; - requestParams.chainId = chainId; - requestData.requestModuleData = abi.encode(requestParams); - - // Calculate request ID using same logic as Oracle - bytes32 requestId = keccak256(abi.encode(requestData)); - - // Track the request - _ghost_requests.push(requestId); - _ghost_requestsPerEpochChainId[_epoch][chainId].push(requestId); - _ghost_requestData[requestId] = requestData; - _ghost_validRequests[requestId] = true; - - emit RequestCreated(requestId, _epoch, chainId); - } - - function handleAddChain(string memory _chainId) external { - eboRequestCreator.addChain(_chainId); - - // Track the chain - _ghost_chainIdToChain[keccak256(abi.encodePacked(_chainId))] = _chainId; - } - - // function handleRemoveChain(uint256 _chainIdSeed) external { - // string memory chainId = _getRandomChainId(_chainIdSeed); - // eboRequestCreator.removeChain(chainId); - // } } diff --git a/test/invariants/properties/PropertyRequester.t.sol b/test/invariants/properties/PropertyRequester.t.sol index fb74484..3dae1b6 100644 --- a/test/invariants/properties/PropertyRequester.t.sol +++ b/test/invariants/properties/PropertyRequester.t.sol @@ -9,6 +9,7 @@ contract PropertyRequester is HandlerParent { constructor() {} event Test(bool); + event TestUint(uint256); /// @custom:property-id 1 /// @custom:property Requester can always create a request as long as the same chainId/epoch isn't already finalized with response @@ -21,17 +22,26 @@ contract PropertyRequester is HandlerParent { if (bytes(chainId).length == 0) return; uint256 requestsPerEpochChainId = _ghost_requestsPerEpochChainId[_epoch][chainId].length; - bytes32 requestId; uint256 activeRequests; bool isFinalizedWithResponse; + // Calculate request ID using same logic as Oracle + // Get current request data + IOracle.Request memory requestData = eboRequestCreator.getRequestData(); + IEBORequestModule.RequestParameters memory requestParams = + abi.decode(requestData.requestModuleData, (IEBORequestModule.RequestParameters)); + requestParams.epoch = _epoch; + requestParams.chainId = chainId; + requestData.requestModuleData = abi.encode(requestParams); + bytes32 requestId = keccak256(abi.encode(requestData)); + emit TestUint(_epoch); // Create request via EBORequestCreator try eboRequestCreator.createRequest(_epoch, chainId) { // Check if there are active requests and a request finalized with response for (uint256 i; i < requestsPerEpochChainId; ++i) { - requestId = _ghost_requestsPerEpochChainId[_epoch][chainId][i]; - if (oracle.finalizedAt(requestId) == 0) ++activeRequests; - if (oracle.finalizedResponseId(requestId) != 0) { + bytes32 _currRequestId = _ghost_requestsPerEpochChainId[_epoch][chainId][i]; + if (oracle.finalizedAt(_currRequestId) == 0) ++activeRequests; + if (oracle.finalizedResponseId(_currRequestId) != 0) { isFinalizedWithResponse = true; break; } @@ -42,19 +52,6 @@ contract PropertyRequester is HandlerParent { // property 2 assertEq(activeRequests, 0, 'prop-2: same chainId/epoch active request'); - // Get current request data - IOracle.Request memory requestData = eboRequestCreator.getRequestData(); - - // Build request module parameters - IEBORequestModule.RequestParameters memory requestParams = - abi.decode(requestData.requestModuleData, (IEBORequestModule.RequestParameters)); - requestParams.epoch = _epoch; - requestParams.chainId = chainId; - requestData.requestModuleData = abi.encode(requestParams); - - // Calculate request ID using same logic as Oracle - bytes32 requestId = keccak256(abi.encode(requestData)); - // Track the request _ghost_requests.push(requestId); _ghost_requestsPerEpochChainId[_epoch][chainId].push(requestId); @@ -65,16 +62,24 @@ contract PropertyRequester is HandlerParent { } catch { // Check if there are active requests and a request finalized with response for (uint256 i; i < requestsPerEpochChainId; ++i) { - requestId = _ghost_requestsPerEpochChainId[_epoch][chainId][i]; - if (requestId != bytes32(0) && oracle.finalizedAt(requestId) == 0) ++activeRequests; - if (requestId != bytes32(0) && oracle.finalizedResponseId(requestId) != 0) { + bytes32 currRequestId = _ghost_requestsPerEpochChainId[_epoch][chainId][i]; + + // active because not finalized + if (oracle.finalizedAt(currRequestId) == 0) ++activeRequests; + + // active because finalized without answer + if ((oracle.finalizedAt(currRequestId) != 0 && oracle.finalizedResponseId(currRequestId) == 0)) { + ++activeRequests; + } + + // not active + if (oracle.finalizedResponseId(currRequestId) != 0) { isFinalizedWithResponse = true; break; } } // property 1 and 2 - emit RequestCreated(requestId, _epoch, chainId); emit Test(isFinalizedWithResponse); emit Test(activeRequests > 0); assertTrue(isFinalizedWithResponse || activeRequests > 0, 'prop-1-2: create request reverted'); From c0ffee7b1e7188a69e35199f22d7fab3ab85ce1d Mon Sep 17 00:00:00 2001 From: drgorillamd <83670532+drgorillamd@users.noreply.github.com> Date: Wed, 11 Dec 2024 11:16:11 +0100 Subject: [PATCH 23/28] test(medusa): fix fp --- 1 | 0 log/log-1733753739.log | 0 log/log-1733753780.log | 241 ++++++++++++++++++ log/log-1733753814.log | 0 test/invariants/FuzzTest.t.sol | 36 ++- test/invariants/Reproducers.t.sol | 112 ++++++-- test/invariants/handlers/BaseHandler.t.sol | 27 ++ .../properties/PropertyDisputer.t.sol | 16 +- 8 files changed, 398 insertions(+), 34 deletions(-) create mode 100644 1 create mode 100644 log/log-1733753739.log create mode 100644 log/log-1733753780.log create mode 100644 log/log-1733753814.log diff --git a/1 b/1 new file mode 100644 index 0000000..e69de29 diff --git a/log/log-1733753739.log b/log/log-1733753739.log new file mode 100644 index 0000000..e69de29 diff --git a/log/log-1733753780.log b/log/log-1733753780.log new file mode 100644 index 0000000..c333ecf --- /dev/null +++ b/log/log-1733753780.log @@ -0,0 +1,241 @@ +⇾ Compiling targets with crytic-compile +⇾ Running command: +/opt/homebrew/bin/crytic-compile test/invariants/FuzzTest.t.sol --export-format solc --compile-libraries=(ValidatorLib,0xc0ffee) +⇾ Finished compiling targets in 6s +⇾ Initializing corpus +⇾ Setting up test chain +⇾ Finished setting up test chain +⇾ Running call sequences in the corpus +⇾ Finished running call sequences in the corpus in 2s +⇾ corpus: health: 54%, sequences: 271 (147 valid, 124 invalid) +⇾ Fuzzing with 10 workers +⇾ [NOT STARTED] Assertion Test: FuzzTest.handleAddEBORequestCreatorFinalityModule(uint256) +⇾ [NOT STARTED] Assertion Test: FuzzTest.handleSetArbitrator(uint256) +⇾ [NOT STARTED] Assertion Test: FuzzTest.property_requesterCanAlwaysCreateRequest(uint256,uint256) +⇾ [NOT STARTED] Assertion Test: FuzzTest.handleReleaseUnutilizedResponse(uint256) +⇾ [NOT STARTED] Assertion Test: FuzzTest.handleResolveDispute(uint256,uint256) +⇾ [NOT STARTED] Assertion Test: FuzzTest.property_pledgerCanPledgeFor(uint256,uint256) +⇾ [NOT STARTED] Assertion Test: FuzzTest.handleRemoveEBORequestCreatorRequestModule(uint256) +⇾ [NOT STARTED] Assertion Test: FuzzTest.property_finalizeAfterDeadline(uint256,uint256) +⇾ [NOT STARTED] Assertion Test: FuzzTest.handlePledge(uint256,uint256,uint256,uint256) +⇾ [NOT STARTED] Assertion Test: FuzzTest.handlePledgeForDispute(uint256,uint256,uint256) +⇾ [NOT STARTED] Assertion Test: FuzzTest.handleRevokeModule(uint256) +⇾ [NOT STARTED] Assertion Test: FuzzTest.handleSetPendingCouncil(uint256) +⇾ [NOT STARTED] Assertion Test: FuzzTest.handleAmendEpoch(uint256,uint256,uint256[],uint256[]) +⇾ [NOT STARTED] Assertion Test: FuzzTest.handleApproveModule(uint256) +⇾ [NOT STARTED] Assertion Test: FuzzTest.handleArbitrateDispute(uint256,uint256,uint256) +⇾ [NOT STARTED] Assertion Test: FuzzTest.handleClaimEscalationReward(uint256,uint256,uint256) +⇾ [NOT STARTED] Assertion Test: FuzzTest.prop_singleRequestIdForSingleDisputeOrResponseId() +⇾ [NOT STARTED] Assertion Test: FuzzTest.handleRemoveEBORequestCreatorFinalityModule(uint256) +⇾ [NOT STARTED] Assertion Test: FuzzTest.handleSlash(uint256,uint256,uint256,uint256) +⇾ [NOT STARTED] Assertion Test: FuzzTest.handleAddEBORequestCreatorRequestModule(uint256) +⇾ [NOT STARTED] Assertion Test: FuzzTest.handleConfirmCouncil() +⇾ [NOT STARTED] Assertion Test: FuzzTest.handleCreateRequestWrongCreator(uint256) +⇾ [NOT STARTED] Assertion Test: FuzzTest.handleOnSettleBondEscalation(uint256,uint256,uint256,uint256) +⇾ [NOT STARTED] Assertion Test: FuzzTest.handleSettleBondEscalation(uint256,uint256) +⇾ [NOT STARTED] Assertion Test: FuzzTest.property_arbitratorCanSettle(uint256,uint256,uint256) +⇾ [NOT STARTED] Assertion Test: FuzzTest.property_pledgerCanPledgeAgainst(uint256,uint256) +⇾ [NOT STARTED] Assertion Test: FuzzTest.handlePledgeAgainstDispute(uint256,uint256,uint256) +⇾ [NOT STARTED] Assertion Test: FuzzTest.handleSetMaxUsersToCheck(uint256) +⇾ [NOT STARTED] Assertion Test: FuzzTest.property_disputerCanAlwaysCreateDispute(uint256,uint256) +⇾ fuzz: elapsed: 0s, calls: 0 (0/sec), seq/s: 0, coverage: 54658, corpus: 127, failures: 0/0, gas/s: 0 +⇾ [NOT STARTED] Assertion Test: FuzzTest.property_disputerEscalateFirstDisputedResponse(uint256,uint256) +⇾ [NOT STARTED] Assertion Test: FuzzTest.property_proposerProposeBeforeDeadlineAndNoAnswer(uint256,bytes) +⇾ [Worker 1] Shrinking call sequence with 5 call(s) +⇾ [Worker 9] Shrinking call sequence with 8 call(s) +⇾ [Worker 7] Shrinking call sequence with 8 call(s) +⇾ [Worker 3] Shrinking call sequence with 8 call(s) +⇾ [Worker 6] Shrinking call sequence with 8 call(s) +⇾ [Worker 8] Shrinking call sequence with 8 call(s) +⇾ [Worker 0] Shrinking call sequence with 8 call(s) +⇾ [Worker 5] Shrinking call sequence with 8 call(s) +⇾ [Worker 4] Shrinking call sequence with 8 call(s) +⇾ [Worker 2] Shrinking call sequence with 8 call(s) +⇾ fuzz: elapsed: 3s, calls: 77 (25/sec), seq/s: 0, coverage: 54658, corpus: 127, failures: 0/0, gas/s: 16518520 +⇾ fuzz: elapsed: 6s, calls: 77 (0/sec), seq/s: 0, coverage: 54658, corpus: 127, failures: 0/0, gas/s: 0 +⇾ fuzz: elapsed: 9s, calls: 77 (0/sec), seq/s: 0, coverage: 54658, corpus: 127, failures: 0/0, gas/s: 0 +⇾ [FAILED] Assertion Test: FuzzTest.property_pledgerCanPledgeFor(uint256,uint256) +Test for method "FuzzTest.property_pledgerCanPledgeFor(uint256,uint256)" resulted in an assertion failure after the following call sequence: +[Call Sequence] +1) FuzzTest.property_requesterCanAlwaysCreateRequest(uint256,uint256)(169292243435926475947657618117809554715205381870477498737, 11227470702167300108676284646061054869459991254736913089273) (block=56765, time=310068, gas=12500000, gasprice=1, value=0, sender=0x0000000000000000000000000000000000030000) +2) FuzzTest.property_proposerProposeBeforeDeadlineAndNoAnswer(uint256,bytes)(266036087197766605821302567521179736131332992926046023619, ) (block=86763, time=575158, gas=12500000, gasprice=1, value=0, sender=0x0000000000000000000000000000000000030000) +3) FuzzTest.property_disputerCanAlwaysCreateDispute(uint256,uint256)(49039857307708443486248577169761821872565657850864711149, 42606003586655566682761513336656488723777169785197933256381) (block=108137, time=650339, gas=12500000, gasprice=1, value=0, sender=0x0000000000000000000000000000000000030000) +4) FuzzTest.property_disputerEscalateFirstDisputedResponse(uint256,uint256)(1551770073714798722944864429292065626653092673101459892789, 2411935221370875900160200968152595430802304156149400094726) (block=143071, time=748820, gas=12500000, gasprice=1, value=0, sender=0x0000000000000000000000000000000000070000) +5) FuzzTest.property_pledgerCanPledgeFor(uint256,uint256)(1569275433871878256366234355931346684851939149138239826201, 11140830125328699833383236776984887536228210656134932) (block=150070, time=774026, gas=12500000, gasprice=1, value=0, sender=0x0000000000000000000000000000000000070000) +[Execution Trace] + => [call] FuzzTest.property_pledgerCanPledgeFor(uint256,uint256)(1569275433871878256366234355931346684851939149138239826201, 11140830125328699833383236776984887536228210656134932) (addr=0x9bAfD307270677A3C3654B40F3F43a043B81f284, value=0, sender=0x0000000000000000000000000000000000070000) + => [call] FuzzERC20.transfer(address,uint256)(0x0000000000000000000000000000000000070000, 300000000000000000) (addr=0xaF5382d65A0eEbc1C7C80a0E9A2f78BCB53956aB, value=0, sender=0x9bAfD307270677A3C3654B40F3F43a043B81f284) + => [event] Transfer(0x0000000000000000000000000000000000000000, 0x9bafd307270677a3c3654b40f3f43a043b81f284, 300000000000000000) + => [event] Transfer(0x9bafd307270677a3c3654b40f3f43a043b81f284, 0x0000000000000000000000000000000000070000, 300000000000000000) + => [return (true)] + => [call] StdCheats.prank(address)(0x0000000000000000000000000000000000070000) (addr=0x7109709ECfa91a80626fF3989D68f67F5b1DD12D, value=0, sender=0x9bAfD307270677A3C3654B40F3F43a043B81f284) + => [return ()] + => [call] FuzzERC20.approve(address,uint256)(0xd9557d6d3ac4c8d620787bee095fea290ce0854c, 300000000000000000) (addr=0xaF5382d65A0eEbc1C7C80a0E9A2f78BCB53956aB, value=0, sender=0x0000000000000000000000000000000000070000) + => [event] Approval(0x0000000000000000000000000000000000070000, 0xd9557d6d3ac4c8d620787bee095fea290ce0854c, 300000000000000000) + => [return (true)] + => [call] StdCheats.prank(address)(0x0000000000000000000000000000000000070000) (addr=0x7109709ECfa91a80626fF3989D68f67F5b1DD12D, value=0, sender=0x9bAfD307270677A3C3654B40F3F43a043B81f284) + => [return ()] + => [call] MockHorizonStaking.stake(uint256)(300000000000000000) (addr=0xd9557D6D3aC4C8d620787Bee095FeA290cE0854c, value=0, sender=0x0000000000000000000000000000000000070000) + => [call] FuzzERC20.transferFrom(address,address,uint256)(0x0000000000000000000000000000000000070000, 0xd9557d6d3ac4c8d620787bee095fea290ce0854c, 300000000000000000) (addr=0xaF5382d65A0eEbc1C7C80a0E9A2f78BCB53956aB, value=0, sender=0xd9557D6D3aC4C8d620787Bee095FeA290cE0854c) + => [event] Approval(0x0000000000000000000000000000000000070000, 0xd9557d6d3ac4c8d620787bee095fea290ce0854c, 0) + => [event] Transfer(0x0000000000000000000000000000000000070000, 0xd9557d6d3ac4c8d620787bee095fea290ce0854c, 300000000000000000) + => [return (true)] + => [return ()] + => [event] TotalPledgesFor(0) + => [event] TotalPledgesAgainst(0) + => [call] StdCheats.prank(address)(0x0000000000000000000000000000000000070000) (addr=0x7109709ECfa91a80626fF3989D68f67F5b1DD12D, value=0, sender=0x9bAfD307270677A3C3654B40F3F43a043B81f284) + => [return ()] + => [call] BondEscalationModule.pledgeForDispute((uint96,address,address,address,address,address,address,bytes,bytes,bytes,bytes,bytes),(address,address,bytes32,bytes32))({nonce: 0, requester: 0x0db2d009dccf208b0402ec2c6bb03bc7ffb3e805, requestModule: 0x820ca92a0c7d04f56a0b3afc1af2c4e886a3a065, responseModule: 0x7be6550517d504fa555db3afaaab8823df142595, disputeModule: 0x2bb473704a33312d358718d002f50c274be1daaa, resolutionModule: 0x082915598a1fce74a5994687d3fcd9ccf0bfe11c, finalityModule: 0xc4d57a88155a38b26f3b5a460154494fd597dfbe, requestModuleData: 0000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000001ce3a0000000000000000000000000000000000000000000000000000000000000080000000000000000000000000ffbd5d371f75a40a12085722e5ac1aca16c103ca000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000086f7074696d69736d000000000000000000000000000000000000000000000000, responseModuleData: 000000000000000000000000ffbd5d371f75a40a12085722e5ac1aca16c103ca000000000000000000000000af5382d65a0eebc1c7c80a0e9a2f78bcb53956ab00000000000000000000000000000000000000000000000006f05b59d3b2000000000000000000000000000000000000000000000000000000000000000697800000000000000000000000000000000000000000000000000000000000093a80, disputeModuleData: 000000000000000000000000ffbd5d371f75a40a12085722e5ac1aca16c103ca000000000000000000000000af5382d65a0eebc1c7c80a0e9a2f78bcb53956ab0000000000000000000000000000000000000000000000000429d069189e0000000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000d2f00000000000000000000000000000000000000000000000000000000000003f4800000000000000000000000000000000000000000000000000000000000127500, resolutionModuleData: 000000000000000000000000018eb190c5a941dee3b32bc9e37ad91352eef974, finalityModuleData: }, {disputer: 0x0000000000000000000000000000000000030000, proposer: 0x0000000000000000000000000000000000030000, responseId: 3c3ecf8a0d2a7b1e3535bed4db3efd66e929c6c72c7d60fc47f3645a2c45883b, requestId: 47b1ae199574446876b72a5a8f40e5b477fd9e19f8f91c4ca5d4bdf7693c5c69}) (addr=0x2Bb473704A33312d358718D002f50C274bE1daaA, value=0, sender=0x0000000000000000000000000000000000070000) + => [proxy call] BondEscalationModule -> ValidatorLib.(msg_data=ef37aa67000000000000000000000000000000000000000000000000000000000003000000000000000000000000000000000000000000000000000000000000000300003c3ecf8a0d2a7b1e3535bed4db3efd66e929c6c72c7d60fc47f3645a2c45883b47b1ae199574446876b72a5a8f40e5b477fd9e19f8f91c4ca5d4bdf7693c5c69) (addr=0x2Bb473704A33312d358718D002f50C274bE1daaA, code=0x0000000000000000000000000000000000C0FFEE, value=0, sender=0x0000000000000000000000000000000000070000) + => [return (return_data=d951305493666caff1b6906450a78df42224b6d5f61e0c358b49a8472ee66dc1)] + => [proxy call] BondEscalationModule -> ValidatorLib.(msg_data=22c9576d00000000000000000000000000000000000000000000000000000000000000a0000000000000000000000000000000000000000000000000000000000003000000000000000000000000000000000000000000000000000000000000000300003c3ecf8a0d2a7b1e3535bed4db3efd66e929c6c72c7d60fc47f3645a2c45883b47b1ae199574446876b72a5a8f40e5b477fd9e19f8f91c4ca5d4bdf7693c5c6900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000db2d009dccf208b0402ec2c6bb03bc7ffb3e805000000000000000000000000820ca92a0c7d04f56a0b3afc1af2c4e886a3a0650000000000000000000000007be6550517d504fa555db3afaaab8823df1425950000000000000000000000002bb473704a33312d358718d002f50c274be1daaa000000000000000000000000082915598a1fce74a5994687d3fcd9ccf0bfe11c000000000000000000000000c4d57a88155a38b26f3b5a460154494fd597dfbe0000000000000000000000000000000000000000000000000000000000000180000000000000000000000000000000000000000000000000000000000000028000000000000000000000000000000000000000000000000000000000000003400000000000000000000000000000000000000000000000000000000000000440000000000000000000000000000000000000000000000000000000000000048000000000000000000000000000000000000000000000000000000000000000e00000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000001ce3a0000000000000000000000000000000000000000000000000000000000000080000000000000000000000000ffbd5d371f75a40a12085722e5ac1aca16c103ca000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000086f7074696d69736d00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000000ffbd5d371f75a40a12085722e5ac1aca16c103ca000000000000000000000000af5382d65a0eebc1c7c80a0e9a2f78bcb53956ab00000000000000000000000000000000000000000000000006f05b59d3b2000000000000000000000000000000000000000000000000000000000000000697800000000000000000000000000000000000000000000000000000000000093a8000000000000000000000000000000000000000000000000000000000000000e0000000000000000000000000ffbd5d371f75a40a12085722e5ac1aca16c103ca000000000000000000000000af5382d65a0eebc1c7c80a0e9a2f78bcb53956ab0000000000000000000000000000000000000000000000000429d069189e0000000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000d2f00000000000000000000000000000000000000000000000000000000000003f48000000000000000000000000000000000000000000000000000000000001275000000000000000000000000000000000000000000000000000000000000000020000000000000000000000000018eb190c5a941dee3b32bc9e37ad91352eef9740000000000000000000000000000000000000000000000000000000000000000) (addr=0x2Bb473704A33312d358718D002f50C274bE1daaA, code=0x0000000000000000000000000000000000C0FFEE, value=0, sender=0x0000000000000000000000000000000000070000) + => [return (return_data=d951305493666caff1b6906450a78df42224b6d5f61e0c358b49a8472ee66dc1)] + => [call] Oracle.disputeCreatedAt(bytes32)(d951305493666caff1b6906450a78df42224b6d5f61e0c358b49a8472ee66dc1) (addr=0x6c02b1132012Ba1607822f0be10C32c85681d922, value=, sender=0x2Bb473704A33312d358718D002f50C274bE1daaA) + => [return (650339)] + => [call] Oracle.disputeCreatedAt(bytes32)(d951305493666caff1b6906450a78df42224b6d5f61e0c358b49a8472ee66dc1) (addr=0x6c02b1132012Ba1607822f0be10C32c85681d922, value=, sender=0x2Bb473704A33312d358718D002f50C274bE1daaA) + => [return (650339)] + => [call] HorizonAccountingExtension.pledge(address,(uint96,address,address,address,address,address,address,bytes,bytes,bytes,bytes,bytes),(address,address,bytes32,bytes32),address,uint256)(0x0000000000000000000000000000000000070000, {nonce: 0, requester: 0x0db2d009dccf208b0402ec2c6bb03bc7ffb3e805, requestModule: 0x820ca92a0c7d04f56a0b3afc1af2c4e886a3a065, responseModule: 0x7be6550517d504fa555db3afaaab8823df142595, disputeModule: 0x2bb473704a33312d358718d002f50c274be1daaa, resolutionModule: 0x082915598a1fce74a5994687d3fcd9ccf0bfe11c, finalityModule: 0xc4d57a88155a38b26f3b5a460154494fd597dfbe, requestModuleData: 0000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000001ce3a0000000000000000000000000000000000000000000000000000000000000080000000000000000000000000ffbd5d371f75a40a12085722e5ac1aca16c103ca000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000086f7074696d69736d000000000000000000000000000000000000000000000000, responseModuleData: 000000000000000000000000ffbd5d371f75a40a12085722e5ac1aca16c103ca000000000000000000000000af5382d65a0eebc1c7c80a0e9a2f78bcb53956ab00000000000000000000000000000000000000000000000006f05b59d3b2000000000000000000000000000000000000000000000000000000000000000697800000000000000000000000000000000000000000000000000000000000093a80, disputeModuleData: 000000000000000000000000ffbd5d371f75a40a12085722e5ac1aca16c103ca000000000000000000000000af5382d65a0eebc1c7c80a0e9a2f78bcb53956ab0000000000000000000000000000000000000000000000000429d069189e0000000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000d2f00000000000000000000000000000000000000000000000000000000000003f4800000000000000000000000000000000000000000000000000000000000127500, resolutionModuleData: 000000000000000000000000018eb190c5a941dee3b32bc9e37ad91352eef974, finalityModuleData: }, {disputer: 0x0000000000000000000000000000000000030000, proposer: 0x0000000000000000000000000000000000030000, responseId: 3c3ecf8a0d2a7b1e3535bed4db3efd66e929c6c72c7d60fc47f3645a2c45883b, requestId: 47b1ae199574446876b72a5a8f40e5b477fd9e19f8f91c4ca5d4bdf7693c5c69}, 0xaf5382d65a0eebc1c7c80a0e9a2f78bcb53956ab, 300000000000000000) (addr=0xffBD5D371F75A40a12085722e5aC1aCa16C103cA, value=0, sender=0x2Bb473704A33312d358718D002f50C274bE1daaA) + => [proxy call] HorizonAccountingExtension -> ValidatorLib.(msg_data=47af57a6000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000db2d009dccf208b0402ec2c6bb03bc7ffb3e805000000000000000000000000820ca92a0c7d04f56a0b3afc1af2c4e886a3a0650000000000000000000000007be6550517d504fa555db3afaaab8823df1425950000000000000000000000002bb473704a33312d358718d002f50c274be1daaa000000000000000000000000082915598a1fce74a5994687d3fcd9ccf0bfe11c000000000000000000000000c4d57a88155a38b26f3b5a460154494fd597dfbe0000000000000000000000000000000000000000000000000000000000000180000000000000000000000000000000000000000000000000000000000000028000000000000000000000000000000000000000000000000000000000000003400000000000000000000000000000000000000000000000000000000000000440000000000000000000000000000000000000000000000000000000000000048000000000000000000000000000000000000000000000000000000000000000e00000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000001ce3a0000000000000000000000000000000000000000000000000000000000000080000000000000000000000000ffbd5d371f75a40a12085722e5ac1aca16c103ca000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000086f7074696d69736d00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000000ffbd5d371f75a40a12085722e5ac1aca16c103ca000000000000000000000000af5382d65a0eebc1c7c80a0e9a2f78bcb53956ab00000000000000000000000000000000000000000000000006f05b59d3b2000000000000000000000000000000000000000000000000000000000000000697800000000000000000000000000000000000000000000000000000000000093a8000000000000000000000000000000000000000000000000000000000000000e0000000000000000000000000ffbd5d371f75a40a12085722e5ac1aca16c103ca000000000000000000000000af5382d65a0eebc1c7c80a0e9a2f78bcb53956ab0000000000000000000000000000000000000000000000000429d069189e0000000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000d2f00000000000000000000000000000000000000000000000000000000000003f48000000000000000000000000000000000000000000000000000000000001275000000000000000000000000000000000000000000000000000000000000000020000000000000000000000000018eb190c5a941dee3b32bc9e37ad91352eef9740000000000000000000000000000000000000000000000000000000000000000) (addr=0xffBD5D371F75A40a12085722e5aC1aCa16C103cA, code=0x0000000000000000000000000000000000C0FFEE, value=0, sender=0x2Bb473704A33312d358718D002f50C274bE1daaA) + => [return (return_data=47b1ae199574446876b72a5a8f40e5b477fd9e19f8f91c4ca5d4bdf7693c5c69)] + => [proxy call] HorizonAccountingExtension -> ValidatorLib.(msg_data=22c9576d00000000000000000000000000000000000000000000000000000000000000a0000000000000000000000000000000000000000000000000000000000003000000000000000000000000000000000000000000000000000000000000000300003c3ecf8a0d2a7b1e3535bed4db3efd66e929c6c72c7d60fc47f3645a2c45883b47b1ae199574446876b72a5a8f40e5b477fd9e19f8f91c4ca5d4bdf7693c5c6900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000db2d009dccf208b0402ec2c6bb03bc7ffb3e805000000000000000000000000820ca92a0c7d04f56a0b3afc1af2c4e886a3a0650000000000000000000000007be6550517d504fa555db3afaaab8823df1425950000000000000000000000002bb473704a33312d358718d002f50c274be1daaa000000000000000000000000082915598a1fce74a5994687d3fcd9ccf0bfe11c000000000000000000000000c4d57a88155a38b26f3b5a460154494fd597dfbe0000000000000000000000000000000000000000000000000000000000000180000000000000000000000000000000000000000000000000000000000000028000000000000000000000000000000000000000000000000000000000000003400000000000000000000000000000000000000000000000000000000000000440000000000000000000000000000000000000000000000000000000000000048000000000000000000000000000000000000000000000000000000000000000e00000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000001ce3a0000000000000000000000000000000000000000000000000000000000000080000000000000000000000000ffbd5d371f75a40a12085722e5ac1aca16c103ca000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000086f7074696d69736d00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000000ffbd5d371f75a40a12085722e5ac1aca16c103ca000000000000000000000000af5382d65a0eebc1c7c80a0e9a2f78bcb53956ab00000000000000000000000000000000000000000000000006f05b59d3b2000000000000000000000000000000000000000000000000000000000000000697800000000000000000000000000000000000000000000000000000000000093a8000000000000000000000000000000000000000000000000000000000000000e0000000000000000000000000ffbd5d371f75a40a12085722e5ac1aca16c103ca000000000000000000000000af5382d65a0eebc1c7c80a0e9a2f78bcb53956ab0000000000000000000000000000000000000000000000000429d069189e0000000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000d2f00000000000000000000000000000000000000000000000000000000000003f48000000000000000000000000000000000000000000000000000000000001275000000000000000000000000000000000000000000000000000000000000000020000000000000000000000000018eb190c5a941dee3b32bc9e37ad91352eef9740000000000000000000000000000000000000000000000000000000000000000) (addr=0xffBD5D371F75A40a12085722e5aC1aCa16C103cA, code=0x0000000000000000000000000000000000C0FFEE, value=0, sender=0x2Bb473704A33312d358718D002f50C274bE1daaA) + => [return (return_data=d951305493666caff1b6906450a78df42224b6d5f61e0c358b49a8472ee66dc1)] + => [call] Oracle.disputeCreatedAt(bytes32)(d951305493666caff1b6906450a78df42224b6d5f61e0c358b49a8472ee66dc1) (addr=0x6c02b1132012Ba1607822f0be10C32c85681d922, value=, sender=0xffBD5D371F75A40a12085722e5aC1aCa16C103cA) + => [return (650339)] + => [call] Oracle.allowedModule(bytes32,address)(47b1ae199574446876b72a5a8f40e5b477fd9e19f8f91c4ca5d4bdf7693c5c69, 0x2bb473704a33312d358718d002f50c274be1daaa) (addr=0x6c02b1132012Ba1607822f0be10C32c85681d922, value=, sender=0xffBD5D371F75A40a12085722e5aC1aCa16C103cA) + => [return (true)] + => [call] MockHorizonStaking.getProvision(address,address)(0x0000000000000000000000000000000000070000, 0xffbd5d371f75a40a12085722e5ac1aca16c103ca) (addr=0xd9557D6D3aC4C8d620787Bee095FeA290cE0854c, value=, sender=0xffBD5D371F75A40a12085722e5aC1aCa16C103cA) + => [return ({tokens: 300000000000000000, tokensThawing: 0, sharesThawing: 0, maxVerifierCut: 1000000, thawingPeriod: 86400, createdAt: 748820, maxVerifierCutPending: 0, thawingPeriodPending: 0})] + => [event] Pledged(0x0000000000000000000000000000000000070000, 47b1ae199574446876b72a5a8f40e5b477fd9e19f8f91c4ca5d4bdf7693c5c69, d951305493666caff1b6906450a78df42224b6d5f61e0c358b49a8472ee66dc1, 300000000000000000) + => [return ()] + => [event] PledgedForDispute(d951305493666caff1b6906450a78df42224b6d5f61e0c358b49a8472ee66dc1, 0x0000000000000000000000000000000000070000, 300000000000000000) + => [return ()] + => [event] TestFailure("property 8a: pledging for a dispute not escalated") + => [panic: assertion failed] + + +⇾ [FAILED] Assertion Test: FuzzTest.prop_singleRequestIdForSingleDisputeOrResponseId() +Test for method "FuzzTest.prop_singleRequestIdForSingleDisputeOrResponseId()" resulted in an assertion failure after the following call sequence: +[Call Sequence] +1) FuzzTest.property_requesterCanAlwaysCreateRequest(uint256,uint256)(10, 9707041212360705471726866045877522134324921439114044538982705458862514448890) (block=3, time=107622, gas=12500000, gasprice=1, value=0, sender=0x0000000000000000000000000000000000030000) +2) FuzzTest.property_proposerProposeBeforeDeadlineAndNoAnswer(uint256,bytes)(15892930693282493097617864930261448581096427611222467858746859671693332294, 00f9410092ac45a56e6c48f50020aa8f54e73ec103ee0000f415350001058d5e73866b0f58002183986a2900b8c82be6d671f12400e23ae15d25521113) (block=29920, time=191126, gas=12500000, gasprice=1, value=0, sender=0x0000000000000000000000000000000000020000) +3) FuzzTest.property_disputerCanAlwaysCreateDispute(uint256,uint256)(14474011154664524427946373126085988481658748083205070504932073000989141479270, 14474011154664524427946373126085988481658748083205070504932198000989143062560) (block=41973, time=293378, gas=12500000, gasprice=1, value=0, sender=0x0000000000000000000000000000000000070000) +4) FuzzTest.property_finalizeAfterDeadline(uint256,uint256)(695245907315507039499935032987300989130610564890732487909218808307290247341, 28948022309329048855892746252171976963317496166410141009864396001978282766329) (block=72668, time=701817, gas=12500000, gasprice=1, value=0, sender=0x0000000000000000000000000000000000090000) +5) FuzzTest.property_disputerEscalateFirstDisputedResponse(uint256,uint256)(1595168428146590381198079498983511911218452445360431643781060660792460137383, 317114873976849654048429147049129198431147991988200608027734237764845495007) (block=130241, time=1239575, gas=12500000, gasprice=1, value=0, sender=0x0000000000000000000000000000000000060000) +6) FuzzTest.handleArbitrateDispute(uint256,uint256,uint256)(7237005577332262213973186563042994240829374041602535252466099000494570221568, 7237005577332262213973186563042994240829374041602535252466036500494571035415, 67972695252429088641906460292848161202925034077) (block=133321, time=1272520, gas=12500000, gasprice=1, value=0, sender=0x0000000000000000000000000000000000030000) +7) FuzzTest.property_requesterCanAlwaysCreateRequest(uint256,uint256)(10, 9707041212360705471726866045877522134324921439114044538982705458862514410106) (block=133321, time=1272520, gas=12500000, gasprice=1, value=0, sender=0x0000000000000000000000000000000000030000) +8) FuzzTest.prop_singleRequestIdForSingleDisputeOrResponseId()() (block=150144, time=1722821, gas=12500000, gasprice=1, value=0, sender=0x0000000000000000000000000000000000030000) +[Execution Trace] + => [call] FuzzTest.prop_singleRequestIdForSingleDisputeOrResponseId()() (addr=0x9bAfD307270677A3C3654B40F3F43a043B81f284, value=0, sender=0x0000000000000000000000000000000000030000) + => [event] TestFailure("prop 13: different response id for same request") + => [panic: assertion failed] + + +⇾ Fuzzer stopped, test results follow below ... +⇾ [PASSED] Assertion Test: FuzzTest.handleAddEBORequestCreatorFinalityModule(uint256) +⇾ [PASSED] Assertion Test: FuzzTest.handleAddEBORequestCreatorRequestModule(uint256) +⇾ [PASSED] Assertion Test: FuzzTest.handleAmendEpoch(uint256,uint256,uint256[],uint256[]) +⇾ [PASSED] Assertion Test: FuzzTest.handleApproveModule(uint256) +⇾ [PASSED] Assertion Test: FuzzTest.handleArbitrateDispute(uint256,uint256,uint256) +⇾ [PASSED] Assertion Test: FuzzTest.handleClaimEscalationReward(uint256,uint256,uint256) +⇾ [PASSED] Assertion Test: FuzzTest.handleConfirmCouncil() +⇾ [PASSED] Assertion Test: FuzzTest.handleCreateRequestWrongCreator(uint256) +⇾ [PASSED] Assertion Test: FuzzTest.handleOnSettleBondEscalation(uint256,uint256,uint256,uint256) +⇾ [PASSED] Assertion Test: FuzzTest.handlePledge(uint256,uint256,uint256,uint256) +⇾ [PASSED] Assertion Test: FuzzTest.handlePledgeAgainstDispute(uint256,uint256,uint256) +⇾ [PASSED] Assertion Test: FuzzTest.handlePledgeForDispute(uint256,uint256,uint256) +⇾ [PASSED] Assertion Test: FuzzTest.handleReleaseUnutilizedResponse(uint256) +⇾ [PASSED] Assertion Test: FuzzTest.handleRemoveEBORequestCreatorFinalityModule(uint256) +⇾ [PASSED] Assertion Test: FuzzTest.handleRemoveEBORequestCreatorRequestModule(uint256) +⇾ [PASSED] Assertion Test: FuzzTest.handleResolveDispute(uint256,uint256) +⇾ [PASSED] Assertion Test: FuzzTest.handleRevokeModule(uint256) +⇾ [PASSED] Assertion Test: FuzzTest.handleSetArbitrator(uint256) +⇾ [PASSED] Assertion Test: FuzzTest.handleSetMaxUsersToCheck(uint256) +⇾ [PASSED] Assertion Test: FuzzTest.handleSetPendingCouncil(uint256) +⇾ [PASSED] Assertion Test: FuzzTest.handleSettleBondEscalation(uint256,uint256) +⇾ [PASSED] Assertion Test: FuzzTest.handleSlash(uint256,uint256,uint256,uint256) +⇾ [PASSED] Assertion Test: FuzzTest.property_arbitratorCanSettle(uint256,uint256,uint256) +⇾ [PASSED] Assertion Test: FuzzTest.property_disputerCanAlwaysCreateDispute(uint256,uint256) +⇾ [PASSED] Assertion Test: FuzzTest.property_disputerEscalateFirstDisputedResponse(uint256,uint256) +⇾ [PASSED] Assertion Test: FuzzTest.property_finalizeAfterDeadline(uint256,uint256) +⇾ [PASSED] Assertion Test: FuzzTest.property_pledgerCanPledgeAgainst(uint256,uint256) +⇾ [PASSED] Assertion Test: FuzzTest.property_proposerProposeBeforeDeadlineAndNoAnswer(uint256,bytes) +⇾ [PASSED] Assertion Test: FuzzTest.property_requesterCanAlwaysCreateRequest(uint256,uint256) +⇾ [FAILED] Assertion Test: FuzzTest.prop_singleRequestIdForSingleDisputeOrResponseId() +Test for method "FuzzTest.prop_singleRequestIdForSingleDisputeOrResponseId()" resulted in an assertion failure after the following call sequence: +[Call Sequence] +1) FuzzTest.property_requesterCanAlwaysCreateRequest(uint256,uint256)(10, 9707041212360705471726866045877522134324921439114044538982705458862514910650) (block=3, time=107622, gas=12500000, gasprice=1, value=0, sender=0x0000000000000000000000000000000000030000) +2) FuzzTest.property_proposerProposeBeforeDeadlineAndNoAnswer(uint256,bytes)(2034295128740159116495086711073465418380342734236475885919535537976749146007, b362f941e0929845a56c00f5aa8f54e73ebac103eef260f415283535016b058d5e73866b0f58002183986afb58b8002be6d671f12480005d25520013) (block=29920, time=191126, gas=12500000, gasprice=1, value=0, sender=0x0000000000000000000000000000000000020000) +3) FuzzTest.property_disputerCanAlwaysCreateDispute(uint256,uint256)(56539106072908298546665520023458291688888397198401930649563319384466671854, 1809251394333065553493296640760748560207343510400633813116562250123643921572) (block=41973, time=293378, gas=12500000, gasprice=1, value=0, sender=0x0000000000000000000000000000000000070000) +4) FuzzTest.property_finalizeAfterDeadline(uint256,uint256)(2780983629262028157999740131949203956522442259562929951636875233229162110295, 3618502788666131106986593281521497120414687020801267626232924500247284998140) (block=72668, time=701817, gas=12500000, gasprice=1, value=0, sender=0x0000000000000000000000000000000000090000) +5) FuzzTest.property_disputerEscalateFirstDisputedResponse(uint256,uint256)(99698026759161898824879968687099696086335452838262729756974695507073055406, 2536918991814797232387433176393033587449183935905604864222073902118764346573) (block=130241, time=1239575, gas=12500000, gasprice=1, value=0, sender=0x0000000000000000000000000000000000060000) +6) FuzzTest.handleArbitrateDispute(uint256,uint256,uint256)(3618502788666131106986593281521497120414687020801267626233049500247285438462, 226156424291633194186662080095093570025917938800079226639564812515455507967, 4248293453276818040119153768209260075183155901) (block=133321, time=1272520, gas=12500000, gasprice=1, value=0, sender=0x0000000000000000000000000000000000030000) +7) FuzzTest.property_requesterCanAlwaysCreateRequest(uint256,uint256)(10, 9707041212360705471726866045877522134324921439114044538982705458862514606714) (block=133321, time=1272520, gas=12500000, gasprice=1, value=0, sender=0x0000000000000000000000000000000000030000) +8) FuzzTest.prop_singleRequestIdForSingleDisputeOrResponseId()() (block=163651, time=1579336, gas=12500000, gasprice=1, value=0, sender=0x0000000000000000000000000000000000010000) +[Execution Trace] + => [call] FuzzTest.prop_singleRequestIdForSingleDisputeOrResponseId()() (addr=0x9bAfD307270677A3C3654B40F3F43a043B81f284, value=0, sender=0x0000000000000000000000000000000000010000) + => [event] TestFailure("prop 13: different response id for same request") + => [panic: assertion failed] + + +⇾ [FAILED] Assertion Test: FuzzTest.property_pledgerCanPledgeFor(uint256,uint256) +Test for method "FuzzTest.property_pledgerCanPledgeFor(uint256,uint256)" resulted in an assertion failure after the following call sequence: +[Call Sequence] +1) FuzzTest.property_requesterCanAlwaysCreateRequest(uint256,uint256)(169292243435926475947657618117809554715205381870477498737, 11227470702167300108676284646061054869459991254736913089273) (block=56765, time=310068, gas=12500000, gasprice=1, value=0, sender=0x0000000000000000000000000000000000030000) +2) FuzzTest.property_proposerProposeBeforeDeadlineAndNoAnswer(uint256,bytes)(266036087197766605821302567521179736131332992926046023619, ) (block=86763, time=575158, gas=12500000, gasprice=1, value=0, sender=0x0000000000000000000000000000000000030000) +3) FuzzTest.property_disputerCanAlwaysCreateDispute(uint256,uint256)(49039857307708443486248577169761821872565657850864711149, 42606003586655566682761513336656488723777169785197933256381) (block=108137, time=650339, gas=12500000, gasprice=1, value=0, sender=0x0000000000000000000000000000000000030000) +4) FuzzTest.property_disputerEscalateFirstDisputedResponse(uint256,uint256)(1551770073714798722944864429292065626653092673101459892789, 2411935221370875900160200968152595430802304156149400094726) (block=143071, time=748820, gas=12500000, gasprice=1, value=0, sender=0x0000000000000000000000000000000000070000) +5) FuzzTest.property_pledgerCanPledgeFor(uint256,uint256)(1569275433871878256366234355931346684851939149138239826201, 11140830125328699833383236776984887536228210656134932) (block=150070, time=774026, gas=12500000, gasprice=1, value=0, sender=0x0000000000000000000000000000000000070000) +[Execution Trace] + => [call] FuzzTest.property_pledgerCanPledgeFor(uint256,uint256)(1569275433871878256366234355931346684851939149138239826201, 11140830125328699833383236776984887536228210656134932) (addr=0x9bAfD307270677A3C3654B40F3F43a043B81f284, value=0, sender=0x0000000000000000000000000000000000070000) + => [call] FuzzERC20.transfer(address,uint256)(0x0000000000000000000000000000000000070000, 300000000000000000) (addr=0xaF5382d65A0eEbc1C7C80a0E9A2f78BCB53956aB, value=0, sender=0x9bAfD307270677A3C3654B40F3F43a043B81f284) + => [event] Transfer(0x0000000000000000000000000000000000000000, 0x9bafd307270677a3c3654b40f3f43a043b81f284, 300000000000000000) + => [event] Transfer(0x9bafd307270677a3c3654b40f3f43a043b81f284, 0x0000000000000000000000000000000000070000, 300000000000000000) + => [return (true)] + => [call] StdCheats.prank(address)(0x0000000000000000000000000000000000070000) (addr=0x7109709ECfa91a80626fF3989D68f67F5b1DD12D, value=0, sender=0x9bAfD307270677A3C3654B40F3F43a043B81f284) + => [return ()] + => [call] FuzzERC20.approve(address,uint256)(0xd9557d6d3ac4c8d620787bee095fea290ce0854c, 300000000000000000) (addr=0xaF5382d65A0eEbc1C7C80a0E9A2f78BCB53956aB, value=0, sender=0x0000000000000000000000000000000000070000) + => [event] Approval(0x0000000000000000000000000000000000070000, 0xd9557d6d3ac4c8d620787bee095fea290ce0854c, 300000000000000000) + => [return (true)] + => [call] StdCheats.prank(address)(0x0000000000000000000000000000000000070000) (addr=0x7109709ECfa91a80626fF3989D68f67F5b1DD12D, value=0, sender=0x9bAfD307270677A3C3654B40F3F43a043B81f284) + => [return ()] + => [call] MockHorizonStaking.stake(uint256)(300000000000000000) (addr=0xd9557D6D3aC4C8d620787Bee095FeA290cE0854c, value=0, sender=0x0000000000000000000000000000000000070000) + => [call] FuzzERC20.transferFrom(address,address,uint256)(0x0000000000000000000000000000000000070000, 0xd9557d6d3ac4c8d620787bee095fea290ce0854c, 300000000000000000) (addr=0xaF5382d65A0eEbc1C7C80a0E9A2f78BCB53956aB, value=0, sender=0xd9557D6D3aC4C8d620787Bee095FeA290cE0854c) + => [event] Approval(0x0000000000000000000000000000000000070000, 0xd9557d6d3ac4c8d620787bee095fea290ce0854c, 0) + => [event] Transfer(0x0000000000000000000000000000000000070000, 0xd9557d6d3ac4c8d620787bee095fea290ce0854c, 300000000000000000) + => [return (true)] + => [return ()] + => [event] TotalPledgesFor(0) + => [event] TotalPledgesAgainst(0) + => [call] StdCheats.prank(address)(0x0000000000000000000000000000000000070000) (addr=0x7109709ECfa91a80626fF3989D68f67F5b1DD12D, value=0, sender=0x9bAfD307270677A3C3654B40F3F43a043B81f284) + => [return ()] + => [call] BondEscalationModule.pledgeForDispute((uint96,address,address,address,address,address,address,bytes,bytes,bytes,bytes,bytes),(address,address,bytes32,bytes32))({nonce: 0, requester: 0x0db2d009dccf208b0402ec2c6bb03bc7ffb3e805, requestModule: 0x820ca92a0c7d04f56a0b3afc1af2c4e886a3a065, responseModule: 0x7be6550517d504fa555db3afaaab8823df142595, disputeModule: 0x2bb473704a33312d358718d002f50c274be1daaa, resolutionModule: 0x082915598a1fce74a5994687d3fcd9ccf0bfe11c, finalityModule: 0xc4d57a88155a38b26f3b5a460154494fd597dfbe, requestModuleData: 0000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000001ce3a0000000000000000000000000000000000000000000000000000000000000080000000000000000000000000ffbd5d371f75a40a12085722e5ac1aca16c103ca000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000086f7074696d69736d000000000000000000000000000000000000000000000000, responseModuleData: 000000000000000000000000ffbd5d371f75a40a12085722e5ac1aca16c103ca000000000000000000000000af5382d65a0eebc1c7c80a0e9a2f78bcb53956ab00000000000000000000000000000000000000000000000006f05b59d3b2000000000000000000000000000000000000000000000000000000000000000697800000000000000000000000000000000000000000000000000000000000093a80, disputeModuleData: 000000000000000000000000ffbd5d371f75a40a12085722e5ac1aca16c103ca000000000000000000000000af5382d65a0eebc1c7c80a0e9a2f78bcb53956ab0000000000000000000000000000000000000000000000000429d069189e0000000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000d2f00000000000000000000000000000000000000000000000000000000000003f4800000000000000000000000000000000000000000000000000000000000127500, resolutionModuleData: 000000000000000000000000018eb190c5a941dee3b32bc9e37ad91352eef974, finalityModuleData: }, {disputer: 0x0000000000000000000000000000000000030000, proposer: 0x0000000000000000000000000000000000030000, responseId: 3c3ecf8a0d2a7b1e3535bed4db3efd66e929c6c72c7d60fc47f3645a2c45883b, requestId: 47b1ae199574446876b72a5a8f40e5b477fd9e19f8f91c4ca5d4bdf7693c5c69}) (addr=0x2Bb473704A33312d358718D002f50C274bE1daaA, value=0, sender=0x0000000000000000000000000000000000070000) + => [proxy call] BondEscalationModule -> ValidatorLib.(msg_data=ef37aa67000000000000000000000000000000000000000000000000000000000003000000000000000000000000000000000000000000000000000000000000000300003c3ecf8a0d2a7b1e3535bed4db3efd66e929c6c72c7d60fc47f3645a2c45883b47b1ae199574446876b72a5a8f40e5b477fd9e19f8f91c4ca5d4bdf7693c5c69) (addr=0x2Bb473704A33312d358718D002f50C274bE1daaA, code=0x0000000000000000000000000000000000C0FFEE, value=0, sender=0x0000000000000000000000000000000000070000) + => [return (return_data=d951305493666caff1b6906450a78df42224b6d5f61e0c358b49a8472ee66dc1)] + => [proxy call] BondEscalationModule -> ValidatorLib.(msg_data=22c9576d00000000000000000000000000000000000000000000000000000000000000a0000000000000000000000000000000000000000000000000000000000003000000000000000000000000000000000000000000000000000000000000000300003c3ecf8a0d2a7b1e3535bed4db3efd66e929c6c72c7d60fc47f3645a2c45883b47b1ae199574446876b72a5a8f40e5b477fd9e19f8f91c4ca5d4bdf7693c5c6900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000db2d009dccf208b0402ec2c6bb03bc7ffb3e805000000000000000000000000820ca92a0c7d04f56a0b3afc1af2c4e886a3a0650000000000000000000000007be6550517d504fa555db3afaaab8823df1425950000000000000000000000002bb473704a33312d358718d002f50c274be1daaa000000000000000000000000082915598a1fce74a5994687d3fcd9ccf0bfe11c000000000000000000000000c4d57a88155a38b26f3b5a460154494fd597dfbe0000000000000000000000000000000000000000000000000000000000000180000000000000000000000000000000000000000000000000000000000000028000000000000000000000000000000000000000000000000000000000000003400000000000000000000000000000000000000000000000000000000000000440000000000000000000000000000000000000000000000000000000000000048000000000000000000000000000000000000000000000000000000000000000e00000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000001ce3a0000000000000000000000000000000000000000000000000000000000000080000000000000000000000000ffbd5d371f75a40a12085722e5ac1aca16c103ca000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000086f7074696d69736d00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000000ffbd5d371f75a40a12085722e5ac1aca16c103ca000000000000000000000000af5382d65a0eebc1c7c80a0e9a2f78bcb53956ab00000000000000000000000000000000000000000000000006f05b59d3b2000000000000000000000000000000000000000000000000000000000000000697800000000000000000000000000000000000000000000000000000000000093a8000000000000000000000000000000000000000000000000000000000000000e0000000000000000000000000ffbd5d371f75a40a12085722e5ac1aca16c103ca000000000000000000000000af5382d65a0eebc1c7c80a0e9a2f78bcb53956ab0000000000000000000000000000000000000000000000000429d069189e0000000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000d2f00000000000000000000000000000000000000000000000000000000000003f48000000000000000000000000000000000000000000000000000000000001275000000000000000000000000000000000000000000000000000000000000000020000000000000000000000000018eb190c5a941dee3b32bc9e37ad91352eef9740000000000000000000000000000000000000000000000000000000000000000) (addr=0x2Bb473704A33312d358718D002f50C274bE1daaA, code=0x0000000000000000000000000000000000C0FFEE, value=0, sender=0x0000000000000000000000000000000000070000) + => [return (return_data=d951305493666caff1b6906450a78df42224b6d5f61e0c358b49a8472ee66dc1)] + => [call] Oracle.disputeCreatedAt(bytes32)(d951305493666caff1b6906450a78df42224b6d5f61e0c358b49a8472ee66dc1) (addr=0x6c02b1132012Ba1607822f0be10C32c85681d922, value=, sender=0x2Bb473704A33312d358718D002f50C274bE1daaA) + => [return (650339)] + => [call] Oracle.disputeCreatedAt(bytes32)(d951305493666caff1b6906450a78df42224b6d5f61e0c358b49a8472ee66dc1) (addr=0x6c02b1132012Ba1607822f0be10C32c85681d922, value=, sender=0x2Bb473704A33312d358718D002f50C274bE1daaA) + => [return (650339)] + => [call] HorizonAccountingExtension.pledge(address,(uint96,address,address,address,address,address,address,bytes,bytes,bytes,bytes,bytes),(address,address,bytes32,bytes32),address,uint256)(0x0000000000000000000000000000000000070000, {nonce: 0, requester: 0x0db2d009dccf208b0402ec2c6bb03bc7ffb3e805, requestModule: 0x820ca92a0c7d04f56a0b3afc1af2c4e886a3a065, responseModule: 0x7be6550517d504fa555db3afaaab8823df142595, disputeModule: 0x2bb473704a33312d358718d002f50c274be1daaa, resolutionModule: 0x082915598a1fce74a5994687d3fcd9ccf0bfe11c, finalityModule: 0xc4d57a88155a38b26f3b5a460154494fd597dfbe, requestModuleData: 0000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000001ce3a0000000000000000000000000000000000000000000000000000000000000080000000000000000000000000ffbd5d371f75a40a12085722e5ac1aca16c103ca000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000086f7074696d69736d000000000000000000000000000000000000000000000000, responseModuleData: 000000000000000000000000ffbd5d371f75a40a12085722e5ac1aca16c103ca000000000000000000000000af5382d65a0eebc1c7c80a0e9a2f78bcb53956ab00000000000000000000000000000000000000000000000006f05b59d3b2000000000000000000000000000000000000000000000000000000000000000697800000000000000000000000000000000000000000000000000000000000093a80, disputeModuleData: 000000000000000000000000ffbd5d371f75a40a12085722e5ac1aca16c103ca000000000000000000000000af5382d65a0eebc1c7c80a0e9a2f78bcb53956ab0000000000000000000000000000000000000000000000000429d069189e0000000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000d2f00000000000000000000000000000000000000000000000000000000000003f4800000000000000000000000000000000000000000000000000000000000127500, resolutionModuleData: 000000000000000000000000018eb190c5a941dee3b32bc9e37ad91352eef974, finalityModuleData: }, {disputer: 0x0000000000000000000000000000000000030000, proposer: 0x0000000000000000000000000000000000030000, responseId: 3c3ecf8a0d2a7b1e3535bed4db3efd66e929c6c72c7d60fc47f3645a2c45883b, requestId: 47b1ae199574446876b72a5a8f40e5b477fd9e19f8f91c4ca5d4bdf7693c5c69}, 0xaf5382d65a0eebc1c7c80a0e9a2f78bcb53956ab, 300000000000000000) (addr=0xffBD5D371F75A40a12085722e5aC1aCa16C103cA, value=0, sender=0x2Bb473704A33312d358718D002f50C274bE1daaA) + => [proxy call] HorizonAccountingExtension -> ValidatorLib.(msg_data=47af57a6000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000db2d009dccf208b0402ec2c6bb03bc7ffb3e805000000000000000000000000820ca92a0c7d04f56a0b3afc1af2c4e886a3a0650000000000000000000000007be6550517d504fa555db3afaaab8823df1425950000000000000000000000002bb473704a33312d358718d002f50c274be1daaa000000000000000000000000082915598a1fce74a5994687d3fcd9ccf0bfe11c000000000000000000000000c4d57a88155a38b26f3b5a460154494fd597dfbe0000000000000000000000000000000000000000000000000000000000000180000000000000000000000000000000000000000000000000000000000000028000000000000000000000000000000000000000000000000000000000000003400000000000000000000000000000000000000000000000000000000000000440000000000000000000000000000000000000000000000000000000000000048000000000000000000000000000000000000000000000000000000000000000e00000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000001ce3a0000000000000000000000000000000000000000000000000000000000000080000000000000000000000000ffbd5d371f75a40a12085722e5ac1aca16c103ca000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000086f7074696d69736d00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000000ffbd5d371f75a40a12085722e5ac1aca16c103ca000000000000000000000000af5382d65a0eebc1c7c80a0e9a2f78bcb53956ab00000000000000000000000000000000000000000000000006f05b59d3b2000000000000000000000000000000000000000000000000000000000000000697800000000000000000000000000000000000000000000000000000000000093a8000000000000000000000000000000000000000000000000000000000000000e0000000000000000000000000ffbd5d371f75a40a12085722e5ac1aca16c103ca000000000000000000000000af5382d65a0eebc1c7c80a0e9a2f78bcb53956ab0000000000000000000000000000000000000000000000000429d069189e0000000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000d2f00000000000000000000000000000000000000000000000000000000000003f48000000000000000000000000000000000000000000000000000000000001275000000000000000000000000000000000000000000000000000000000000000020000000000000000000000000018eb190c5a941dee3b32bc9e37ad91352eef9740000000000000000000000000000000000000000000000000000000000000000) (addr=0xffBD5D371F75A40a12085722e5aC1aCa16C103cA, code=0x0000000000000000000000000000000000C0FFEE, value=0, sender=0x2Bb473704A33312d358718D002f50C274bE1daaA) + => [return (return_data=47b1ae199574446876b72a5a8f40e5b477fd9e19f8f91c4ca5d4bdf7693c5c69)] + => [proxy call] HorizonAccountingExtension -> ValidatorLib.(msg_data=22c9576d00000000000000000000000000000000000000000000000000000000000000a0000000000000000000000000000000000000000000000000000000000003000000000000000000000000000000000000000000000000000000000000000300003c3ecf8a0d2a7b1e3535bed4db3efd66e929c6c72c7d60fc47f3645a2c45883b47b1ae199574446876b72a5a8f40e5b477fd9e19f8f91c4ca5d4bdf7693c5c6900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000db2d009dccf208b0402ec2c6bb03bc7ffb3e805000000000000000000000000820ca92a0c7d04f56a0b3afc1af2c4e886a3a0650000000000000000000000007be6550517d504fa555db3afaaab8823df1425950000000000000000000000002bb473704a33312d358718d002f50c274be1daaa000000000000000000000000082915598a1fce74a5994687d3fcd9ccf0bfe11c000000000000000000000000c4d57a88155a38b26f3b5a460154494fd597dfbe0000000000000000000000000000000000000000000000000000000000000180000000000000000000000000000000000000000000000000000000000000028000000000000000000000000000000000000000000000000000000000000003400000000000000000000000000000000000000000000000000000000000000440000000000000000000000000000000000000000000000000000000000000048000000000000000000000000000000000000000000000000000000000000000e00000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000001ce3a0000000000000000000000000000000000000000000000000000000000000080000000000000000000000000ffbd5d371f75a40a12085722e5ac1aca16c103ca000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000086f7074696d69736d00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000000ffbd5d371f75a40a12085722e5ac1aca16c103ca000000000000000000000000af5382d65a0eebc1c7c80a0e9a2f78bcb53956ab00000000000000000000000000000000000000000000000006f05b59d3b2000000000000000000000000000000000000000000000000000000000000000697800000000000000000000000000000000000000000000000000000000000093a8000000000000000000000000000000000000000000000000000000000000000e0000000000000000000000000ffbd5d371f75a40a12085722e5ac1aca16c103ca000000000000000000000000af5382d65a0eebc1c7c80a0e9a2f78bcb53956ab0000000000000000000000000000000000000000000000000429d069189e0000000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000d2f00000000000000000000000000000000000000000000000000000000000003f48000000000000000000000000000000000000000000000000000000000001275000000000000000000000000000000000000000000000000000000000000000020000000000000000000000000018eb190c5a941dee3b32bc9e37ad91352eef9740000000000000000000000000000000000000000000000000000000000000000) (addr=0xffBD5D371F75A40a12085722e5aC1aCa16C103cA, code=0x0000000000000000000000000000000000C0FFEE, value=0, sender=0x2Bb473704A33312d358718D002f50C274bE1daaA) + => [return (return_data=d951305493666caff1b6906450a78df42224b6d5f61e0c358b49a8472ee66dc1)] + => [call] Oracle.disputeCreatedAt(bytes32)(d951305493666caff1b6906450a78df42224b6d5f61e0c358b49a8472ee66dc1) (addr=0x6c02b1132012Ba1607822f0be10C32c85681d922, value=, sender=0xffBD5D371F75A40a12085722e5aC1aCa16C103cA) + => [return (650339)] + => [call] Oracle.allowedModule(bytes32,address)(47b1ae199574446876b72a5a8f40e5b477fd9e19f8f91c4ca5d4bdf7693c5c69, 0x2bb473704a33312d358718d002f50c274be1daaa) (addr=0x6c02b1132012Ba1607822f0be10C32c85681d922, value=, sender=0xffBD5D371F75A40a12085722e5aC1aCa16C103cA) + => [return (true)] + => [call] MockHorizonStaking.getProvision(address,address)(0x0000000000000000000000000000000000070000, 0xffbd5d371f75a40a12085722e5ac1aca16c103ca) (addr=0xd9557D6D3aC4C8d620787Bee095FeA290cE0854c, value=, sender=0xffBD5D371F75A40a12085722e5aC1aCa16C103cA) + => [return ({tokens: 300000000000000000, tokensThawing: 0, sharesThawing: 0, maxVerifierCut: 1000000, thawingPeriod: 86400, createdAt: 748820, maxVerifierCutPending: 0, thawingPeriodPending: 0})] + => [event] Pledged(0x0000000000000000000000000000000000070000, 47b1ae199574446876b72a5a8f40e5b477fd9e19f8f91c4ca5d4bdf7693c5c69, d951305493666caff1b6906450a78df42224b6d5f61e0c358b49a8472ee66dc1, 300000000000000000) + => [return ()] + => [event] PledgedForDispute(d951305493666caff1b6906450a78df42224b6d5f61e0c358b49a8472ee66dc1, 0x0000000000000000000000000000000000070000, 300000000000000000) + => [return ()] + => [event] TestFailure("property 8a: pledging for a dispute not escalated") + => [panic: assertion failed] + + +⇾ Test summary: 29 test(s) passed, 2 test(s) failed +⇾ html report(s) saved to: test/invariants/corpus/coverage/coverage_report.html +⇾ lcov report(s) saved to: test/invariants/corpus/coverage/lcov.info diff --git a/log/log-1733753814.log b/log/log-1733753814.log new file mode 100644 index 0000000..e69de29 diff --git a/test/invariants/FuzzTest.t.sol b/test/invariants/FuzzTest.t.sol index 71186d1..fc98a26 100644 --- a/test/invariants/FuzzTest.t.sol +++ b/test/invariants/FuzzTest.t.sol @@ -30,12 +30,19 @@ contract FuzzTest is PropertyParent { otherRequestResponseIdx < _ghost_activeResponses[otherRequestId].length; otherRequestResponseIdx++ ) { - // check that it is not pointing to the same request - assertTrue( + // check that it is not pointing to the same request. If it does, check it wasn't + // finalized without answer + + if ( _ghost_activeResponses[currentRequestId][currentRequestResponseIdx] - != _ghost_activeResponses[otherRequestId][otherRequestResponseIdx], - 'prop 13: different response id for same request' - ); + == _ghost_activeResponses[otherRequestId][otherRequestResponseIdx] + && ( + (oracle.finalizedAt(currentRequestId) == 0 && oracle.finalizedResponseId(currentRequestId) != 0) + || (oracle.finalizedAt(otherRequestId) == 0 && oracle.finalizedResponseId(otherRequestId) != 0) + ) + ) { + assertTrue(false, 'prop 13: same response id for different requests'); + } } } } @@ -62,12 +69,19 @@ contract FuzzTest is PropertyParent { otherRequestDisputeIdx < _ghost_disputes[otherRequestId].length; otherRequestDisputeIdx++ ) { - // check that it is not pointing to the same request - assertTrue( - _ghost_disputes[currentRequestId][currentRequestDisputeIdx] - != _ghost_disputes[otherRequestId][otherRequestDisputeIdx], - 'prop 13: different dispute id for same request' - ); + // check that it is not pointing to the same request. If it does, check it wasn't + // finalized without answer + + if ( + _ghost_activeResponses[currentRequestId][currentRequestDisputeIdx] + == _ghost_activeResponses[otherRequestId][otherRequestDisputeIdx] + && ( + (oracle.finalizedAt(currentRequestId) == 0 && oracle.finalizedResponseId(currentRequestId) != 0) + || (oracle.finalizedAt(otherRequestId) == 0 && oracle.finalizedResponseId(otherRequestId) != 0) + ) + ) { + assertTrue(false, 'prop 13: same response id for different requests'); + } } } } diff --git a/test/invariants/Reproducers.t.sol b/test/invariants/Reproducers.t.sol index 6256338..3a86013 100644 --- a/test/invariants/Reproducers.t.sol +++ b/test/invariants/Reproducers.t.sol @@ -5,32 +5,108 @@ import {FuzzTest} from './FuzzTest.t.sol'; import {IEBORequestModule, IOracle} from './Setup.t.sol'; contract Reproducers is FuzzTest { - function test_debug() public { - vm.roll(55_341); - vm.warp(292_791); - vm.prank(0x0000000000000000000000000000000000080000); + // forge test --match-test test_prop_singleRequestIdForSingleDisputeOrResponseId_0 -vv + + function test_prop_singleRequestIdForSingleDisputeOrResponseId_0() public { + vm.roll(3); + vm.warp(107_622); + vm.prank(0x0000000000000000000000000000000000030000); this.property_requesterCanAlwaysCreateRequest( - 0, 91_936_153_333_790_985_814_765_645_281_331_945_670_085_017_288_440_355_350_976_283_151_607_122_591_831 + 10, 37_029_423_570_101_568_114_192_451_652_059_639_489_459_691_769_081_285_614_258_977_732_585_787 + ); + + vm.roll(29_920); + vm.warp(191_126); + vm.prank(0x0000000000000000000000000000000000020000); + this.property_proposerProposeBeforeDeadlineAndNoAnswer( + 3_533_694_129_556_768_659_166_594_920_800_430_618_073_929_656_453_786_986_859_439_806_182_558_244, '' ); - vm.roll(114_433); - vm.warp(791_132); - vm.prank(0x0000000000000000000000000000000000080000); + vm.roll(41_973); + vm.warp(293_378); + vm.prank(0x0000000000000000000000000000000000070000); + this.property_disputerCanAlwaysCreateDispute( + 44_601_490_397_061_246_283_071_436_695_194_755_937_831_813, + 24_519_928_653_539_120_916_142_750_395_984_862_678_837_009_021_121_402_119 + ); + + vm.roll(72_668); + vm.warp(701_817); + vm.prank(0x0000000000000000000000000000000000090000); this.property_finalizeAfterDeadline( - 13_479_973_333_575_319_897_333_507_543_509_815_336_818_572_211_270_290_147_286_325_345_251, - 107_839_786_668_602_559_178_668_057_886_353_385_264_177_471_300_505_974_851_760_065_510_272 + 441_711_766_194_596_082_395_824_375_183_268_584_384_174_444_443_096_125_085_881_927_426_324_089, + 55_213_970_774_324_510_299_478_046_897_908_487_977_573_366_651_192_816_587_142_984_978_084_060 + ); + + vm.roll(130_241); + vm.warp(1_239_575); + vm.prank(0x0000000000000000000000000000000000060000); + this.property_disputerEscalateFirstDisputedResponse( + 441_711_766_194_596_082_395_824_375_183_267_903_819_727_185_636_638_495_186_960_857_860_556_558, + 601_007_113_947_101_039_560_436_606_908_369_912_464 + ); + + vm.roll(133_321); + vm.warp(1_272_520); + vm.prank(0x0000000000000000000000000000000000030000); + this.handleArbitrateDispute( + 98_079_714_617_799_838_069_981_031_751_129_814_657_974_628_780_861_328_198, + 10_543_876_310_748_807_825_434_603_100_744_632_307_071_557, + 7_369_614_386_207_023_510_276_552_037 + ); + + vm.roll(133_321); + vm.warp(1_272_520); + vm.prank(0x0000000000000000000000000000000000030000); + this.property_requesterCanAlwaysCreateRequest( + 10, 1_184_941_554_243_250_179_654_158_452_865_908_463_662_710_136_610_601_139_976_392_267_926_618_806 ); - vm.roll(164_579); - vm.warp(1_050_332); - vm.prank(0x00000000000000000000000000000000000a0000); - this.property_requesterCanAlwaysCreateRequest(0, 300_000_000_001_847_143); + vm.roll(133_469); + vm.warp(1_272_796); + vm.prank(0x0000000000000000000000000000000000060000); + this.prop_singleRequestIdForSingleDisputeOrResponseId(); + } + + // forge test --match-test test_property_pledgerCanPledgeFor_1 -vv - vm.roll(225_050); - vm.warp(1_491_370); - vm.prank(0x00000000000000000000000000000000000a0000); + function test_property_pledgerCanPledgeFor_1() public { + vm.roll(56_765); + vm.warp(310_068); + vm.prank(0x0000000000000000000000000000000000030000); this.property_requesterCanAlwaysCreateRequest( - 0, 115_792_089_237_316_195_423_570_985_008_687_907_853_269_984_665_640_564_039_456_584_007_913_130_122_499 + 23_945_252_909_255_375_823_092_408_840_274_513_180_624_399_837_945_186, 2_086_162_298_782_925_019_460 + ); + + vm.roll(86_763); + vm.warp(575_158); + vm.prank(0x0000000000000000000000000000000000030000); + this.property_proposerProposeBeforeDeadlineAndNoAnswer( + 631_432_499_075_532_304_456_395_701_379_901_335_158_300_516, '' + ); + + vm.roll(108_137); + vm.warp(650_339); + vm.prank(0x0000000000000000000000000000000000030000); + this.property_disputerCanAlwaysCreateDispute( + 862_718_293_348_820_473_429_987_288_449_076_456_476_499_045_871_166_767_810_196_422_572_057, + 1_239_938_753_245_600_703_949_804_873_417_738_265_153_932 + ); + + vm.roll(143_071); + vm.warp(748_820); + vm.prank(0x0000000000000000000000000000000000070000); + this.property_disputerEscalateFirstDisputedResponse( + 1_645_504_557_321_206_042_785_170_517_226_798_052_215_695_477_109_921_052_145_574_832, + 3_213_876_088_517_980_570_777_725_284_107_382_648_403_960_509_936_676_257_779_973 + ); + + vm.roll(150_070); + vm.warp(774_026); + vm.prank(0x0000000000000000000000000000000000070000); + this.property_pledgerCanPledgeFor( + 6_901_746_346_790_563_787_434_755_862_238_646_067_770_489_658_248_914_019_106_131_779_923_731, + 6_129_982_162_203_152_163_068_464_937_047_330_911_145_056_599_837_097_252 ); } } diff --git a/test/invariants/handlers/BaseHandler.t.sol b/test/invariants/handlers/BaseHandler.t.sol index a553fcb..ff9ae2e 100644 --- a/test/invariants/handlers/BaseHandler.t.sol +++ b/test/invariants/handlers/BaseHandler.t.sol @@ -35,6 +35,33 @@ contract BaseHandler is Setup, Actors { mapping(address _pledger => mapping(bytes32 _disputeId => uint256 _pledgedAmount)) internal _ghost_pledgesFor; mapping(address _pledger => mapping(bytes32 _disputeId => uint256 _pledgedAmount)) internal _ghost_pledgesAgainst; + // Aggregators + + function _totalPledgesFor(bytes32 _disputeId) internal view returns (uint256) { + return _aggregateSum(_ghost_pledgesFor, _disputeId); + } + + function _totalPledgesAgainst(bytes32 _disputeId) internal view returns (uint256) { + return _aggregateSum(_ghost_pledgesAgainst, _disputeId); + } + + function _aggregateSum( + mapping(address => mapping(bytes32 => uint256)) storage _data, + bytes32 _id + ) internal view returns (uint256) { + uint256 sum; + for (uint256 i; i < _ghost_actors.length; i++) { + sum += _data[_ghost_actors[i]][_id]; + } + return sum; + } + + function _forEach(bytes32[] storage _arr, function (bytes32) _fn) internal { + for (uint256 i; i < _arr.length; i++) { + _fn(_arr[i]); + } + } + // Helper functions function _getRandomChain(uint256 _seed) internal view returns (string memory) { bytes32[] memory chainIds = eboRequestCreator.getAllowedChainIds(); diff --git a/test/invariants/properties/PropertyDisputer.t.sol b/test/invariants/properties/PropertyDisputer.t.sol index 3780c11..db832a4 100644 --- a/test/invariants/properties/PropertyDisputer.t.sol +++ b/test/invariants/properties/PropertyDisputer.t.sol @@ -112,12 +112,18 @@ contract PropertyDisputer is HandlerParent { vm.prank(msg.sender); try bondEscalationModule.pledgeForDispute(_requestData, _disputeData) { - assertTrue(_ghost_escalatedDisputes[_disputeId], 'property 8a: pledging for a dispute not escalated'); + assertTrue( + _totalPledgesFor(_disputeId) <= _totalPledgesAgainst(_disputeId), 'property 8a: pledging for the wrong side' + ); } catch { - // !_ghost_escalatedDisputes or - // past deadline/tying buffer or - // already pledged this turn or - // + // add tying buffer to deadline + + assertTrue( + !_ghost_escalatedDisputes[_disputeId] + || block.timestamp > oracle.disputeCreatedAt(_disputeId) + DISPUTE_DEADLINE + || _totalPledgesFor(_disputeId) > _totalPledgesAgainst(_disputeId), + 'property 8a: fails on pledging for the correct side' + ); } } From 7218056b52311e475f8e125088a6486499c909d7 Mon Sep 17 00:00:00 2001 From: 0xJabberwock <0xjabberwock@defi.sucks> Date: Fri, 13 Dec 2024 12:16:29 -0300 Subject: [PATCH 24/28] test(medusa): proposer properties --- test/invariants/Reproducers.t.sol | 8 ++--- test/invariants/handlers/HandlerOracle.t.sol | 8 ++--- .../properties/PropertyDisputer.t.sol | 1 + .../properties/PropertyProposer.t.sol | 32 +++++++++++++++---- 4 files changed, 32 insertions(+), 17 deletions(-) diff --git a/test/invariants/Reproducers.t.sol b/test/invariants/Reproducers.t.sol index 3a86013..d268bc8 100644 --- a/test/invariants/Reproducers.t.sol +++ b/test/invariants/Reproducers.t.sol @@ -18,8 +18,8 @@ contract Reproducers is FuzzTest { vm.roll(29_920); vm.warp(191_126); vm.prank(0x0000000000000000000000000000000000020000); - this.property_proposerProposeBeforeDeadlineAndNoAnswer( - 3_533_694_129_556_768_659_166_594_920_800_430_618_073_929_656_453_786_986_859_439_806_182_558_244, '' + this.property_proposerProposeBeforeDeadline( + 3_533_694_129_556_768_659_166_594_920_800_430_618_073_929_656_453_786_986_859_439_806_182_558_244 ); vm.roll(41_973); @@ -81,9 +81,7 @@ contract Reproducers is FuzzTest { vm.roll(86_763); vm.warp(575_158); vm.prank(0x0000000000000000000000000000000000030000); - this.property_proposerProposeBeforeDeadlineAndNoAnswer( - 631_432_499_075_532_304_456_395_701_379_901_335_158_300_516, '' - ); + this.property_proposerProposeBeforeDeadline(631_432_499_075_532_304_456_395_701_379_901_335_158_300_516); vm.roll(108_137); vm.warp(650_339); diff --git a/test/invariants/handlers/HandlerOracle.t.sol b/test/invariants/handlers/HandlerOracle.t.sol index 7060282..f5ffa22 100644 --- a/test/invariants/handlers/HandlerOracle.t.sol +++ b/test/invariants/handlers/HandlerOracle.t.sol @@ -11,11 +11,7 @@ contract HandlerOracle is BaseHandler { return oracle.createRequest(request, _previousId); } - function handleProposeResponse( - uint256 _requestSeed, - uint256 _blockNumber, - uint256 _actorSeed - ) external returns (bytes32) { + function handleProposeResponse(uint256 _requestSeed, uint256 _actorSeed) external returns (bytes32) { (bytes32 requestId, IOracle.Request memory request) = _getRandomRequest(_requestSeed); if (requestId == bytes32(0) || !_ghost_validRequests[requestId]) { return bytes32(0); @@ -24,7 +20,7 @@ contract HandlerOracle is BaseHandler { address proposer = _pickActor(_actorSeed); IOracle.Response memory response = - IOracle.Response({requestId: requestId, response: abi.encode(_blockNumber), proposer: proposer}); + IOracle.Response({requestId: requestId, response: abi.encode(block.number), proposer: proposer}); bytes32 responseId = oracle.proposeResponse(request, response); diff --git a/test/invariants/properties/PropertyDisputer.t.sol b/test/invariants/properties/PropertyDisputer.t.sol index db832a4..53f3b09 100644 --- a/test/invariants/properties/PropertyDisputer.t.sol +++ b/test/invariants/properties/PropertyDisputer.t.sol @@ -18,6 +18,7 @@ contract PropertyDisputer is HandlerParent { (bytes32 _responseId, IOracle.Response memory _responseData) = _getRandomActiveResponse(_requestId, _responseSeed); if (_responseId == bytes32(0)) return; + // Build dispute data IOracle.Dispute memory _disputeData = IOracle.Dispute({ disputer: msg.sender, proposer: _responseData.proposer, diff --git a/test/invariants/properties/PropertyProposer.t.sol b/test/invariants/properties/PropertyProposer.t.sol index 31140b0..199f9c7 100644 --- a/test/invariants/properties/PropertyProposer.t.sol +++ b/test/invariants/properties/PropertyProposer.t.sol @@ -8,23 +8,38 @@ contract PropertyProposer is HandlerParent { /// @custom:property-id 3 /// @custom:property A proposer can always propose an answer before the deadline, if no response has been submitted /// @custom:property-id 4 - /// @custom:property A proposer can always propose an answer before the deadline, if previous response is disputed and has staked - function property_proposerProposeBeforeDeadlineAndNoAnswer(uint256 _requestSeed, bytes calldata _response) public { + /// @custom:property A proposer can always propose an answer before the deadline, if previous response is disputed without losing + function property_proposerProposeBeforeDeadline(uint256 _requestSeed) public { // Pick random request (bytes32 requestId, IOracle.Request memory requestData) = _getRandomRequest(_requestSeed); if (requestId == bytes32(0) || !_ghost_validRequests[requestId]) return; // Build response data - IOracle.Response memory responseData = IOracle.Response(msg.sender, requestId, _response); // abi.encode(_blockNumber)? + IOracle.Response memory responseData = IOracle.Response(msg.sender, requestId, abi.encode(block.number)); - // Stake some GRT in Horizon + // Stake and provision some GRT in Horizon _stakeGRT(RESPONSE_BOND_SIZE); - // Provision some GRT in Horizon _provisionGRT(RESPONSE_BOND_SIZE); + bool activeResponses = _ghost_activeResponses[requestId].length > 0; + bytes32 prevResponseId; + bytes32 prevDisputeId; + IOracle.DisputeStatus status; + if (activeResponses) { + prevResponseId = _ghost_activeResponses[requestId][_ghost_activeResponses[requestId].length - 1]; + prevDisputeId = oracle.disputeOf(prevResponseId); + status = oracle.disputeStatus(prevDisputeId); + } + // Propose response vm.prank(msg.sender); try oracle.proposeResponse(requestData, responseData) returns (bytes32 responseId) { + // property 3 and 4 + assertTrue( + !activeResponses || prevDisputeId != 0 && status != IOracle.DisputeStatus.Lost, + 'prop-3-4: active response not disputed or with lost dispute' + ); + // Track response _ghost_activeResponses[requestId].push(responseId); _ghost_responseData[responseId] = responseData; @@ -32,7 +47,12 @@ contract PropertyProposer is HandlerParent { emit ResponseProposed(requestId, responseId); } catch { - // assert(false); + // property 3 and 4 + assertTrue( + activeResponses && (prevDisputeId == 0 || status == IOracle.DisputeStatus.Lost) + || block.timestamp >= oracle.requestCreatedAt(requestId) + RESPONSE_DEADLINE, + 'prop-3-4: fails but no active response disputed or with lost dispute' + ); } } } From 2b8bc63d8923f4686a8c41b2fd3471ad994eac7b Mon Sep 17 00:00:00 2001 From: drgorillamd <83670532+drgorillamd@users.noreply.github.com> Date: Wed, 11 Dec 2024 11:21:46 +0100 Subject: [PATCH 25/28] test(medusa): fix prop8b --- test/invariants/handlers/BaseHandler.t.sol | 6 +++--- .../properties/PropertyDisputer.t.sol | 18 ++++++++++++------ 2 files changed, 15 insertions(+), 9 deletions(-) diff --git a/test/invariants/handlers/BaseHandler.t.sol b/test/invariants/handlers/BaseHandler.t.sol index ff9ae2e..bbd4250 100644 --- a/test/invariants/handlers/BaseHandler.t.sol +++ b/test/invariants/handlers/BaseHandler.t.sol @@ -38,14 +38,14 @@ contract BaseHandler is Setup, Actors { // Aggregators function _totalPledgesFor(bytes32 _disputeId) internal view returns (uint256) { - return _aggregateSum(_ghost_pledgesFor, _disputeId); + return _reduceSum(_ghost_pledgesFor, _disputeId); } function _totalPledgesAgainst(bytes32 _disputeId) internal view returns (uint256) { - return _aggregateSum(_ghost_pledgesAgainst, _disputeId); + return _reduceSum(_ghost_pledgesAgainst, _disputeId); } - function _aggregateSum( + function _reduceSum( mapping(address => mapping(bytes32 => uint256)) storage _data, bytes32 _id ) internal view returns (uint256) { diff --git a/test/invariants/properties/PropertyDisputer.t.sol b/test/invariants/properties/PropertyDisputer.t.sol index 53f3b09..459d051 100644 --- a/test/invariants/properties/PropertyDisputer.t.sol +++ b/test/invariants/properties/PropertyDisputer.t.sol @@ -138,13 +138,19 @@ contract PropertyDisputer is HandlerParent { (bytes32 _disputeId, IOracle.Dispute memory _disputeData) = _getRandomDispute(_requestId, _disputeSeed); vm.prank(msg.sender); - try bondEscalationModule.pledgeAgainstDispute(_requestData, _disputeData) { - assertTrue(_ghost_escalatedDisputes[_disputeId], 'property 8a: pledging for a dispute not escalated'); + try bondEscalationModule.pledgeForDispute(_requestData, _disputeData) { + assertTrue( + _totalPledgesFor(_disputeId) >= _totalPledgesAgainst(_disputeId), 'property 8b: pledging for the wrong side' + ); } catch { - // !_ghost_escalatedDisputes or - // past deadline/tying buffer or - // already pledged this turn or - // + // add tying buffer to deadline + + assertTrue( + !_ghost_escalatedDisputes[_disputeId] + || block.timestamp > oracle.disputeCreatedAt(_disputeId) + DISPUTE_DEADLINE + || _totalPledgesFor(_disputeId) < _totalPledgesAgainst(_disputeId), + 'property 8b: fails on pledging for the correct side' + ); } } From c0ffee26c87ac077294dc7bfabc8a442477c6004 Mon Sep 17 00:00:00 2001 From: drgorillamd <83670532+drgorillamd@users.noreply.github.com> Date: Mon, 16 Dec 2024 12:20:33 +0100 Subject: [PATCH 26/28] test(medusa): false pos fix --- test/invariants/Reproducers.t.sol | 102 ------------------ .../handlers/HandlerCouncilArbitrator.t.sol | 2 + .../properties/PropertyDisputer.t.sol | 13 ++- 3 files changed, 12 insertions(+), 105 deletions(-) diff --git a/test/invariants/Reproducers.t.sol b/test/invariants/Reproducers.t.sol index d268bc8..8525ae2 100644 --- a/test/invariants/Reproducers.t.sol +++ b/test/invariants/Reproducers.t.sol @@ -5,106 +5,4 @@ import {FuzzTest} from './FuzzTest.t.sol'; import {IEBORequestModule, IOracle} from './Setup.t.sol'; contract Reproducers is FuzzTest { - // forge test --match-test test_prop_singleRequestIdForSingleDisputeOrResponseId_0 -vv - - function test_prop_singleRequestIdForSingleDisputeOrResponseId_0() public { - vm.roll(3); - vm.warp(107_622); - vm.prank(0x0000000000000000000000000000000000030000); - this.property_requesterCanAlwaysCreateRequest( - 10, 37_029_423_570_101_568_114_192_451_652_059_639_489_459_691_769_081_285_614_258_977_732_585_787 - ); - - vm.roll(29_920); - vm.warp(191_126); - vm.prank(0x0000000000000000000000000000000000020000); - this.property_proposerProposeBeforeDeadline( - 3_533_694_129_556_768_659_166_594_920_800_430_618_073_929_656_453_786_986_859_439_806_182_558_244 - ); - - vm.roll(41_973); - vm.warp(293_378); - vm.prank(0x0000000000000000000000000000000000070000); - this.property_disputerCanAlwaysCreateDispute( - 44_601_490_397_061_246_283_071_436_695_194_755_937_831_813, - 24_519_928_653_539_120_916_142_750_395_984_862_678_837_009_021_121_402_119 - ); - - vm.roll(72_668); - vm.warp(701_817); - vm.prank(0x0000000000000000000000000000000000090000); - this.property_finalizeAfterDeadline( - 441_711_766_194_596_082_395_824_375_183_268_584_384_174_444_443_096_125_085_881_927_426_324_089, - 55_213_970_774_324_510_299_478_046_897_908_487_977_573_366_651_192_816_587_142_984_978_084_060 - ); - - vm.roll(130_241); - vm.warp(1_239_575); - vm.prank(0x0000000000000000000000000000000000060000); - this.property_disputerEscalateFirstDisputedResponse( - 441_711_766_194_596_082_395_824_375_183_267_903_819_727_185_636_638_495_186_960_857_860_556_558, - 601_007_113_947_101_039_560_436_606_908_369_912_464 - ); - - vm.roll(133_321); - vm.warp(1_272_520); - vm.prank(0x0000000000000000000000000000000000030000); - this.handleArbitrateDispute( - 98_079_714_617_799_838_069_981_031_751_129_814_657_974_628_780_861_328_198, - 10_543_876_310_748_807_825_434_603_100_744_632_307_071_557, - 7_369_614_386_207_023_510_276_552_037 - ); - - vm.roll(133_321); - vm.warp(1_272_520); - vm.prank(0x0000000000000000000000000000000000030000); - this.property_requesterCanAlwaysCreateRequest( - 10, 1_184_941_554_243_250_179_654_158_452_865_908_463_662_710_136_610_601_139_976_392_267_926_618_806 - ); - - vm.roll(133_469); - vm.warp(1_272_796); - vm.prank(0x0000000000000000000000000000000000060000); - this.prop_singleRequestIdForSingleDisputeOrResponseId(); - } - - // forge test --match-test test_property_pledgerCanPledgeFor_1 -vv - - function test_property_pledgerCanPledgeFor_1() public { - vm.roll(56_765); - vm.warp(310_068); - vm.prank(0x0000000000000000000000000000000000030000); - this.property_requesterCanAlwaysCreateRequest( - 23_945_252_909_255_375_823_092_408_840_274_513_180_624_399_837_945_186, 2_086_162_298_782_925_019_460 - ); - - vm.roll(86_763); - vm.warp(575_158); - vm.prank(0x0000000000000000000000000000000000030000); - this.property_proposerProposeBeforeDeadline(631_432_499_075_532_304_456_395_701_379_901_335_158_300_516); - - vm.roll(108_137); - vm.warp(650_339); - vm.prank(0x0000000000000000000000000000000000030000); - this.property_disputerCanAlwaysCreateDispute( - 862_718_293_348_820_473_429_987_288_449_076_456_476_499_045_871_166_767_810_196_422_572_057, - 1_239_938_753_245_600_703_949_804_873_417_738_265_153_932 - ); - - vm.roll(143_071); - vm.warp(748_820); - vm.prank(0x0000000000000000000000000000000000070000); - this.property_disputerEscalateFirstDisputedResponse( - 1_645_504_557_321_206_042_785_170_517_226_798_052_215_695_477_109_921_052_145_574_832, - 3_213_876_088_517_980_570_777_725_284_107_382_648_403_960_509_936_676_257_779_973 - ); - - vm.roll(150_070); - vm.warp(774_026); - vm.prank(0x0000000000000000000000000000000000070000); - this.property_pledgerCanPledgeFor( - 6_901_746_346_790_563_787_434_755_862_238_646_067_770_489_658_248_914_019_106_131_779_923_731, - 6_129_982_162_203_152_163_068_464_937_047_330_911_145_056_599_837_097_252 - ); - } } diff --git a/test/invariants/handlers/HandlerCouncilArbitrator.t.sol b/test/invariants/handlers/HandlerCouncilArbitrator.t.sol index 92a4415..31d7a8c 100644 --- a/test/invariants/handlers/HandlerCouncilArbitrator.t.sol +++ b/test/invariants/handlers/HandlerCouncilArbitrator.t.sol @@ -11,6 +11,8 @@ contract HandlerCouncilArbitrator is BaseHandler { (bytes32 disputeId, IOracle.Dispute memory dispute) = _getRandomDispute(requestId, _disputeIndex); if (dispute.requestId == bytes32(0)) return; + if (!_ghost_escalatedDisputes[disputeId]) return; + // Generate a valid dispute status (NoResolution, Won, Lost) IOracle.DisputeStatus status = IOracle.DisputeStatus( bound(_statusSeed, uint8(IOracle.DisputeStatus.NoResolution), uint8(IOracle.DisputeStatus.Lost)) diff --git a/test/invariants/properties/PropertyDisputer.t.sol b/test/invariants/properties/PropertyDisputer.t.sol index 459d051..11f3c16 100644 --- a/test/invariants/properties/PropertyDisputer.t.sol +++ b/test/invariants/properties/PropertyDisputer.t.sol @@ -1,7 +1,7 @@ // SPDX-License-Identifier: MIT pragma solidity 0.8.26; -import {IOracle} from '../Setup.t.sol'; +import {IBondEscalationModule, IOracle} from '../Setup.t.sol'; import {HandlerParent} from '../handlers/HandlerParent.t.sol'; contract PropertyDisputer is HandlerParent { @@ -89,14 +89,19 @@ contract PropertyDisputer is HandlerParent { // add to ghost escalated disputes _ghost_escalatedDisputes[_disputeId] = true; } catch { + IBondEscalationModule.BondEscalation memory _escalation = bondEscalationModule.getEscalation(_disputeId); + // not first dispute, or // not past the bond escalation deadline, or - // already escalated, or + // already escalated/not active anymore (status none, or finalized, etc) // bond not tied assertTrue( _ghost_activeResponses[_requestId][0] != _disputeData.responseId || block.timestamp <= oracle.disputeCreatedAt(_disputeId) + DISPUTE_DEADLINE - || _ghost_escalatedDisputes[_disputeId], + || _ghost_escalatedDisputes[_disputeId] + || _escalation.status != IBondEscalationModule.BondEscalationStatus.Active + || _totalPledgesFor(_disputeId) != _totalPledgesAgainst(_disputeId), + // || _escalation.amountOfPledgesForDispute != _escalation.amountOfPledgesAgainstDispute, 'property 7: fails on first disputed response' ); } @@ -144,10 +149,12 @@ contract PropertyDisputer is HandlerParent { ); } catch { // add tying buffer to deadline + IBondEscalationModule.BondEscalation memory _escalation = bondEscalationModule.getEscalation(_disputeId); assertTrue( !_ghost_escalatedDisputes[_disputeId] || block.timestamp > oracle.disputeCreatedAt(_disputeId) + DISPUTE_DEADLINE + || _escalation.status != IBondEscalationModule.BondEscalationStatus.Active || _totalPledgesFor(_disputeId) < _totalPledgesAgainst(_disputeId), 'property 8b: fails on pledging for the correct side' ); From c0ffeea53278c5c5fcda716988d3080cdd8f7bdb Mon Sep 17 00:00:00 2001 From: drgorillamd <83670532+drgorillamd@users.noreply.github.com> Date: Mon, 16 Dec 2024 16:57:02 +0100 Subject: [PATCH 27/28] test(medusa): false pos fix --- test/invariants/Reproducers.t.sol | 31 +++++++++++++++++++ .../properties/PropertyDisputer.t.sol | 3 ++ .../properties/PropertyProposer.t.sol | 8 +++-- 3 files changed, 39 insertions(+), 3 deletions(-) diff --git a/test/invariants/Reproducers.t.sol b/test/invariants/Reproducers.t.sol index 8525ae2..5405064 100644 --- a/test/invariants/Reproducers.t.sol +++ b/test/invariants/Reproducers.t.sol @@ -5,4 +5,35 @@ import {FuzzTest} from './FuzzTest.t.sol'; import {IEBORequestModule, IOracle} from './Setup.t.sol'; contract Reproducers is FuzzTest { + // forge test --match-test test_property_proposerProposeBeforeDeadline_0 -vv + + function test_property_proposerProposeBeforeDeadline_0() public { + vm.roll(3); + vm.warp(5); + vm.prank(0x0000000000000000000000000000000000050000); + this.property_requesterCanAlwaysCreateRequest( + 374_144_410_540_673_166_053_842_224_195_120_560_619_866_525_050_602, + 5_986_310_706_507_378_352_962_293_074_772_827_676_701_747_093_414_338 + ); + + vm.roll(3); + vm.warp(5); + vm.prank(0x0000000000000000000000000000000000080000); + this.property_proposerProposeBeforeDeadline( + 28_269_553_036_454_149_273_332_760_011_729_145_844_444_279_663_245_845_661_993_448_680_761_270_657 + ); + + vm.roll(3); + vm.warp(5); + vm.prank(0x00000000000000000000000000000000000a0000); + this.property_disputerCanAlwaysCreateDispute( + 52_656_145_834_278_593_348_801_540_361_656_756_882_899_066_090_699_848_781_561_730_236, + 23_384_028_043_587_125_922_018_477_620_072_735_176_296_069_636_430 + ); + + vm.roll(3); + vm.warp(5); + vm.prank(0x0000000000000000000000000000000000080000); + this.property_proposerProposeBeforeDeadline(2_106_197_910_122_343_031_135_180_017_583_558_693_042_066_481_234); + } } diff --git a/test/invariants/properties/PropertyDisputer.t.sol b/test/invariants/properties/PropertyDisputer.t.sol index 11f3c16..09f5477 100644 --- a/test/invariants/properties/PropertyDisputer.t.sol +++ b/test/invariants/properties/PropertyDisputer.t.sol @@ -124,9 +124,12 @@ contract PropertyDisputer is HandlerParent { } catch { // add tying buffer to deadline + IBondEscalationModule.BondEscalation memory _escalation = bondEscalationModule.getEscalation(_disputeId); + assertTrue( !_ghost_escalatedDisputes[_disputeId] || block.timestamp > oracle.disputeCreatedAt(_disputeId) + DISPUTE_DEADLINE + || _escalation.status != IBondEscalationModule.BondEscalationStatus.Active || _totalPledgesFor(_disputeId) > _totalPledgesAgainst(_disputeId), 'property 8a: fails on pledging for the correct side' ); diff --git a/test/invariants/properties/PropertyProposer.t.sol b/test/invariants/properties/PropertyProposer.t.sol index 199f9c7..dd5c85b 100644 --- a/test/invariants/properties/PropertyProposer.t.sol +++ b/test/invariants/properties/PropertyProposer.t.sol @@ -1,7 +1,7 @@ // SPDX-License-Identifier: MIT pragma solidity 0.8.26; -import {IOracle} from '../Setup.t.sol'; +import {IOracle, ValidatorLib} from '../Setup.t.sol'; import {HandlerParent} from '../handlers/HandlerParent.t.sol'; contract PropertyProposer is HandlerParent { @@ -47,9 +47,11 @@ contract PropertyProposer is HandlerParent { emit ResponseProposed(requestId, responseId); } catch { - // property 3 and 4 + // property 3 and 4 + cannot propose the same response twice + bytes32 responseId = ValidatorLib._validateResponse(requestData, responseData); + assertTrue( - activeResponses && (prevDisputeId == 0 || status == IOracle.DisputeStatus.Lost) + prevResponseId == responseId || activeResponses && (prevDisputeId == 0 || status == IOracle.DisputeStatus.Lost) || block.timestamp >= oracle.requestCreatedAt(requestId) + RESPONSE_DEADLINE, 'prop-3-4: fails but no active response disputed or with lost dispute' ); From c0ffee817bd0376d298bf1bcfdb5ab2699327b0f Mon Sep 17 00:00:00 2001 From: drgorillamd <83670532+drgorillamd@users.noreply.github.com> Date: Wed, 18 Dec 2024 18:21:22 +0100 Subject: [PATCH 28/28] Revert "Merge branch 'dev' into test/handler-cov" This reverts commit a3b8f1ca35fbeef34bda51f91c19f8f50d870b3a, reversing changes made to c0ffeea53278c5c5fcda716988d3080cdd8f7bdb. --- LICENSE | 185 +------ README.md | 2 +- package.json | 6 +- script/Constants.sol | 1 + script/Deploy.s.sol | 15 +- src/contracts/CouncilArbitrator.sol | 9 +- src/contracts/EBOAccessModule.sol | 79 --- src/contracts/EBORequestCreator.sol | 6 +- src/contracts/EBORequestModule.sol | 1 + src/contracts/HorizonAccountingExtension.sol | 3 + src/interfaces/IEBOAccessModule.sol | 55 --- src/interfaces/IEBORequestCreator.sol | 2 - src/interfaces/external/IHorizonStaking.sol | 9 - .../integration/arbitrum/BondEscalation.t.sol | 82 +--- test/integration/arbitrum/CreateRequest.t.sol | 12 +- .../arbitrum/DisputeResponse.t.sol | 2 +- .../arbitrum/FinalizeRequest.t.sol | 16 + .../arbitrum/IntegrationBase.t.sol | 50 +- test/unit/Arbitrable.t.sol | 2 +- test/unit/CouncilArbitrator.t.sol | 26 +- test/unit/Deploy.t.sol | 1 - test/unit/EBOAccessModule.t.sol | 148 ------ test/unit/EBORequestCreator.t.sol | 2 +- test/unit/HorizonAccountingExtension.t.sol | 134 +----- test/utils/Helpers.sol | 15 - yarn.lock | 450 ++++++++++-------- 26 files changed, 341 insertions(+), 972 deletions(-) delete mode 100644 src/contracts/EBOAccessModule.sol delete mode 100644 src/interfaces/IEBOAccessModule.sol delete mode 100644 test/unit/EBOAccessModule.t.sol diff --git a/LICENSE b/LICENSE index d69b615..99dd94e 100644 --- a/LICENSE +++ b/LICENSE @@ -1,183 +1,8 @@ -GNU GENERAL PUBLIC LICENSE -Version 3, 29 June 2007 +The MIT License (MIT) +Copyright © 2023 Wonderland -Copyright © 2007 Free Software Foundation, Inc. +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: -Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. -Preamble -The GNU General Public License is a free, copyleft license for software and other kinds of works. - -The licenses for most software and other practical works are designed to take away your freedom to share and change the works. By contrast, the GNU General Public License is intended to guarantee your freedom to share and change all versions of a program--to make sure it remains free software for all its users. We, the Free Software Foundation, use the GNU General Public License for most of our software; it applies also to any other work released this way by its authors. You can apply it to your programs, too. - -When we speak of free software, we are referring to freedom, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for them if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs, and that you know you can do these things. - -To protect your rights, we need to prevent others from denying you these rights or asking you to surrender the rights. Therefore, you have certain responsibilities if you distribute copies of the software, or if you modify it: responsibilities to respect the freedom of others. - -For example, if you distribute copies of such a program, whether gratis or for a fee, you must pass on to the recipients the same freedoms that you received. You must make sure that they, too, receive or can get the source code. And you must show them these terms so they know their rights. - -Developers that use the GNU GPL protect your rights with two steps: (1) assert copyright on the software, and (2) offer you this License giving you legal permission to copy, distribute and/or modify it. - -For the developers' and authors' protection, the GPL clearly explains that there is no warranty for this free software. For both users' and authors' sake, the GPL requires that modified versions be marked as changed, so that their problems will not be attributed erroneously to authors of previous versions. - -Some devices are designed to deny users access to install or run modified versions of the software inside them, although the manufacturer can do so. This is fundamentally incompatible with the aim of protecting users' freedom to change the software. The systematic pattern of such abuse occurs in the area of products for individuals to use, which is precisely where it is most unacceptable. Therefore, we have designed this version of the GPL to prohibit the practice for those products. If such problems arise substantially in other domains, we stand ready to extend this provision to those domains in future versions of the GPL, as needed to protect the freedom of users. - -Finally, every program is threatened constantly by software patents. States should not allow patents to restrict development and use of software on general-purpose computers, but in those that do, we wish to avoid the special danger that patents applied to a free program could make it effectively proprietary. To prevent this, the GPL assures that patents cannot be used to render the program non-free. - -The precise terms and conditions for copying, distribution and modification follow. - -TERMS AND CONDITIONS -0. Definitions. -“This License” refers to version 3 of the GNU General Public License. - -“Copyright” also means copyright-like laws that apply to other kinds of works, such as semiconductor masks. - -“The Program” refers to any copyrightable work licensed under this License. Each licensee is addressed as “you”. “Licensees” and “recipients” may be individuals or organizations. - -To “modify” a work means to copy from or adapt all or part of the work in a fashion requiring copyright permission, other than the making of an exact copy. The resulting work is called a “modified version” of the earlier work or a work “based on” the earlier work. - -A “covered work” means either the unmodified Program or a work based on the Program. - -To “propagate” a work means to do anything with it that, without permission, would make you directly or secondarily liable for infringement under applicable copyright law, except executing it on a computer or modifying a private copy. Propagation includes copying, distribution (with or without modification), making available to the public, and in some countries other activities as well. - -To “convey” a work means any kind of propagation that enables other parties to make or receive copies. Mere interaction with a user through a computer network, with no transfer of a copy, is not conveying. - -An interactive user interface displays “Appropriate Legal Notices” to the extent that it includes a convenient and prominently visible feature that (1) displays an appropriate copyright notice, and (2) tells the user that there is no warranty for the work (except to the extent that warranties are provided), that licensees may convey the work under this License, and how to view a copy of this License. If the interface presents a list of user commands or options, such as a menu, a prominent item in the list meets this criterion. - -1. Source Code. -The “source code” for a work means the preferred form of the work for making modifications to it. “Object code” means any non-source form of a work. - -A “Standard Interface” means an interface that either is an official standard defined by a recognized standards body, or, in the case of interfaces specified for a particular programming language, one that is widely used among developers working in that language. - -The “System Libraries” of an executable work include anything, other than the work as a whole, that (a) is included in the normal form of packaging a Major Component, but which is not part of that Major Component, and (b) serves only to enable use of the work with that Major Component, or to implement a Standard Interface for which an implementation is available to the public in source code form. A “Major Component”, in this context, means a major essential component (kernel, window system, and so on) of the specific operating system (if any) on which the executable work runs, or a compiler used to produce the work, or an object code interpreter used to run it. - -The “Corresponding Source” for a work in object code form means all the source code needed to generate, install, and (for an executable work) run the object code and to modify the work, including scripts to control those activities. However, it does not include the work's System Libraries, or general-purpose tools or generally available free programs which are used unmodified in performing those activities but which are not part of the work. For example, Corresponding Source includes interface definition files associated with source files for the work, and the source code for shared libraries and dynamically linked subprograms that the work is specifically designed to require, such as by intimate data communication or control flow between those subprograms and other parts of the work. - -The Corresponding Source need not include anything that users can regenerate automatically from other parts of the Corresponding Source. - -The Corresponding Source for a work in source code form is that same work. - -2. Basic Permissions. -All rights granted under this License are granted for the term of copyright on the Program, and are irrevocable provided the stated conditions are met. This License explicitly affirms your unlimited permission to run the unmodified Program. The output from running a covered work is covered by this License only if the output, given its content, constitutes a covered work. This License acknowledges your rights of fair use or other equivalent, as provided by copyright law. - -You may make, run and propagate covered works that you do not convey, without conditions so long as your license otherwise remains in force. You may convey covered works to others for the sole purpose of having them make modifications exclusively for you, or provide you with facilities for running those works, provided that you comply with the terms of this License in conveying all material for which you do not control copyright. Those thus making or running the covered works for you must do so exclusively on your behalf, under your direction and control, on terms that prohibit them from making any copies of your copyrighted material outside their relationship with you. - -Conveying under any other circumstances is permitted solely under the conditions stated below. Sublicensing is not allowed; section 10 makes it unnecessary. - -3. Protecting Users' Legal Rights From Anti-Circumvention Law. -No covered work shall be deemed part of an effective technological measure under any applicable law fulfilling obligations under article 11 of the WIPO copyright treaty adopted on 20 December 1996, or similar laws prohibiting or restricting circumvention of such measures. - -When you convey a covered work, you waive any legal power to forbid circumvention of technological measures to the extent such circumvention is effected by exercising rights under this License with respect to the covered work, and you disclaim any intention to limit operation or modification of the work as a means of enforcing, against the work's users, your or third parties' legal rights to forbid circumvention of technological measures. - -4. Conveying Verbatim Copies. -You may convey verbatim copies of the Program's source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice; keep intact all notices stating that this License and any non-permissive terms added in accord with section 7 apply to the code; keep intact all notices of the absence of any warranty; and give all recipients a copy of this License along with the Program. - -You may charge any price or no price for each copy that you convey, and you may offer support or warranty protection for a fee. - -5. Conveying Modified Source Versions. -You may convey a work based on the Program, or the modifications to produce it from the Program, in the form of source code under the terms of section 4, provided that you also meet all of these conditions: - -a) The work must carry prominent notices stating that you modified it, and giving a relevant date. -b) The work must carry prominent notices stating that it is released under this License and any conditions added under section 7. This requirement modifies the requirement in section 4 to “keep intact all notices”. -c) You must license the entire work, as a whole, under this License to anyone who comes into possession of a copy. This License will therefore apply, along with any applicable section 7 additional terms, to the whole of the work, and all its parts, regardless of how they are packaged. This License gives no permission to license the work in any other way, but it does not invalidate such permission if you have separately received it. -d) If the work has interactive user interfaces, each must display Appropriate Legal Notices; however, if the Program has interactive interfaces that do not display Appropriate Legal Notices, your work need not make them do so. -A compilation of a covered work with other separate and independent works, which are not by their nature extensions of the covered work, and which are not combined with it such as to form a larger program, in or on a volume of a storage or distribution medium, is called an “aggregate” if the compilation and its resulting copyright are not used to limit the access or legal rights of the compilation's users beyond what the individual works permit. Inclusion of a covered work in an aggregate does not cause this License to apply to the other parts of the aggregate. - -6. Conveying Non-Source Forms. -You may convey a covered work in object code form under the terms of sections 4 and 5, provided that you also convey the machine-readable Corresponding Source under the terms of this License, in one of these ways: - -a) Convey the object code in, or embodied in, a physical product (including a physical distribution medium), accompanied by the Corresponding Source fixed on a durable physical medium customarily used for software interchange. -b) Convey the object code in, or embodied in, a physical product (including a physical distribution medium), accompanied by a written offer, valid for at least three years and valid for as long as you offer spare parts or customer support for that product model, to give anyone who possesses the object code either (1) a copy of the Corresponding Source for all the software in the product that is covered by this License, on a durable physical medium customarily used for software interchange, for a price no more than your reasonable cost of physically performing this conveying of source, or (2) access to copy the Corresponding Source from a network server at no charge. -c) Convey individual copies of the object code with a copy of the written offer to provide the Corresponding Source. This alternative is allowed only occasionally and noncommercially, and only if you received the object code with such an offer, in accord with subsection 6b. -d) Convey the object code by offering access from a designated place (gratis or for a charge), and offer equivalent access to the Corresponding Source in the same way through the same place at no further charge. You need not require recipients to copy the Corresponding Source along with the object code. If the place to copy the object code is a network server, the Corresponding Source may be on a different server (operated by you or a third party) that supports equivalent copying facilities, provided you maintain clear directions next to the object code saying where to find the Corresponding Source. Regardless of what server hosts the Corresponding Source, you remain obligated to ensure that it is available for as long as needed to satisfy these requirements. -e) Convey the object code using peer-to-peer transmission, provided you inform other peers where the object code and Corresponding Source of the work are being offered to the general public at no charge under subsection 6d. -A separable portion of the object code, whose source code is excluded from the Corresponding Source as a System Library, need not be included in conveying the object code work. - -A “User Product” is either (1) a “consumer product”, which means any tangible personal property which is normally used for personal, family, or household purposes, or (2) anything designed or sold for incorporation into a dwelling. In determining whether a product is a consumer product, doubtful cases shall be resolved in favor of coverage. For a particular product received by a particular user, “normally used” refers to a typical or common use of that class of product, regardless of the status of the particular user or of the way in which the particular user actually uses, or expects or is expected to use, the product. A product is a consumer product regardless of whether the product has substantial commercial, industrial or non-consumer uses, unless such uses represent the only significant mode of use of the product. - -“Installation Information” for a User Product means any methods, procedures, authorization keys, or other information required to install and execute modified versions of a covered work in that User Product from a modified version of its Corresponding Source. The information must suffice to ensure that the continued functioning of the modified object code is in no case prevented or interfered with solely because modification has been made. - -If you convey an object code work under this section in, or with, or specifically for use in, a User Product, and the conveying occurs as part of a transaction in which the right of possession and use of the User Product is transferred to the recipient in perpetuity or for a fixed term (regardless of how the transaction is characterized), the Corresponding Source conveyed under this section must be accompanied by the Installation Information. But this requirement does not apply if neither you nor any third party retains the ability to install modified object code on the User Product (for example, the work has been installed in ROM). - -The requirement to provide Installation Information does not include a requirement to continue to provide support service, warranty, or updates for a work that has been modified or installed by the recipient, or for the User Product in which it has been modified or installed. Access to a network may be denied when the modification itself materially and adversely affects the operation of the network or violates the rules and protocols for communication across the network. - -Corresponding Source conveyed, and Installation Information provided, in accord with this section must be in a format that is publicly documented (and with an implementation available to the public in source code form), and must require no special password or key for unpacking, reading or copying. - -7. Additional Terms. -“Additional permissions” are terms that supplement the terms of this License by making exceptions from one or more of its conditions. Additional permissions that are applicable to the entire Program shall be treated as though they were included in this License, to the extent that they are valid under applicable law. If additional permissions apply only to part of the Program, that part may be used separately under those permissions, but the entire Program remains governed by this License without regard to the additional permissions. - -When you convey a copy of a covered work, you may at your option remove any additional permissions from that copy, or from any part of it. (Additional permissions may be written to require their own removal in certain cases when you modify the work.) You may place additional permissions on material, added by you to a covered work, for which you have or can give appropriate copyright permission. - -Notwithstanding any other provision of this License, for material you add to a covered work, you may (if authorized by the copyright holders of that material) supplement the terms of this License with terms: - -a) Disclaiming warranty or limiting liability differently from the terms of sections 15 and 16 of this License; or -b) Requiring preservation of specified reasonable legal notices or author attributions in that material or in the Appropriate Legal Notices displayed by works containing it; or -c) Prohibiting misrepresentation of the origin of that material, or requiring that modified versions of such material be marked in reasonable ways as different from the original version; or -d) Limiting the use for publicity purposes of names of licensors or authors of the material; or -e) Declining to grant rights under trademark law for use of some trade names, trademarks, or service marks; or -f) Requiring indemnification of licensors and authors of that material by anyone who conveys the material (or modified versions of it) with contractual assumptions of liability to the recipient, for any liability that these contractual assumptions directly impose on those licensors and authors. -All other non-permissive additional terms are considered “further restrictions” within the meaning of section 10. If the Program as you received it, or any part of it, contains a notice stating that it is governed by this License along with a term that is a further restriction, you may remove that term. If a license document contains a further restriction but permits relicensing or conveying under this License, you may add to a covered work material governed by the terms of that license document, provided that the further restriction does not survive such relicensing or conveying. - -If you add terms to a covered work in accord with this section, you must place, in the relevant source files, a statement of the additional terms that apply to those files, or a notice indicating where to find the applicable terms. - -Additional terms, permissive or non-permissive, may be stated in the form of a separately written license, or stated as exceptions; the above requirements apply either way. - -8. Termination. -You may not propagate or modify a covered work except as expressly provided under this License. Any attempt otherwise to propagate or modify it is void, and will automatically terminate your rights under this License (including any patent licenses granted under the third paragraph of section 11). - -However, if you cease all violation of this License, then your license from a particular copyright holder is reinstated (a) provisionally, unless and until the copyright holder explicitly and finally terminates your license, and (b) permanently, if the copyright holder fails to notify you of the violation by some reasonable means prior to 60 days after the cessation. - -Moreover, your license from a particular copyright holder is reinstated permanently if the copyright holder notifies you of the violation by some reasonable means, this is the first time you have received notice of violation of this License (for any work) from that copyright holder, and you cure the violation prior to 30 days after your receipt of the notice. - -Termination of your rights under this section does not terminate the licenses of parties who have received copies or rights from you under this License. If your rights have been terminated and not permanently reinstated, you do not qualify to receive new licenses for the same material under section 10. - -9. Acceptance Not Required for Having Copies. -You are not required to accept this License in order to receive or run a copy of the Program. Ancillary propagation of a covered work occurring solely as a consequence of using peer-to-peer transmission to receive a copy likewise does not require acceptance. However, nothing other than this License grants you permission to propagate or modify any covered work. These actions infringe copyright if you do not accept this License. Therefore, by modifying or propagating a covered work, you indicate your acceptance of this License to do so. - -10. Automatic Licensing of Downstream Recipients. -Each time you convey a covered work, the recipient automatically receives a license from the original licensors, to run, modify and propagate that work, subject to this License. You are not responsible for enforcing compliance by third parties with this License. - -An “entity transaction” is a transaction transferring control of an organization, or substantially all assets of one, or subdividing an organization, or merging organizations. If propagation of a covered work results from an entity transaction, each party to that transaction who receives a copy of the work also receives whatever licenses to the work the party's predecessor in interest had or could give under the previous paragraph, plus a right to possession of the Corresponding Source of the work from the predecessor in interest, if the predecessor has it or can get it with reasonable efforts. - -You may not impose any further restrictions on the exercise of the rights granted or affirmed under this License. For example, you may not impose a license fee, royalty, or other charge for exercise of rights granted under this License, and you may not initiate litigation (including a cross-claim or counterclaim in a lawsuit) alleging that any patent claim is infringed by making, using, selling, offering for sale, or importing the Program or any portion of it. - -11. Patents. -A “contributor” is a copyright holder who authorizes use under this License of the Program or a work on which the Program is based. The work thus licensed is called the contributor's “contributor version”. - -A contributor's “essential patent claims” are all patent claims owned or controlled by the contributor, whether already acquired or hereafter acquired, that would be infringed by some manner, permitted by this License, of making, using, or selling its contributor version, but do not include claims that would be infringed only as a consequence of further modification of the contributor version. For purposes of this definition, “control” includes the right to grant patent sublicenses in a manner consistent with the requirements of this License. - -Each contributor grants you a non-exclusive, worldwide, royalty-free patent license under the contributor's essential patent claims, to make, use, sell, offer for sale, import and otherwise run, modify and propagate the contents of its contributor version. - -In the following three paragraphs, a “patent license” is any express agreement or commitment, however denominated, not to enforce a patent (such as an express permission to practice a patent or covenant not to sue for patent infringement). To “grant” such a patent license to a party means to make such an agreement or commitment not to enforce a patent against the party. - -If you convey a covered work, knowingly relying on a patent license, and the Corresponding Source of the work is not available for anyone to copy, free of charge and under the terms of this License, through a publicly available network server or other readily accessible means, then you must either (1) cause the Corresponding Source to be so available, or (2) arrange to deprive yourself of the benefit of the patent license for this particular work, or (3) arrange, in a manner consistent with the requirements of this License, to extend the patent license to downstream recipients. “Knowingly relying” means you have actual knowledge that, but for the patent license, your conveying the covered work in a country, or your recipient's use of the covered work in a country, would infringe one or more identifiable patents in that country that you have reason to believe are valid. - -If, pursuant to or in connection with a single transaction or arrangement, you convey, or propagate by procuring conveyance of, a covered work, and grant a patent license to some of the parties receiving the covered work authorizing them to use, propagate, modify or convey a specific copy of the covered work, then the patent license you grant is automatically extended to all recipients of the covered work and works based on it. - -A patent license is “discriminatory” if it does not include within the scope of its coverage, prohibits the exercise of, or is conditioned on the non-exercise of one or more of the rights that are specifically granted under this License. You may not convey a covered work if you are a party to an arrangement with a third party that is in the business of distributing software, under which you make payment to the third party based on the extent of your activity of conveying the work, and under which the third party grants, to any of the parties who would receive the covered work from you, a discriminatory patent license (a) in connection with copies of the covered work conveyed by you (or copies made from those copies), or (b) primarily for and in connection with specific products or compilations that contain the covered work, unless you entered into that arrangement, or that patent license was granted, prior to 28 March 2007. - -Nothing in this License shall be construed as excluding or limiting any implied license or other defenses to infringement that may otherwise be available to you under applicable patent law. - -12. No Surrender of Others' Freedom. -If conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot convey a covered work so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not convey it at all. For example, if you agree to terms that obligate you to collect a royalty for further conveying from those to whom you convey the Program, the only way you could satisfy both those terms and this License would be to refrain entirely from conveying the Program. - -13. Use with the GNU Affero General Public License. -Notwithstanding any other provision of this License, you have permission to link or combine any covered work with a work licensed under version 3 of the GNU Affero General Public License into a single combined work, and to convey the resulting work. The terms of this License will continue to apply to the part which is the covered work, but the special requirements of the GNU Affero General Public License, section 13, concerning interaction through a network will apply to the combination as such. - -14. Revised Versions of this License. -The Free Software Foundation may publish revised and/or new versions of the GNU General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. - -Each version is given a distinguishing version number. If the Program specifies that a certain numbered version of the GNU General Public License “or any later version” applies to it, you have the option of following the terms and conditions either of that numbered version or of any later version published by the Free Software Foundation. If the Program does not specify a version number of the GNU General Public License, you may choose any version ever published by the Free Software Foundation. - -If the Program specifies that a proxy can decide which future versions of the GNU General Public License can be used, that proxy's public statement of acceptance of a version permanently authorizes you to choose that version for the Program. - -Later license versions may give you additional or different permissions. However, no additional obligations are imposed on any author or copyright holder as a result of your choosing to follow a later version. - -15. Disclaimer of Warranty. -THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM “AS IS” WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. - -16. Limitation of Liability. -IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. - -17. Interpretation of Sections 15 and 16. -If the disclaimer of warranty and limitation of liability provided above cannot be given local legal effect according to their terms, reviewing courts shall apply local law that most closely approximates an absolute waiver of all civil liability in connection with the Program, unless a warranty or assumption of liability accompanies a copy of the Program in return for a fee. \ No newline at end of file +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/README.md b/README.md index 7528479..6cbe33a 100644 --- a/README.md +++ b/README.md @@ -177,7 +177,7 @@ The deployments are stored in ./broadcast See the [Foundry Book for available options](https://book.getfoundry.sh/reference/forge/forge-create.html). ## Licensing -The primary license for EBO contracts is GPL-3.0, see [`LICENSE`](./LICENSE). +TODO ## Contributors diff --git a/package.json b/package.json index 0441263..da32a2c 100644 --- a/package.json +++ b/package.json @@ -12,7 +12,7 @@ "scripts": { "build": "forge build", "build:optimized": "FOUNDRY_PROFILE=optimized forge build", - "coverage": "forge coverage --ir-minimum --report summary --report lcov --match-path 'test/unit/*'", + "coverage": "forge coverage --report summary --report lcov --match-path 'test/unit/*'", "deploy:arbitrum": "bash -c 'source .env && forge script Deploy --rpc-url arbitrum --account $ARBITRUM_DEPLOYER_NAME --broadcast --verify --chain arbitrum -vvvvv'", "lint:check": "yarn lint:sol-tests && yarn lint:sol-logic && forge fmt --check", "lint:fix": "sort-package-json && forge fmt && yarn lint:sol-tests --fix && yarn lint:sol-logic --fix", @@ -34,8 +34,8 @@ "package.json": "sort-package-json" }, "dependencies": { - "@defi-wonderland/prophet-core": "0.0.0-819e5fe9", - "@defi-wonderland/prophet-modules": "0.0.0-022dfec8" + "@defi-wonderland/prophet-core": "0.0.0-96d1084b", + "@defi-wonderland/prophet-modules": "0.0.0-b72dcda6" }, "devDependencies": { "@commitlint/cli": "19.3.0", diff --git a/script/Constants.sol b/script/Constants.sol index 66c1dd2..6bc6b0d 100644 --- a/script/Constants.sol +++ b/script/Constants.sol @@ -13,6 +13,7 @@ address constant _ARBITRUM_MAINNET_COUNCIL = address(0x101); address constant _ARBITRUM_SEPOLIA_GRAPH_TOKEN = 0x1A1af8B44fD59dd2bbEb456D1b7604c7bd340702; address constant _ARBITRUM_SEPOLIA_HORIZON_STAKING = 0x3F53F9f9a5d7F36dCC869f8D2F227499c411c0cf; address constant _ARBITRUM_SEPOLIA_EPOCH_MANAGER = 0x7975475801BEf845f10Ce7784DC69aB1e0344f11; +address constant _ARBITRUM_SEPOLIA_GOVERNOR = 0xadE6B8EB69a49B56929C1d4F4b428d791861dB6f; address constant _ARBITRUM_SEPOLIA_ARBITRATOR = address(0x100); address constant _ARBITRUM_SEPOLIA_COUNCIL = address(0x101); diff --git a/script/Deploy.s.sol b/script/Deploy.s.sol index c8aaa6f..fe5c8ed 100644 --- a/script/Deploy.s.sol +++ b/script/Deploy.s.sol @@ -19,13 +19,11 @@ import { IBondEscalationAccounting } from '@defi-wonderland/prophet-modules/solidity/interfaces/extensions/IBondEscalationAccounting.sol'; import {IERC20} from '@openzeppelin/contracts/interfaces/IERC20.sol'; - -import {Arbitrable, IArbitrable} from 'contracts/Arbitrable.sol'; -import {CouncilArbitrator, ICouncilArbitrator} from 'contracts/CouncilArbitrator.sol'; import {IEpochManager} from 'interfaces/external/IEpochManager.sol'; import {IHorizonStaking} from 'interfaces/external/IHorizonStaking.sol'; -import {EBOAccessModule, IEBOAccessModule} from 'contracts/EBOAccessModule.sol'; +import {Arbitrable, IArbitrable} from 'contracts/Arbitrable.sol'; +import {CouncilArbitrator, ICouncilArbitrator} from 'contracts/CouncilArbitrator.sol'; import {EBOFinalityModule, IEBOFinalityModule} from 'contracts/EBOFinalityModule.sol'; import {EBORequestCreator, IEBORequestCreator} from 'contracts/EBORequestCreator.sol'; import {EBORequestModule, IEBORequestModule} from 'contracts/EBORequestModule.sol'; @@ -44,7 +42,7 @@ import { import 'forge-std/Script.sol'; contract Deploy is Script { - uint256 public constant DEPLOYMENT_COUNT = 11; + uint256 public constant DEPLOYMENT_COUNT = 10; uint256 public constant OFFSET_EBO_REQUEST_CREATOR = DEPLOYMENT_COUNT - 1; // Oracle @@ -56,7 +54,6 @@ contract Deploy is Script { IBondEscalationModule public bondEscalationModule; IArbitratorModule public arbitratorModule; IEBOFinalityModule public eboFinalityModule; - IEBOAccessModule public eboAccessModule; // Extensions IHorizonAccountingExtension public horizonAccountingExtension; @@ -158,10 +155,6 @@ contract Deploy is Script { councilArbitrator = new CouncilArbitrator(arbitratorModule, arbitrable); console.log('`CouncilArbitrator` deployed at:', address(councilArbitrator)); - // Deploy `EBOAccessModule` - eboAccessModule = new EBOAccessModule(oracle, arbitrable, horizonAccountingExtension); - console.log('`EBOAccessModule` deployed at:', address(eboAccessModule)); - // Deploy `EBORequestCreator` IOracle.Request memory _requestData = _instantiateRequestData(); eboRequestCreator = new EBORequestCreator(oracle, epochManager, arbitrable, _requestData); @@ -178,9 +171,7 @@ contract Deploy is Script { _requestData.nonce = 0; // Set requester and modules - _requestData.requester = address(eboRequestCreator); - _requestData.accessModule = address(eboAccessModule); _requestData.requestModule = address(eboRequestModule); _requestData.responseModule = address(bondedResponseModule); _requestData.disputeModule = address(bondEscalationModule); diff --git a/src/contracts/CouncilArbitrator.sol b/src/contracts/CouncilArbitrator.sol index 550fc12..51bec98 100644 --- a/src/contracts/CouncilArbitrator.sol +++ b/src/contracts/CouncilArbitrator.sol @@ -1,7 +1,6 @@ // SPDX-License-Identifier: GPL-3.0 pragma solidity 0.8.26; -import {IAccessController} from '@defi-wonderland/prophet-core/solidity/interfaces/access/IAccessController.sol'; import {ValidatorLib} from '@defi-wonderland/prophet-core/solidity/libraries/ValidatorLib.sol'; import {IArbitrator} from '@defi-wonderland/prophet-modules/solidity/interfaces/IArbitrator.sol'; @@ -69,12 +68,8 @@ contract CouncilArbitrator is ICouncilArbitrator { if (getAnswer[_disputeId] != IOracle.DisputeStatus.None) revert CouncilArbitrator_DisputeAlreadyArbitrated(); getAnswer[_disputeId] = _award; - IAccessController.AccessControl memory _accessControl = - IAccessController.AccessControl({user: address(this), data: bytes('')}); - ORACLE.resolveDispute( - _resolutionParams.request, _resolutionParams.response, _resolutionParams.dispute, _accessControl - ); + ORACLE.resolveDispute(_resolutionParams.request, _resolutionParams.response, _resolutionParams.dispute); // If the request was not finalized, finalize it if (ORACLE.finalizedAt(_resolutionParams.dispute.requestId) == 0) { @@ -82,7 +77,7 @@ contract CouncilArbitrator is ICouncilArbitrator { if (_award != IOracle.DisputeStatus.Lost) { _resolutionParams.response.requestId = 0; } - ORACLE.finalize(_resolutionParams.request, _resolutionParams.response, _accessControl); + ORACLE.finalize(_resolutionParams.request, _resolutionParams.response); } emit DisputeArbitrated(_disputeId, _award); diff --git a/src/contracts/EBOAccessModule.sol b/src/contracts/EBOAccessModule.sol deleted file mode 100644 index fe11717..0000000 --- a/src/contracts/EBOAccessModule.sol +++ /dev/null @@ -1,79 +0,0 @@ -// SPDX-License-Identifier: GPL-3.0 -pragma solidity 0.8.26; - -import { - IAccessModule, - IArbitrable, - IEBOAccessModule, - IHorizonAccountingExtension, - IHorizonStaking, - IOracle -} from 'interfaces/IEBOAccessModule.sol'; - -import {IModule, Module} from '@defi-wonderland/prophet-core/solidity/contracts/Module.sol'; - -contract EBOAccessModule is IEBOAccessModule, Module { - /// @inheritdoc IEBOAccessModule - IArbitrable public immutable ARBITRABLE; - /// @inheritdoc IEBOAccessModule - IHorizonStaking public horizonStaking; - /// @inheritdoc IEBOAccessModule - IHorizonAccountingExtension public horizonAccountingExtension; - - /** - * @notice Constructor - * @param _oracle The address of the Oracle - * @param _arbitrable The address of the Arbitrable contract - * @param _horizonAccountingExtension The address of the Horizon Accounting Extension contract - */ - constructor( - IOracle _oracle, - IArbitrable _arbitrable, - IHorizonAccountingExtension _horizonAccountingExtension - ) Module(_oracle) { - ARBITRABLE = _arbitrable; - _setHorizonAccountingExtension(_horizonAccountingExtension); - } - - /// @inheritdoc IAccessModule - function decodeAccessControlParameters(bytes calldata _data) - public - pure - returns (IAccessModule.AccessControlParameters memory _params) - { - _params = abi.decode(_data, (IAccessModule.AccessControlParameters)); - } - - /// @inheritdoc IAccessModule - function hasAccess(bytes calldata _data) external view returns (bool _hasAccess) { - IAccessModule.AccessControlParameters memory _params = decodeAccessControlParameters(_data); - _hasAccess = - horizonStaking.isAuthorized(_params.accessControl.user, address(horizonAccountingExtension), _params.sender); - } - - /// @inheritdoc IEBOAccessModule - function setHorizonAccountingExtension(IHorizonAccountingExtension _horizonAccountingExtension) external { - ARBITRABLE.validateArbitrator(msg.sender); - - _setHorizonAccountingExtension(_horizonAccountingExtension); - } - - /// @inheritdoc IModule - function moduleName() external pure returns (string memory _moduleName) { - _moduleName = 'EBOAccessModule'; - } - - /** - * @notice Internal function to set the horizon accounting extension contract. - * @dev It also updates the `horizonStaking` address. - * @param _horizonAccountingExtension The new horizon accounting extension contract. - */ - function _setHorizonAccountingExtension(IHorizonAccountingExtension _horizonAccountingExtension) internal { - horizonAccountingExtension = _horizonAccountingExtension; - - // also update horizon staking address using the accounting extension view function - horizonStaking = _horizonAccountingExtension.HORIZON_STAKING(); - - emit HorizonAccountingExtensionSet(_horizonAccountingExtension); - } -} diff --git a/src/contracts/EBORequestCreator.sol b/src/contracts/EBORequestCreator.sol index ef40f89..c755139 100644 --- a/src/contracts/EBORequestCreator.sol +++ b/src/contracts/EBORequestCreator.sol @@ -1,7 +1,6 @@ // SPDX-License-Identifier: GPL-3.0 pragma solidity 0.8.26; -import {IAccessController} from '@defi-wonderland/prophet-core/solidity/interfaces/access/IAccessController.sol'; import {EnumerableSet} from '@openzeppelin/contracts/utils/structs/EnumerableSet.sol'; import { @@ -82,11 +81,10 @@ contract EBORequestCreator is IEBORequestCreator { ) revert EBORequestCreator_RequestAlreadyCreated(); _requestModuleData.chainId = _chainId; + _requestData.requestModuleData = abi.encode(_requestModuleData); - IAccessController.AccessControl memory _accessControl = - IAccessController.AccessControl({user: address(this), data: bytes('')}); - _requestId = ORACLE.createRequest(_requestData, bytes32(0), _accessControl); + _requestId = ORACLE.createRequest(_requestData, bytes32(0)); requestIdPerChainAndEpoch[_chainId][_epoch] = _requestId; diff --git a/src/contracts/EBORequestModule.sol b/src/contracts/EBORequestModule.sol index 2355610..b0e5bc4 100644 --- a/src/contracts/EBORequestModule.sol +++ b/src/contracts/EBORequestModule.sol @@ -2,6 +2,7 @@ pragma solidity 0.8.26; import {IModule, Module} from '@defi-wonderland/prophet-core/solidity/contracts/Module.sol'; + import {EnumerableSet} from '@openzeppelin/contracts/utils/structs/EnumerableSet.sol'; import {IArbitrable, IEBORequestCreator, IEBORequestModule, IOracle} from 'interfaces/IEBORequestModule.sol'; diff --git a/src/contracts/HorizonAccountingExtension.sol b/src/contracts/HorizonAccountingExtension.sol index 32d0a0b..595559b 100644 --- a/src/contracts/HorizonAccountingExtension.sol +++ b/src/contracts/HorizonAccountingExtension.sol @@ -232,6 +232,7 @@ contract HorizonAccountingExtension is Validator, IHorizonAccountingExtension { // Check the balance in the contract // If not enough balance, slash some users to get enough balance + // TODO: How many iterations should we do? while (disputeBalance[_disputeId] < _rewardAmount) { _slash(_disputeId, MAX_USERS_TO_SLASH, maxUsersToCheck, _result, _status); } @@ -406,6 +407,8 @@ contract HorizonAccountingExtension is Validator, IHorizonAccountingExtension { if (_slashAmount > 0) { // Slash the user HORIZON_STAKING.slash(_user, _slashAmount, _slashAmount, address(this)); + // TODO: What if `MIN_THAWING_PERIOD` has passed, all provision tokens have been thawed + // and slashing is skipped or reverts (bricking `claimEscalationReward()`)? _unbond(_user, _slashAmount); diff --git a/src/interfaces/IEBOAccessModule.sol b/src/interfaces/IEBOAccessModule.sol deleted file mode 100644 index c6d6798..0000000 --- a/src/interfaces/IEBOAccessModule.sol +++ /dev/null @@ -1,55 +0,0 @@ -// SPDX-License-Identifier: GPL-3.0 -pragma solidity 0.8.26; - -import {IOracle} from '@defi-wonderland/prophet-core/solidity/interfaces/IOracle.sol'; -import {IAccessModule} from '@defi-wonderland/prophet-core/solidity/interfaces/modules/access/IAccessModule.sol'; - -import {IHorizonAccountingExtension} from 'interfaces/IHorizonAccountingExtension.sol'; - -import {IHorizonStaking} from 'interfaces/external/IHorizonStaking.sol'; - -import {IArbitrable} from 'interfaces/IArbitrable.sol'; - -interface IEBOAccessModule is IAccessModule { - /*/////////////////////////////////////////////////////////////// - EVENTS - //////////////////////////////////////////////////////////////*/ - - /** - * @notice Emitted when the Horizon Accounting Extension contract is set - * @param _horizonAccountingExtension The new Horizon Accounting Extension contract - */ - event HorizonAccountingExtensionSet(IHorizonAccountingExtension indexed _horizonAccountingExtension); - - /*/////////////////////////////////////////////////////////////// - VARIABLES - //////////////////////////////////////////////////////////////*/ - - /** - * @notice The Arbitrable contract - * @return _arbitrable The Arbitrable contract - */ - function ARBITRABLE() external view returns (IArbitrable _arbitrable); - - /** - * @notice The Horizon Accounting Extension contract - * @return _horizonAccountingExtension The Horizon Accounting Extension contract - */ - function horizonAccountingExtension() external view returns (IHorizonAccountingExtension _horizonAccountingExtension); - - /** - * @notice The Horizon Staking contract - * @return _horizonStaking The Horizon Staking contract - */ - function horizonStaking() external view returns (IHorizonStaking _horizonStaking); - - /*/////////////////////////////////////////////////////////////// - LOGIC - //////////////////////////////////////////////////////////////*/ - - /** - * @notice Sets the Horizon Accounting Extension contract - * @param _horizonAccountingExtension The new Horizon Accounting Extension contract - */ - function setHorizonAccountingExtension(IHorizonAccountingExtension _horizonAccountingExtension) external; -} diff --git a/src/interfaces/IEBORequestCreator.sol b/src/interfaces/IEBORequestCreator.sol index 3df7fac..b8ec137 100644 --- a/src/interfaces/IEBORequestCreator.sol +++ b/src/interfaces/IEBORequestCreator.sol @@ -153,7 +153,6 @@ interface IEBORequestCreator { * @return _disputeModule The dispute module address * @return _resolutionModule The resolution module address * @return _finalityModule The finality module address - * @return _accessModule The address of the access module * @return _requestModuleData The request module data * @return _responseModuleData The response module data * @return _disputeModuleData The dispute module data @@ -171,7 +170,6 @@ interface IEBORequestCreator { address _disputeModule, address _resolutionModule, address _finalityModule, - address _accessModule, bytes memory _requestModuleData, bytes memory _responseModuleData, bytes memory _disputeModuleData, diff --git a/src/interfaces/external/IHorizonStaking.sol b/src/interfaces/external/IHorizonStaking.sol index d351a11..4df32ff 100644 --- a/src/interfaces/external/IHorizonStaking.sol +++ b/src/interfaces/external/IHorizonStaking.sol @@ -132,13 +132,4 @@ interface IHorizonStaking { * @param verifierDestination The address to transfer the verifier cut to */ function slash(address serviceProvider, uint256 tokens, uint256 tokensVerifier, address verifierDestination) external; - - /** - * @notice Check if an operator is authorized for the caller on a specific verifier / data service. - * @param serviceProvider The service provider on behalf of whom they're claiming to act - * @param verifier The verifier / data service on which they're claiming to act - * @param operator The address to check for auth - * @return Whether the operator is authorized or not - */ - function isAuthorized(address serviceProvider, address verifier, address operator) external view returns (bool); } diff --git a/test/integration/arbitrum/BondEscalation.t.sol b/test/integration/arbitrum/BondEscalation.t.sol index 3de635e..8f47fe9 100644 --- a/test/integration/arbitrum/BondEscalation.t.sol +++ b/test/integration/arbitrum/BondEscalation.t.sol @@ -54,7 +54,7 @@ contract IntegrationBondEscalation is IntegrationBase { _pledgeForDispute(_requestId, _disputeId); // Do not pass the dispute deadline nor the tying buffer - vm.warp(_disputeCreatedAt + disputeDeadline - 1); + vm.warp(_disputeCreatedAt + disputeDeadline); // Thaw some tokens uint256 _tokensToThaw = disputeBondSize * (maxNumberOfEscalations - 1) + 1; @@ -101,7 +101,7 @@ contract IntegrationBondEscalation is IntegrationBase { _pledgeAgainstDispute(_requestId, _disputeId); // Do not pass the dispute deadline nor the tying buffer - vm.warp(_disputeCreatedAt + disputeDeadline - 1); + vm.warp(_disputeCreatedAt + disputeDeadline); // Thaw some tokens uint256 _tokensToThaw = disputeBondSize * (maxNumberOfEscalations - 1) + 1; @@ -226,7 +226,7 @@ contract IntegrationBondEscalation is IntegrationBase { _settleBondEscalation(_requestId, _responseId, _disputeId); // Do not pass the dispute deadline nor the tying buffer - vm.warp(_disputeCreatedAt + disputeDeadline - 1); + vm.warp(_disputeCreatedAt + disputeDeadline); // Pledge against the dispute _pledgeAgainstDispute(_requestId, _disputeId); @@ -291,7 +291,7 @@ contract IntegrationBondEscalation is IntegrationBase { _settleBondEscalation(_requestId, _responseId, _disputeId); // Do not pass the dispute deadline nor the tying buffer - vm.warp(_disputeCreatedAt + disputeDeadline - 1); + vm.warp(_disputeCreatedAt + disputeDeadline); // Pledge for the dispute _pledgeForDispute(_requestId, _disputeId); @@ -386,80 +386,6 @@ contract IntegrationBondEscalation is IntegrationBase { _claimEscalationReward(_disputeId, _pledgerFor); } - function test_ClaimEscalationReward_DisputerWon_ManualSlash() public { - // Create a new pledger - address _pledgerFor2 = makeAddr('pledgerFor2'); - _stakeGRT(_pledgerFor2, disputeBondSize * maxNumberOfEscalations); - _createProvision(_pledgerFor2, disputeBondSize * maxNumberOfEscalations); - - // Pledge against the dispute - _pledgeAgainstDispute(_requestId, _disputeId); - - // Pledge for the dispute, twice - _pledgeForDispute(_requestId, _disputeId); - _pledgeForDispute(_pledgerFor2, _requestId, _disputeId); - - // Pass the dispute deadline and the tying buffer - vm.warp(_disputeCreatedAt + disputeDeadline + tyingBuffer + 1); - - // Settle the bond escalation - _settleBondEscalation(_requestId, _responseId, _disputeId); - - assertEq(graphToken.balanceOf(address(horizonAccountingExtension)), 0); - - horizonAccountingExtension.slash(_disputeId, 1, 1); - - assertEq(graphToken.balanceOf(address(horizonAccountingExtension)), disputeBondSize); - - // Slashing manually should increase the balance for the dispute - assertEq(horizonAccountingExtension.disputeBalance(_disputeId), disputeBondSize); - - // Try to slash a lot of people - horizonAccountingExtension.slash(_disputeId, 100, 100); - - // Dispute balance should remain equal - assertEq(horizonAccountingExtension.disputeBalance(_disputeId), disputeBondSize); - - // Claim the escalation rewards - horizonAccountingExtension.claimEscalationReward(_disputeId, _pledgerAgainst); - - // Pledger against doesn't get any reward so the disputeBalance should remain the same - assertEq(horizonAccountingExtension.disputeBalance(_disputeId), disputeBondSize); - - // The first pledger for claims their reward and gets half the total amount from the pledger against - horizonAccountingExtension.claimEscalationReward(_disputeId, _pledgerFor); - assertEq(horizonAccountingExtension.disputeBalance(_disputeId), disputeBondSize / 2); - - // The pledges for the pledgerFor2 and half of the pledge from the pledgerAgainst are still in the contract - assertEq(horizonAccountingExtension.pledges(_disputeId), disputeBondSize + disputeBondSize / 2); - - // The second pledger for claims their reward and gets half the total amount from the pledger against - horizonAccountingExtension.claimEscalationReward(_disputeId, _pledgerFor2); - assertEq(horizonAccountingExtension.disputeBalance(_disputeId), 0); - - // Assert HorizonAccountingExtension::claimEscalationReward - assertTrue(horizonAccountingExtension.pledgerClaimed(_requestId, _pledgerFor)); - assertTrue(horizonAccountingExtension.pledgerClaimed(_requestId, _pledgerAgainst)); - assertTrue(horizonAccountingExtension.pledgerClaimed(_requestId, _pledgerFor2)); - assertEq(horizonAccountingExtension.pledges(_disputeId), 0); - assertEq(horizonAccountingExtension.totalBonded(_pledgerFor), 0); - assertEq(horizonAccountingExtension.totalBonded(_pledgerAgainst), 0); - assertEq(horizonAccountingExtension.totalBonded(_pledgerFor2), 0); - - // Assert HorizonStaking::slash - IHorizonStaking.Provision memory _pledgerForProvision = - horizonStaking.getProvision(_pledgerFor, address(horizonAccountingExtension)); - IHorizonStaking.Provision memory _pledgerAgainstProvision = - horizonStaking.getProvision(_pledgerAgainst, address(horizonAccountingExtension)); - assertEq(_pledgerForProvision.tokens, disputeBondSize * maxNumberOfEscalations); - assertEq(_pledgerAgainstProvision.tokens, disputeBondSize * maxNumberOfEscalations - disputeBondSize); - - // Assert GraphToken::transfer - assertEq(graphToken.balanceOf(_pledgerFor), disputeBondSize / 2); - assertEq(graphToken.balanceOf(_pledgerFor2), disputeBondSize / 2); - assertEq(graphToken.balanceOf(_pledgerAgainst), 0); - } - function test_ClaimEscalationReward_DisputerLost() public { // Revert if the bond escalation has not been settled vm.expectRevert(IHorizonAccountingExtension.HorizonAccountingExtension_NoEscalationResult.selector); diff --git a/test/integration/arbitrum/CreateRequest.t.sol b/test/integration/arbitrum/CreateRequest.t.sol index 658b2e2..badc35f 100644 --- a/test/integration/arbitrum/CreateRequest.t.sol +++ b/test/integration/arbitrum/CreateRequest.t.sol @@ -19,10 +19,9 @@ contract IntegrationCreateRequest is IntegrationBase { // Should revert if the requester is not the EBORequestCreator vm.expectRevert(IEBORequestModule.EBORequestModule_InvalidRequester.selector); - _requestData.requester = _requester; - vm.prank(_requester); - oracle.createRequest(_requestData, '', _createAccessControl()); + _requestData.requester = _requester; + oracle.createRequest(_requestData, ''); // Should revert if the epoch is invalid vm.expectRevert(IEBORequestCreator.EBORequestCreator_InvalidEpoch.selector); @@ -45,12 +44,7 @@ contract IntegrationCreateRequest is IntegrationBase { _requestData.requester = address(eboRequestCreator); // Expect the oracle to create the request - vm.expectCall( - address(oracle), - abi.encodeWithSelector( - IOracle.createRequest.selector, _requestData, bytes32(0), _createAccessControl(address(eboRequestCreator)) - ) - ); + vm.expectCall(address(oracle), abi.encodeWithSelector(IOracle.createRequest.selector, _requestData, bytes32(0))); vm.prank(_requester); eboRequestCreator.createRequest(_currentEpoch, _chainId); diff --git a/test/integration/arbitrum/DisputeResponse.t.sol b/test/integration/arbitrum/DisputeResponse.t.sol index 9f50508..a1d5b93 100644 --- a/test/integration/arbitrum/DisputeResponse.t.sol +++ b/test/integration/arbitrum/DisputeResponse.t.sol @@ -40,7 +40,7 @@ contract IntegrationDisputeResponse is IntegrationBase { _disputeResponse(_requestId, _responseId); // Do not pass the dispute window - vm.warp(_responseCreation + disputeDisputeWindow - 1); + vm.warp(_responseCreation + disputeDisputeWindow); // Thaw some tokens _thaw(_disputer, 1); diff --git a/test/integration/arbitrum/FinalizeRequest.t.sol b/test/integration/arbitrum/FinalizeRequest.t.sol index 9dfcbd4..1b0b5a6 100644 --- a/test/integration/arbitrum/FinalizeRequest.t.sol +++ b/test/integration/arbitrum/FinalizeRequest.t.sol @@ -105,6 +105,8 @@ contract IntegrationFinalizeRequest is IntegrationBase { // Propose the response bytes32 _responseId = _proposeResponse(_requestId); + uint256 _responseCreatedAt = oracle.responseCreatedAt(_responseId); + // Revert if the request is finalized without response when a response without dispute exists vm.expectRevert(abi.encodeWithSelector(IOracle.Oracle_FinalizableResponseExists.selector, _responseId)); _finalizeRequest(_requestId, 0); @@ -154,6 +156,8 @@ contract IntegrationFinalizeRequest is IntegrationBase { // Propose the response bytes32 _responseId = _proposeResponse(_requestId); + uint256 _responseCreatedAt = oracle.responseCreatedAt(_responseId); + // Revert if the request is finalized without response when a response without dispute exists vm.expectRevert(abi.encodeWithSelector(IOracle.Oracle_FinalizableResponseExists.selector, _responseId)); _finalizeRequest(_requestId, 0); @@ -206,6 +210,8 @@ contract IntegrationFinalizeRequest is IntegrationBase { // Propose the response bytes32 _responseId = _proposeResponse(_requestId); + uint256 _responseCreatedAt = oracle.responseCreatedAt(_responseId); + // Revert if the request is finalized without response when a response without dispute exists vm.expectRevert(abi.encodeWithSelector(IOracle.Oracle_FinalizableResponseExists.selector, _responseId)); _finalizeRequest(_requestId, 0); @@ -299,6 +305,8 @@ contract IntegrationFinalizeRequest is IntegrationBase { // Propose the response bytes32 _responseId = _proposeResponse(_requestId); + uint256 _responseCreatedAt = oracle.responseCreatedAt(_responseId); + // Revert if the request is finalized without response when a response without dispute exists vm.expectRevert(abi.encodeWithSelector(IOracle.Oracle_FinalizableResponseExists.selector, _responseId)); _finalizeRequest(_requestId, 0); @@ -342,6 +350,8 @@ contract IntegrationFinalizeRequest is IntegrationBase { // Propose the response bytes32 _responseId = _proposeResponse(_requestId); + uint256 _responseCreatedAt = oracle.responseCreatedAt(_responseId); + // Revert if the request has not been finalized vm.expectRevert(IBondedResponseModule.BondedResponseModule_InvalidReleaseParameters.selector); _releaseUnfinalizableResponseBond(_requestId, _responseId); @@ -394,6 +404,8 @@ contract IntegrationFinalizeRequest is IntegrationBase { // Propose the response bytes32 _responseId = _proposeResponse(_requestId); + uint256 _responseCreatedAt = oracle.responseCreatedAt(_responseId); + // Revert if the request has not been finalized vm.expectRevert(IBondedResponseModule.BondedResponseModule_InvalidReleaseParameters.selector); _releaseUnfinalizableResponseBond(_requestId, _responseId); @@ -445,6 +457,8 @@ contract IntegrationFinalizeRequest is IntegrationBase { // Propose the response bytes32 _responseId = _proposeResponse(_requestId); + uint256 _responseCreatedAt = oracle.responseCreatedAt(_responseId); + // Revert if the request has not been finalized vm.expectRevert(IBondedResponseModule.BondedResponseModule_InvalidReleaseParameters.selector); _releaseUnfinalizableResponseBond(_requestId, _responseId); @@ -556,6 +570,8 @@ contract IntegrationFinalizeRequest is IntegrationBase { // Propose the response bytes32 _responseId = _proposeResponse(_requestId); + uint256 _responseCreatedAt = oracle.responseCreatedAt(_responseId); + // Revert if the request has not been finalized vm.expectRevert(IBondedResponseModule.BondedResponseModule_InvalidReleaseParameters.selector); _releaseUnfinalizableResponseBond(_requestId, _responseId); diff --git a/test/integration/arbitrum/IntegrationBase.t.sol b/test/integration/arbitrum/IntegrationBase.t.sol index 7a961ba..5da8aa3 100644 --- a/test/integration/arbitrum/IntegrationBase.t.sol +++ b/test/integration/arbitrum/IntegrationBase.t.sol @@ -1,15 +1,15 @@ // SPDX-License-Identifier: GPL-3.0 pragma solidity 0.8.26; -import {IAccessController} from '@defi-wonderland/prophet-core/solidity/interfaces/access/IAccessController.sol'; import {ValidatorLib} from '@defi-wonderland/prophet-core/solidity/libraries/ValidatorLib.sol'; -import 'forge-std/Test.sol'; +import {_ARBITRUM_SEPOLIA_GOVERNOR} from 'script/Constants.sol'; + import 'script/Deploy.s.sol'; -import '../../utils/Helpers.sol'; +import 'forge-std/Test.sol'; -contract IntegrationBase is Deploy, Test, Helpers { +contract IntegrationBase is Deploy, Test { using ValidatorLib for IOracle.Request; using ValidatorLib for IOracle.Response; using ValidatorLib for IOracle.Dispute; @@ -17,6 +17,9 @@ contract IntegrationBase is Deploy, Test, Helpers { uint256 internal constant _ARBITRUM_MAINNET_FORK_BLOCK = 240_000_000; uint256 internal constant _ARBITRUM_SEPOLIA_FORK_BLOCK = 83_750_000; + // The Graph + address internal _governor; // TODO: Remove if unused + // Users address internal _requester; address internal _proposer; @@ -40,6 +43,9 @@ contract IntegrationBase is Deploy, Test, Helpers { super.setUp(); run(); + // Define The Graph accounts + _governor = _ARBITRUM_SEPOLIA_GOVERNOR; + // Set user accounts _requester = makeAddr('requester'); _proposer = makeAddr('proposer'); @@ -80,10 +86,11 @@ contract IntegrationBase is Deploy, Test, Helpers { function _proposeResponse(bytes32 _requestId) internal returns (bytes32 _responseId) { IOracle.Request memory _requestData = _requests[_requestId]; + IOracle.Response memory _responseData = _instantiateResponseData(_requestId); vm.prank(_proposer); - oracle.proposeResponse(_requestData, _responseData, _createAccessControl()); + oracle.proposeResponse(_requestData, _responseData); _responseId = _responseData._getId(); _responses[_responseId] = _responseData; @@ -92,10 +99,11 @@ contract IntegrationBase is Deploy, Test, Helpers { function _disputeResponse(bytes32 _requestId, bytes32 _responseId) internal returns (bytes32 _disputeId) { IOracle.Request memory _requestData = _requests[_requestId]; IOracle.Response memory _responseData = _responses[_responseId]; + IOracle.Dispute memory _disputeData = _instantiateDisputeData(_requestId, _responseId); vm.prank(_disputer); - oracle.disputeResponse(_requestData, _responseData, _disputeData, _createAccessControl()); + oracle.disputeResponse(_requestData, _responseData, _disputeData); _disputeId = _disputeData._getId(); _disputes[_disputeId] = _disputeData; @@ -107,7 +115,7 @@ contract IntegrationBase is Deploy, Test, Helpers { function _pledgeForDispute(address _sender, bytes32 _requestId, bytes32 _disputeId) internal { vm.prank(_sender); - bondEscalationModule.pledgeForDispute(_requests[_requestId], _disputes[_disputeId], _createAccessControl()); + bondEscalationModule.pledgeForDispute(_requests[_requestId], _disputes[_disputeId]); } function _pledgeAgainstDispute(bytes32 _requestId, bytes32 _disputeId) internal { @@ -116,7 +124,7 @@ contract IntegrationBase is Deploy, Test, Helpers { function _pledgeAgainstDispute(address _sender, bytes32 _requestId, bytes32 _disputeId) internal { vm.prank(_sender); - bondEscalationModule.pledgeAgainstDispute(_requests[_requestId], _disputes[_disputeId], _createAccessControl()); + bondEscalationModule.pledgeAgainstDispute(_requests[_requestId], _disputes[_disputeId]); } function _settleBondEscalation(bytes32 _requestId, bytes32 _responseId, bytes32 _disputeId) internal { @@ -132,7 +140,7 @@ contract IntegrationBase is Deploy, Test, Helpers { IOracle.Response memory _responseData = _responses[_responseId]; IOracle.Dispute memory _disputeData = _disputes[_disputeId]; - oracle.escalateDispute(_requestData, _responseData, _disputeData, _createAccessControl(address(this))); + oracle.escalateDispute(_requestData, _responseData, _disputeData); } function _resolveDispute(bytes32 _requestId, bytes32 _responseId, bytes32 _disputeId) internal { @@ -140,7 +148,7 @@ contract IntegrationBase is Deploy, Test, Helpers { IOracle.Response memory _responseData = _responses[_responseId]; IOracle.Dispute memory _disputeData = _disputes[_disputeId]; - oracle.resolveDispute(_requestData, _responseData, _disputeData, _createAccessControl(address(this))); + oracle.resolveDispute(_requestData, _responseData, _disputeData); } function _arbitrateDispute(bytes32 _disputeId, IOracle.DisputeStatus _award) internal { @@ -152,7 +160,7 @@ contract IntegrationBase is Deploy, Test, Helpers { IOracle.Request memory _requestData = _requests[_requestId]; IOracle.Response memory _responseData = _responses[_responseId]; - oracle.finalize(_requestData, _responseData, _createAccessControl(address(this))); + oracle.finalize(_requestData, _responseData); } function _releaseUnfinalizableResponseBond(bytes32 _requestId, bytes32 _responseId) internal { @@ -235,14 +243,6 @@ contract IntegrationBase is Deploy, Test, Helpers { vm.stopPrank(); } - function _stakeGRT(address _sender, uint256 _amount) internal { - vm.startPrank(_sender); - deal(address(graphToken), _sender, _amount, true); - graphToken.approve(address(horizonStaking), _amount); - horizonStaking.stake(_amount); - vm.stopPrank(); - } - function _createProvisions() internal { vm.startPrank(_proposer); horizonStaking.provision( @@ -306,18 +306,6 @@ contract IntegrationBase is Deploy, Test, Helpers { horizonStaking.addToProvision(_sender, address(horizonAccountingExtension), _amount); } - function _createProvision(address _sender, uint256 _amount) internal { - vm.startPrank(_sender); - horizonStaking.provision( - _sender, - address(horizonAccountingExtension), - _amount, - horizonAccountingExtension.MAX_VERIFIER_CUT(), - horizonAccountingExtension.MIN_THAWING_PERIOD() - ); - vm.stopPrank(); - } - function _thaw(address _sender, uint256 _amount) internal { vm.prank(_sender); horizonStaking.thaw(_sender, address(horizonAccountingExtension), _amount); diff --git a/test/unit/Arbitrable.t.sol b/test/unit/Arbitrable.t.sol index 9de1a63..f8c271b 100644 --- a/test/unit/Arbitrable.t.sol +++ b/test/unit/Arbitrable.t.sol @@ -206,7 +206,7 @@ contract Arbitrable_Unit_ValidateArbitrator is Arbitrable_Unit_BaseTest { arbitrable.validateArbitrator(_caller); } - function test_validateArbitrator() public view { + function test_validateArbitrator() public { arbitrable.validateArbitrator(arbitrator); } } diff --git a/test/unit/CouncilArbitrator.t.sol b/test/unit/CouncilArbitrator.t.sol index 8246d68..679d3df 100644 --- a/test/unit/CouncilArbitrator.t.sol +++ b/test/unit/CouncilArbitrator.t.sol @@ -2,7 +2,6 @@ pragma solidity 0.8.26; import {IValidator} from '@defi-wonderland/prophet-core/solidity/interfaces/IValidator.sol'; -import {IAccessController} from '@defi-wonderland/prophet-core/solidity/interfaces/access/IAccessController.sol'; import {Helpers} from 'test/utils/Helpers.sol'; @@ -208,12 +207,7 @@ contract CouncilArbitrator_Unit_ArbitrateDispute is CouncilArbitrator_Unit_BaseT address(oracle), abi.encodeCall( IOracle.resolveDispute, - ( - _params.resolutionParams.request, - _params.resolutionParams.response, - _params.resolutionParams.dispute, - _createAccessControl(address(councilArbitrator)) - ) + (_params.resolutionParams.request, _params.resolutionParams.response, _params.resolutionParams.dispute) ) ); councilArbitrator.arbitrateDispute(_params.disputeId, IOracle.DisputeStatus(_params.award)); @@ -228,14 +222,7 @@ contract CouncilArbitrator_Unit_ArbitrateDispute is CouncilArbitrator_Unit_BaseT vm.expectCall( address(oracle), - abi.encodeCall( - IOracle.finalize, - ( - _params.resolutionParams.request, - _params.resolutionParams.response, - _createAccessControl(address(councilArbitrator)) - ) - ) + abi.encodeCall(IOracle.finalize, (_params.resolutionParams.request, _params.resolutionParams.response)) ); councilArbitrator.arbitrateDispute(_params.disputeId, IOracle.DisputeStatus(_params.award)); } @@ -250,14 +237,7 @@ contract CouncilArbitrator_Unit_ArbitrateDispute is CouncilArbitrator_Unit_BaseT vm.expectCall( address(oracle), - abi.encodeCall( - IOracle.finalize, - ( - _params.resolutionParams.request, - _params.resolutionParams.response, - _createAccessControl(address(councilArbitrator)) - ) - ) + abi.encodeCall(IOracle.finalize, (_params.resolutionParams.request, _params.resolutionParams.response)) ); councilArbitrator.arbitrateDispute(_params.disputeId, IOracle.DisputeStatus(_params.award)); } diff --git a/test/unit/Deploy.t.sol b/test/unit/Deploy.t.sol index 4cde5cb..0d807df 100644 --- a/test/unit/Deploy.t.sol +++ b/test/unit/Deploy.t.sol @@ -181,7 +181,6 @@ contract UnitDeploy is Test { _requestData.nonce = 0; _requestData.requester = address(deploy.eboRequestCreator()); - _requestData.accessModule = address(deploy.eboAccessModule()); _requestData.requestModule = address(deploy.eboRequestModule()); _requestData.responseModule = address(deploy.bondedResponseModule()); _requestData.disputeModule = address(deploy.bondEscalationModule()); diff --git a/test/unit/EBOAccessModule.t.sol b/test/unit/EBOAccessModule.t.sol deleted file mode 100644 index 2364b41..0000000 --- a/test/unit/EBOAccessModule.t.sol +++ /dev/null @@ -1,148 +0,0 @@ -// SPDX-License-Identifier: GPL-3.0 -pragma solidity 0.8.26; - -import '../utils/Helpers.sol'; -import { - EBOAccessModule, - IAccessModule, - IArbitrable, - IEBOAccessModule, - IHorizonAccountingExtension, - IHorizonStaking, - IOracle -} from 'contracts/EBOAccessModule.sol'; - -contract EBOAccessModuleForTest is EBOAccessModule { - constructor( - IOracle _oracle, - IArbitrable _arbitrable, - IHorizonAccountingExtension _horizonAccountingExtension - ) EBOAccessModule(_oracle, _arbitrable, _horizonAccountingExtension) {} - - function setHorizonAccountingExtensionForTest(IHorizonAccountingExtension _horizonAccountingExtension) external { - horizonAccountingExtension = _horizonAccountingExtension; - horizonStaking = _horizonAccountingExtension.HORIZON_STAKING(); - } -} - -contract EBOAccessModule_Unit_BaseTest is Helpers { - // Contracts - EBOAccessModuleForTest public eboAccessModule; - IOracle public oracle; - IArbitrable public arbitrable; - IHorizonAccountingExtension public horizonAccountingExtension; - IHorizonStaking internal horizonStaking = IHorizonStaking(makeAddr('horizonStaking')); - - function setUp() public { - oracle = IOracle(makeAddr('oracle')); - arbitrable = IArbitrable(makeAddr('arbitrable')); - horizonAccountingExtension = IHorizonAccountingExtension(makeAddr('horizonAccountingExtension')); - - _mockHorizonStakingCall(horizonAccountingExtension, horizonStaking); - - eboAccessModule = new EBOAccessModuleForTest(oracle, arbitrable, horizonAccountingExtension); - } - - function _mockHorizonStakingCall( - IHorizonAccountingExtension _horizonAccountingExtension, - IHorizonStaking _horizonStaking - ) internal { - vm.mockCall( - address(_horizonAccountingExtension), - abi.encodeCall(IHorizonAccountingExtension.HORIZON_STAKING, ()), - abi.encode(address(_horizonStaking)) - ); - } -} - -contract EBOAccessModule_Unit_Constructor is EBOAccessModule_Unit_BaseTest { - struct ConstructorParams { - IOracle oracle; - IArbitrable arbitrable; - IHorizonAccountingExtension horizonAccountingExtension; - } - - function test_setOracle(ConstructorParams calldata _params) public { - _assumeFuzzable(address(_params.horizonAccountingExtension)); - _mockHorizonStakingCall(_params.horizonAccountingExtension, horizonStaking); - - eboAccessModule = new EBOAccessModuleForTest(_params.oracle, _params.arbitrable, _params.horizonAccountingExtension); - - assertEq(address(eboAccessModule.ORACLE()), address(_params.oracle)); - } - - function test_setArbitrable(ConstructorParams calldata _params) public { - _assumeFuzzable(address(_params.horizonAccountingExtension)); - _mockHorizonStakingCall(_params.horizonAccountingExtension, horizonStaking); - - eboAccessModule = new EBOAccessModuleForTest(_params.oracle, _params.arbitrable, _params.horizonAccountingExtension); - - assertEq(address(eboAccessModule.ARBITRABLE()), address(_params.arbitrable)); - } - - function test_setHorizonAccountingExtension(ConstructorParams calldata _params) public { - _assumeFuzzable(address(_params.horizonAccountingExtension)); - _mockHorizonStakingCall(_params.horizonAccountingExtension, horizonStaking); - - vm.expectEmit(); - emit IEBOAccessModule.HorizonAccountingExtensionSet(_params.horizonAccountingExtension); - - eboAccessModule = new EBOAccessModuleForTest(_params.oracle, _params.arbitrable, _params.horizonAccountingExtension); - - assertEq(address(eboAccessModule.horizonAccountingExtension()), address(_params.horizonAccountingExtension)); - } -} - -contract EBOAccessModule_Unit_ModuleName is EBOAccessModule_Unit_BaseTest { - function test_returnModuleName() public view { - assertEq(eboAccessModule.moduleName(), 'EBOAccessModule'); - } -} - -contract EBOAccessModule_Unit_DecodeAccessControlParameters is EBOAccessModule_Unit_BaseTest { - function test_decodeAccessControlParameters(IAccessModule.AccessControlParameters calldata _params) public view { - bytes memory _data = abi.encode(_params); - - IAccessModule.AccessControlParameters memory _decodedParams = eboAccessModule.decodeAccessControlParameters(_data); - - assertEq(_decodedParams.accessControl.user, _params.accessControl.user); - assertEq(address(_decodedParams.sender), address(_params.sender)); - assertEq(_decodedParams.typehash, _params.typehash); - } -} - -contract EBOAccessModule_Unit_HasAccess is EBOAccessModule_Unit_BaseTest { - function test_hasAccess(IAccessModule.AccessControlParameters calldata _params) public { - bytes memory _data = abi.encode(_params); - - vm.mockCall( - address(horizonStaking), - abi.encodeWithSelector( - IHorizonStaking.isAuthorized.selector, - _params.accessControl.user, - address(horizonAccountingExtension), - _params.sender - ), - abi.encode(true) - ); - - eboAccessModule.hasAccess(_data); - } -} - -contract EBOAccessModule_Unit_SetHorizonAccountingExtension is EBOAccessModule_Unit_BaseTest { - function test_setHorizonAccountingExtension(IHorizonAccountingExtension _horizonAccountingExtension) public { - _assumeFuzzable(address(_horizonAccountingExtension)); - _mockHorizonStakingCall(_horizonAccountingExtension, horizonStaking); - vm.mockCall( - address(arbitrable), abi.encodeWithSelector(arbitrable.validateArbitrator.selector, msg.sender), abi.encode(true) - ); - - vm.expectEmit(); - emit IEBOAccessModule.HorizonAccountingExtensionSet(_horizonAccountingExtension); - - eboAccessModule.setHorizonAccountingExtension(_horizonAccountingExtension); - - assertEq(address(eboAccessModule.horizonAccountingExtension()), address(_horizonAccountingExtension)); - } -} diff --git a/test/unit/EBORequestCreator.t.sol b/test/unit/EBORequestCreator.t.sol index 9b21a1e..565956b 100644 --- a/test/unit/EBORequestCreator.t.sol +++ b/test/unit/EBORequestCreator.t.sol @@ -44,7 +44,7 @@ contract EBORequestCreatorForTest is EBORequestCreator { } } -contract EBORequestCreator_Unit_BaseTest is Test { +abstract contract EBORequestCreator_Unit_BaseTest is Test { /// Events event RequestCreated( bytes32 indexed _requestId, IOracle.Request _request, uint256 indexed _epoch, string indexed _chainId diff --git a/test/unit/HorizonAccountingExtension.t.sol b/test/unit/HorizonAccountingExtension.t.sol index 020e96c..28aa0d8 100644 --- a/test/unit/HorizonAccountingExtension.t.sol +++ b/test/unit/HorizonAccountingExtension.t.sol @@ -564,16 +564,11 @@ contract HorizonAccountingExtension_Unit_OnSettleBondEscalation is HorizonAccoun contract HorizonAccountingExtension_Unit_ClaimEscalationReward is HorizonAccountingExtension_Unit_BaseTest { modifier happyPath(uint256 _pledgesForDispute, uint256 _pledgesAgainstDispute, uint256 _bondSize, uint256 _amount) { - _setUpHappyPath(_pledgesForDispute, _pledgesAgainstDispute, _bondSize, _amount); - _; - } + vm.assume(_pledgesForDispute > 0 && _pledgesForDispute < type(uint64).max); + vm.assume(_pledgesAgainstDispute > 0 && _pledgesAgainstDispute < type(uint64).max); + vm.assume(_amount > type(uint16).max && _amount < type(uint64).max); + vm.assume(_bondSize > 0 && _bondSize < type(uint16).max); - function _setUpHappyPath( - uint256 _pledgesForDispute, - uint256 _pledgesAgainstDispute, - uint256 _bondSize, - uint256 _amount - ) internal { horizonAccountingExtension.setDisputeBalanceForTest( _mockDisputeId, _amount * (_pledgesForDispute + _pledgesAgainstDispute) ); @@ -581,6 +576,8 @@ contract HorizonAccountingExtension_Unit_ClaimEscalationReward is HorizonAccount horizonAccountingExtension.setEscalationResultForTest( _mockDisputeId, _mockRequestId, _amount, _bondSize, bondEscalationModule ); + + _; } function test_revertIfNoEscalationResult(address _pledger) public { @@ -594,15 +591,7 @@ contract HorizonAccountingExtension_Unit_ClaimEscalationReward is HorizonAccount uint256 _pledgesAgainstDispute, uint256 _bondSize, uint256 _amount - ) public { - // bound input parameters - _pledgesForDispute = bound(_pledgesForDispute, 1, type(uint64).max); - _pledgesAgainstDispute = bound(_pledgesAgainstDispute, 1, type(uint64).max); - _amount = bound(_amount, type(uint16).max, type(uint64).max); - _bondSize = bound(_bondSize, 1, type(uint16).max); - - _setUpHappyPath(_pledgesForDispute, _pledgesAgainstDispute, _bondSize, _amount); - + ) public happyPath(_pledgesForDispute, _pledgesAgainstDispute, _bondSize, _amount) { horizonAccountingExtension.setPledgerClaimedForTest(_mockRequestId, _pledger, true); vm.expectRevert(IHorizonAccountingExtension.HorizonAccountingExtension_AlreadyClaimed.selector); @@ -615,15 +604,7 @@ contract HorizonAccountingExtension_Unit_ClaimEscalationReward is HorizonAccount uint256 _pledgesAgainstDispute, uint256 _bondSize, uint256 _amount - ) public { - // bound input parameters - _pledgesForDispute = bound(_pledgesForDispute, 1, type(uint64).max); - _pledgesAgainstDispute = bound(_pledgesAgainstDispute, 1, type(uint64).max); - _amount = bound(_amount, type(uint16).max, type(uint64).max); - _bondSize = bound(_bondSize, 1, type(uint16).max); - - _setUpHappyPath(_pledgesForDispute, _pledgesAgainstDispute, _bondSize, _amount); - + ) public happyPath(_pledgesForDispute, _pledgesAgainstDispute, _bondSize, _amount) { // Mock and expect the call to oracle checking the dispute status _mockAndExpect( address(oracle), @@ -653,15 +634,7 @@ contract HorizonAccountingExtension_Unit_ClaimEscalationReward is HorizonAccount uint256 _pledgesAgainstDispute, uint256 _bondSize, uint256 _amount - ) public { - // bound input parameters - _pledgesForDispute = bound(_pledgesForDispute, 1, type(uint64).max); - _pledgesAgainstDispute = bound(_pledgesAgainstDispute, 1, type(uint64).max); - _amount = bound(_amount, type(uint16).max, type(uint64).max); - _bondSize = bound(_bondSize, 1, type(uint16).max); - - _setUpHappyPath(_pledgesForDispute, _pledgesAgainstDispute, _bondSize, _amount); - + ) public happyPath(_pledgesForDispute, _pledgesAgainstDispute, _bondSize, _amount) { // Mock and expect the call to oracle checking the dispute status _mockAndExpect( address(oracle), @@ -714,15 +687,7 @@ contract HorizonAccountingExtension_Unit_ClaimEscalationReward is HorizonAccount uint256 _pledgesAgainstDispute, uint256 _bondSize, uint256 _amount - ) public { - // bound input parameters - _pledgesForDispute = bound(_pledgesForDispute, 1, type(uint64).max); - _pledgesAgainstDispute = bound(_pledgesAgainstDispute, 1, type(uint64).max); - _amount = bound(_amount, type(uint16).max, type(uint64).max); - _bondSize = bound(_bondSize, 1, type(uint16).max); - - _setUpHappyPath(_pledgesForDispute, _pledgesAgainstDispute, _bondSize, _amount); - + ) public happyPath(_pledgesForDispute, _pledgesAgainstDispute, _bondSize, _amount) { // Mock and expect the call to oracle checking the dispute status _mockAndExpect( address(oracle), @@ -769,15 +734,7 @@ contract HorizonAccountingExtension_Unit_ClaimEscalationReward is HorizonAccount uint256 _pledgesAgainstDispute, uint256 _bondSize, uint256 _amount - ) public { - // bound input parameters - _pledgesForDispute = bound(_pledgesForDispute, 1, type(uint64).max); - _pledgesAgainstDispute = bound(_pledgesAgainstDispute, 1, type(uint64).max); - _amount = bound(_amount, type(uint16).max, type(uint64).max); - _bondSize = bound(_bondSize, 1, type(uint16).max); - - _setUpHappyPath(_pledgesForDispute, _pledgesAgainstDispute, _bondSize, _amount); - + ) public happyPath(_pledgesForDispute, _pledgesAgainstDispute, _bondSize, _amount) { // Mock and expect the call to oracle checking the dispute status _mockAndExpect( address(oracle), @@ -825,18 +782,10 @@ contract HorizonAccountingExtension_Unit_ClaimEscalationReward is HorizonAccount uint256 _pledgesAgainstDispute, uint256 _bondSize, uint256 _amount - ) public { + ) public happyPath(_pledgesForDispute, _pledgesAgainstDispute, _bondSize, _amount) { vm.assume(_pledger != _slashedUser); vm.assume(_slashedUser != _notSlashedUser); - // bound input parameters - _pledgesForDispute = bound(_pledgesForDispute, 1, type(uint64).max - 1); - _pledgesAgainstDispute = bound(_pledgesAgainstDispute, 1, type(uint64).max - 1); - _amount = bound(_amount, type(uint16).max, type(uint64).max - 1); - _bondSize = bound(_bondSize, 1, type(uint16).max - 1); - - _setUpHappyPath(_pledgesForDispute, _pledgesAgainstDispute, _bondSize, _amount); - _pledgesAgainstDispute = _pledgesForDispute * _amount / _bondSize + 1; // Mock and expect the call to oracle checking the dispute status @@ -904,16 +853,9 @@ contract HorizonAccountingExtension_Unit_ClaimEscalationReward is HorizonAccount uint256 _pledgesAgainstDispute, uint256 _bondSize, uint256 _amount - ) public { + ) public happyPath(_pledgesForDispute, _pledgesAgainstDispute, _bondSize, _amount) { vm.assume(_pledger != _slashedUser); vm.assume(_slashedUser != _notSlashedUser); - // bound input parameters - _pledgesForDispute = bound(_pledgesForDispute, 1, type(uint64).max - 1); - _pledgesAgainstDispute = bound(_pledgesAgainstDispute, 1, type(uint64).max - 1); - _amount = bound(_amount, type(uint16).max, type(uint64).max - 1); - _bondSize = bound(_bondSize, 1, type(uint16).max - 1); - - _setUpHappyPath(_pledgesForDispute, _pledgesAgainstDispute, _bondSize, _amount); _pledgesForDispute = _pledgesAgainstDispute * _amount / _bondSize + 1; @@ -1536,12 +1478,11 @@ contract HorizonAccountingExtension_Unit_Slash is HorizonAccountingExtension_Uni uint256 _pledgesForDispute, uint256 _bondSize ) { - _setUpHappyPath(_users, _pledgesForDispute, _bondSize); - _; - } - - function _setUpHappyPath(address[] memory _users, uint256 _pledgesForDispute, uint256 _bondSize) internal { + vm.assume(_usersToSlash > 0 && _usersToSlash < type(uint16).max); + vm.assume(_maxUsersToCheck > 0 && _maxUsersToCheck < type(uint16).max); vm.assume(_users.length > 0 && _users.length < type(uint16).max); + vm.assume(_pledgesForDispute > 0 && _pledgesForDispute < type(uint16).max); + vm.assume(_bondSize > 0 && _bondSize < type(uint16).max); uint256 _slashAmount = _pledgesForDispute * _bondSize; @@ -1558,6 +1499,7 @@ contract HorizonAccountingExtension_Unit_Slash is HorizonAccountingExtension_Uni horizonAccountingExtension.setEscalationResultForTest( _mockDisputeId, _mockRequestId, 1, _bondSize, bondEscalationModule ); + _; } function test_revertIfNoEscalationResult(uint256 _usersToSlash, uint256 _maxUsersToCheck, address _pledger) public { @@ -1576,15 +1518,7 @@ contract HorizonAccountingExtension_Unit_Slash is HorizonAccountingExtension_Uni address[] memory _users, uint256 _pledgesAgainstDispute, uint256 _bondSize - ) public { - // bound input parameters - _usersToSlash = bound(_usersToSlash, 1, type(uint16).max); - _maxUsersToCheck = bound(_maxUsersToCheck, 1, type(uint16).max); - _pledgesAgainstDispute = bound(_pledgesAgainstDispute, 1, type(uint64).max); - _bondSize = bound(_bondSize, 1, type(uint16).max); - - _setUpHappyPath(_users, _pledgesAgainstDispute, _bondSize); - + ) public happyPath(_usersToSlash, _maxUsersToCheck, _users, _pledgesAgainstDispute, _bondSize) { horizonAccountingExtension.setBondedTokensForTest(_cleanPledgers.at(0), 0); // Mock and expect the call to oracle checking the dispute status @@ -1620,15 +1554,7 @@ contract HorizonAccountingExtension_Unit_Slash is HorizonAccountingExtension_Uni address[] memory _users, uint256 _pledgesAgainstDispute, uint256 _bondSize - ) public { - // bound input parameters - _usersToSlash = bound(_usersToSlash, 1, type(uint16).max); - _maxUsersToCheck = bound(_maxUsersToCheck, 1, type(uint16).max); - _pledgesAgainstDispute = bound(_pledgesAgainstDispute, 1, type(uint64).max); - _bondSize = bound(_bondSize, 1, type(uint16).max); - - _setUpHappyPath(_users, _pledgesAgainstDispute, _bondSize); - + ) public happyPath(_usersToSlash, _maxUsersToCheck, _users, _pledgesAgainstDispute, _bondSize) { // Mock and expect the call to oracle checking the dispute status _mockAndExpect( address(oracle), @@ -1673,15 +1599,7 @@ contract HorizonAccountingExtension_Unit_Slash is HorizonAccountingExtension_Uni address[] memory _users, uint256 _pledgesForDispute, uint256 _bondSize - ) public { - // bound input parameters - _usersToSlash = bound(_usersToSlash, 1, type(uint16).max); - _maxUsersToCheck = bound(_maxUsersToCheck, 1, type(uint16).max); - _pledgesForDispute = bound(_pledgesForDispute, 1, type(uint64).max); - _bondSize = bound(_bondSize, 1, type(uint16).max); - - _setUpHappyPath(_users, _pledgesForDispute, _bondSize); - + ) public happyPath(_usersToSlash, _maxUsersToCheck, _users, _pledgesForDispute, _bondSize) { // Mock and expect the call to oracle checking the dispute status _mockAndExpect( address(oracle), @@ -1726,15 +1644,7 @@ contract HorizonAccountingExtension_Unit_Slash is HorizonAccountingExtension_Uni address[] memory _users, uint256 _pledgesForDispute, uint256 _bondSize - ) public { - // bound input parameters - _usersToSlash = bound(_usersToSlash, 1, type(uint16).max); - _maxUsersToCheck = bound(_maxUsersToCheck, 1, type(uint16).max); - _pledgesForDispute = bound(_pledgesForDispute, 1, type(uint64).max); - _bondSize = bound(_bondSize, 1, type(uint16).max); - - _setUpHappyPath(_users, _pledgesForDispute, _bondSize); - + ) public happyPath(_usersToSlash, _maxUsersToCheck, _users, _pledgesForDispute, _bondSize) { // Mock and expect the call to oracle checking the dispute status _mockAndExpect( address(oracle), diff --git a/test/utils/Helpers.sol b/test/utils/Helpers.sol index bf4b8e3..adbacca 100644 --- a/test/utils/Helpers.sol +++ b/test/utils/Helpers.sol @@ -2,7 +2,6 @@ pragma solidity ^0.8.19; import {IOracle} from '@defi-wonderland/prophet-core/solidity/interfaces/IOracle.sol'; -import {IAccessController} from '@defi-wonderland/prophet-core/solidity/interfaces/access/IAccessController.sol'; import 'forge-std/Test.sol'; @@ -13,7 +12,6 @@ contract Helpers is Test { // Mock objects IOracle.Request public mockRequest = IOracle.Request({ - accessModule: address(0), requestModule: address(0), responseModule: address(0), disputeModule: address(0), @@ -151,17 +149,4 @@ contract Helpers is Test { function _expectEmit(address _contract) internal { vm.expectEmit(true, true, true, true, _contract); } - - function _createAccessControl() internal returns (IAccessController.AccessControl memory _accessControl) { - (, address _msgSender,) = vm.readCallers(); - _accessControl = _createAccessControl(_msgSender); - } - - function _createAccessControl(address _user) - internal - pure - returns (IAccessController.AccessControl memory _accessControl) - { - _accessControl = IAccessController.AccessControl({user: _user, data: bytes('')}); - } } diff --git a/yarn.lock b/yarn.lock index 726adb5..84f1b7d 100644 --- a/yarn.lock +++ b/yarn.lock @@ -3,18 +3,27 @@ "@babel/code-frame@^7.0.0": - version "7.26.2" - resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.26.2.tgz#4b5fab97d33338eff916235055f0ebc21e573a85" - integrity sha512-RJlIHRueQgwWitWgF8OdFYGZX328Ax5BCemNGlqHfplnRT9ESi8JkFlvaVYbS+UubVY6dpv87Fs2u5M29iNFVQ== + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.24.7.tgz#882fd9e09e8ee324e496bd040401c6f046ef4465" + integrity sha512-BcYH1CVJBO9tvyIZ2jVeXgSIMvGZ2FDRvDdOIVQyuklNKSsx+eppDEBq/g47Ayw+RqNFE+URvOShmf+f/qwAlA== dependencies: - "@babel/helper-validator-identifier" "^7.25.9" - js-tokens "^4.0.0" + "@babel/highlight" "^7.24.7" picocolors "^1.0.0" -"@babel/helper-validator-identifier@^7.25.9": - version "7.25.9" - resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.25.9.tgz#24b64e2c3ec7cd3b3c547729b8d16871f22cbdc7" - integrity sha512-Ed61U6XJc3CVRfkERJWDz4dJwKe7iLmmJsbOGu9wSloNSFttHV0I8g6UAgb7qnK5ly5bGLPd4oXZlxCdANBOWQ== +"@babel/helper-validator-identifier@^7.24.7": + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.24.7.tgz#75b889cfaf9e35c2aaf42cf0d72c8e91719251db" + integrity sha512-rR+PBcQ1SMQDDyF6X0wxtG8QyLCgUB0eRAGguqRLfkCA87l7yAP7ehq8SNj96OOGTO8OBV70KhuFYcIkHXOg0w== + +"@babel/highlight@^7.24.7": + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.24.7.tgz#a05ab1df134b286558aae0ed41e6c5f731bf409d" + integrity sha512-EStJpq4OuY8xYfhGVXngigBJRWxftKX9ksiGDnmlY3o7B/V7KIAc9X4oiK87uPJSc/vs5L869bem5fhZa8caZw== + dependencies: + "@babel/helper-validator-identifier" "^7.24.7" + chalk "^2.4.2" + js-tokens "^4.0.0" + picocolors "^1.0.0" "@commitlint/cli@19.3.0": version "19.3.0" @@ -37,66 +46,66 @@ "@commitlint/types" "^19.0.3" conventional-changelog-conventionalcommits "^7.0.2" -"@commitlint/config-validator@^19.5.0": - version "19.5.0" - resolved "https://registry.yarnpkg.com/@commitlint/config-validator/-/config-validator-19.5.0.tgz#f0a4eda2109fc716ef01bb8831af9b02e3a1e568" - integrity sha512-CHtj92H5rdhKt17RmgALhfQt95VayrUo2tSqY9g2w+laAXyk7K/Ef6uPm9tn5qSIwSmrLjKaXK9eiNuxmQrDBw== +"@commitlint/config-validator@^19.0.3": + version "19.0.3" + resolved "https://registry.yarnpkg.com/@commitlint/config-validator/-/config-validator-19.0.3.tgz#052b181a30da6b4fc16dc5230f4589ac95e0bc81" + integrity sha512-2D3r4PKjoo59zBc2auodrSCaUnCSALCx54yveOFwwP/i2kfEAQrygwOleFWswLqK0UL/F9r07MFi5ev2ohyM4Q== dependencies: - "@commitlint/types" "^19.5.0" + "@commitlint/types" "^19.0.3" ajv "^8.11.0" -"@commitlint/ensure@^19.5.0": - version "19.5.0" - resolved "https://registry.yarnpkg.com/@commitlint/ensure/-/ensure-19.5.0.tgz#b087374a6a0a0140e5925a82901d234885d9f6dd" - integrity sha512-Kv0pYZeMrdg48bHFEU5KKcccRfKmISSm9MvgIgkpI6m+ohFTB55qZlBW6eYqh/XDfRuIO0x4zSmvBjmOwWTwkg== +"@commitlint/ensure@^19.0.3": + version "19.0.3" + resolved "https://registry.yarnpkg.com/@commitlint/ensure/-/ensure-19.0.3.tgz#d172b1b72ca88cbd317ea1ee79f3a03dbaccc76e" + integrity sha512-SZEpa/VvBLoT+EFZVb91YWbmaZ/9rPH3ESrINOl0HD2kMYsjvl0tF7nMHh0EpTcv4+gTtZBAe1y/SS6/OhfZzQ== dependencies: - "@commitlint/types" "^19.5.0" + "@commitlint/types" "^19.0.3" lodash.camelcase "^4.3.0" lodash.kebabcase "^4.1.1" lodash.snakecase "^4.1.1" lodash.startcase "^4.4.0" lodash.upperfirst "^4.3.1" -"@commitlint/execute-rule@^19.5.0": - version "19.5.0" - resolved "https://registry.yarnpkg.com/@commitlint/execute-rule/-/execute-rule-19.5.0.tgz#c13da8c03ea0379f30856111e27d57518e25b8a2" - integrity sha512-aqyGgytXhl2ejlk+/rfgtwpPexYyri4t8/n4ku6rRJoRhGZpLFMqrZ+YaubeGysCP6oz4mMA34YSTaSOKEeNrg== +"@commitlint/execute-rule@^19.0.0": + version "19.0.0" + resolved "https://registry.yarnpkg.com/@commitlint/execute-rule/-/execute-rule-19.0.0.tgz#928fb239ae8deec82a6e3b05ec9cfe20afa83856" + integrity sha512-mtsdpY1qyWgAO/iOK0L6gSGeR7GFcdW7tIjcNFxcWkfLDF5qVbPHKuGATFqRMsxcO8OUKNj0+3WOHB7EHm4Jdw== "@commitlint/format@^19.3.0": - version "19.5.0" - resolved "https://registry.yarnpkg.com/@commitlint/format/-/format-19.5.0.tgz#d879db2d97d70ae622397839fb8603d56e85a250" - integrity sha512-yNy088miE52stCI3dhG/vvxFo9e4jFkU1Mj3xECfzp/bIS/JUay4491huAlVcffOoMK1cd296q0W92NlER6r3A== + version "19.3.0" + resolved "https://registry.yarnpkg.com/@commitlint/format/-/format-19.3.0.tgz#48dd9e6930d41eb0ca19f36159ee940c5b25d857" + integrity sha512-luguk5/aF68HiF4H23ACAfk8qS8AHxl4LLN5oxPc24H+2+JRPsNr1OS3Gaea0CrH7PKhArBMKBz5RX9sA5NtTg== dependencies: - "@commitlint/types" "^19.5.0" + "@commitlint/types" "^19.0.3" chalk "^5.3.0" -"@commitlint/is-ignored@^19.5.0": - version "19.5.0" - resolved "https://registry.yarnpkg.com/@commitlint/is-ignored/-/is-ignored-19.5.0.tgz#f8b7f365887acc1e3bdb31b17117bb435585dddf" - integrity sha512-0XQ7Llsf9iL/ANtwyZ6G0NGp5Y3EQ8eDQSxv/SRcfJ0awlBY4tHFAvwWbw66FVUaWICH7iE5en+FD9TQsokZ5w== +"@commitlint/is-ignored@^19.2.2": + version "19.2.2" + resolved "https://registry.yarnpkg.com/@commitlint/is-ignored/-/is-ignored-19.2.2.tgz#503ddcf908ac6b2bc4586a49cb53893a1856f5b2" + integrity sha512-eNX54oXMVxncORywF4ZPFtJoBm3Tvp111tg1xf4zWXGfhBPKpfKG6R+G3G4v5CPlRROXpAOpQ3HMhA9n1Tck1g== dependencies: - "@commitlint/types" "^19.5.0" + "@commitlint/types" "^19.0.3" semver "^7.6.0" "@commitlint/lint@^19.2.2": - version "19.5.0" - resolved "https://registry.yarnpkg.com/@commitlint/lint/-/lint-19.5.0.tgz#f4e162e7857a1c0694b20b92527704897558ff70" - integrity sha512-cAAQwJcRtiBxQWO0eprrAbOurtJz8U6MgYqLz+p9kLElirzSCc0vGMcyCaA1O7AqBuxo11l1XsY3FhOFowLAAg== + version "19.2.2" + resolved "https://registry.yarnpkg.com/@commitlint/lint/-/lint-19.2.2.tgz#57f69e24bd832a7dcce8ebf82d11e3bf03ccc2a9" + integrity sha512-xrzMmz4JqwGyKQKTpFzlN0dx0TAiT7Ran1fqEBgEmEj+PU98crOFtysJgY+QdeSagx6EDRigQIXJVnfrI0ratA== dependencies: - "@commitlint/is-ignored" "^19.5.0" - "@commitlint/parse" "^19.5.0" - "@commitlint/rules" "^19.5.0" - "@commitlint/types" "^19.5.0" + "@commitlint/is-ignored" "^19.2.2" + "@commitlint/parse" "^19.0.3" + "@commitlint/rules" "^19.0.3" + "@commitlint/types" "^19.0.3" "@commitlint/load@^19.2.0": - version "19.5.0" - resolved "https://registry.yarnpkg.com/@commitlint/load/-/load-19.5.0.tgz#67f90a294894d1f99b930b6152bed2df44a81794" - integrity sha512-INOUhkL/qaKqwcTUvCE8iIUf5XHsEPCLY9looJ/ipzi7jtGhgmtH7OOFiNvwYgH7mA8osUWOUDV8t4E2HAi4xA== - dependencies: - "@commitlint/config-validator" "^19.5.0" - "@commitlint/execute-rule" "^19.5.0" - "@commitlint/resolve-extends" "^19.5.0" - "@commitlint/types" "^19.5.0" + version "19.4.0" + resolved "https://registry.yarnpkg.com/@commitlint/load/-/load-19.4.0.tgz#7df034e226e300fd577d3f63a72d790d5c821f53" + integrity sha512-I4lCWaEZYQJ1y+Y+gdvbGAx9pYPavqZAZ3/7/8BpWh+QjscAn8AjsUpLV2PycBsEx7gupq5gM4BViV9xwTIJuw== + dependencies: + "@commitlint/config-validator" "^19.0.3" + "@commitlint/execute-rule" "^19.0.0" + "@commitlint/resolve-extends" "^19.1.0" + "@commitlint/types" "^19.0.3" chalk "^5.3.0" cosmiconfig "^9.0.0" cosmiconfig-typescript-loader "^5.0.0" @@ -104,69 +113,70 @@ lodash.merge "^4.6.2" lodash.uniq "^4.5.0" -"@commitlint/message@^19.5.0": - version "19.5.0" - resolved "https://registry.yarnpkg.com/@commitlint/message/-/message-19.5.0.tgz#c062d9a1d2b3302c3a8cac25d6d1125ea9c019b2" - integrity sha512-R7AM4YnbxN1Joj1tMfCyBryOC5aNJBdxadTZkuqtWi3Xj0kMdutq16XQwuoGbIzL2Pk62TALV1fZDCv36+JhTQ== +"@commitlint/message@^19.0.0": + version "19.0.0" + resolved "https://registry.yarnpkg.com/@commitlint/message/-/message-19.0.0.tgz#f789dd1b7a1f9c784578e0111f46cc3fecf5a531" + integrity sha512-c9czf6lU+9oF9gVVa2lmKaOARJvt4soRsVmbR7Njwp9FpbBgste5i7l/2l5o8MmbwGh4yE1snfnsy2qyA2r/Fw== -"@commitlint/parse@^19.5.0": - version "19.5.0" - resolved "https://registry.yarnpkg.com/@commitlint/parse/-/parse-19.5.0.tgz#b450dad9b5a95ac5ba472d6d0fdab822dce946fc" - integrity sha512-cZ/IxfAlfWYhAQV0TwcbdR1Oc0/r0Ik1GEessDJ3Lbuma/MRO8FRQX76eurcXtmhJC//rj52ZSZuXUg0oIX0Fw== +"@commitlint/parse@^19.0.3": + version "19.0.3" + resolved "https://registry.yarnpkg.com/@commitlint/parse/-/parse-19.0.3.tgz#a2d09876d458e17ad0e1695b04f41af8b50a41c2" + integrity sha512-Il+tNyOb8VDxN3P6XoBBwWJtKKGzHlitEuXA5BP6ir/3loWlsSqDr5aecl6hZcC/spjq4pHqNh0qPlfeWu38QA== dependencies: - "@commitlint/types" "^19.5.0" + "@commitlint/types" "^19.0.3" conventional-changelog-angular "^7.0.0" conventional-commits-parser "^5.0.0" "@commitlint/read@^19.2.1": - version "19.5.0" - resolved "https://registry.yarnpkg.com/@commitlint/read/-/read-19.5.0.tgz#601f9f1afe69852b0f28aa81cd455b40979fad6b" - integrity sha512-TjS3HLPsLsxFPQj6jou8/CZFAmOP2y+6V4PGYt3ihbQKTY1Jnv0QG28WRKl/d1ha6zLODPZqsxLEov52dhR9BQ== + version "19.4.0" + resolved "https://registry.yarnpkg.com/@commitlint/read/-/read-19.4.0.tgz#3866b1f9a272ef6a388986efa349d24228fc8b00" + integrity sha512-r95jLOEZzKDakXtnQub+zR3xjdnrl2XzerPwm7ch1/cc5JGq04tyaNpa6ty0CRCWdVrk4CZHhqHozb8yZwy2+g== dependencies: - "@commitlint/top-level" "^19.5.0" - "@commitlint/types" "^19.5.0" + "@commitlint/top-level" "^19.0.0" + "@commitlint/types" "^19.0.3" + execa "^8.0.1" git-raw-commits "^4.0.0" minimist "^1.2.8" - tinyexec "^0.3.0" -"@commitlint/resolve-extends@^19.5.0": - version "19.5.0" - resolved "https://registry.yarnpkg.com/@commitlint/resolve-extends/-/resolve-extends-19.5.0.tgz#f3ec33e12d10df90cae0bfad8e593431fb61b18e" - integrity sha512-CU/GscZhCUsJwcKTJS9Ndh3AKGZTNFIOoQB2n8CmFnizE0VnEuJoum+COW+C1lNABEeqk6ssfc1Kkalm4bDklA== +"@commitlint/resolve-extends@^19.1.0": + version "19.1.0" + resolved "https://registry.yarnpkg.com/@commitlint/resolve-extends/-/resolve-extends-19.1.0.tgz#fa5b8f921e9c8d76f53624c35bf25b9676bd73fa" + integrity sha512-z2riI+8G3CET5CPgXJPlzftH+RiWYLMYv4C9tSLdLXdr6pBNimSKukYP9MS27ejmscqCTVA4almdLh0ODD2KYg== dependencies: - "@commitlint/config-validator" "^19.5.0" - "@commitlint/types" "^19.5.0" + "@commitlint/config-validator" "^19.0.3" + "@commitlint/types" "^19.0.3" global-directory "^4.0.1" import-meta-resolve "^4.0.0" lodash.mergewith "^4.6.2" resolve-from "^5.0.0" -"@commitlint/rules@^19.5.0": - version "19.5.0" - resolved "https://registry.yarnpkg.com/@commitlint/rules/-/rules-19.5.0.tgz#2a72ab506d49d7f33eda56f0ae072a3479429e74" - integrity sha512-hDW5TPyf/h1/EufSHEKSp6Hs+YVsDMHazfJ2azIk9tHPXS6UqSz1dIRs1gpqS3eMXgtkT7JH6TW4IShdqOwhAw== +"@commitlint/rules@^19.0.3": + version "19.0.3" + resolved "https://registry.yarnpkg.com/@commitlint/rules/-/rules-19.0.3.tgz#de647a9055847cae4f3ae32b4798096b604584f3" + integrity sha512-TspKb9VB6svklxNCKKwxhELn7qhtY1rFF8ls58DcFd0F97XoG07xugPjjbVnLqmMkRjZDbDIwBKt9bddOfLaPw== dependencies: - "@commitlint/ensure" "^19.5.0" - "@commitlint/message" "^19.5.0" - "@commitlint/to-lines" "^19.5.0" - "@commitlint/types" "^19.5.0" + "@commitlint/ensure" "^19.0.3" + "@commitlint/message" "^19.0.0" + "@commitlint/to-lines" "^19.0.0" + "@commitlint/types" "^19.0.3" + execa "^8.0.1" -"@commitlint/to-lines@^19.5.0": - version "19.5.0" - resolved "https://registry.yarnpkg.com/@commitlint/to-lines/-/to-lines-19.5.0.tgz#e4b7f34f09064568c96a74de4f1fc9f466c4d472" - integrity sha512-R772oj3NHPkodOSRZ9bBVNq224DOxQtNef5Pl8l2M8ZnkkzQfeSTr4uxawV2Sd3ui05dUVzvLNnzenDBO1KBeQ== +"@commitlint/to-lines@^19.0.0": + version "19.0.0" + resolved "https://registry.yarnpkg.com/@commitlint/to-lines/-/to-lines-19.0.0.tgz#aa6618eb371bafbc0cd3b48f0db565c4a40462c6" + integrity sha512-vkxWo+VQU5wFhiP9Ub9Sre0FYe019JxFikrALVoD5UGa8/t3yOJEpEhxC5xKiENKKhUkTpEItMTRAjHw2SCpZw== -"@commitlint/top-level@^19.5.0": - version "19.5.0" - resolved "https://registry.yarnpkg.com/@commitlint/top-level/-/top-level-19.5.0.tgz#0017ffe39b5ba3611a1debd62efe28803601a14f" - integrity sha512-IP1YLmGAk0yWrImPRRc578I3dDUI5A2UBJx9FbSOjxe9sTlzFiwVJ+zeMLgAtHMtGZsC8LUnzmW1qRemkFU4ng== +"@commitlint/top-level@^19.0.0": + version "19.0.0" + resolved "https://registry.yarnpkg.com/@commitlint/top-level/-/top-level-19.0.0.tgz#9c44d7cec533bb9598bfae9658737e2d6a903605" + integrity sha512-KKjShd6u1aMGNkCkaX4aG1jOGdn7f8ZI8TR1VEuNqUOjWTOdcDSsmglinglJ18JTjuBX5I1PtjrhQCRcixRVFQ== dependencies: find-up "^7.0.0" -"@commitlint/types@^19.0.3", "@commitlint/types@^19.5.0": - version "19.5.0" - resolved "https://registry.yarnpkg.com/@commitlint/types/-/types-19.5.0.tgz#c5084d1231d4dd50e40bdb656ee7601f691400b3" - integrity sha512-DSHae2obMSMkAtTBSOulg5X7/z+rGLxcXQIkg3OmWvY6wifojge5uVMydfhUvs7yQj+V7jNmRZ2Xzl8GJyqRgg== +"@commitlint/types@^19.0.3": + version "19.0.3" + resolved "https://registry.yarnpkg.com/@commitlint/types/-/types-19.0.3.tgz#feff4ecac2b5c359f2a57f9ab094b2ac80ef0266" + integrity sha512-tpyc+7i6bPG9mvaBbtKUeghfyZSDgWquIDfMgqYtTbmZ9Y9VzEm2je9EYcQ0aoz5o7NvGS+rcDec93yO08MHYA== dependencies: "@types/conventional-commits-parser" "^5.0.0" chalk "^5.3.0" @@ -180,22 +190,22 @@ solc-typed-ast "18.1.2" yargs "17.7.2" -"@defi-wonderland/prophet-core@0.0.0-819e5fe9": - version "0.0.0-819e5fe9" - resolved "https://registry.yarnpkg.com/@defi-wonderland/prophet-core/-/prophet-core-0.0.0-819e5fe9.tgz#bd165f5cec99ae23bfd8c7f2f2cc3fa018abc676" - integrity sha512-K+zc0woc2mbZ6kqtO7ix/TJp7Y4YuCyz+l1XJL0VumsQkw7nJ5pLXOaV8Ss4wOyxu+P6vQ4aJpfY2yMHjQ+Hsw== +"@defi-wonderland/prophet-core@0.0.0-4d28a0ec": + version "0.0.0-4d28a0ec" + resolved "https://registry.yarnpkg.com/@defi-wonderland/prophet-core/-/prophet-core-0.0.0-4d28a0ec.tgz#228896bb7b9b239c6c25b4deefa8b204d87d7118" + integrity sha512-BF+gSf+nZWNByr9V2/eUvdt7zHlScP0hF47L+grlllMHRadm8T7Eboo6jpIHOgMpLkfNAEVsOyg2vfvgABzACQ== -"@defi-wonderland/prophet-core@0.0.0-c80cc1e9": - version "0.0.0-c80cc1e9" - resolved "https://registry.yarnpkg.com/@defi-wonderland/prophet-core/-/prophet-core-0.0.0-c80cc1e9.tgz#3586b8bcde26bd670384155f187888745af1e000" - integrity sha512-CU/IRGdOPoHDBiNv3XdimdJqx8Tl/4o3JrkYBKVfx+VW58k9e5i9XquAk+NqDiGZx18TMFZwskkt6fA5cMAQHQ== +"@defi-wonderland/prophet-core@0.0.0-96d1084b": + version "0.0.0-96d1084b" + resolved "https://registry.yarnpkg.com/@defi-wonderland/prophet-core/-/prophet-core-0.0.0-96d1084b.tgz#7145443dae3bbbac87d5803b8561e4b2d356e28e" + integrity sha512-nmcTgUueEpZOJMnC9B12+x6pYswWZHnpqbob4dXneR68WHgmNIJqTEEd2uuiXsUcJw4V7LTxkIuvaR/4kNCqhg== -"@defi-wonderland/prophet-modules@0.0.0-022dfec8": - version "0.0.0-022dfec8" - resolved "https://registry.yarnpkg.com/@defi-wonderland/prophet-modules/-/prophet-modules-0.0.0-022dfec8.tgz#eade840c8b66689912f7effe1854add6c59113b8" - integrity sha512-TAsvkfkCyrk94jJ8YcV3HQtXX0jqiu/ufTq79PyUIpYWxTP09b//H4QPs5iE3xKcawSN2wUbmscNzJsH4/t/kw== +"@defi-wonderland/prophet-modules@0.0.0-b72dcda6": + version "0.0.0-b72dcda6" + resolved "https://registry.yarnpkg.com/@defi-wonderland/prophet-modules/-/prophet-modules-0.0.0-b72dcda6.tgz#37c77f72c68b5d4d1019460e665446f76206d04f" + integrity sha512-tpBmXL85F9ml4qN1LnB5SGKPJRg5VgrAYezo+yGJTybJyqiA6o9S8o1GU8m4j3h6uw0KAsPATRTwrxmvGiYjjg== dependencies: - "@defi-wonderland/prophet-core" "0.0.0-c80cc1e9" + "@defi-wonderland/prophet-core" "0.0.0-4d28a0ec" "@openzeppelin/contracts" "4.9.5" solmate "https://github.com/transmissions11/solmate.git#bfc9c25865a274a7827fea5abf6e4fb64fc64e6c" @@ -238,9 +248,9 @@ integrity sha512-ZK+W5mVhRppff9BE6YdR8CC52C8zAvsVAiWhEtQ5+oNxFE6h1WdeWo+FJSF8KKvtxxVYZ7MTP/5KoVpAU3aSWg== "@scure/base@~1.1.6": - version "1.1.9" - resolved "https://registry.yarnpkg.com/@scure/base/-/base-1.1.9.tgz#e5e142fbbfe251091f9c5f1dd4c834ac04c3dbd1" - integrity sha512-8YKhl8GHiNI/pU2VMaofa2Tor7PJRAjwQLBBuilkJ9L5+13yVbC7JO/wS7piioAvPSwR3JKM1IJ/u4xQzbcXKg== + version "1.1.7" + resolved "https://registry.yarnpkg.com/@scure/base/-/base-1.1.7.tgz#fe973311a5c6267846aa131bc72e96c5d40d2b30" + integrity sha512-PPNYBslrLNNUQ/Yad37MHYsNQtK67EhWb6WtSvNLLPo7SdVZgkUjD6Dg+5On7zNwmskf8OX7I7Nx5oN+MIWE0g== "@scure/bip32@1.4.0": version "1.4.0" @@ -274,11 +284,11 @@ "@types/node" "*" "@types/node@*": - version "22.9.0" - resolved "https://registry.yarnpkg.com/@types/node/-/node-22.9.0.tgz#b7f16e5c3384788542c72dc3d561a7ceae2c0365" - integrity sha512-vuyHg81vvWA1Z1ELfvLko2c8f34gyA0zaic0+Rllc5lbCnbSyuvb2Oxpm6TAUAC/2xZN3QGqxBNggD1nNR2AfQ== + version "22.1.0" + resolved "https://registry.yarnpkg.com/@types/node/-/node-22.1.0.tgz#6d6adc648b5e03f0e83c78dc788c2b037d0ad94b" + integrity sha512-AOmuRF0R2/5j1knA3c6G3HOk523Ga+l+ZXltX8SF1+5oqcXijjfTd8fY3XRZqSihEu9XhtQnKYLmkFaoxgsJHw== dependencies: - undici-types "~6.19.8" + undici-types "~6.13.0" JSONStream@^1.3.5: version "1.3.5" @@ -326,9 +336,16 @@ ansi-regex@^5.0.1: integrity sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ== ansi-regex@^6.0.1: - version "6.1.0" - resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-6.1.0.tgz#95ec409c69619d6cb1b8b34f14b660ef28ebd654" - integrity sha512-7HSX4QQb4CspciLpVFwyRe79O3xsIZDDLER21kERQ71oaPodF8jL725AgJMFAYbooIqolJoRLuM81SpeUkpkvA== + version "6.0.1" + resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-6.0.1.tgz#3183e38fae9a65d7cb5e53945cd5897d0260a06a" + integrity sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA== + +ansi-styles@^3.2.1: + version "3.2.1" + resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.1.tgz#41fbb20243e50b12be0f04b8dedbf07520ce841d" + integrity sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA== + dependencies: + color-convert "^1.9.0" ansi-styles@^4.0.0, ansi-styles@^4.1.0: version "4.3.0" @@ -385,9 +402,9 @@ available-typed-arrays@^1.0.7: possible-typed-array-names "^1.0.0" axios@^1.6.7: - version "1.7.7" - resolved "https://registry.yarnpkg.com/axios/-/axios-1.7.7.tgz#2f554296f9892a72ac8d8e4c5b79c14a91d0a47f" - integrity sha512-S4kL7XrjgBmvdGut0sN3yJxqYzrDOnivkBiN0OFs6hLiUam3UPvswUo0kqGyhqUZGEOytHyumEdXsAkgCOUf3Q== + version "1.7.3" + resolved "https://registry.yarnpkg.com/axios/-/axios-1.7.3.tgz#a1125f2faf702bc8e8f2104ec3a76fab40257d85" + integrity sha512-Ar7ND9pU99eJ9GpoGQKhKf58GpUOgnzuaB7ueNQ5BMi0p+LZ5oaEnfF999fAArcTIBwXTCHAmGcHOZJaWPq9Nw== dependencies: follow-redirects "^1.15.6" form-data "^4.0.0" @@ -428,6 +445,15 @@ callsites@^3.0.0: resolved "https://registry.yarnpkg.com/callsites/-/callsites-3.1.0.tgz#b3630abd8943432f54b3f0519238e33cd7df2f73" integrity sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ== +chalk@^2.4.2: + version "2.4.2" + resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424" + integrity sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ== + dependencies: + ansi-styles "^3.2.1" + escape-string-regexp "^1.0.5" + supports-color "^5.3.0" + chalk@^4.1.2: version "4.1.2" resolved "https://registry.yarnpkg.com/chalk/-/chalk-4.1.2.tgz#aac4e2b7734a740867aeb16bf02aad556a1e7a01" @@ -465,6 +491,13 @@ cliui@^8.0.1: strip-ansi "^6.0.1" wrap-ansi "^7.0.0" +color-convert@^1.9.0: + version "1.9.3" + resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.3.tgz#bb71850690e1f136567de629d2d5471deda4c1e8" + integrity sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg== + dependencies: + color-name "1.1.3" + color-convert@^2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-2.0.1.tgz#72d3a68d598c9bdb3af2ad1e84f21d896abd4de3" @@ -472,6 +505,11 @@ color-convert@^2.0.1: dependencies: color-name "~1.1.4" +color-name@1.1.3: + version "1.1.3" + resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.3.tgz#a7d0558bd89c42f795dd42328f740831ca53bc25" + integrity sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw== + color-name@~1.1.4: version "1.1.4" resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.4.tgz#c2a09a87acbde69543de6f63fa3995c826c536a2" @@ -542,11 +580,11 @@ conventional-commits-parser@^5.0.0: split2 "^4.0.0" cosmiconfig-typescript-loader@^5.0.0: - version "5.1.0" - resolved "https://registry.yarnpkg.com/cosmiconfig-typescript-loader/-/cosmiconfig-typescript-loader-5.1.0.tgz#d8d02bff04e63faa2dc794d618168bd764c704be" - integrity sha512-7PtBB+6FdsOvZyJtlF3hEPpACq7RQX6BVGsgC7/lfVXnKMvNCu/XY3ykreqG5w/rBNdu2z8LCIKoF3kpHHdHlA== + version "5.0.0" + resolved "https://registry.yarnpkg.com/cosmiconfig-typescript-loader/-/cosmiconfig-typescript-loader-5.0.0.tgz#0d3becfe022a871f7275ceb2397d692e06045dc8" + integrity sha512-+8cK7jRAReYkMwMiG+bxhcNKiHJDM6bR9FD/nGBXOWdMLuYawjF5cGrtLilJ+LGd3ZjCXnJjR5DkfWPoIVlqJA== dependencies: - jiti "^1.21.6" + jiti "^1.19.1" cosmiconfig@^8.0.0: version "8.3.6" @@ -569,9 +607,9 @@ cosmiconfig@^9.0.0: parse-json "^5.2.0" cross-spawn@^7.0.3: - version "7.0.6" - resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-7.0.6.tgz#8a58fe78f00dcd70c370451759dfbfaf03e8ee9f" - integrity sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA== + version "7.0.3" + resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-7.0.3.tgz#f73a85b9d5d41d045551c177e2882d4ac85728a6" + integrity sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w== dependencies: path-key "^3.1.0" shebang-command "^2.0.0" @@ -583,11 +621,11 @@ dargs@^8.0.0: integrity sha512-wAV9QHOsNbwnWdNW2FYvE1P56wtgSbM+3SZcdGiWQILwVjACCXDCI3Ai8QlCjMDB8YK5zySiXZYBiwGmNY3lnw== debug@~4.3.6: - version "4.3.7" - resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.7.tgz#87945b4151a011d76d95a198d7111c865c360a52" - integrity sha512-Er2nc/H7RrMXZBFCEim6TCmMk02Z8vLC2Rbi1KEBggpo0fS6l0S1nnapwmIi3yW/+GOJap1Krg4w0Hg80oCqgQ== + version "4.3.6" + resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.6.tgz#2ab2c38fbaffebf8aa95fdfe6d88438c7a13c52b" + integrity sha512-O/09Bd4Z1fBrU4VzkhFqVgpPzaGbw6Sm9FEkBT1A/YBXQFGuuSxa1dN2nxgxS34JmKXqYx8CZAwEVoJFImUXIg== dependencies: - ms "^2.1.3" + ms "2.1.2" decimal.js@^10.4.3: version "10.4.3" @@ -638,9 +676,9 @@ dot-prop@^5.1.0: is-obj "^2.0.0" emoji-regex@^10.3.0: - version "10.4.0" - resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-10.4.0.tgz#03553afea80b3975749cfcb36f776ca268e413d4" - integrity sha512-EC+0oUMY1Rqm4O6LLrgjtYDvcVYTy7chDnM4Q7030tP4Kwj3u/pR6gP9ygnp2CJMK5Gq+9Q2oqmrFJAz01DXjw== + version "10.3.0" + resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-10.3.0.tgz#76998b9268409eb3dae3de989254d456e70cfe23" + integrity sha512-QpLs9D9v9kArv4lfDEgg1X/gN5XLnf/A6l9cs8SPZLRZR3ZkY9+kwIQTxm+fsSej5UMYGE8fdoaZVIBlqG0XTw== emoji-regex@^8.0.0: version "8.0.0" @@ -677,9 +715,14 @@ es-errors@^1.3.0: integrity sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw== escalade@^3.1.1: - version "3.2.0" - resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.2.0.tgz#011a3f69856ba189dffa7dc8fcce99d2a87903e5" - integrity sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA== + version "3.1.2" + resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.1.2.tgz#54076e9ab29ea5bf3d8f1ed62acffbb88272df27" + integrity sha512-ErCHMCae19vR8vQGe50xIsVomy19rg6gFu3+r3jkEO46suLMWBksvVyoGgQV+jOfl84ZSOSlmv6Gxa89PmTGmA== + +escape-string-regexp@^1.0.5: + version "1.0.5" + resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" + integrity sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg== ethereum-cryptography@^2.0.0: version "2.2.1" @@ -745,9 +788,9 @@ fast-json-stable-stringify@^2.0.0: integrity sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw== fast-uri@^3.0.1: - version "3.0.3" - resolved "https://registry.yarnpkg.com/fast-uri/-/fast-uri-3.0.3.tgz#892a1c91802d5d7860de728f18608a0573142241" - integrity sha512-aLrHthzCjH5He4Z2H9YZ+v6Ujb9ocRuW6ZzkJQOrTxleEijANq4v1TsaPaVG1PZcuurEzrLcWRyYBYXD5cEiaw== + version "3.0.1" + resolved "https://registry.yarnpkg.com/fast-uri/-/fast-uri-3.0.1.tgz#cddd2eecfc83a71c1be2cc2ef2061331be8a7134" + integrity sha512-MWipKbbYiYI0UC7cl8m/i/IWTqfC8YXsqjzybjddLsFjStroQzsHXkc73JutMvBiXmOvapk+axIl79ig5t55Bw== fastq@^1.6.0: version "1.17.1" @@ -783,9 +826,9 @@ findup-sync@^5.0.0: resolve-dir "^1.0.1" follow-redirects@^1.12.1, follow-redirects@^1.15.6: - version "1.15.9" - resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.15.9.tgz#a604fa10e443bf98ca94228d9eebcc2e8a2c8ee1" - integrity sha512-gew4GsXizNgdoRyqmyfMHyAmXsZDk6mHkSxZFCzW9gwlbtOW44CDtYavM+y+72qD/Vq2l550kMF52DT8fOLJqQ== + version "1.15.6" + resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.15.6.tgz#7f815c0cda4249c74ff09e95ef97c23b5fd0399b" + integrity sha512-wWN62YITEaOpSK584EZXJafH1AGpO8RVgElfkuXbTOrPX4fIfOyEpW/CsiNd8JdYrAoOvafRTOEnvsO++qCqFA== for-each@^0.3.3: version "0.3.3" @@ -799,9 +842,9 @@ for-each@^0.3.3: resolved "https://codeload.github.com/foundry-rs/forge-std/tar.gz/978ac6fadb62f5f0b723c996f64be52eddba6801" form-data@^4.0.0: - version "4.0.1" - resolved "https://registry.yarnpkg.com/form-data/-/form-data-4.0.1.tgz#ba1076daaaa5bfd7e99c1a6cb02aa0a5cff90d48" - integrity sha512-tzN8e4TX8+kkxGPK8D5u0FNmjPUjw3lwC9lSLxxoB/+GtsJG91CO8bSWy73APlgAZzZbXEYZJuxjkHH2w+Ezhw== + version "4.0.0" + resolved "https://registry.yarnpkg.com/form-data/-/form-data-4.0.0.tgz#93919daeaf361ee529584b9b31664dc12c9fa452" + integrity sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww== dependencies: asynckit "^0.4.0" combined-stream "^1.0.8" @@ -832,9 +875,9 @@ get-caller-file@^2.0.5: integrity sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg== get-east-asian-width@^1.0.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/get-east-asian-width/-/get-east-asian-width-1.3.0.tgz#21b4071ee58ed04ee0db653371b55b4299875389" - integrity sha512-vpeMIQKxczTD/0s2CdEWHcb0eeJe6TFjxb+J5xgX7hScxqrGuyjmv4c1D4A/gelKfyox0gJJwIHF+fLjeaM8kQ== + version "1.2.0" + resolved "https://registry.yarnpkg.com/get-east-asian-width/-/get-east-asian-width-1.2.0.tgz#5e6ebd9baee6fb8b7b6bd505221065f0cd91f64e" + integrity sha512-2nk+7SIVb14QrgXFHcm84tD4bKQz0RxPuMT8Ag5KPOq7J5fEmAg0UbXdTOSHqNuHSU28k55qnceesxXRZGzKWA== get-intrinsic@^1.1.3, get-intrinsic@^1.2.4: version "1.2.4" @@ -943,6 +986,11 @@ graceful-fs@^4.1.6, graceful-fs@^4.2.0: version "0.0.0" resolved "https://codeload.github.com/a16z/halmos-cheatcodes/tar.gz/c0d865508c0fee0a11b97732c5e90f9cad6b65a5" +has-flag@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-3.0.0.tgz#b5d454dc2199ae225699f3467e5a07f3b955bafd" + integrity sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw== + has-flag@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-4.0.0.tgz#944771fd9c81c81265c4d6941860da06bb59479b" @@ -992,14 +1040,14 @@ human-signals@^5.0.0: integrity sha512-AXcZb6vzzrFAUE61HnN4mpLqd/cSIwNQjtNWR0euPm6y0iqx3G4gOXaIDdtdDwZmhwe82LA6+zinmW4UBWVePQ== husky@>=8: - version "9.1.7" - resolved "https://registry.yarnpkg.com/husky/-/husky-9.1.7.tgz#d46a38035d101b46a70456a850ff4201344c0b2d" - integrity sha512-5gs5ytaNjBrh5Ow3zrvdUUY+0VxIuWVL4i9irt6friV+BqdCfmV11CQTWMiBYWHbXhco+J1kHfTOUkePhCDvMA== + version "9.1.4" + resolved "https://registry.yarnpkg.com/husky/-/husky-9.1.4.tgz#926fd19c18d345add5eab0a42b2b6d9a80259b34" + integrity sha512-bho94YyReb4JV7LYWRWxZ/xr6TtOTt8cMfmQ39MQYJ7f/YE268s3GdghGwi+y4zAeqewE5zYLvuhV0M0ijsDEA== ignore@^5.2.4: - version "5.3.2" - resolved "https://registry.yarnpkg.com/ignore/-/ignore-5.3.2.tgz#3cd40e729f3643fd87cb04e50bf0eb722bc596f5" - integrity sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g== + version "5.3.1" + resolved "https://registry.yarnpkg.com/ignore/-/ignore-5.3.1.tgz#5073e554cd42c5b33b394375f538b8593e34d4ef" + integrity sha512-5Fytz/IraMjqpwfd34ke28PTVMjZjJG2MPn5t7OE4eUCUNf8BAa7b5WUS9/Qvr6mwOQS7Mk6vdsMno5he+T8Xw== import-fresh@^3.3.0: version "3.3.0" @@ -1135,7 +1183,7 @@ isexe@^2.0.0: resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10" integrity sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw== -jiti@^1.21.6: +jiti@^1.19.1: version "1.21.6" resolved "https://registry.yarnpkg.com/jiti/-/jiti-1.21.6.tgz#6c7f7398dd4b3142767f9a168af2f317a428d268" integrity sha512-2yTgeWTWzMWkHu6Jp9NKgePDaYHbntiwvYuuJLbbN9vl7DC9DvXKOB2BC3ZZ92D3cvV/aflH0osDfwpHepQ53w== @@ -1202,9 +1250,9 @@ lines-and-columns@^1.1.6: integrity sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg== lint-staged@>=10: - version "15.2.10" - resolved "https://registry.yarnpkg.com/lint-staged/-/lint-staged-15.2.10.tgz#92ac222f802ba911897dcf23671da5bb80643cd2" - integrity sha512-5dY5t743e1byO19P9I4b3x8HJwalIznL5E1FWYnU6OWw33KxNBSLAc6Cy7F2PsFEO8FKnLwjwm5hx7aMF0jzZg== + version "15.2.8" + resolved "https://registry.yarnpkg.com/lint-staged/-/lint-staged-15.2.8.tgz#5e19eb7b4dbb922f56fafb4635b44ee3c92f7322" + integrity sha512-PUWFf2zQzsd9EFU+kM1d7UP+AZDbKFKuj+9JNVTBkhUFhbg4MAt6WfyMMwBfM4lYqd4D2Jwac5iuTu9rVj4zCQ== dependencies: chalk "~5.3.0" commander "~12.1.0" @@ -1212,15 +1260,15 @@ lint-staged@>=10: execa "~8.0.1" lilconfig "~3.1.2" listr2 "~8.2.4" - micromatch "~4.0.8" + micromatch "~4.0.7" pidtree "~0.6.0" string-argv "~0.3.2" yaml "~2.5.0" listr2@~8.2.4: - version "8.2.5" - resolved "https://registry.yarnpkg.com/listr2/-/listr2-8.2.5.tgz#5c9db996e1afeb05db0448196d3d5f64fec2593d" - integrity sha512-iyAZCeyD+c1gPyE9qpFu8af0Y+MRtmKOncdGoA2S5EY8iFq99dmmvkNnHiWo+pj0s7yH7l3KPIgee77tKpXPWQ== + version "8.2.4" + resolved "https://registry.yarnpkg.com/listr2/-/listr2-8.2.4.tgz#486b51cbdb41889108cb7e2c90eeb44519f5a77f" + integrity sha512-opevsywziHd3zHCVQGAj8zu+Z3yHNkkoYhWIGnq54RrCVwLz0MozotJEDnKsIBLvkfLGN6BLOyAeRrYI0pKA4g== dependencies: cli-truncate "^4.0.0" colorette "^2.0.20" @@ -1322,10 +1370,10 @@ merge2@^1.3.0, merge2@^1.4.1: resolved "https://registry.yarnpkg.com/merge2/-/merge2-1.4.1.tgz#4368892f885e907455a6fd7dc55c0c9d404990ae" integrity sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg== -micromatch@^4.0.4, micromatch@~4.0.8: - version "4.0.8" - resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-4.0.8.tgz#d66fa18f3a47076789320b9b1af32bd86d9fa202" - integrity sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA== +micromatch@^4.0.4, micromatch@~4.0.7: + version "4.0.7" + resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-4.0.7.tgz#33e8190d9fe474a9895525f5618eee136d46c2e5" + integrity sha512-LPP/3KorzCwBxfeUuZmaR6bG2kdeHSbe0P2tY3FLRU4vYrjYz5hI4QZwV0njUx3jeuKe67YukQ1LSPZBKDqO/Q== dependencies: braces "^3.0.3" picomatch "^2.3.1" @@ -1364,10 +1412,10 @@ minimist@^1.2.8: resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.8.tgz#c1a464e7693302e082a075cee0c057741ac4772c" integrity sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA== -ms@^2.1.3: - version "2.1.3" - resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.3.tgz#574c8138ce1d2b5861f0b44579dbadd60c6615b2" - integrity sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA== +ms@2.1.2: + version "2.1.2" + resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009" + integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w== npm-run-path@^5.1.0: version "5.3.0" @@ -1459,9 +1507,9 @@ path-type@^4.0.0: integrity sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw== picocolors@^1.0.0: - version "1.1.1" - resolved "https://registry.yarnpkg.com/picocolors/-/picocolors-1.1.1.tgz#3d321af3eab939b083c8f929a1d12cda81c26b6b" - integrity sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA== + version "1.0.1" + resolved "https://registry.yarnpkg.com/picocolors/-/picocolors-1.0.1.tgz#a8ad579b571952f0e5d25892de5445bcfe25aaa1" + integrity sha512-anP1Z8qwhkbmu7MFP5iTt+wQKXgwzf7zTyGlcdzabySa9vd0Xt392U0rVmz9poOaBj0uHJKyyo9/upk0HrEQew== picomatch@^2.3.1: version "2.3.1" @@ -1759,6 +1807,13 @@ strip-final-newline@^3.0.0: resolved "https://registry.yarnpkg.com/strip-final-newline/-/strip-final-newline-3.0.0.tgz#52894c313fbff318835280aed60ff71ebf12b8fd" integrity sha512-dOESqjYr96iWYylGObzd39EuNTa5VJxyvVAEm5Jnh7KGo75V43Hk1odPQkNDyXNmUR6k+gEiDVXnjB8HJ3crXw== +supports-color@^5.3.0: + version "5.5.0" + resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-5.5.0.tgz#e2e69a44ac8772f78a1ec0b35b689df6530efc8f" + integrity sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow== + dependencies: + has-flag "^3.0.0" + supports-color@^7.1.0: version "7.2.0" resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-7.2.0.tgz#1b7dcdcb32b8138801b3e478ba6a51caa89648da" @@ -1792,11 +1847,6 @@ text-table@^0.2.0: resolved "https://registry.yarnpkg.com/through/-/through-2.3.8.tgz#0dd4c9ffaabc357960b1b724115d7e0e86a2e1f5" integrity sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg== -tinyexec@^0.3.0: - version "0.3.1" - resolved "https://registry.yarnpkg.com/tinyexec/-/tinyexec-0.3.1.tgz#0ab0daf93b43e2c211212396bdb836b468c97c98" - integrity sha512-WiCJLEECkO18gwqIp6+hJg0//p23HXp4S+gGtAKu3mI2F2/sXC4FvHvXvB0zJVVaTPhx1/tOwdbRsa1sOBIKqQ== - tmp@0.0.33: version "0.0.33" resolved "https://registry.yarnpkg.com/tmp/-/tmp-0.0.33.tgz#6d34335889768d21b2bcda0aa277ced3b1bfadf9" @@ -1811,10 +1861,10 @@ to-regex-range@^5.0.1: dependencies: is-number "^7.0.0" -undici-types@~6.19.8: - version "6.19.8" - resolved "https://registry.yarnpkg.com/undici-types/-/undici-types-6.19.8.tgz#35111c9d1437ab83a7cdc0abae2f26d88eda0a02" - integrity sha512-ve2KP6f/JnbPBFyobGHuerC9g1FYGn/F8n1LWTwNxCEzd6IfqTwUQcNXgEtmmQ6DlRrC1hrSrBnCZPokRrDHjw== +undici-types@~6.13.0: + version "6.13.0" + resolved "https://registry.yarnpkg.com/undici-types/-/undici-types-6.13.0.tgz#e3e79220ab8c81ed1496b5812471afd7cf075ea5" + integrity sha512-xtFJHudx8S2DSoujjMd1WeWvn7KKWFRESZTMeL1RptAYERu29D6jphMjjY+vn96jvN3kVPDNxU/E13VTaXj6jg== unicorn-magic@^0.1.0: version "0.1.0" @@ -1844,38 +1894,38 @@ util@^0.12.5: is-typed-array "^1.1.3" which-typed-array "^1.1.2" -web3-errors@^1.2.0, web3-errors@^1.3.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/web3-errors/-/web3-errors-1.3.0.tgz#504e4d3218899df108856940087a8022d6688d74" - integrity sha512-j5JkAKCtuVMbY3F5PYXBqg1vWrtF4jcyyMY1rlw8a4PV67AkqlepjGgpzWJZd56Mt+TvHy6DA1F/3Id8LatDSQ== +web3-errors@^1.2.0: + version "1.2.1" + resolved "https://registry.yarnpkg.com/web3-errors/-/web3-errors-1.2.1.tgz#2f31cb814bd262a45b65f7701f56a0167d697ec2" + integrity sha512-dIsi8SFC9TCAWpPmacXeVMk/F8tDNa1Bvg8/Cc2cvJo8LRSWd099szEyb+/SiMYcLlEbwftiT9Rpukz7ql4hBg== dependencies: web3-types "^1.7.0" web3-eth-abi@^4.2.0: - version "4.4.0" - resolved "https://registry.yarnpkg.com/web3-eth-abi/-/web3-eth-abi-4.4.0.tgz#30ded71d585b41d2f0f1f5d7c74faa2a4e70d240" - integrity sha512-RQzt9W93OgFBwOdNGcc9ulCyYt4zmRAMkKGbEdp3wcN4vmwTlRhh21+akj2ND4bg3C3RUiP4yprYgDEyN0/Fmg== + version "4.2.3" + resolved "https://registry.yarnpkg.com/web3-eth-abi/-/web3-eth-abi-4.2.3.tgz#9efad6a45d7d6e52bb1eba56cbe45a3a321443e3" + integrity sha512-rPVwTn0O1CzbtfXwEfIjUP0W5Y7u1OFjugwKpSqJzPQE6+REBg6OELjomTGZBu+GThxHnv0rp15SOxvqp+tyXA== dependencies: abitype "0.7.1" - web3-errors "^1.3.0" - web3-types "^1.9.0" - web3-utils "^4.3.2" + web3-errors "^1.2.0" + web3-types "^1.7.0" + web3-utils "^4.3.1" web3-validator "^2.0.6" -web3-types@^1.6.0, web3-types@^1.7.0, web3-types@^1.8.1, web3-types@^1.9.0: - version "1.9.0" - resolved "https://registry.yarnpkg.com/web3-types/-/web3-types-1.9.0.tgz#4cfd17d5d3485797df1d72de8f2f8d03b0d1ac61" - integrity sha512-I520KBPoXqEaM/ybj6xHD1E3gRb8/WdudLQaRBvJNQSSfHuPW9P2sD59mbhm6dsKtnje+T90dIxSyzVVFlEdlg== +web3-types@^1.6.0, web3-types@^1.7.0: + version "1.7.0" + resolved "https://registry.yarnpkg.com/web3-types/-/web3-types-1.7.0.tgz#9945fa644af96b20b1db18564aff9ab8db00df59" + integrity sha512-nhXxDJ7a5FesRw9UG5SZdP/C/3Q2EzHGnB39hkAV+YGXDMgwxBXFWebQLfEzZzuArfHnvC0sQqkIHNwSKcVjdA== -web3-utils@^4.3.2: - version "4.3.2" - resolved "https://registry.yarnpkg.com/web3-utils/-/web3-utils-4.3.2.tgz#a952428d677b635fd0c16044ae4c534807a39639" - integrity sha512-bEFpYEBMf6ER78Uvj2mdsCbaLGLK9kABOsa3TtXOEEhuaMy/RK0KlRkKoZ2vmf/p3hB8e1q5erknZ6Hy7AVp7A== +web3-utils@^4.3.1: + version "4.3.1" + resolved "https://registry.yarnpkg.com/web3-utils/-/web3-utils-4.3.1.tgz#3dcd75e3c683c26f0ba824bf27d7bc0a68b111de" + integrity sha512-kGwOk8FxOLJ9DQC68yqNQc7AzN+k9YDLaW+ZjlAXs3qORhf8zXk5SxWAAGLbLykMs3vTeB0FTb1Exut4JEYfFA== dependencies: ethereum-cryptography "^2.0.0" eventemitter3 "^5.0.1" - web3-errors "^1.3.0" - web3-types "^1.8.1" + web3-errors "^1.2.0" + web3-types "^1.7.0" web3-validator "^2.0.6" web3-validator@^2.0.6: @@ -1943,9 +1993,9 @@ y18n@^5.0.5: integrity sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA== yaml@~2.5.0: - version "2.5.1" - resolved "https://registry.yarnpkg.com/yaml/-/yaml-2.5.1.tgz#c9772aacf62cb7494a95b0c4f1fb065b563db130" - integrity sha512-bLQOjaX/ADgQ20isPJRvF0iRUHIxVhYvr53Of7wGcWlO2jvtUlH5m87DsmulFVxRpNLOnI4tB6p/oh8D7kpn9Q== + version "2.5.0" + resolved "https://registry.yarnpkg.com/yaml/-/yaml-2.5.0.tgz#c6165a721cf8000e91c36490a41d7be25176cf5d" + integrity sha512-2wWLbGbYDiSqqIKoPjar3MPgB94ErzCtrNE1FdqGuaO0pi2JGjmE8aW8TDZwzU7vuxcGRdL/4gPQwQ7hD5AMSw== yargs-parser@^21.1.1: version "21.1.1"