From f2a186d4c176c5b7eb812e5b763419682964d3f0 Mon Sep 17 00:00:00 2001 From: Rens Rooimans Date: Fri, 21 Aug 2026 11:12:32 +0200 Subject: [PATCH 1/9] use forge std from npm --- contracts/package.json | 3 ++- contracts/pnpm-lock.yaml | 9 +++++++++ contracts/remappings.txt | 2 +- 3 files changed, 12 insertions(+), 2 deletions(-) diff --git a/contracts/package.json b/contracts/package.json index f3e71233c7..7585c9584c 100644 --- a/contracts/package.json +++ b/contracts/package.json @@ -52,7 +52,8 @@ "hardhat": "^3.13.0", "solhint": "^6.2.4", "solhint-plugin-chainlink-solidity": "github:smartcontractkit/chainlink-solhint-rules#v1.2.1", - "tsx": "^4.23.12" + "tsx": "^4.23.12", + "forge-std": "github:foundry-rs/forge-std#v1.9.7" }, "dependencies": { "@arbitrum/nitro-contracts": "3.0.0", diff --git a/contracts/pnpm-lock.yaml b/contracts/pnpm-lock.yaml index dc039dce28..5e8f97302d 100644 --- a/contracts/pnpm-lock.yaml +++ b/contracts/pnpm-lock.yaml @@ -59,6 +59,9 @@ importers: '@changesets/get-github-info': specifier: ^1.0.0 version: 1.0.0 + forge-std: + specifier: github:foundry-rs/forge-std#v1.9.7 + version: https://codeload.github.com/foundry-rs/forge-std/tar.gz/77041d2ce690e692d6e03cc812b57d1ddaa4d505 hardhat: specifier: ^3.13.0 version: 3.13.0 @@ -846,6 +849,10 @@ packages: find-yarn-workspace-root@2.0.0: resolution: {integrity: sha512-1IMnbjt4KzsQfnhnzNd8wUEgXZ44IzZaZmnLYx7D5FZlaHt2gW20Cri8Q+E/t5tIj4+epTBub+2Zxu/vNILzqQ==} + forge-std@https://codeload.github.com/foundry-rs/forge-std/tar.gz/77041d2ce690e692d6e03cc812b57d1ddaa4d505: + resolution: {gitHosted: true, integrity: sha512-AGU8gagr4jpMjZH/XWQlHyX0RdsErn86kGy34EpQYo07olNUIzPlOvo+wVzoR1RqaI3HmXsrXNQJd2QQD5PtjQ==, tarball: https://codeload.github.com/foundry-rs/forge-std/tar.gz/77041d2ce690e692d6e03cc812b57d1ddaa4d505} + version: 1.9.7 + form-data-encoder@2.1.4: resolution: {integrity: sha512-yDYSgNMraqvnxiEXO4hi88+YZxaHC6QKzb5N84iRCTDeRO7ZALpir/lVmf/uXUhnwUr2O4HU8s/n6x+yNjQkHw==, tarball: https://registry.npmjs.org/form-data-encoder/-/form-data-encoder-2.1.4.tgz} engines: {node: '>= 14.17'} @@ -2491,6 +2498,8 @@ snapshots: dependencies: micromatch: 4.0.8 + forge-std@https://codeload.github.com/foundry-rs/forge-std/tar.gz/77041d2ce690e692d6e03cc812b57d1ddaa4d505: {} + form-data-encoder@2.1.4: {} fs-extra@7.0.1: diff --git a/contracts/remappings.txt b/contracts/remappings.txt index 21ce88eaeb..d837e8d6ab 100644 --- a/contracts/remappings.txt +++ b/contracts/remappings.txt @@ -1,4 +1,4 @@ -forge-std/=src/v0.8/vendor/forge-std/src/ +forge-std/=node_modules/forge-std/src/ @openzeppelin/contracts@4.8.3=node_modules/@openzeppelin/contracts-4.8.3 @openzeppelin/contracts@4.9.6=node_modules/@openzeppelin/contracts-4.9.6 From 9b2d67611bcb81cf6a8b239457f929f49836c177 Mon Sep 17 00:00:00 2001 From: Rens Rooimans Date: Fri, 21 Aug 2026 11:13:37 +0200 Subject: [PATCH 2/9] delete vendor version --- .../src/v0.8/vendor/forge-std/src/Base.sol | 42 - .../src/v0.8/vendor/forge-std/src/Script.sol | 28 - .../vendor/forge-std/src/StdAssertions.sol | 669 - .../v0.8/vendor/forge-std/src/StdChains.sol | 286 - .../v0.8/vendor/forge-std/src/StdCheats.sol | 829 - .../vendor/forge-std/src/StdConstants.sol | 30 - .../v0.8/vendor/forge-std/src/StdError.sol | 15 - .../vendor/forge-std/src/StdInvariant.sol | 122 - .../src/v0.8/vendor/forge-std/src/StdJson.sol | 283 - .../src/v0.8/vendor/forge-std/src/StdMath.sol | 43 - .../v0.8/vendor/forge-std/src/StdStorage.sol | 473 - .../v0.8/vendor/forge-std/src/StdStyle.sol | 333 - .../src/v0.8/vendor/forge-std/src/StdToml.sol | 283 - .../v0.8/vendor/forge-std/src/StdUtils.sol | 209 - .../src/v0.8/vendor/forge-std/src/Test.sol | 34 - .../src/v0.8/vendor/forge-std/src/Vm.sol | 2397 --- .../src/v0.8/vendor/forge-std/src/console.sol | 1560 -- .../v0.8/vendor/forge-std/src/console2.sol | 4 - .../forge-std/src/interfaces/IERC1155.sol | 105 - .../forge-std/src/interfaces/IERC165.sol | 12 - .../forge-std/src/interfaces/IERC20.sol | 43 - .../forge-std/src/interfaces/IERC4626.sol | 190 - .../forge-std/src/interfaces/IERC6909.sol | 72 - .../forge-std/src/interfaces/IERC721.sol | 164 - .../forge-std/src/interfaces/IERC7540.sol | 150 - .../forge-std/src/interfaces/IERC7575.sol | 241 - .../forge-std/src/interfaces/IMulticall3.sol | 73 - .../v0.8/vendor/forge-std/src/safeconsole.sol | 13937 ---------------- 28 files changed, 22627 deletions(-) delete mode 100644 contracts/src/v0.8/vendor/forge-std/src/Base.sol delete mode 100644 contracts/src/v0.8/vendor/forge-std/src/Script.sol delete mode 100644 contracts/src/v0.8/vendor/forge-std/src/StdAssertions.sol delete mode 100644 contracts/src/v0.8/vendor/forge-std/src/StdChains.sol delete mode 100644 contracts/src/v0.8/vendor/forge-std/src/StdCheats.sol delete mode 100644 contracts/src/v0.8/vendor/forge-std/src/StdConstants.sol delete mode 100644 contracts/src/v0.8/vendor/forge-std/src/StdError.sol delete mode 100644 contracts/src/v0.8/vendor/forge-std/src/StdInvariant.sol delete mode 100644 contracts/src/v0.8/vendor/forge-std/src/StdJson.sol delete mode 100644 contracts/src/v0.8/vendor/forge-std/src/StdMath.sol delete mode 100644 contracts/src/v0.8/vendor/forge-std/src/StdStorage.sol delete mode 100644 contracts/src/v0.8/vendor/forge-std/src/StdStyle.sol delete mode 100644 contracts/src/v0.8/vendor/forge-std/src/StdToml.sol delete mode 100644 contracts/src/v0.8/vendor/forge-std/src/StdUtils.sol delete mode 100644 contracts/src/v0.8/vendor/forge-std/src/Test.sol delete mode 100644 contracts/src/v0.8/vendor/forge-std/src/Vm.sol delete mode 100644 contracts/src/v0.8/vendor/forge-std/src/console.sol delete mode 100644 contracts/src/v0.8/vendor/forge-std/src/console2.sol delete mode 100644 contracts/src/v0.8/vendor/forge-std/src/interfaces/IERC1155.sol delete mode 100644 contracts/src/v0.8/vendor/forge-std/src/interfaces/IERC165.sol delete mode 100644 contracts/src/v0.8/vendor/forge-std/src/interfaces/IERC20.sol delete mode 100644 contracts/src/v0.8/vendor/forge-std/src/interfaces/IERC4626.sol delete mode 100644 contracts/src/v0.8/vendor/forge-std/src/interfaces/IERC6909.sol delete mode 100644 contracts/src/v0.8/vendor/forge-std/src/interfaces/IERC721.sol delete mode 100644 contracts/src/v0.8/vendor/forge-std/src/interfaces/IERC7540.sol delete mode 100644 contracts/src/v0.8/vendor/forge-std/src/interfaces/IERC7575.sol delete mode 100644 contracts/src/v0.8/vendor/forge-std/src/interfaces/IMulticall3.sol delete mode 100644 contracts/src/v0.8/vendor/forge-std/src/safeconsole.sol diff --git a/contracts/src/v0.8/vendor/forge-std/src/Base.sol b/contracts/src/v0.8/vendor/forge-std/src/Base.sol deleted file mode 100644 index 5b618c67cc..0000000000 --- a/contracts/src/v0.8/vendor/forge-std/src/Base.sol +++ /dev/null @@ -1,42 +0,0 @@ -// SPDX-License-Identifier: MIT -pragma solidity >=0.6.2 <0.9.0; - -import {StdStorage} from "./StdStorage.sol"; -import {Vm, VmSafe} from "./Vm.sol"; - -abstract contract CommonBase { - /// @dev Cheat code address. - /// Calculated as `address(uint160(uint256(keccak256("hevm cheat code"))))`. - address internal constant VM_ADDRESS = 0x7109709ECfa91a80626fF3989D68f67F5b1DD12D; - /// @dev console.sol and console2.sol work by executing a staticcall to this address. - /// Calculated as `address(uint160(uint88(bytes11("console.log"))))`. - address internal constant CONSOLE = 0x000000000000000000636F6e736F6c652e6c6f67; - /// @dev Used when deploying with create2. - /// Taken from https://github.com/Arachnid/deterministic-deployment-proxy. - address internal constant CREATE2_FACTORY = 0x4e59b44847b379578588920cA78FbF26c0B4956C; - /// @dev The default address for tx.origin and msg.sender. - /// Calculated as `address(uint160(uint256(keccak256("foundry default caller"))))`. - address internal constant DEFAULT_SENDER = 0x1804c8AB1F12E6bbf3894d4083f33e07309d1f38; - /// @dev The address of the first contract `CREATE`d by a running test contract. - /// When running tests, each test contract is `CREATE`d by `DEFAULT_SENDER` with nonce 1. - /// Calculated as `VM.computeCreateAddress(VM.computeCreateAddress(DEFAULT_SENDER, 1), 1)`. - address internal constant DEFAULT_TEST_CONTRACT = 0x5615dEB798BB3E4dFa0139dFa1b3D433Cc23b72f; - /// @dev Deterministic deployment address of the Multicall3 contract. - /// Taken from https://www.multicall3.com. - address internal constant MULTICALL3_ADDRESS = 0xcA11bde05977b3631167028862bE2a173976CA11; - /// @dev The order of the secp256k1 curve. - uint256 internal constant SECP256K1_ORDER = - 115792089237316195423570985008687907852837564279074904382605163141518161494337; - - uint256 internal constant UINT256_MAX = - 115792089237316195423570985008687907853269984665640564039457584007913129639935; - - Vm internal constant vm = Vm(VM_ADDRESS); - StdStorage internal stdstore; -} - -abstract contract TestBase is CommonBase {} - -abstract contract ScriptBase is CommonBase { - VmSafe internal constant vmSafe = VmSafe(VM_ADDRESS); -} diff --git a/contracts/src/v0.8/vendor/forge-std/src/Script.sol b/contracts/src/v0.8/vendor/forge-std/src/Script.sol deleted file mode 100644 index a2e2aa1cd0..0000000000 --- a/contracts/src/v0.8/vendor/forge-std/src/Script.sol +++ /dev/null @@ -1,28 +0,0 @@ -// SPDX-License-Identifier: MIT -pragma solidity >=0.6.2 <0.9.0; - -// 💬 ABOUT -// Forge Std's default Script. - -// 🧩 MODULES -import {console} from "./console.sol"; -import {console2} from "./console2.sol"; -import {safeconsole} from "./safeconsole.sol"; -import {StdChains} from "./StdChains.sol"; -import {StdCheatsSafe} from "./StdCheats.sol"; -import {StdConstants} from "./StdConstants.sol"; -import {stdJson} from "./StdJson.sol"; -import {stdMath} from "./StdMath.sol"; -import {StdStorage, stdStorageSafe} from "./StdStorage.sol"; -import {StdStyle} from "./StdStyle.sol"; -import {StdUtils} from "./StdUtils.sol"; -import {VmSafe} from "./Vm.sol"; - -// 📦 BOILERPLATE -import {ScriptBase} from "./Base.sol"; - -// ⭐️ SCRIPT -abstract contract Script is ScriptBase, StdChains, StdCheatsSafe, StdUtils { - // Note: IS_SCRIPT() must return true. - bool public IS_SCRIPT = true; -} diff --git a/contracts/src/v0.8/vendor/forge-std/src/StdAssertions.sol b/contracts/src/v0.8/vendor/forge-std/src/StdAssertions.sol deleted file mode 100644 index 857ecd5704..0000000000 --- a/contracts/src/v0.8/vendor/forge-std/src/StdAssertions.sol +++ /dev/null @@ -1,669 +0,0 @@ -// SPDX-License-Identifier: MIT -pragma solidity >=0.6.2 <0.9.0; -pragma experimental ABIEncoderV2; - -import {Vm} from "./Vm.sol"; - -abstract contract StdAssertions { - Vm private constant vm = Vm(address(uint160(uint256(keccak256("hevm cheat code"))))); - - event log(string); - event logs(bytes); - - event log_address(address); - event log_bytes32(bytes32); - event log_int(int256); - event log_uint(uint256); - event log_bytes(bytes); - event log_string(string); - - event log_named_address(string key, address val); - event log_named_bytes32(string key, bytes32 val); - event log_named_decimal_int(string key, int256 val, uint256 decimals); - event log_named_decimal_uint(string key, uint256 val, uint256 decimals); - event log_named_int(string key, int256 val); - event log_named_uint(string key, uint256 val); - event log_named_bytes(string key, bytes val); - event log_named_string(string key, string val); - - event log_array(uint256[] val); - event log_array(int256[] val); - event log_array(address[] val); - event log_named_array(string key, uint256[] val); - event log_named_array(string key, int256[] val); - event log_named_array(string key, address[] val); - - bool private _failed; - - function failed() public view returns (bool) { - if (_failed) { - return _failed; - } else { - return vm.load(address(vm), bytes32("failed")) != bytes32(0); - } - } - - function fail() internal virtual { - vm.store(address(vm), bytes32("failed"), bytes32(uint256(1))); - _failed = true; - } - - function assertTrue(bool data) internal pure virtual { - vm.assertTrue(data); - } - - function assertTrue(bool data, string memory err) internal pure virtual { - vm.assertTrue(data, err); - } - - function assertFalse(bool data) internal pure virtual { - vm.assertFalse(data); - } - - function assertFalse(bool data, string memory err) internal pure virtual { - vm.assertFalse(data, err); - } - - function assertEq(bool left, bool right) internal pure virtual { - vm.assertEq(left, right); - } - - function assertEq(bool left, bool right, string memory err) internal pure virtual { - vm.assertEq(left, right, err); - } - - function assertEq(uint256 left, uint256 right) internal pure virtual { - vm.assertEq(left, right); - } - - function assertEq(uint256 left, uint256 right, string memory err) internal pure virtual { - vm.assertEq(left, right, err); - } - - function assertEqDecimal(uint256 left, uint256 right, uint256 decimals) internal pure virtual { - vm.assertEqDecimal(left, right, decimals); - } - - function assertEqDecimal(uint256 left, uint256 right, uint256 decimals, string memory err) internal pure virtual { - vm.assertEqDecimal(left, right, decimals, err); - } - - function assertEq(int256 left, int256 right) internal pure virtual { - vm.assertEq(left, right); - } - - function assertEq(int256 left, int256 right, string memory err) internal pure virtual { - vm.assertEq(left, right, err); - } - - function assertEqDecimal(int256 left, int256 right, uint256 decimals) internal pure virtual { - vm.assertEqDecimal(left, right, decimals); - } - - function assertEqDecimal(int256 left, int256 right, uint256 decimals, string memory err) internal pure virtual { - vm.assertEqDecimal(left, right, decimals, err); - } - - function assertEq(address left, address right) internal pure virtual { - vm.assertEq(left, right); - } - - function assertEq(address left, address right, string memory err) internal pure virtual { - vm.assertEq(left, right, err); - } - - function assertEq(bytes32 left, bytes32 right) internal pure virtual { - vm.assertEq(left, right); - } - - function assertEq(bytes32 left, bytes32 right, string memory err) internal pure virtual { - vm.assertEq(left, right, err); - } - - function assertEq32(bytes32 left, bytes32 right) internal pure virtual { - assertEq(left, right); - } - - function assertEq32(bytes32 left, bytes32 right, string memory err) internal pure virtual { - assertEq(left, right, err); - } - - function assertEq(string memory left, string memory right) internal pure virtual { - vm.assertEq(left, right); - } - - function assertEq(string memory left, string memory right, string memory err) internal pure virtual { - vm.assertEq(left, right, err); - } - - function assertEq(bytes memory left, bytes memory right) internal pure virtual { - vm.assertEq(left, right); - } - - function assertEq(bytes memory left, bytes memory right, string memory err) internal pure virtual { - vm.assertEq(left, right, err); - } - - function assertEq(bool[] memory left, bool[] memory right) internal pure virtual { - vm.assertEq(left, right); - } - - function assertEq(bool[] memory left, bool[] memory right, string memory err) internal pure virtual { - vm.assertEq(left, right, err); - } - - function assertEq(uint256[] memory left, uint256[] memory right) internal pure virtual { - vm.assertEq(left, right); - } - - function assertEq(uint256[] memory left, uint256[] memory right, string memory err) internal pure virtual { - vm.assertEq(left, right, err); - } - - function assertEq(int256[] memory left, int256[] memory right) internal pure virtual { - vm.assertEq(left, right); - } - - function assertEq(int256[] memory left, int256[] memory right, string memory err) internal pure virtual { - vm.assertEq(left, right, err); - } - - function assertEq(address[] memory left, address[] memory right) internal pure virtual { - vm.assertEq(left, right); - } - - function assertEq(address[] memory left, address[] memory right, string memory err) internal pure virtual { - vm.assertEq(left, right, err); - } - - function assertEq(bytes32[] memory left, bytes32[] memory right) internal pure virtual { - vm.assertEq(left, right); - } - - function assertEq(bytes32[] memory left, bytes32[] memory right, string memory err) internal pure virtual { - vm.assertEq(left, right, err); - } - - function assertEq(string[] memory left, string[] memory right) internal pure virtual { - vm.assertEq(left, right); - } - - function assertEq(string[] memory left, string[] memory right, string memory err) internal pure virtual { - vm.assertEq(left, right, err); - } - - function assertEq(bytes[] memory left, bytes[] memory right) internal pure virtual { - vm.assertEq(left, right); - } - - function assertEq(bytes[] memory left, bytes[] memory right, string memory err) internal pure virtual { - vm.assertEq(left, right, err); - } - - // Legacy helper - function assertEqUint(uint256 left, uint256 right) internal pure virtual { - assertEq(left, right); - } - - function assertNotEq(bool left, bool right) internal pure virtual { - vm.assertNotEq(left, right); - } - - function assertNotEq(bool left, bool right, string memory err) internal pure virtual { - vm.assertNotEq(left, right, err); - } - - function assertNotEq(uint256 left, uint256 right) internal pure virtual { - vm.assertNotEq(left, right); - } - - function assertNotEq(uint256 left, uint256 right, string memory err) internal pure virtual { - vm.assertNotEq(left, right, err); - } - - function assertNotEqDecimal(uint256 left, uint256 right, uint256 decimals) internal pure virtual { - vm.assertNotEqDecimal(left, right, decimals); - } - - function assertNotEqDecimal(uint256 left, uint256 right, uint256 decimals, string memory err) - internal - pure - virtual - { - vm.assertNotEqDecimal(left, right, decimals, err); - } - - function assertNotEq(int256 left, int256 right) internal pure virtual { - vm.assertNotEq(left, right); - } - - function assertNotEq(int256 left, int256 right, string memory err) internal pure virtual { - vm.assertNotEq(left, right, err); - } - - function assertNotEqDecimal(int256 left, int256 right, uint256 decimals) internal pure virtual { - vm.assertNotEqDecimal(left, right, decimals); - } - - function assertNotEqDecimal(int256 left, int256 right, uint256 decimals, string memory err) internal pure virtual { - vm.assertNotEqDecimal(left, right, decimals, err); - } - - function assertNotEq(address left, address right) internal pure virtual { - vm.assertNotEq(left, right); - } - - function assertNotEq(address left, address right, string memory err) internal pure virtual { - vm.assertNotEq(left, right, err); - } - - function assertNotEq(bytes32 left, bytes32 right) internal pure virtual { - vm.assertNotEq(left, right); - } - - function assertNotEq(bytes32 left, bytes32 right, string memory err) internal pure virtual { - vm.assertNotEq(left, right, err); - } - - function assertNotEq32(bytes32 left, bytes32 right) internal pure virtual { - assertNotEq(left, right); - } - - function assertNotEq32(bytes32 left, bytes32 right, string memory err) internal pure virtual { - assertNotEq(left, right, err); - } - - function assertNotEq(string memory left, string memory right) internal pure virtual { - vm.assertNotEq(left, right); - } - - function assertNotEq(string memory left, string memory right, string memory err) internal pure virtual { - vm.assertNotEq(left, right, err); - } - - function assertNotEq(bytes memory left, bytes memory right) internal pure virtual { - vm.assertNotEq(left, right); - } - - function assertNotEq(bytes memory left, bytes memory right, string memory err) internal pure virtual { - vm.assertNotEq(left, right, err); - } - - function assertNotEq(bool[] memory left, bool[] memory right) internal pure virtual { - vm.assertNotEq(left, right); - } - - function assertNotEq(bool[] memory left, bool[] memory right, string memory err) internal pure virtual { - vm.assertNotEq(left, right, err); - } - - function assertNotEq(uint256[] memory left, uint256[] memory right) internal pure virtual { - vm.assertNotEq(left, right); - } - - function assertNotEq(uint256[] memory left, uint256[] memory right, string memory err) internal pure virtual { - vm.assertNotEq(left, right, err); - } - - function assertNotEq(int256[] memory left, int256[] memory right) internal pure virtual { - vm.assertNotEq(left, right); - } - - function assertNotEq(int256[] memory left, int256[] memory right, string memory err) internal pure virtual { - vm.assertNotEq(left, right, err); - } - - function assertNotEq(address[] memory left, address[] memory right) internal pure virtual { - vm.assertNotEq(left, right); - } - - function assertNotEq(address[] memory left, address[] memory right, string memory err) internal pure virtual { - vm.assertNotEq(left, right, err); - } - - function assertNotEq(bytes32[] memory left, bytes32[] memory right) internal pure virtual { - vm.assertNotEq(left, right); - } - - function assertNotEq(bytes32[] memory left, bytes32[] memory right, string memory err) internal pure virtual { - vm.assertNotEq(left, right, err); - } - - function assertNotEq(string[] memory left, string[] memory right) internal pure virtual { - vm.assertNotEq(left, right); - } - - function assertNotEq(string[] memory left, string[] memory right, string memory err) internal pure virtual { - vm.assertNotEq(left, right, err); - } - - function assertNotEq(bytes[] memory left, bytes[] memory right) internal pure virtual { - vm.assertNotEq(left, right); - } - - function assertNotEq(bytes[] memory left, bytes[] memory right, string memory err) internal pure virtual { - vm.assertNotEq(left, right, err); - } - - function assertLt(uint256 left, uint256 right) internal pure virtual { - vm.assertLt(left, right); - } - - function assertLt(uint256 left, uint256 right, string memory err) internal pure virtual { - vm.assertLt(left, right, err); - } - - function assertLtDecimal(uint256 left, uint256 right, uint256 decimals) internal pure virtual { - vm.assertLtDecimal(left, right, decimals); - } - - function assertLtDecimal(uint256 left, uint256 right, uint256 decimals, string memory err) internal pure virtual { - vm.assertLtDecimal(left, right, decimals, err); - } - - function assertLt(int256 left, int256 right) internal pure virtual { - vm.assertLt(left, right); - } - - function assertLt(int256 left, int256 right, string memory err) internal pure virtual { - vm.assertLt(left, right, err); - } - - function assertLtDecimal(int256 left, int256 right, uint256 decimals) internal pure virtual { - vm.assertLtDecimal(left, right, decimals); - } - - function assertLtDecimal(int256 left, int256 right, uint256 decimals, string memory err) internal pure virtual { - vm.assertLtDecimal(left, right, decimals, err); - } - - function assertGt(uint256 left, uint256 right) internal pure virtual { - vm.assertGt(left, right); - } - - function assertGt(uint256 left, uint256 right, string memory err) internal pure virtual { - vm.assertGt(left, right, err); - } - - function assertGtDecimal(uint256 left, uint256 right, uint256 decimals) internal pure virtual { - vm.assertGtDecimal(left, right, decimals); - } - - function assertGtDecimal(uint256 left, uint256 right, uint256 decimals, string memory err) internal pure virtual { - vm.assertGtDecimal(left, right, decimals, err); - } - - function assertGt(int256 left, int256 right) internal pure virtual { - vm.assertGt(left, right); - } - - function assertGt(int256 left, int256 right, string memory err) internal pure virtual { - vm.assertGt(left, right, err); - } - - function assertGtDecimal(int256 left, int256 right, uint256 decimals) internal pure virtual { - vm.assertGtDecimal(left, right, decimals); - } - - function assertGtDecimal(int256 left, int256 right, uint256 decimals, string memory err) internal pure virtual { - vm.assertGtDecimal(left, right, decimals, err); - } - - function assertLe(uint256 left, uint256 right) internal pure virtual { - vm.assertLe(left, right); - } - - function assertLe(uint256 left, uint256 right, string memory err) internal pure virtual { - vm.assertLe(left, right, err); - } - - function assertLeDecimal(uint256 left, uint256 right, uint256 decimals) internal pure virtual { - vm.assertLeDecimal(left, right, decimals); - } - - function assertLeDecimal(uint256 left, uint256 right, uint256 decimals, string memory err) internal pure virtual { - vm.assertLeDecimal(left, right, decimals, err); - } - - function assertLe(int256 left, int256 right) internal pure virtual { - vm.assertLe(left, right); - } - - function assertLe(int256 left, int256 right, string memory err) internal pure virtual { - vm.assertLe(left, right, err); - } - - function assertLeDecimal(int256 left, int256 right, uint256 decimals) internal pure virtual { - vm.assertLeDecimal(left, right, decimals); - } - - function assertLeDecimal(int256 left, int256 right, uint256 decimals, string memory err) internal pure virtual { - vm.assertLeDecimal(left, right, decimals, err); - } - - function assertGe(uint256 left, uint256 right) internal pure virtual { - vm.assertGe(left, right); - } - - function assertGe(uint256 left, uint256 right, string memory err) internal pure virtual { - vm.assertGe(left, right, err); - } - - function assertGeDecimal(uint256 left, uint256 right, uint256 decimals) internal pure virtual { - vm.assertGeDecimal(left, right, decimals); - } - - function assertGeDecimal(uint256 left, uint256 right, uint256 decimals, string memory err) internal pure virtual { - vm.assertGeDecimal(left, right, decimals, err); - } - - function assertGe(int256 left, int256 right) internal pure virtual { - vm.assertGe(left, right); - } - - function assertGe(int256 left, int256 right, string memory err) internal pure virtual { - vm.assertGe(left, right, err); - } - - function assertGeDecimal(int256 left, int256 right, uint256 decimals) internal pure virtual { - vm.assertGeDecimal(left, right, decimals); - } - - function assertGeDecimal(int256 left, int256 right, uint256 decimals, string memory err) internal pure virtual { - vm.assertGeDecimal(left, right, decimals, err); - } - - function assertApproxEqAbs(uint256 left, uint256 right, uint256 maxDelta) internal pure virtual { - vm.assertApproxEqAbs(left, right, maxDelta); - } - - function assertApproxEqAbs(uint256 left, uint256 right, uint256 maxDelta, string memory err) - internal - pure - virtual - { - vm.assertApproxEqAbs(left, right, maxDelta, err); - } - - function assertApproxEqAbsDecimal(uint256 left, uint256 right, uint256 maxDelta, uint256 decimals) - internal - pure - virtual - { - vm.assertApproxEqAbsDecimal(left, right, maxDelta, decimals); - } - - function assertApproxEqAbsDecimal( - uint256 left, - uint256 right, - uint256 maxDelta, - uint256 decimals, - string memory err - ) internal pure virtual { - vm.assertApproxEqAbsDecimal(left, right, maxDelta, decimals, err); - } - - function assertApproxEqAbs(int256 left, int256 right, uint256 maxDelta) internal pure virtual { - vm.assertApproxEqAbs(left, right, maxDelta); - } - - function assertApproxEqAbs(int256 left, int256 right, uint256 maxDelta, string memory err) internal pure virtual { - vm.assertApproxEqAbs(left, right, maxDelta, err); - } - - function assertApproxEqAbsDecimal(int256 left, int256 right, uint256 maxDelta, uint256 decimals) - internal - pure - virtual - { - vm.assertApproxEqAbsDecimal(left, right, maxDelta, decimals); - } - - function assertApproxEqAbsDecimal(int256 left, int256 right, uint256 maxDelta, uint256 decimals, string memory err) - internal - pure - virtual - { - vm.assertApproxEqAbsDecimal(left, right, maxDelta, decimals, err); - } - - function assertApproxEqRel( - uint256 left, - uint256 right, - uint256 maxPercentDelta // An 18 decimal fixed point number, where 1e18 == 100% - ) internal pure virtual { - vm.assertApproxEqRel(left, right, maxPercentDelta); - } - - function assertApproxEqRel( - uint256 left, - uint256 right, - uint256 maxPercentDelta, // An 18 decimal fixed point number, where 1e18 == 100% - string memory err - ) internal pure virtual { - vm.assertApproxEqRel(left, right, maxPercentDelta, err); - } - - function assertApproxEqRelDecimal( - uint256 left, - uint256 right, - uint256 maxPercentDelta, // An 18 decimal fixed point number, where 1e18 == 100% - uint256 decimals - ) internal pure virtual { - vm.assertApproxEqRelDecimal(left, right, maxPercentDelta, decimals); - } - - function assertApproxEqRelDecimal( - uint256 left, - uint256 right, - uint256 maxPercentDelta, // An 18 decimal fixed point number, where 1e18 == 100% - uint256 decimals, - string memory err - ) internal pure virtual { - vm.assertApproxEqRelDecimal(left, right, maxPercentDelta, decimals, err); - } - - function assertApproxEqRel(int256 left, int256 right, uint256 maxPercentDelta) internal pure virtual { - vm.assertApproxEqRel(left, right, maxPercentDelta); - } - - function assertApproxEqRel( - int256 left, - int256 right, - uint256 maxPercentDelta, // An 18 decimal fixed point number, where 1e18 == 100% - string memory err - ) internal pure virtual { - vm.assertApproxEqRel(left, right, maxPercentDelta, err); - } - - function assertApproxEqRelDecimal( - int256 left, - int256 right, - uint256 maxPercentDelta, // An 18 decimal fixed point number, where 1e18 == 100% - uint256 decimals - ) internal pure virtual { - vm.assertApproxEqRelDecimal(left, right, maxPercentDelta, decimals); - } - - function assertApproxEqRelDecimal( - int256 left, - int256 right, - uint256 maxPercentDelta, // An 18 decimal fixed point number, where 1e18 == 100% - uint256 decimals, - string memory err - ) internal pure virtual { - vm.assertApproxEqRelDecimal(left, right, maxPercentDelta, decimals, err); - } - - // Inherited from DSTest, not used but kept for backwards-compatibility - function checkEq0(bytes memory left, bytes memory right) internal pure returns (bool) { - return keccak256(left) == keccak256(right); - } - - function assertEq0(bytes memory left, bytes memory right) internal pure virtual { - assertEq(left, right); - } - - function assertEq0(bytes memory left, bytes memory right, string memory err) internal pure virtual { - assertEq(left, right, err); - } - - function assertNotEq0(bytes memory left, bytes memory right) internal pure virtual { - assertNotEq(left, right); - } - - function assertNotEq0(bytes memory left, bytes memory right, string memory err) internal pure virtual { - assertNotEq(left, right, err); - } - - function assertEqCall(address target, bytes memory callDataA, bytes memory callDataB) internal virtual { - assertEqCall(target, callDataA, target, callDataB, true); - } - - function assertEqCall(address targetA, bytes memory callDataA, address targetB, bytes memory callDataB) - internal - virtual - { - assertEqCall(targetA, callDataA, targetB, callDataB, true); - } - - function assertEqCall(address target, bytes memory callDataA, bytes memory callDataB, bool strictRevertData) - internal - virtual - { - assertEqCall(target, callDataA, target, callDataB, strictRevertData); - } - - function assertEqCall( - address targetA, - bytes memory callDataA, - address targetB, - bytes memory callDataB, - bool strictRevertData - ) internal virtual { - (bool successA, bytes memory returnDataA) = address(targetA).call(callDataA); - (bool successB, bytes memory returnDataB) = address(targetB).call(callDataB); - - if (successA && successB) { - assertEq(returnDataA, returnDataB, "Call return data does not match"); - } - - if (!successA && !successB && strictRevertData) { - assertEq(returnDataA, returnDataB, "Call revert data does not match"); - } - - if (!successA && successB) { - emit log("Error: Calls were not equal"); - emit log_named_bytes(" Left call revert data", returnDataA); - emit log_named_bytes(" Right call return data", returnDataB); - revert("assertion failed"); - } - - if (successA && !successB) { - emit log("Error: Calls were not equal"); - emit log_named_bytes(" Left call return data", returnDataA); - emit log_named_bytes(" Right call revert data", returnDataB); - revert("assertion failed"); - } - } -} diff --git a/contracts/src/v0.8/vendor/forge-std/src/StdChains.sol b/contracts/src/v0.8/vendor/forge-std/src/StdChains.sol deleted file mode 100644 index 0a872e7b9c..0000000000 --- a/contracts/src/v0.8/vendor/forge-std/src/StdChains.sol +++ /dev/null @@ -1,286 +0,0 @@ -// SPDX-License-Identifier: MIT -pragma solidity >=0.6.2 <0.9.0; - -import {VmSafe} from "./Vm.sol"; - -/** - * StdChains provides information about EVM compatible chains that can be used in scripts/tests. - * For each chain, the chain's name, chain ID, and a default RPC URL are provided. Chains are - * identified by their alias, which is the same as the alias in the `[rpc_endpoints]` section of - * the `foundry.toml` file. For best UX, ensure the alias in the `foundry.toml` file match the - * alias used in this contract, which can be found as the first argument to the - * `setChainWithDefaultRpcUrl` call in the `initializeStdChains` function. - * - * There are two main ways to use this contract: - * 1. Set a chain with `setChain(string memory chainAlias, ChainData memory chain)` or - * `setChain(string memory chainAlias, Chain memory chain)` - * 2. Get a chain with `getChain(string memory chainAlias)` or `getChain(uint256 chainId)`. - * - * The first time either of those are used, chains are initialized with the default set of RPC URLs. - * This is done in `initializeStdChains`, which uses `setChainWithDefaultRpcUrl`. Defaults are recorded in - * `defaultRpcUrls`. - * - * The `setChain` function is straightforward, and it simply saves off the given chain data. - * - * The `getChain` methods use `getChainWithUpdatedRpcUrl` to return a chain. For example, let's say - * we want to retrieve the RPC URL for `mainnet`: - * - If you have specified data with `setChain`, it will return that. - * - If you have configured a mainnet RPC URL in `foundry.toml`, it will return the URL, provided it - * is valid (e.g. a URL is specified, or an environment variable is given and exists). - * - If neither of the above conditions is met, the default data is returned. - * - * Summarizing the above, the prioritization hierarchy is `setChain` -> `foundry.toml` -> environment variable -> defaults. - */ -abstract contract StdChains { - VmSafe private constant vm = VmSafe(address(uint160(uint256(keccak256("hevm cheat code"))))); - - bool private stdChainsInitialized; - - struct ChainData { - string name; - uint256 chainId; - string rpcUrl; - } - - struct Chain { - // The chain name. - string name; - // The chain's Chain ID. - uint256 chainId; - // The chain's alias. (i.e. what gets specified in `foundry.toml`). - string chainAlias; - // A default RPC endpoint for this chain. - // NOTE: This default RPC URL is included for convenience to facilitate quick tests and - // experimentation. Do not use this RPC URL for production test suites, CI, or other heavy - // usage as you will be throttled and this is a disservice to others who need this endpoint. - string rpcUrl; - } - - // Maps from the chain's alias (matching the alias in the `foundry.toml` file) to chain data. - mapping(string => Chain) private chains; - // Maps from the chain's alias to it's default RPC URL. - mapping(string => string) private defaultRpcUrls; - // Maps from a chain ID to it's alias. - mapping(uint256 => string) private idToAlias; - - bool private fallbackToDefaultRpcUrls = true; - - // The RPC URL will be fetched from config or defaultRpcUrls if possible. - function getChain(string memory chainAlias) internal virtual returns (Chain memory chain) { - require(bytes(chainAlias).length != 0, "StdChains getChain(string): Chain alias cannot be the empty string."); - - initializeStdChains(); - chain = chains[chainAlias]; - require( - chain.chainId != 0, - string(abi.encodePacked("StdChains getChain(string): Chain with alias \"", chainAlias, "\" not found.")) - ); - - chain = getChainWithUpdatedRpcUrl(chainAlias, chain); - } - - function getChain(uint256 chainId) internal virtual returns (Chain memory chain) { - require(chainId != 0, "StdChains getChain(uint256): Chain ID cannot be 0."); - initializeStdChains(); - string memory chainAlias = idToAlias[chainId]; - - chain = chains[chainAlias]; - - require( - chain.chainId != 0, - string(abi.encodePacked("StdChains getChain(uint256): Chain with ID ", vm.toString(chainId), " not found.")) - ); - - chain = getChainWithUpdatedRpcUrl(chainAlias, chain); - } - - // set chain info, with priority to argument's rpcUrl field. - function setChain(string memory chainAlias, ChainData memory chain) internal virtual { - require( - bytes(chainAlias).length != 0, - "StdChains setChain(string,ChainData): Chain alias cannot be the empty string." - ); - - require(chain.chainId != 0, "StdChains setChain(string,ChainData): Chain ID cannot be 0."); - - initializeStdChains(); - string memory foundAlias = idToAlias[chain.chainId]; - - require( - bytes(foundAlias).length == 0 || keccak256(bytes(foundAlias)) == keccak256(bytes(chainAlias)), - string( - abi.encodePacked( - "StdChains setChain(string,ChainData): Chain ID ", - vm.toString(chain.chainId), - " already used by \"", - foundAlias, - "\"." - ) - ) - ); - - uint256 oldChainId = chains[chainAlias].chainId; - delete idToAlias[oldChainId]; - - chains[chainAlias] = - Chain({name: chain.name, chainId: chain.chainId, chainAlias: chainAlias, rpcUrl: chain.rpcUrl}); - idToAlias[chain.chainId] = chainAlias; - } - - // set chain info, with priority to argument's rpcUrl field. - function setChain(string memory chainAlias, Chain memory chain) internal virtual { - setChain(chainAlias, ChainData({name: chain.name, chainId: chain.chainId, rpcUrl: chain.rpcUrl})); - } - - function _toUpper(string memory str) private pure returns (string memory) { - bytes memory strb = bytes(str); - bytes memory copy = new bytes(strb.length); - for (uint256 i = 0; i < strb.length; i++) { - bytes1 b = strb[i]; - if (b >= 0x61 && b <= 0x7A) { - copy[i] = bytes1(uint8(b) - 32); - } else { - copy[i] = b; - } - } - return string(copy); - } - - // lookup rpcUrl, in descending order of priority: - // current -> config (foundry.toml) -> environment variable -> default - function getChainWithUpdatedRpcUrl(string memory chainAlias, Chain memory chain) - private - view - returns (Chain memory) - { - if (bytes(chain.rpcUrl).length == 0) { - try vm.rpcUrl(chainAlias) returns (string memory configRpcUrl) { - chain.rpcUrl = configRpcUrl; - } catch (bytes memory err) { - string memory envName = string(abi.encodePacked(_toUpper(chainAlias), "_RPC_URL")); - if (fallbackToDefaultRpcUrls) { - chain.rpcUrl = vm.envOr(envName, defaultRpcUrls[chainAlias]); - } else { - chain.rpcUrl = vm.envString(envName); - } - // Distinguish 'not found' from 'cannot read' - // The upstream error thrown by forge for failing cheats changed so we check both the old and new versions - bytes memory oldNotFoundError = - abi.encodeWithSignature("CheatCodeError", string(abi.encodePacked("invalid rpc url ", chainAlias))); - bytes memory newNotFoundError = abi.encodeWithSignature( - "CheatcodeError(string)", string(abi.encodePacked("invalid rpc url: ", chainAlias)) - ); - bytes32 errHash = keccak256(err); - if ( - (errHash != keccak256(oldNotFoundError) && errHash != keccak256(newNotFoundError)) - || bytes(chain.rpcUrl).length == 0 - ) { - /// @solidity memory-safe-assembly - assembly { - revert(add(32, err), mload(err)) - } - } - } - } - return chain; - } - - function setFallbackToDefaultRpcUrls(bool useDefault) internal { - fallbackToDefaultRpcUrls = useDefault; - } - - function initializeStdChains() private { - if (stdChainsInitialized) return; - - stdChainsInitialized = true; - - // If adding an RPC here, make sure to test the default RPC URL in `test_Rpcs` in `StdChains.t.sol` - setChainWithDefaultRpcUrl("anvil", ChainData("Anvil", 31337, "http://127.0.0.1:8545")); - setChainWithDefaultRpcUrl("mainnet", ChainData("Mainnet", 1, "https://eth.llamarpc.com")); - setChainWithDefaultRpcUrl( - "sepolia", ChainData("Sepolia", 11155111, "https://sepolia.infura.io/v3/b9794ad1ddf84dfb8c34d6bb5dca2001") - ); - setChainWithDefaultRpcUrl("holesky", ChainData("Holesky", 17000, "https://rpc.holesky.ethpandaops.io")); - setChainWithDefaultRpcUrl("hoodi", ChainData("Hoodi", 560048, "https://rpc.hoodi.ethpandaops.io")); - setChainWithDefaultRpcUrl("optimism", ChainData("Optimism", 10, "https://mainnet.optimism.io")); - setChainWithDefaultRpcUrl( - "optimism_sepolia", ChainData("Optimism Sepolia", 11155420, "https://sepolia.optimism.io") - ); - setChainWithDefaultRpcUrl("arbitrum_one", ChainData("Arbitrum One", 42161, "https://arb1.arbitrum.io/rpc")); - setChainWithDefaultRpcUrl( - "arbitrum_one_sepolia", ChainData("Arbitrum One Sepolia", 421614, "https://sepolia-rollup.arbitrum.io/rpc") - ); - setChainWithDefaultRpcUrl("arbitrum_nova", ChainData("Arbitrum Nova", 42170, "https://nova.arbitrum.io/rpc")); - setChainWithDefaultRpcUrl("polygon", ChainData("Polygon", 137, "https://polygon-rpc.com")); - setChainWithDefaultRpcUrl( - "polygon_amoy", ChainData("Polygon Amoy", 80002, "https://rpc-amoy.polygon.technology") - ); - setChainWithDefaultRpcUrl("avalanche", ChainData("Avalanche", 43114, "https://api.avax.network/ext/bc/C/rpc")); - setChainWithDefaultRpcUrl( - "avalanche_fuji", ChainData("Avalanche Fuji", 43113, "https://api.avax-test.network/ext/bc/C/rpc") - ); - setChainWithDefaultRpcUrl( - "bnb_smart_chain", ChainData("BNB Smart Chain", 56, "https://bsc-dataseed1.binance.org") - ); - setChainWithDefaultRpcUrl( - "bnb_smart_chain_testnet", - ChainData("BNB Smart Chain Testnet", 97, "https://rpc.ankr.com/bsc_testnet_chapel") - ); - setChainWithDefaultRpcUrl("gnosis_chain", ChainData("Gnosis Chain", 100, "https://rpc.gnosischain.com")); - setChainWithDefaultRpcUrl("moonbeam", ChainData("Moonbeam", 1284, "https://rpc.api.moonbeam.network")); - setChainWithDefaultRpcUrl( - "moonriver", ChainData("Moonriver", 1285, "https://rpc.api.moonriver.moonbeam.network") - ); - setChainWithDefaultRpcUrl("moonbase", ChainData("Moonbase", 1287, "https://rpc.testnet.moonbeam.network")); - setChainWithDefaultRpcUrl("base_sepolia", ChainData("Base Sepolia", 84532, "https://sepolia.base.org")); - setChainWithDefaultRpcUrl("base", ChainData("Base", 8453, "https://mainnet.base.org")); - setChainWithDefaultRpcUrl("blast_sepolia", ChainData("Blast Sepolia", 168587773, "https://sepolia.blast.io")); - setChainWithDefaultRpcUrl("blast", ChainData("Blast", 81457, "https://rpc.blast.io")); - setChainWithDefaultRpcUrl("fantom_opera", ChainData("Fantom Opera", 250, "https://rpc.ankr.com/fantom/")); - setChainWithDefaultRpcUrl( - "fantom_opera_testnet", ChainData("Fantom Opera Testnet", 4002, "https://rpc.ankr.com/fantom_testnet/") - ); - setChainWithDefaultRpcUrl("fraxtal", ChainData("Fraxtal", 252, "https://rpc.frax.com")); - setChainWithDefaultRpcUrl("fraxtal_testnet", ChainData("Fraxtal Testnet", 2522, "https://rpc.testnet.frax.com")); - setChainWithDefaultRpcUrl( - "berachain_bartio_testnet", ChainData("Berachain bArtio Testnet", 80084, "https://bartio.rpc.berachain.com") - ); - setChainWithDefaultRpcUrl("flare", ChainData("Flare", 14, "https://flare-api.flare.network/ext/C/rpc")); - setChainWithDefaultRpcUrl( - "flare_coston2", ChainData("Flare Coston2", 114, "https://coston2-api.flare.network/ext/C/rpc") - ); - - setChainWithDefaultRpcUrl("mode", ChainData("Mode", 34443, "https://mode.drpc.org")); - setChainWithDefaultRpcUrl("mode_sepolia", ChainData("Mode Sepolia", 919, "https://sepolia.mode.network")); - - setChainWithDefaultRpcUrl("zora", ChainData("Zora", 7777777, "https://zora.drpc.org")); - setChainWithDefaultRpcUrl( - "zora_sepolia", ChainData("Zora Sepolia", 999999999, "https://sepolia.rpc.zora.energy") - ); - - setChainWithDefaultRpcUrl("race", ChainData("Race", 6805, "https://racemainnet.io")); - setChainWithDefaultRpcUrl("race_sepolia", ChainData("Race Sepolia", 6806, "https://racemainnet.io")); - - setChainWithDefaultRpcUrl("metal", ChainData("Metal", 1750, "https://metall2.drpc.org")); - setChainWithDefaultRpcUrl("metal_sepolia", ChainData("Metal Sepolia", 1740, "https://testnet.rpc.metall2.com")); - - setChainWithDefaultRpcUrl("binary", ChainData("Binary", 624, "https://rpc.zero.thebinaryholdings.com")); - setChainWithDefaultRpcUrl( - "binary_sepolia", ChainData("Binary Sepolia", 625, "https://rpc.zero.thebinaryholdings.com") - ); - - setChainWithDefaultRpcUrl("orderly", ChainData("Orderly", 291, "https://rpc.orderly.network")); - setChainWithDefaultRpcUrl( - "orderly_sepolia", ChainData("Orderly Sepolia", 4460, "https://testnet-rpc.orderly.org") - ); - } - - // set chain info, with priority to chainAlias' rpc url in foundry.toml - function setChainWithDefaultRpcUrl(string memory chainAlias, ChainData memory chain) private { - string memory rpcUrl = chain.rpcUrl; - defaultRpcUrls[chainAlias] = rpcUrl; - chain.rpcUrl = ""; - setChain(chainAlias, chain); - chain.rpcUrl = rpcUrl; // restore argument - } -} diff --git a/contracts/src/v0.8/vendor/forge-std/src/StdCheats.sol b/contracts/src/v0.8/vendor/forge-std/src/StdCheats.sol deleted file mode 100644 index 9f360dec21..0000000000 --- a/contracts/src/v0.8/vendor/forge-std/src/StdCheats.sol +++ /dev/null @@ -1,829 +0,0 @@ -// SPDX-License-Identifier: MIT -pragma solidity >=0.6.2 <0.9.0; - -pragma experimental ABIEncoderV2; - -import {StdStorage, stdStorage} from "./StdStorage.sol"; -import {console2} from "./console2.sol"; -import {Vm} from "./Vm.sol"; - -abstract contract StdCheatsSafe { - Vm private constant vm = Vm(address(uint160(uint256(keccak256("hevm cheat code"))))); - - uint256 private constant UINT256_MAX = - 115792089237316195423570985008687907853269984665640564039457584007913129639935; - - bool private gasMeteringOff; - - // Data structures to parse Transaction objects from the broadcast artifact - // that conform to EIP1559. The Raw structs is what is parsed from the JSON - // and then converted to the one that is used by the user for better UX. - - struct RawTx1559 { - string[] arguments; - address contractAddress; - string contractName; - // json value name = function - string functionSig; - bytes32 hash; - // json value name = tx - RawTx1559Detail txDetail; - // json value name = type - string opcode; - } - - struct RawTx1559Detail { - AccessList[] accessList; - bytes data; - address from; - bytes gas; - bytes nonce; - address to; - bytes txType; - bytes value; - } - - struct Tx1559 { - string[] arguments; - address contractAddress; - string contractName; - string functionSig; - bytes32 hash; - Tx1559Detail txDetail; - string opcode; - } - - struct Tx1559Detail { - AccessList[] accessList; - bytes data; - address from; - uint256 gas; - uint256 nonce; - address to; - uint256 txType; - uint256 value; - } - - // Data structures to parse Transaction objects from the broadcast artifact - // that DO NOT conform to EIP1559. The Raw structs is what is parsed from the JSON - // and then converted to the one that is used by the user for better UX. - - struct TxLegacy { - string[] arguments; - address contractAddress; - string contractName; - string functionSig; - string hash; - string opcode; - TxDetailLegacy transaction; - } - - struct TxDetailLegacy { - AccessList[] accessList; - uint256 chainId; - bytes data; - address from; - uint256 gas; - uint256 gasPrice; - bytes32 hash; - uint256 nonce; - bytes1 opcode; - bytes32 r; - bytes32 s; - uint256 txType; - address to; - uint8 v; - uint256 value; - } - - struct AccessList { - address accessAddress; - bytes32[] storageKeys; - } - - // Data structures to parse Receipt objects from the broadcast artifact. - // The Raw structs is what is parsed from the JSON - // and then converted to the one that is used by the user for better UX. - - struct RawReceipt { - bytes32 blockHash; - bytes blockNumber; - address contractAddress; - bytes cumulativeGasUsed; - bytes effectiveGasPrice; - address from; - bytes gasUsed; - RawReceiptLog[] logs; - bytes logsBloom; - bytes status; - address to; - bytes32 transactionHash; - bytes transactionIndex; - } - - struct Receipt { - bytes32 blockHash; - uint256 blockNumber; - address contractAddress; - uint256 cumulativeGasUsed; - uint256 effectiveGasPrice; - address from; - uint256 gasUsed; - ReceiptLog[] logs; - bytes logsBloom; - uint256 status; - address to; - bytes32 transactionHash; - uint256 transactionIndex; - } - - // Data structures to parse the entire broadcast artifact, assuming the - // transactions conform to EIP1559. - - struct EIP1559ScriptArtifact { - string[] libraries; - string path; - string[] pending; - Receipt[] receipts; - uint256 timestamp; - Tx1559[] transactions; - TxReturn[] txReturns; - } - - struct RawEIP1559ScriptArtifact { - string[] libraries; - string path; - string[] pending; - RawReceipt[] receipts; - TxReturn[] txReturns; - uint256 timestamp; - RawTx1559[] transactions; - } - - struct RawReceiptLog { - // json value = address - address logAddress; - bytes32 blockHash; - bytes blockNumber; - bytes data; - bytes logIndex; - bool removed; - bytes32[] topics; - bytes32 transactionHash; - bytes transactionIndex; - bytes transactionLogIndex; - } - - struct ReceiptLog { - // json value = address - address logAddress; - bytes32 blockHash; - uint256 blockNumber; - bytes data; - uint256 logIndex; - bytes32[] topics; - uint256 transactionIndex; - uint256 transactionLogIndex; - bool removed; - } - - struct TxReturn { - string internalType; - string value; - } - - struct Account { - address addr; - uint256 key; - } - - enum AddressType { - Payable, - NonPayable, - ZeroAddress, - Precompile, - ForgeAddress - } - - // Checks that `addr` is not blacklisted by token contracts that have a blacklist. - function assumeNotBlacklisted(address token, address addr) internal view virtual { - // Nothing to check if `token` is not a contract. - uint256 tokenCodeSize; - assembly { - tokenCodeSize := extcodesize(token) - } - require(tokenCodeSize > 0, "StdCheats assumeNotBlacklisted(address,address): Token address is not a contract."); - - bool success; - bytes memory returnData; - - // 4-byte selector for `isBlacklisted(address)`, used by USDC. - (success, returnData) = token.staticcall(abi.encodeWithSelector(0xfe575a87, addr)); - vm.assume(!success || abi.decode(returnData, (bool)) == false); - - // 4-byte selector for `isBlackListed(address)`, used by USDT. - (success, returnData) = token.staticcall(abi.encodeWithSelector(0xe47d6060, addr)); - vm.assume(!success || abi.decode(returnData, (bool)) == false); - } - - // Checks that `addr` is not blacklisted by token contracts that have a blacklist. - // This is identical to `assumeNotBlacklisted(address,address)` but with a different name, for - // backwards compatibility, since this name was used in the original PR which already has - // a release. This function can be removed in a future release once we want a breaking change. - function assumeNoBlacklisted(address token, address addr) internal view virtual { - assumeNotBlacklisted(token, addr); - } - - function assumeAddressIsNot(address addr, AddressType addressType) internal virtual { - if (addressType == AddressType.Payable) { - assumeNotPayable(addr); - } else if (addressType == AddressType.NonPayable) { - assumePayable(addr); - } else if (addressType == AddressType.ZeroAddress) { - assumeNotZeroAddress(addr); - } else if (addressType == AddressType.Precompile) { - assumeNotPrecompile(addr); - } else if (addressType == AddressType.ForgeAddress) { - assumeNotForgeAddress(addr); - } - } - - function assumeAddressIsNot(address addr, AddressType addressType1, AddressType addressType2) internal virtual { - assumeAddressIsNot(addr, addressType1); - assumeAddressIsNot(addr, addressType2); - } - - function assumeAddressIsNot( - address addr, - AddressType addressType1, - AddressType addressType2, - AddressType addressType3 - ) internal virtual { - assumeAddressIsNot(addr, addressType1); - assumeAddressIsNot(addr, addressType2); - assumeAddressIsNot(addr, addressType3); - } - - function assumeAddressIsNot( - address addr, - AddressType addressType1, - AddressType addressType2, - AddressType addressType3, - AddressType addressType4 - ) internal virtual { - assumeAddressIsNot(addr, addressType1); - assumeAddressIsNot(addr, addressType2); - assumeAddressIsNot(addr, addressType3); - assumeAddressIsNot(addr, addressType4); - } - - // This function checks whether an address, `addr`, is payable. It works by sending 1 wei to - // `addr` and checking the `success` return value. - // NOTE: This function may result in state changes depending on the fallback/receive logic - // implemented by `addr`, which should be taken into account when this function is used. - function _isPayable(address addr) private returns (bool) { - require( - addr.balance < UINT256_MAX, - "StdCheats _isPayable(address): Balance equals max uint256, so it cannot receive any more funds" - ); - uint256 origBalanceTest = address(this).balance; - uint256 origBalanceAddr = address(addr).balance; - - vm.deal(address(this), 1); - (bool success,) = payable(addr).call{value: 1}(""); - - // reset balances - vm.deal(address(this), origBalanceTest); - vm.deal(addr, origBalanceAddr); - - return success; - } - - // NOTE: This function may result in state changes depending on the fallback/receive logic - // implemented by `addr`, which should be taken into account when this function is used. See the - // `_isPayable` method for more information. - function assumePayable(address addr) internal virtual { - vm.assume(_isPayable(addr)); - } - - function assumeNotPayable(address addr) internal virtual { - vm.assume(!_isPayable(addr)); - } - - function assumeNotZeroAddress(address addr) internal pure virtual { - vm.assume(addr != address(0)); - } - - function assumeNotPrecompile(address addr) internal pure virtual { - assumeNotPrecompile(addr, _pureChainId()); - } - - function assumeNotPrecompile(address addr, uint256 chainId) internal pure virtual { - // Note: For some chains like Optimism these are technically predeploys (i.e. bytecode placed at a specific - // address), but the same rationale for excluding them applies so we include those too. - - // These are reserved by Ethereum and may be on all EVM-compatible chains. - vm.assume(addr < address(0x1) || addr > address(0xff)); - - // forgefmt: disable-start - if (chainId == 10 || chainId == 420) { - // https://github.com/ethereum-optimism/optimism/blob/eaa371a0184b56b7ca6d9eb9cb0a2b78b2ccd864/op-bindings/predeploys/addresses.go#L6-L21 - vm.assume(addr < address(0x4200000000000000000000000000000000000000) || addr > address(0x4200000000000000000000000000000000000800)); - } else if (chainId == 42161 || chainId == 421613) { - // https://developer.arbitrum.io/useful-addresses#arbitrum-precompiles-l2-same-on-all-arb-chains - vm.assume(addr < address(0x0000000000000000000000000000000000000064) || addr > address(0x0000000000000000000000000000000000000068)); - } else if (chainId == 43114 || chainId == 43113) { - // https://github.com/ava-labs/subnet-evm/blob/47c03fd007ecaa6de2c52ea081596e0a88401f58/precompile/params.go#L18-L59 - vm.assume(addr < address(0x0100000000000000000000000000000000000000) || addr > address(0x01000000000000000000000000000000000000ff)); - vm.assume(addr < address(0x0200000000000000000000000000000000000000) || addr > address(0x02000000000000000000000000000000000000FF)); - vm.assume(addr < address(0x0300000000000000000000000000000000000000) || addr > address(0x03000000000000000000000000000000000000Ff)); - } - // forgefmt: disable-end - } - - function assumeNotForgeAddress(address addr) internal pure virtual { - // vm, console, and Create2Deployer addresses - vm.assume( - addr != address(vm) && addr != 0x000000000000000000636F6e736F6c652e6c6f67 - && addr != 0x4e59b44847b379578588920cA78FbF26c0B4956C - ); - } - - function assumeUnusedAddress(address addr) internal view virtual { - uint256 size; - assembly { - size := extcodesize(addr) - } - vm.assume(size == 0); - - assumeNotPrecompile(addr); - assumeNotZeroAddress(addr); - assumeNotForgeAddress(addr); - } - - function readEIP1559ScriptArtifact(string memory path) - internal - view - virtual - returns (EIP1559ScriptArtifact memory) - { - string memory data = vm.readFile(path); - bytes memory parsedData = vm.parseJson(data); - RawEIP1559ScriptArtifact memory rawArtifact = abi.decode(parsedData, (RawEIP1559ScriptArtifact)); - EIP1559ScriptArtifact memory artifact; - artifact.libraries = rawArtifact.libraries; - artifact.path = rawArtifact.path; - artifact.timestamp = rawArtifact.timestamp; - artifact.pending = rawArtifact.pending; - artifact.txReturns = rawArtifact.txReturns; - artifact.receipts = rawToConvertedReceipts(rawArtifact.receipts); - artifact.transactions = rawToConvertedEIPTx1559s(rawArtifact.transactions); - return artifact; - } - - function rawToConvertedEIPTx1559s(RawTx1559[] memory rawTxs) internal pure virtual returns (Tx1559[] memory) { - Tx1559[] memory txs = new Tx1559[](rawTxs.length); - for (uint256 i; i < rawTxs.length; i++) { - txs[i] = rawToConvertedEIPTx1559(rawTxs[i]); - } - return txs; - } - - function rawToConvertedEIPTx1559(RawTx1559 memory rawTx) internal pure virtual returns (Tx1559 memory) { - Tx1559 memory transaction; - transaction.arguments = rawTx.arguments; - transaction.contractName = rawTx.contractName; - transaction.functionSig = rawTx.functionSig; - transaction.hash = rawTx.hash; - transaction.txDetail = rawToConvertedEIP1559Detail(rawTx.txDetail); - transaction.opcode = rawTx.opcode; - return transaction; - } - - function rawToConvertedEIP1559Detail(RawTx1559Detail memory rawDetail) - internal - pure - virtual - returns (Tx1559Detail memory) - { - Tx1559Detail memory txDetail; - txDetail.data = rawDetail.data; - txDetail.from = rawDetail.from; - txDetail.to = rawDetail.to; - txDetail.nonce = _bytesToUint(rawDetail.nonce); - txDetail.txType = _bytesToUint(rawDetail.txType); - txDetail.value = _bytesToUint(rawDetail.value); - txDetail.gas = _bytesToUint(rawDetail.gas); - txDetail.accessList = rawDetail.accessList; - return txDetail; - } - - function readTx1559s(string memory path) internal view virtual returns (Tx1559[] memory) { - string memory deployData = vm.readFile(path); - bytes memory parsedDeployData = vm.parseJson(deployData, ".transactions"); - RawTx1559[] memory rawTxs = abi.decode(parsedDeployData, (RawTx1559[])); - return rawToConvertedEIPTx1559s(rawTxs); - } - - function readTx1559(string memory path, uint256 index) internal view virtual returns (Tx1559 memory) { - string memory deployData = vm.readFile(path); - string memory key = string(abi.encodePacked(".transactions[", vm.toString(index), "]")); - bytes memory parsedDeployData = vm.parseJson(deployData, key); - RawTx1559 memory rawTx = abi.decode(parsedDeployData, (RawTx1559)); - return rawToConvertedEIPTx1559(rawTx); - } - - // Analogous to readTransactions, but for receipts. - function readReceipts(string memory path) internal view virtual returns (Receipt[] memory) { - string memory deployData = vm.readFile(path); - bytes memory parsedDeployData = vm.parseJson(deployData, ".receipts"); - RawReceipt[] memory rawReceipts = abi.decode(parsedDeployData, (RawReceipt[])); - return rawToConvertedReceipts(rawReceipts); - } - - function readReceipt(string memory path, uint256 index) internal view virtual returns (Receipt memory) { - string memory deployData = vm.readFile(path); - string memory key = string(abi.encodePacked(".receipts[", vm.toString(index), "]")); - bytes memory parsedDeployData = vm.parseJson(deployData, key); - RawReceipt memory rawReceipt = abi.decode(parsedDeployData, (RawReceipt)); - return rawToConvertedReceipt(rawReceipt); - } - - function rawToConvertedReceipts(RawReceipt[] memory rawReceipts) internal pure virtual returns (Receipt[] memory) { - Receipt[] memory receipts = new Receipt[](rawReceipts.length); - for (uint256 i; i < rawReceipts.length; i++) { - receipts[i] = rawToConvertedReceipt(rawReceipts[i]); - } - return receipts; - } - - function rawToConvertedReceipt(RawReceipt memory rawReceipt) internal pure virtual returns (Receipt memory) { - Receipt memory receipt; - receipt.blockHash = rawReceipt.blockHash; - receipt.to = rawReceipt.to; - receipt.from = rawReceipt.from; - receipt.contractAddress = rawReceipt.contractAddress; - receipt.effectiveGasPrice = _bytesToUint(rawReceipt.effectiveGasPrice); - receipt.cumulativeGasUsed = _bytesToUint(rawReceipt.cumulativeGasUsed); - receipt.gasUsed = _bytesToUint(rawReceipt.gasUsed); - receipt.status = _bytesToUint(rawReceipt.status); - receipt.transactionIndex = _bytesToUint(rawReceipt.transactionIndex); - receipt.blockNumber = _bytesToUint(rawReceipt.blockNumber); - receipt.logs = rawToConvertedReceiptLogs(rawReceipt.logs); - receipt.logsBloom = rawReceipt.logsBloom; - receipt.transactionHash = rawReceipt.transactionHash; - return receipt; - } - - function rawToConvertedReceiptLogs(RawReceiptLog[] memory rawLogs) - internal - pure - virtual - returns (ReceiptLog[] memory) - { - ReceiptLog[] memory logs = new ReceiptLog[](rawLogs.length); - for (uint256 i; i < rawLogs.length; i++) { - logs[i].logAddress = rawLogs[i].logAddress; - logs[i].blockHash = rawLogs[i].blockHash; - logs[i].blockNumber = _bytesToUint(rawLogs[i].blockNumber); - logs[i].data = rawLogs[i].data; - logs[i].logIndex = _bytesToUint(rawLogs[i].logIndex); - logs[i].topics = rawLogs[i].topics; - logs[i].transactionIndex = _bytesToUint(rawLogs[i].transactionIndex); - logs[i].transactionLogIndex = _bytesToUint(rawLogs[i].transactionLogIndex); - logs[i].removed = rawLogs[i].removed; - } - return logs; - } - - // Deploy a contract by fetching the contract bytecode from - // the artifacts directory - // e.g. `deployCode(code, abi.encode(arg1,arg2,arg3))` - function deployCode(string memory what, bytes memory args) internal virtual returns (address addr) { - bytes memory bytecode = abi.encodePacked(vm.getCode(what), args); - /// @solidity memory-safe-assembly - assembly { - addr := create(0, add(bytecode, 0x20), mload(bytecode)) - } - - require(addr != address(0), "StdCheats deployCode(string,bytes): Deployment failed."); - } - - function deployCode(string memory what) internal virtual returns (address addr) { - bytes memory bytecode = vm.getCode(what); - /// @solidity memory-safe-assembly - assembly { - addr := create(0, add(bytecode, 0x20), mload(bytecode)) - } - - require(addr != address(0), "StdCheats deployCode(string): Deployment failed."); - } - - /// @dev deploy contract with value on construction - function deployCode(string memory what, bytes memory args, uint256 val) internal virtual returns (address addr) { - bytes memory bytecode = abi.encodePacked(vm.getCode(what), args); - /// @solidity memory-safe-assembly - assembly { - addr := create(val, add(bytecode, 0x20), mload(bytecode)) - } - - require(addr != address(0), "StdCheats deployCode(string,bytes,uint256): Deployment failed."); - } - - function deployCode(string memory what, uint256 val) internal virtual returns (address addr) { - bytes memory bytecode = vm.getCode(what); - /// @solidity memory-safe-assembly - assembly { - addr := create(val, add(bytecode, 0x20), mload(bytecode)) - } - - require(addr != address(0), "StdCheats deployCode(string,uint256): Deployment failed."); - } - - // creates a labeled address and the corresponding private key - function makeAddrAndKey(string memory name) internal virtual returns (address addr, uint256 privateKey) { - privateKey = uint256(keccak256(abi.encodePacked(name))); - addr = vm.addr(privateKey); - vm.label(addr, name); - } - - // creates a labeled address - function makeAddr(string memory name) internal virtual returns (address addr) { - (addr,) = makeAddrAndKey(name); - } - - // Destroys an account immediately, sending the balance to beneficiary. - // Destroying means: balance will be zero, code will be empty, and nonce will be 0 - // This is similar to selfdestruct but not identical: selfdestruct destroys code and nonce - // only after tx ends, this will run immediately. - function destroyAccount(address who, address beneficiary) internal virtual { - uint256 currBalance = who.balance; - vm.etch(who, abi.encode()); - vm.deal(who, 0); - vm.resetNonce(who); - - uint256 beneficiaryBalance = beneficiary.balance; - vm.deal(beneficiary, currBalance + beneficiaryBalance); - } - - // creates a struct containing both a labeled address and the corresponding private key - function makeAccount(string memory name) internal virtual returns (Account memory account) { - (account.addr, account.key) = makeAddrAndKey(name); - } - - function deriveRememberKey(string memory mnemonic, uint32 index) - internal - virtual - returns (address who, uint256 privateKey) - { - privateKey = vm.deriveKey(mnemonic, index); - who = vm.rememberKey(privateKey); - } - - function _bytesToUint(bytes memory b) private pure returns (uint256) { - require(b.length <= 32, "StdCheats _bytesToUint(bytes): Bytes length exceeds 32."); - return abi.decode(abi.encodePacked(new bytes(32 - b.length), b), (uint256)); - } - - function isFork() internal view virtual returns (bool status) { - try vm.activeFork() { - status = true; - } catch (bytes memory) {} - } - - modifier skipWhenForking() { - if (!isFork()) { - _; - } - } - - modifier skipWhenNotForking() { - if (isFork()) { - _; - } - } - - modifier noGasMetering() { - vm.pauseGasMetering(); - // To prevent turning gas monitoring back on with nested functions that use this modifier, - // we check if gasMetering started in the off position. If it did, we don't want to turn - // it back on until we exit the top level function that used the modifier - // - // i.e. funcA() noGasMetering { funcB() }, where funcB has noGasMetering as well. - // funcA will have `gasStartedOff` as false, funcB will have it as true, - // so we only turn metering back on at the end of the funcA - bool gasStartedOff = gasMeteringOff; - gasMeteringOff = true; - - _; - - // if gas metering was on when this modifier was called, turn it back on at the end - if (!gasStartedOff) { - gasMeteringOff = false; - vm.resumeGasMetering(); - } - } - - // We use this complex approach of `_viewChainId` and `_pureChainId` to ensure there are no - // compiler warnings when accessing chain ID in any solidity version supported by forge-std. We - // can't simply access the chain ID in a normal view or pure function because the solc View Pure - // Checker changed `chainid` from pure to view in 0.8.0. - function _viewChainId() private view returns (uint256 chainId) { - // Assembly required since `block.chainid` was introduced in 0.8.0. - assembly { - chainId := chainid() - } - - address(this); // Silence warnings in older Solc versions. - } - - function _pureChainId() private pure returns (uint256 chainId) { - function() internal view returns (uint256) fnIn = _viewChainId; - function() internal pure returns (uint256) pureChainId; - assembly { - pureChainId := fnIn - } - chainId = pureChainId(); - } -} - -// Wrappers around cheatcodes to avoid footguns -abstract contract StdCheats is StdCheatsSafe { - using stdStorage for StdStorage; - - StdStorage private stdstore; - Vm private constant vm = Vm(address(uint160(uint256(keccak256("hevm cheat code"))))); - address private constant CONSOLE2_ADDRESS = 0x000000000000000000636F6e736F6c652e6c6f67; - - // Skip forward or rewind time by the specified number of seconds - function skip(uint256 time) internal virtual { - vm.warp(vm.getBlockTimestamp() + time); - } - - function rewind(uint256 time) internal virtual { - vm.warp(vm.getBlockTimestamp() - time); - } - - // Setup a prank from an address that has some ether - function hoax(address msgSender) internal virtual { - vm.deal(msgSender, 1 << 128); - vm.prank(msgSender); - } - - function hoax(address msgSender, uint256 give) internal virtual { - vm.deal(msgSender, give); - vm.prank(msgSender); - } - - function hoax(address msgSender, address origin) internal virtual { - vm.deal(msgSender, 1 << 128); - vm.prank(msgSender, origin); - } - - function hoax(address msgSender, address origin, uint256 give) internal virtual { - vm.deal(msgSender, give); - vm.prank(msgSender, origin); - } - - // Start perpetual prank from an address that has some ether - function startHoax(address msgSender) internal virtual { - vm.deal(msgSender, 1 << 128); - vm.startPrank(msgSender); - } - - function startHoax(address msgSender, uint256 give) internal virtual { - vm.deal(msgSender, give); - vm.startPrank(msgSender); - } - - // Start perpetual prank from an address that has some ether - // tx.origin is set to the origin parameter - function startHoax(address msgSender, address origin) internal virtual { - vm.deal(msgSender, 1 << 128); - vm.startPrank(msgSender, origin); - } - - function startHoax(address msgSender, address origin, uint256 give) internal virtual { - vm.deal(msgSender, give); - vm.startPrank(msgSender, origin); - } - - function changePrank(address msgSender) internal virtual { - console2_log_StdCheats("changePrank is deprecated. Please use vm.startPrank instead."); - vm.stopPrank(); - vm.startPrank(msgSender); - } - - function changePrank(address msgSender, address txOrigin) internal virtual { - vm.stopPrank(); - vm.startPrank(msgSender, txOrigin); - } - - // The same as Vm's `deal` - // Use the alternative signature for ERC20 tokens - function deal(address to, uint256 give) internal virtual { - vm.deal(to, give); - } - - // Set the balance of an account for any ERC20 token - // Use the alternative signature to update `totalSupply` - function deal(address token, address to, uint256 give) internal virtual { - deal(token, to, give, false); - } - - // Set the balance of an account for any ERC1155 token - // Use the alternative signature to update `totalSupply` - function dealERC1155(address token, address to, uint256 id, uint256 give) internal virtual { - dealERC1155(token, to, id, give, false); - } - - function deal(address token, address to, uint256 give, bool adjust) internal virtual { - // get current balance - (, bytes memory balData) = token.staticcall(abi.encodeWithSelector(0x70a08231, to)); - uint256 prevBal = abi.decode(balData, (uint256)); - - // update balance - stdstore.target(token).sig(0x70a08231).with_key(to).checked_write(give); - - // update total supply - if (adjust) { - (, bytes memory totSupData) = token.staticcall(abi.encodeWithSelector(0x18160ddd)); - uint256 totSup = abi.decode(totSupData, (uint256)); - if (give < prevBal) { - totSup -= (prevBal - give); - } else { - totSup += (give - prevBal); - } - stdstore.target(token).sig(0x18160ddd).checked_write(totSup); - } - } - - function dealERC1155(address token, address to, uint256 id, uint256 give, bool adjust) internal virtual { - // get current balance - (, bytes memory balData) = token.staticcall(abi.encodeWithSelector(0x00fdd58e, to, id)); - uint256 prevBal = abi.decode(balData, (uint256)); - - // update balance - stdstore.target(token).sig(0x00fdd58e).with_key(to).with_key(id).checked_write(give); - - // update total supply - if (adjust) { - (, bytes memory totSupData) = token.staticcall(abi.encodeWithSelector(0xbd85b039, id)); - require( - totSupData.length != 0, - "StdCheats deal(address,address,uint,uint,bool): target contract is not ERC1155Supply." - ); - uint256 totSup = abi.decode(totSupData, (uint256)); - if (give < prevBal) { - totSup -= (prevBal - give); - } else { - totSup += (give - prevBal); - } - stdstore.target(token).sig(0xbd85b039).with_key(id).checked_write(totSup); - } - } - - function dealERC721(address token, address to, uint256 id) internal virtual { - // check if token id is already minted and the actual owner. - (bool successMinted, bytes memory ownerData) = token.staticcall(abi.encodeWithSelector(0x6352211e, id)); - require(successMinted, "StdCheats deal(address,address,uint,bool): id not minted."); - - // get owner current balance - (, bytes memory fromBalData) = - token.staticcall(abi.encodeWithSelector(0x70a08231, abi.decode(ownerData, (address)))); - uint256 fromPrevBal = abi.decode(fromBalData, (uint256)); - - // get new user current balance - (, bytes memory toBalData) = token.staticcall(abi.encodeWithSelector(0x70a08231, to)); - uint256 toPrevBal = abi.decode(toBalData, (uint256)); - - // update balances - stdstore.target(token).sig(0x70a08231).with_key(abi.decode(ownerData, (address))).checked_write(--fromPrevBal); - stdstore.target(token).sig(0x70a08231).with_key(to).checked_write(++toPrevBal); - - // update owner - stdstore.target(token).sig(0x6352211e).with_key(id).checked_write(to); - } - - function deployCodeTo(string memory what, address where) internal virtual { - deployCodeTo(what, "", 0, where); - } - - function deployCodeTo(string memory what, bytes memory args, address where) internal virtual { - deployCodeTo(what, args, 0, where); - } - - function deployCodeTo(string memory what, bytes memory args, uint256 value, address where) internal virtual { - bytes memory creationCode = vm.getCode(what); - vm.etch(where, abi.encodePacked(creationCode, args)); - (bool success, bytes memory runtimeBytecode) = where.call{value: value}(""); - require(success, "StdCheats deployCodeTo(string,bytes,uint256,address): Failed to create runtime bytecode."); - vm.etch(where, runtimeBytecode); - } - - // Used to prevent the compilation of console, which shortens the compilation time when console is not used elsewhere. - function console2_log_StdCheats(string memory p0) private view { - (bool status,) = address(CONSOLE2_ADDRESS).staticcall(abi.encodeWithSignature("log(string)", p0)); - status; - } -} diff --git a/contracts/src/v0.8/vendor/forge-std/src/StdConstants.sol b/contracts/src/v0.8/vendor/forge-std/src/StdConstants.sol deleted file mode 100644 index 2047d2b33d..0000000000 --- a/contracts/src/v0.8/vendor/forge-std/src/StdConstants.sol +++ /dev/null @@ -1,30 +0,0 @@ -// SPDX-License-Identifier: MIT -pragma solidity >=0.6.2 <0.9.0; - -import {IMulticall3} from "./interfaces/IMulticall3.sol"; -import {Vm} from "./Vm.sol"; - -library StdConstants { - /// @dev Cheat code address. - /// Calculated as `address(uint160(uint256(keccak256("hevm cheat code"))))`. - Vm internal constant VM = Vm(0x7109709ECfa91a80626fF3989D68f67F5b1DD12D); - /// @dev console.sol and console2.sol work by executing a staticcall to this address. - /// Calculated as `address(uint160(uint88(bytes11("console.log"))))`. - address internal constant CONSOLE = 0x000000000000000000636F6e736F6c652e6c6f67; - /// @dev Used when deploying with create2. - /// Taken from https://github.com/Arachnid/deterministic-deployment-proxy. - address internal constant CREATE2_FACTORY = 0x4e59b44847b379578588920cA78FbF26c0B4956C; - /// @dev The default address for tx.origin and msg.sender. - /// Calculated as `address(uint160(uint256(keccak256("foundry default caller"))))`. - address internal constant DEFAULT_SENDER = 0x1804c8AB1F12E6bbf3894d4083f33e07309d1f38; - /// @dev The address of the first contract `CREATE`d by a running test contract. - /// When running tests, each test contract is `CREATE`d by `DEFAULT_SENDER` with nonce 1. - /// Calculated as `VM.computeCreateAddress(VM.computeCreateAddress(DEFAULT_SENDER, 1), 1)`. - address internal constant DEFAULT_TEST_CONTRACT = 0x5615dEB798BB3E4dFa0139dFa1b3D433Cc23b72f; - /// @dev Deterministic deployment address of the Multicall3 contract. - /// Taken from https://www.multicall3.com. - IMulticall3 internal constant MULTICALL3_ADDRESS = IMulticall3(0xcA11bde05977b3631167028862bE2a173976CA11); - /// @dev The order of the secp256k1 curve. - uint256 internal constant SECP256K1_ORDER = - 115792089237316195423570985008687907852837564279074904382605163141518161494337; -} diff --git a/contracts/src/v0.8/vendor/forge-std/src/StdError.sol b/contracts/src/v0.8/vendor/forge-std/src/StdError.sol deleted file mode 100644 index a302191faa..0000000000 --- a/contracts/src/v0.8/vendor/forge-std/src/StdError.sol +++ /dev/null @@ -1,15 +0,0 @@ -// SPDX-License-Identifier: MIT -// Panics work for versions >=0.8.0, but we lowered the pragma to make this compatible with Test -pragma solidity >=0.6.2 <0.9.0; - -library stdError { - bytes public constant assertionError = abi.encodeWithSignature("Panic(uint256)", 0x01); - bytes public constant arithmeticError = abi.encodeWithSignature("Panic(uint256)", 0x11); - bytes public constant divisionError = abi.encodeWithSignature("Panic(uint256)", 0x12); - bytes public constant enumConversionError = abi.encodeWithSignature("Panic(uint256)", 0x21); - bytes public constant encodeStorageError = abi.encodeWithSignature("Panic(uint256)", 0x22); - bytes public constant popError = abi.encodeWithSignature("Panic(uint256)", 0x31); - bytes public constant indexOOBError = abi.encodeWithSignature("Panic(uint256)", 0x32); - bytes public constant memOverflowError = abi.encodeWithSignature("Panic(uint256)", 0x41); - bytes public constant zeroVarError = abi.encodeWithSignature("Panic(uint256)", 0x51); -} diff --git a/contracts/src/v0.8/vendor/forge-std/src/StdInvariant.sol b/contracts/src/v0.8/vendor/forge-std/src/StdInvariant.sol deleted file mode 100644 index 056db98fcf..0000000000 --- a/contracts/src/v0.8/vendor/forge-std/src/StdInvariant.sol +++ /dev/null @@ -1,122 +0,0 @@ -// SPDX-License-Identifier: MIT -pragma solidity >=0.6.2 <0.9.0; - -pragma experimental ABIEncoderV2; - -abstract contract StdInvariant { - struct FuzzSelector { - address addr; - bytes4[] selectors; - } - - struct FuzzArtifactSelector { - string artifact; - bytes4[] selectors; - } - - struct FuzzInterface { - address addr; - string[] artifacts; - } - - address[] private _excludedContracts; - address[] private _excludedSenders; - address[] private _targetedContracts; - address[] private _targetedSenders; - - string[] private _excludedArtifacts; - string[] private _targetedArtifacts; - - FuzzArtifactSelector[] private _targetedArtifactSelectors; - - FuzzSelector[] private _excludedSelectors; - FuzzSelector[] private _targetedSelectors; - - FuzzInterface[] private _targetedInterfaces; - - // Functions for users: - // These are intended to be called in tests. - - function excludeContract(address newExcludedContract_) internal { - _excludedContracts.push(newExcludedContract_); - } - - function excludeSelector(FuzzSelector memory newExcludedSelector_) internal { - _excludedSelectors.push(newExcludedSelector_); - } - - function excludeSender(address newExcludedSender_) internal { - _excludedSenders.push(newExcludedSender_); - } - - function excludeArtifact(string memory newExcludedArtifact_) internal { - _excludedArtifacts.push(newExcludedArtifact_); - } - - function targetArtifact(string memory newTargetedArtifact_) internal { - _targetedArtifacts.push(newTargetedArtifact_); - } - - function targetArtifactSelector(FuzzArtifactSelector memory newTargetedArtifactSelector_) internal { - _targetedArtifactSelectors.push(newTargetedArtifactSelector_); - } - - function targetContract(address newTargetedContract_) internal { - _targetedContracts.push(newTargetedContract_); - } - - function targetSelector(FuzzSelector memory newTargetedSelector_) internal { - _targetedSelectors.push(newTargetedSelector_); - } - - function targetSender(address newTargetedSender_) internal { - _targetedSenders.push(newTargetedSender_); - } - - function targetInterface(FuzzInterface memory newTargetedInterface_) internal { - _targetedInterfaces.push(newTargetedInterface_); - } - - // Functions for forge: - // These are called by forge to run invariant tests and don't need to be called in tests. - - function excludeArtifacts() public view returns (string[] memory excludedArtifacts_) { - excludedArtifacts_ = _excludedArtifacts; - } - - function excludeContracts() public view returns (address[] memory excludedContracts_) { - excludedContracts_ = _excludedContracts; - } - - function excludeSelectors() public view returns (FuzzSelector[] memory excludedSelectors_) { - excludedSelectors_ = _excludedSelectors; - } - - function excludeSenders() public view returns (address[] memory excludedSenders_) { - excludedSenders_ = _excludedSenders; - } - - function targetArtifacts() public view returns (string[] memory targetedArtifacts_) { - targetedArtifacts_ = _targetedArtifacts; - } - - function targetArtifactSelectors() public view returns (FuzzArtifactSelector[] memory targetedArtifactSelectors_) { - targetedArtifactSelectors_ = _targetedArtifactSelectors; - } - - function targetContracts() public view returns (address[] memory targetedContracts_) { - targetedContracts_ = _targetedContracts; - } - - function targetSelectors() public view returns (FuzzSelector[] memory targetedSelectors_) { - targetedSelectors_ = _targetedSelectors; - } - - function targetSenders() public view returns (address[] memory targetedSenders_) { - targetedSenders_ = _targetedSenders; - } - - function targetInterfaces() public view returns (FuzzInterface[] memory targetedInterfaces_) { - targetedInterfaces_ = _targetedInterfaces; - } -} diff --git a/contracts/src/v0.8/vendor/forge-std/src/StdJson.sol b/contracts/src/v0.8/vendor/forge-std/src/StdJson.sol deleted file mode 100644 index 2a033c03a7..0000000000 --- a/contracts/src/v0.8/vendor/forge-std/src/StdJson.sol +++ /dev/null @@ -1,283 +0,0 @@ -// SPDX-License-Identifier: MIT -pragma solidity >=0.6.0 <0.9.0; - -pragma experimental ABIEncoderV2; - -import {VmSafe} from "./Vm.sol"; - -// Helpers for parsing and writing JSON files -// To parse: -// ``` -// using stdJson for string; -// string memory json = vm.readFile(""); -// json.readUint(""); -// ``` -// To write: -// ``` -// using stdJson for string; -// string memory json = "json"; -// json.serialize("a", uint256(123)); -// string memory semiFinal = json.serialize("b", string("test")); -// string memory finalJson = json.serialize("c", semiFinal); -// finalJson.write(""); -// ``` - -library stdJson { - VmSafe private constant vm = VmSafe(address(uint160(uint256(keccak256("hevm cheat code"))))); - - function keyExists(string memory json, string memory key) internal view returns (bool) { - return vm.keyExistsJson(json, key); - } - - function parseRaw(string memory json, string memory key) internal pure returns (bytes memory) { - return vm.parseJson(json, key); - } - - function readUint(string memory json, string memory key) internal pure returns (uint256) { - return vm.parseJsonUint(json, key); - } - - function readUintArray(string memory json, string memory key) internal pure returns (uint256[] memory) { - return vm.parseJsonUintArray(json, key); - } - - function readInt(string memory json, string memory key) internal pure returns (int256) { - return vm.parseJsonInt(json, key); - } - - function readIntArray(string memory json, string memory key) internal pure returns (int256[] memory) { - return vm.parseJsonIntArray(json, key); - } - - function readBytes32(string memory json, string memory key) internal pure returns (bytes32) { - return vm.parseJsonBytes32(json, key); - } - - function readBytes32Array(string memory json, string memory key) internal pure returns (bytes32[] memory) { - return vm.parseJsonBytes32Array(json, key); - } - - function readString(string memory json, string memory key) internal pure returns (string memory) { - return vm.parseJsonString(json, key); - } - - function readStringArray(string memory json, string memory key) internal pure returns (string[] memory) { - return vm.parseJsonStringArray(json, key); - } - - function readAddress(string memory json, string memory key) internal pure returns (address) { - return vm.parseJsonAddress(json, key); - } - - function readAddressArray(string memory json, string memory key) internal pure returns (address[] memory) { - return vm.parseJsonAddressArray(json, key); - } - - function readBool(string memory json, string memory key) internal pure returns (bool) { - return vm.parseJsonBool(json, key); - } - - function readBoolArray(string memory json, string memory key) internal pure returns (bool[] memory) { - return vm.parseJsonBoolArray(json, key); - } - - function readBytes(string memory json, string memory key) internal pure returns (bytes memory) { - return vm.parseJsonBytes(json, key); - } - - function readBytesArray(string memory json, string memory key) internal pure returns (bytes[] memory) { - return vm.parseJsonBytesArray(json, key); - } - - function readUintOr(string memory json, string memory key, uint256 defaultValue) internal view returns (uint256) { - return keyExists(json, key) ? readUint(json, key) : defaultValue; - } - - function readUintArrayOr(string memory json, string memory key, uint256[] memory defaultValue) - internal - view - returns (uint256[] memory) - { - return keyExists(json, key) ? readUintArray(json, key) : defaultValue; - } - - function readIntOr(string memory json, string memory key, int256 defaultValue) internal view returns (int256) { - return keyExists(json, key) ? readInt(json, key) : defaultValue; - } - - function readIntArrayOr(string memory json, string memory key, int256[] memory defaultValue) - internal - view - returns (int256[] memory) - { - return keyExists(json, key) ? readIntArray(json, key) : defaultValue; - } - - function readBytes32Or(string memory json, string memory key, bytes32 defaultValue) - internal - view - returns (bytes32) - { - return keyExists(json, key) ? readBytes32(json, key) : defaultValue; - } - - function readBytes32ArrayOr(string memory json, string memory key, bytes32[] memory defaultValue) - internal - view - returns (bytes32[] memory) - { - return keyExists(json, key) ? readBytes32Array(json, key) : defaultValue; - } - - function readStringOr(string memory json, string memory key, string memory defaultValue) - internal - view - returns (string memory) - { - return keyExists(json, key) ? readString(json, key) : defaultValue; - } - - function readStringArrayOr(string memory json, string memory key, string[] memory defaultValue) - internal - view - returns (string[] memory) - { - return keyExists(json, key) ? readStringArray(json, key) : defaultValue; - } - - function readAddressOr(string memory json, string memory key, address defaultValue) - internal - view - returns (address) - { - return keyExists(json, key) ? readAddress(json, key) : defaultValue; - } - - function readAddressArrayOr(string memory json, string memory key, address[] memory defaultValue) - internal - view - returns (address[] memory) - { - return keyExists(json, key) ? readAddressArray(json, key) : defaultValue; - } - - function readBoolOr(string memory json, string memory key, bool defaultValue) internal view returns (bool) { - return keyExists(json, key) ? readBool(json, key) : defaultValue; - } - - function readBoolArrayOr(string memory json, string memory key, bool[] memory defaultValue) - internal - view - returns (bool[] memory) - { - return keyExists(json, key) ? readBoolArray(json, key) : defaultValue; - } - - function readBytesOr(string memory json, string memory key, bytes memory defaultValue) - internal - view - returns (bytes memory) - { - return keyExists(json, key) ? readBytes(json, key) : defaultValue; - } - - function readBytesArrayOr(string memory json, string memory key, bytes[] memory defaultValue) - internal - view - returns (bytes[] memory) - { - return keyExists(json, key) ? readBytesArray(json, key) : defaultValue; - } - - function serialize(string memory jsonKey, string memory rootObject) internal returns (string memory) { - return vm.serializeJson(jsonKey, rootObject); - } - - function serialize(string memory jsonKey, string memory key, bool value) internal returns (string memory) { - return vm.serializeBool(jsonKey, key, value); - } - - function serialize(string memory jsonKey, string memory key, bool[] memory value) - internal - returns (string memory) - { - return vm.serializeBool(jsonKey, key, value); - } - - function serialize(string memory jsonKey, string memory key, uint256 value) internal returns (string memory) { - return vm.serializeUint(jsonKey, key, value); - } - - function serialize(string memory jsonKey, string memory key, uint256[] memory value) - internal - returns (string memory) - { - return vm.serializeUint(jsonKey, key, value); - } - - function serialize(string memory jsonKey, string memory key, int256 value) internal returns (string memory) { - return vm.serializeInt(jsonKey, key, value); - } - - function serialize(string memory jsonKey, string memory key, int256[] memory value) - internal - returns (string memory) - { - return vm.serializeInt(jsonKey, key, value); - } - - function serialize(string memory jsonKey, string memory key, address value) internal returns (string memory) { - return vm.serializeAddress(jsonKey, key, value); - } - - function serialize(string memory jsonKey, string memory key, address[] memory value) - internal - returns (string memory) - { - return vm.serializeAddress(jsonKey, key, value); - } - - function serialize(string memory jsonKey, string memory key, bytes32 value) internal returns (string memory) { - return vm.serializeBytes32(jsonKey, key, value); - } - - function serialize(string memory jsonKey, string memory key, bytes32[] memory value) - internal - returns (string memory) - { - return vm.serializeBytes32(jsonKey, key, value); - } - - function serialize(string memory jsonKey, string memory key, bytes memory value) internal returns (string memory) { - return vm.serializeBytes(jsonKey, key, value); - } - - function serialize(string memory jsonKey, string memory key, bytes[] memory value) - internal - returns (string memory) - { - return vm.serializeBytes(jsonKey, key, value); - } - - function serialize(string memory jsonKey, string memory key, string memory value) - internal - returns (string memory) - { - return vm.serializeString(jsonKey, key, value); - } - - function serialize(string memory jsonKey, string memory key, string[] memory value) - internal - returns (string memory) - { - return vm.serializeString(jsonKey, key, value); - } - - function write(string memory jsonKey, string memory path) internal { - vm.writeJson(jsonKey, path); - } - - function write(string memory jsonKey, string memory path, string memory valueKey) internal { - vm.writeJson(jsonKey, path, valueKey); - } -} diff --git a/contracts/src/v0.8/vendor/forge-std/src/StdMath.sol b/contracts/src/v0.8/vendor/forge-std/src/StdMath.sol deleted file mode 100644 index 459523bdac..0000000000 --- a/contracts/src/v0.8/vendor/forge-std/src/StdMath.sol +++ /dev/null @@ -1,43 +0,0 @@ -// SPDX-License-Identifier: MIT -pragma solidity >=0.6.2 <0.9.0; - -library stdMath { - int256 private constant INT256_MIN = -57896044618658097711785492504343953926634992332820282019728792003956564819968; - - function abs(int256 a) internal pure returns (uint256) { - // Required or it will fail when `a = type(int256).min` - if (a == INT256_MIN) { - return 57896044618658097711785492504343953926634992332820282019728792003956564819968; - } - - return uint256(a > 0 ? a : -a); - } - - function delta(uint256 a, uint256 b) internal pure returns (uint256) { - return a > b ? a - b : b - a; - } - - function delta(int256 a, int256 b) internal pure returns (uint256) { - // a and b are of the same sign - // this works thanks to two's complement, the left-most bit is the sign bit - if ((a ^ b) > -1) { - return delta(abs(a), abs(b)); - } - - // a and b are of opposite signs - return abs(a) + abs(b); - } - - function percentDelta(uint256 a, uint256 b) internal pure returns (uint256) { - uint256 absDelta = delta(a, b); - - return absDelta * 1e18 / b; - } - - function percentDelta(int256 a, int256 b) internal pure returns (uint256) { - uint256 absDelta = delta(a, b); - uint256 absB = abs(b); - - return absDelta * 1e18 / absB; - } -} diff --git a/contracts/src/v0.8/vendor/forge-std/src/StdStorage.sol b/contracts/src/v0.8/vendor/forge-std/src/StdStorage.sol deleted file mode 100644 index bf3223dee5..0000000000 --- a/contracts/src/v0.8/vendor/forge-std/src/StdStorage.sol +++ /dev/null @@ -1,473 +0,0 @@ -// SPDX-License-Identifier: MIT -pragma solidity >=0.6.2 <0.9.0; - -import {Vm} from "./Vm.sol"; - -struct FindData { - uint256 slot; - uint256 offsetLeft; - uint256 offsetRight; - bool found; -} - -struct StdStorage { - mapping(address => mapping(bytes4 => mapping(bytes32 => FindData))) finds; - bytes32[] _keys; - bytes4 _sig; - uint256 _depth; - address _target; - bytes32 _set; - bool _enable_packed_slots; - bytes _calldata; -} - -library stdStorageSafe { - event SlotFound(address who, bytes4 fsig, bytes32 keysHash, uint256 slot); - event WARNING_UninitedSlot(address who, uint256 slot); - - Vm private constant vm = Vm(address(uint160(uint256(keccak256("hevm cheat code"))))); - uint256 constant UINT256_MAX = 115792089237316195423570985008687907853269984665640564039457584007913129639935; - - function sigs(string memory sigStr) internal pure returns (bytes4) { - return bytes4(keccak256(bytes(sigStr))); - } - - function getCallParams(StdStorage storage self) internal view returns (bytes memory) { - if (self._calldata.length == 0) { - return flatten(self._keys); - } else { - return self._calldata; - } - } - - // Calls target contract with configured parameters - function callTarget(StdStorage storage self) internal view returns (bool, bytes32) { - bytes memory cald = abi.encodePacked(self._sig, getCallParams(self)); - (bool success, bytes memory rdat) = self._target.staticcall(cald); - bytes32 result = bytesToBytes32(rdat, 32 * self._depth); - - return (success, result); - } - - // Tries mutating slot value to determine if the targeted value is stored in it. - // If current value is 0, then we are setting slot value to type(uint256).max - // Otherwise, we set it to 0. That way, return value should always be affected. - function checkSlotMutatesCall(StdStorage storage self, bytes32 slot) internal returns (bool) { - bytes32 prevSlotValue = vm.load(self._target, slot); - (bool success, bytes32 prevReturnValue) = callTarget(self); - - bytes32 testVal = prevReturnValue == bytes32(0) ? bytes32(UINT256_MAX) : bytes32(0); - vm.store(self._target, slot, testVal); - - (, bytes32 newReturnValue) = callTarget(self); - - vm.store(self._target, slot, prevSlotValue); - - return (success && (prevReturnValue != newReturnValue)); - } - - // Tries setting one of the bits in slot to 1 until return value changes. - // Index of resulted bit is an offset packed slot has from left/right side - function findOffset(StdStorage storage self, bytes32 slot, bool left) internal returns (bool, uint256) { - for (uint256 offset = 0; offset < 256; offset++) { - uint256 valueToPut = left ? (1 << (255 - offset)) : (1 << offset); - vm.store(self._target, slot, bytes32(valueToPut)); - - (bool success, bytes32 data) = callTarget(self); - - if (success && (uint256(data) > 0)) { - return (true, offset); - } - } - return (false, 0); - } - - function findOffsets(StdStorage storage self, bytes32 slot) internal returns (bool, uint256, uint256) { - bytes32 prevSlotValue = vm.load(self._target, slot); - - (bool foundLeft, uint256 offsetLeft) = findOffset(self, slot, true); - (bool foundRight, uint256 offsetRight) = findOffset(self, slot, false); - - // `findOffset` may mutate slot value, so we are setting it to initial value - vm.store(self._target, slot, prevSlotValue); - return (foundLeft && foundRight, offsetLeft, offsetRight); - } - - function find(StdStorage storage self) internal returns (FindData storage) { - return find(self, true); - } - - /// @notice find an arbitrary storage slot given a function sig, input data, address of the contract and a value to check against - // slot complexity: - // if flat, will be bytes32(uint256(uint)); - // if map, will be keccak256(abi.encode(key, uint(slot))); - // if deep map, will be keccak256(abi.encode(key1, keccak256(abi.encode(key0, uint(slot))))); - // if map struct, will be bytes32(uint256(keccak256(abi.encode(key1, keccak256(abi.encode(key0, uint(slot)))))) + structFieldDepth); - function find(StdStorage storage self, bool _clear) internal returns (FindData storage) { - address who = self._target; - bytes4 fsig = self._sig; - uint256 field_depth = self._depth; - bytes memory params = getCallParams(self); - - // calldata to test against - if (self.finds[who][fsig][keccak256(abi.encodePacked(params, field_depth))].found) { - if (_clear) { - clear(self); - } - return self.finds[who][fsig][keccak256(abi.encodePacked(params, field_depth))]; - } - vm.record(); - (, bytes32 callResult) = callTarget(self); - (bytes32[] memory reads,) = vm.accesses(address(who)); - - if (reads.length == 0) { - revert("stdStorage find(StdStorage): No storage use detected for target."); - } else { - for (uint256 i = reads.length; --i >= 0;) { - bytes32 prev = vm.load(who, reads[i]); - if (prev == bytes32(0)) { - emit WARNING_UninitedSlot(who, uint256(reads[i])); - } - - if (!checkSlotMutatesCall(self, reads[i])) { - continue; - } - - (uint256 offsetLeft, uint256 offsetRight) = (0, 0); - - if (self._enable_packed_slots) { - bool found; - (found, offsetLeft, offsetRight) = findOffsets(self, reads[i]); - if (!found) { - continue; - } - } - - // Check that value between found offsets is equal to the current call result - uint256 curVal = (uint256(prev) & getMaskByOffsets(offsetLeft, offsetRight)) >> offsetRight; - - if (uint256(callResult) != curVal) { - continue; - } - - emit SlotFound(who, fsig, keccak256(abi.encodePacked(params, field_depth)), uint256(reads[i])); - self.finds[who][fsig][keccak256(abi.encodePacked(params, field_depth))] = - FindData(uint256(reads[i]), offsetLeft, offsetRight, true); - break; - } - } - - require( - self.finds[who][fsig][keccak256(abi.encodePacked(params, field_depth))].found, - "stdStorage find(StdStorage): Slot(s) not found." - ); - - if (_clear) { - clear(self); - } - return self.finds[who][fsig][keccak256(abi.encodePacked(params, field_depth))]; - } - - function target(StdStorage storage self, address _target) internal returns (StdStorage storage) { - self._target = _target; - return self; - } - - function sig(StdStorage storage self, bytes4 _sig) internal returns (StdStorage storage) { - self._sig = _sig; - return self; - } - - function sig(StdStorage storage self, string memory _sig) internal returns (StdStorage storage) { - self._sig = sigs(_sig); - return self; - } - - function with_calldata(StdStorage storage self, bytes memory _calldata) internal returns (StdStorage storage) { - self._calldata = _calldata; - return self; - } - - function with_key(StdStorage storage self, address who) internal returns (StdStorage storage) { - self._keys.push(bytes32(uint256(uint160(who)))); - return self; - } - - function with_key(StdStorage storage self, uint256 amt) internal returns (StdStorage storage) { - self._keys.push(bytes32(amt)); - return self; - } - - function with_key(StdStorage storage self, bytes32 key) internal returns (StdStorage storage) { - self._keys.push(key); - return self; - } - - function enable_packed_slots(StdStorage storage self) internal returns (StdStorage storage) { - self._enable_packed_slots = true; - return self; - } - - function depth(StdStorage storage self, uint256 _depth) internal returns (StdStorage storage) { - self._depth = _depth; - return self; - } - - function read(StdStorage storage self) private returns (bytes memory) { - FindData storage data = find(self, false); - uint256 mask = getMaskByOffsets(data.offsetLeft, data.offsetRight); - uint256 value = (uint256(vm.load(self._target, bytes32(data.slot))) & mask) >> data.offsetRight; - clear(self); - return abi.encode(value); - } - - function read_bytes32(StdStorage storage self) internal returns (bytes32) { - return abi.decode(read(self), (bytes32)); - } - - function read_bool(StdStorage storage self) internal returns (bool) { - int256 v = read_int(self); - if (v == 0) return false; - if (v == 1) return true; - revert("stdStorage read_bool(StdStorage): Cannot decode. Make sure you are reading a bool."); - } - - function read_address(StdStorage storage self) internal returns (address) { - return abi.decode(read(self), (address)); - } - - function read_uint(StdStorage storage self) internal returns (uint256) { - return abi.decode(read(self), (uint256)); - } - - function read_int(StdStorage storage self) internal returns (int256) { - return abi.decode(read(self), (int256)); - } - - function parent(StdStorage storage self) internal returns (uint256, bytes32) { - address who = self._target; - uint256 field_depth = self._depth; - vm.startMappingRecording(); - uint256 child = find(self, true).slot - field_depth; - (bool found, bytes32 key, bytes32 parent_slot) = vm.getMappingKeyAndParentOf(who, bytes32(child)); - if (!found) { - revert( - "stdStorage read_bool(StdStorage): Cannot find parent. Make sure you give a slot and startMappingRecording() has been called." - ); - } - return (uint256(parent_slot), key); - } - - function root(StdStorage storage self) internal returns (uint256) { - address who = self._target; - uint256 field_depth = self._depth; - vm.startMappingRecording(); - uint256 child = find(self, true).slot - field_depth; - bool found; - bytes32 root_slot; - bytes32 parent_slot; - (found,, parent_slot) = vm.getMappingKeyAndParentOf(who, bytes32(child)); - if (!found) { - revert( - "stdStorage read_bool(StdStorage): Cannot find parent. Make sure you give a slot and startMappingRecording() has been called." - ); - } - while (found) { - root_slot = parent_slot; - (found,, parent_slot) = vm.getMappingKeyAndParentOf(who, bytes32(root_slot)); - } - return uint256(root_slot); - } - - function bytesToBytes32(bytes memory b, uint256 offset) private pure returns (bytes32) { - bytes32 out; - - uint256 max = b.length > 32 ? 32 : b.length; - for (uint256 i = 0; i < max; i++) { - out |= bytes32(b[offset + i] & 0xFF) >> (i * 8); - } - return out; - } - - function flatten(bytes32[] memory b) private pure returns (bytes memory) { - bytes memory result = new bytes(b.length * 32); - for (uint256 i = 0; i < b.length; i++) { - bytes32 k = b[i]; - /// @solidity memory-safe-assembly - assembly { - mstore(add(result, add(32, mul(32, i))), k) - } - } - - return result; - } - - function clear(StdStorage storage self) internal { - delete self._target; - delete self._sig; - delete self._keys; - delete self._depth; - delete self._enable_packed_slots; - delete self._calldata; - } - - // Returns mask which contains non-zero bits for values between `offsetLeft` and `offsetRight` - // (slotValue & mask) >> offsetRight will be the value of the given packed variable - function getMaskByOffsets(uint256 offsetLeft, uint256 offsetRight) internal pure returns (uint256 mask) { - // mask = ((1 << (256 - (offsetRight + offsetLeft))) - 1) << offsetRight; - // using assembly because (1 << 256) causes overflow - assembly { - mask := shl(offsetRight, sub(shl(sub(256, add(offsetRight, offsetLeft)), 1), 1)) - } - } - - // Returns slot value with updated packed variable. - function getUpdatedSlotValue(bytes32 curValue, uint256 varValue, uint256 offsetLeft, uint256 offsetRight) - internal - pure - returns (bytes32 newValue) - { - return bytes32((uint256(curValue) & ~getMaskByOffsets(offsetLeft, offsetRight)) | (varValue << offsetRight)); - } -} - -library stdStorage { - Vm private constant vm = Vm(address(uint160(uint256(keccak256("hevm cheat code"))))); - - function sigs(string memory sigStr) internal pure returns (bytes4) { - return stdStorageSafe.sigs(sigStr); - } - - function find(StdStorage storage self) internal returns (uint256) { - return find(self, true); - } - - function find(StdStorage storage self, bool _clear) internal returns (uint256) { - return stdStorageSafe.find(self, _clear).slot; - } - - function target(StdStorage storage self, address _target) internal returns (StdStorage storage) { - return stdStorageSafe.target(self, _target); - } - - function sig(StdStorage storage self, bytes4 _sig) internal returns (StdStorage storage) { - return stdStorageSafe.sig(self, _sig); - } - - function sig(StdStorage storage self, string memory _sig) internal returns (StdStorage storage) { - return stdStorageSafe.sig(self, _sig); - } - - function with_key(StdStorage storage self, address who) internal returns (StdStorage storage) { - return stdStorageSafe.with_key(self, who); - } - - function with_key(StdStorage storage self, uint256 amt) internal returns (StdStorage storage) { - return stdStorageSafe.with_key(self, amt); - } - - function with_key(StdStorage storage self, bytes32 key) internal returns (StdStorage storage) { - return stdStorageSafe.with_key(self, key); - } - - function with_calldata(StdStorage storage self, bytes memory _calldata) internal returns (StdStorage storage) { - return stdStorageSafe.with_calldata(self, _calldata); - } - - function enable_packed_slots(StdStorage storage self) internal returns (StdStorage storage) { - return stdStorageSafe.enable_packed_slots(self); - } - - function depth(StdStorage storage self, uint256 _depth) internal returns (StdStorage storage) { - return stdStorageSafe.depth(self, _depth); - } - - function clear(StdStorage storage self) internal { - stdStorageSafe.clear(self); - } - - function checked_write(StdStorage storage self, address who) internal { - checked_write(self, bytes32(uint256(uint160(who)))); - } - - function checked_write(StdStorage storage self, uint256 amt) internal { - checked_write(self, bytes32(amt)); - } - - function checked_write_int(StdStorage storage self, int256 val) internal { - checked_write(self, bytes32(uint256(val))); - } - - function checked_write(StdStorage storage self, bool write) internal { - bytes32 t; - /// @solidity memory-safe-assembly - assembly { - t := write - } - checked_write(self, t); - } - - function checked_write(StdStorage storage self, bytes32 set) internal { - address who = self._target; - bytes4 fsig = self._sig; - uint256 field_depth = self._depth; - bytes memory params = stdStorageSafe.getCallParams(self); - - if (!self.finds[who][fsig][keccak256(abi.encodePacked(params, field_depth))].found) { - find(self, false); - } - FindData storage data = self.finds[who][fsig][keccak256(abi.encodePacked(params, field_depth))]; - if ((data.offsetLeft + data.offsetRight) > 0) { - uint256 maxVal = 2 ** (256 - (data.offsetLeft + data.offsetRight)); - require( - uint256(set) < maxVal, - string( - abi.encodePacked( - "stdStorage find(StdStorage): Packed slot. We can't fit value greater than ", - vm.toString(maxVal) - ) - ) - ); - } - bytes32 curVal = vm.load(who, bytes32(data.slot)); - bytes32 valToSet = stdStorageSafe.getUpdatedSlotValue(curVal, uint256(set), data.offsetLeft, data.offsetRight); - - vm.store(who, bytes32(data.slot), valToSet); - - (bool success, bytes32 callResult) = stdStorageSafe.callTarget(self); - - if (!success || callResult != set) { - vm.store(who, bytes32(data.slot), curVal); - revert("stdStorage find(StdStorage): Failed to write value."); - } - clear(self); - } - - function read_bytes32(StdStorage storage self) internal returns (bytes32) { - return stdStorageSafe.read_bytes32(self); - } - - function read_bool(StdStorage storage self) internal returns (bool) { - return stdStorageSafe.read_bool(self); - } - - function read_address(StdStorage storage self) internal returns (address) { - return stdStorageSafe.read_address(self); - } - - function read_uint(StdStorage storage self) internal returns (uint256) { - return stdStorageSafe.read_uint(self); - } - - function read_int(StdStorage storage self) internal returns (int256) { - return stdStorageSafe.read_int(self); - } - - function parent(StdStorage storage self) internal returns (uint256, bytes32) { - return stdStorageSafe.parent(self); - } - - function root(StdStorage storage self) internal returns (uint256) { - return stdStorageSafe.root(self); - } -} diff --git a/contracts/src/v0.8/vendor/forge-std/src/StdStyle.sol b/contracts/src/v0.8/vendor/forge-std/src/StdStyle.sol deleted file mode 100644 index d371e0c60a..0000000000 --- a/contracts/src/v0.8/vendor/forge-std/src/StdStyle.sol +++ /dev/null @@ -1,333 +0,0 @@ -// SPDX-License-Identifier: MIT -pragma solidity >=0.4.22 <0.9.0; - -import {VmSafe} from "./Vm.sol"; - -library StdStyle { - VmSafe private constant vm = VmSafe(address(uint160(uint256(keccak256("hevm cheat code"))))); - - string constant RED = "\u001b[91m"; - string constant GREEN = "\u001b[92m"; - string constant YELLOW = "\u001b[93m"; - string constant BLUE = "\u001b[94m"; - string constant MAGENTA = "\u001b[95m"; - string constant CYAN = "\u001b[96m"; - string constant BOLD = "\u001b[1m"; - string constant DIM = "\u001b[2m"; - string constant ITALIC = "\u001b[3m"; - string constant UNDERLINE = "\u001b[4m"; - string constant INVERSE = "\u001b[7m"; - string constant RESET = "\u001b[0m"; - - function styleConcat(string memory style, string memory self) private pure returns (string memory) { - return string(abi.encodePacked(style, self, RESET)); - } - - function red(string memory self) internal pure returns (string memory) { - return styleConcat(RED, self); - } - - function red(uint256 self) internal pure returns (string memory) { - return red(vm.toString(self)); - } - - function red(int256 self) internal pure returns (string memory) { - return red(vm.toString(self)); - } - - function red(address self) internal pure returns (string memory) { - return red(vm.toString(self)); - } - - function red(bool self) internal pure returns (string memory) { - return red(vm.toString(self)); - } - - function redBytes(bytes memory self) internal pure returns (string memory) { - return red(vm.toString(self)); - } - - function redBytes32(bytes32 self) internal pure returns (string memory) { - return red(vm.toString(self)); - } - - function green(string memory self) internal pure returns (string memory) { - return styleConcat(GREEN, self); - } - - function green(uint256 self) internal pure returns (string memory) { - return green(vm.toString(self)); - } - - function green(int256 self) internal pure returns (string memory) { - return green(vm.toString(self)); - } - - function green(address self) internal pure returns (string memory) { - return green(vm.toString(self)); - } - - function green(bool self) internal pure returns (string memory) { - return green(vm.toString(self)); - } - - function greenBytes(bytes memory self) internal pure returns (string memory) { - return green(vm.toString(self)); - } - - function greenBytes32(bytes32 self) internal pure returns (string memory) { - return green(vm.toString(self)); - } - - function yellow(string memory self) internal pure returns (string memory) { - return styleConcat(YELLOW, self); - } - - function yellow(uint256 self) internal pure returns (string memory) { - return yellow(vm.toString(self)); - } - - function yellow(int256 self) internal pure returns (string memory) { - return yellow(vm.toString(self)); - } - - function yellow(address self) internal pure returns (string memory) { - return yellow(vm.toString(self)); - } - - function yellow(bool self) internal pure returns (string memory) { - return yellow(vm.toString(self)); - } - - function yellowBytes(bytes memory self) internal pure returns (string memory) { - return yellow(vm.toString(self)); - } - - function yellowBytes32(bytes32 self) internal pure returns (string memory) { - return yellow(vm.toString(self)); - } - - function blue(string memory self) internal pure returns (string memory) { - return styleConcat(BLUE, self); - } - - function blue(uint256 self) internal pure returns (string memory) { - return blue(vm.toString(self)); - } - - function blue(int256 self) internal pure returns (string memory) { - return blue(vm.toString(self)); - } - - function blue(address self) internal pure returns (string memory) { - return blue(vm.toString(self)); - } - - function blue(bool self) internal pure returns (string memory) { - return blue(vm.toString(self)); - } - - function blueBytes(bytes memory self) internal pure returns (string memory) { - return blue(vm.toString(self)); - } - - function blueBytes32(bytes32 self) internal pure returns (string memory) { - return blue(vm.toString(self)); - } - - function magenta(string memory self) internal pure returns (string memory) { - return styleConcat(MAGENTA, self); - } - - function magenta(uint256 self) internal pure returns (string memory) { - return magenta(vm.toString(self)); - } - - function magenta(int256 self) internal pure returns (string memory) { - return magenta(vm.toString(self)); - } - - function magenta(address self) internal pure returns (string memory) { - return magenta(vm.toString(self)); - } - - function magenta(bool self) internal pure returns (string memory) { - return magenta(vm.toString(self)); - } - - function magentaBytes(bytes memory self) internal pure returns (string memory) { - return magenta(vm.toString(self)); - } - - function magentaBytes32(bytes32 self) internal pure returns (string memory) { - return magenta(vm.toString(self)); - } - - function cyan(string memory self) internal pure returns (string memory) { - return styleConcat(CYAN, self); - } - - function cyan(uint256 self) internal pure returns (string memory) { - return cyan(vm.toString(self)); - } - - function cyan(int256 self) internal pure returns (string memory) { - return cyan(vm.toString(self)); - } - - function cyan(address self) internal pure returns (string memory) { - return cyan(vm.toString(self)); - } - - function cyan(bool self) internal pure returns (string memory) { - return cyan(vm.toString(self)); - } - - function cyanBytes(bytes memory self) internal pure returns (string memory) { - return cyan(vm.toString(self)); - } - - function cyanBytes32(bytes32 self) internal pure returns (string memory) { - return cyan(vm.toString(self)); - } - - function bold(string memory self) internal pure returns (string memory) { - return styleConcat(BOLD, self); - } - - function bold(uint256 self) internal pure returns (string memory) { - return bold(vm.toString(self)); - } - - function bold(int256 self) internal pure returns (string memory) { - return bold(vm.toString(self)); - } - - function bold(address self) internal pure returns (string memory) { - return bold(vm.toString(self)); - } - - function bold(bool self) internal pure returns (string memory) { - return bold(vm.toString(self)); - } - - function boldBytes(bytes memory self) internal pure returns (string memory) { - return bold(vm.toString(self)); - } - - function boldBytes32(bytes32 self) internal pure returns (string memory) { - return bold(vm.toString(self)); - } - - function dim(string memory self) internal pure returns (string memory) { - return styleConcat(DIM, self); - } - - function dim(uint256 self) internal pure returns (string memory) { - return dim(vm.toString(self)); - } - - function dim(int256 self) internal pure returns (string memory) { - return dim(vm.toString(self)); - } - - function dim(address self) internal pure returns (string memory) { - return dim(vm.toString(self)); - } - - function dim(bool self) internal pure returns (string memory) { - return dim(vm.toString(self)); - } - - function dimBytes(bytes memory self) internal pure returns (string memory) { - return dim(vm.toString(self)); - } - - function dimBytes32(bytes32 self) internal pure returns (string memory) { - return dim(vm.toString(self)); - } - - function italic(string memory self) internal pure returns (string memory) { - return styleConcat(ITALIC, self); - } - - function italic(uint256 self) internal pure returns (string memory) { - return italic(vm.toString(self)); - } - - function italic(int256 self) internal pure returns (string memory) { - return italic(vm.toString(self)); - } - - function italic(address self) internal pure returns (string memory) { - return italic(vm.toString(self)); - } - - function italic(bool self) internal pure returns (string memory) { - return italic(vm.toString(self)); - } - - function italicBytes(bytes memory self) internal pure returns (string memory) { - return italic(vm.toString(self)); - } - - function italicBytes32(bytes32 self) internal pure returns (string memory) { - return italic(vm.toString(self)); - } - - function underline(string memory self) internal pure returns (string memory) { - return styleConcat(UNDERLINE, self); - } - - function underline(uint256 self) internal pure returns (string memory) { - return underline(vm.toString(self)); - } - - function underline(int256 self) internal pure returns (string memory) { - return underline(vm.toString(self)); - } - - function underline(address self) internal pure returns (string memory) { - return underline(vm.toString(self)); - } - - function underline(bool self) internal pure returns (string memory) { - return underline(vm.toString(self)); - } - - function underlineBytes(bytes memory self) internal pure returns (string memory) { - return underline(vm.toString(self)); - } - - function underlineBytes32(bytes32 self) internal pure returns (string memory) { - return underline(vm.toString(self)); - } - - function inverse(string memory self) internal pure returns (string memory) { - return styleConcat(INVERSE, self); - } - - function inverse(uint256 self) internal pure returns (string memory) { - return inverse(vm.toString(self)); - } - - function inverse(int256 self) internal pure returns (string memory) { - return inverse(vm.toString(self)); - } - - function inverse(address self) internal pure returns (string memory) { - return inverse(vm.toString(self)); - } - - function inverse(bool self) internal pure returns (string memory) { - return inverse(vm.toString(self)); - } - - function inverseBytes(bytes memory self) internal pure returns (string memory) { - return inverse(vm.toString(self)); - } - - function inverseBytes32(bytes32 self) internal pure returns (string memory) { - return inverse(vm.toString(self)); - } -} diff --git a/contracts/src/v0.8/vendor/forge-std/src/StdToml.sol b/contracts/src/v0.8/vendor/forge-std/src/StdToml.sol deleted file mode 100644 index 7ad3be2f97..0000000000 --- a/contracts/src/v0.8/vendor/forge-std/src/StdToml.sol +++ /dev/null @@ -1,283 +0,0 @@ -// SPDX-License-Identifier: MIT -pragma solidity >=0.6.0 <0.9.0; - -pragma experimental ABIEncoderV2; - -import {VmSafe} from "./Vm.sol"; - -// Helpers for parsing and writing TOML files -// To parse: -// ``` -// using stdToml for string; -// string memory toml = vm.readFile(""); -// toml.readUint(""); -// ``` -// To write: -// ``` -// using stdToml for string; -// string memory json = "json"; -// json.serialize("a", uint256(123)); -// string memory semiFinal = json.serialize("b", string("test")); -// string memory finalJson = json.serialize("c", semiFinal); -// finalJson.write(""); -// ``` - -library stdToml { - VmSafe private constant vm = VmSafe(address(uint160(uint256(keccak256("hevm cheat code"))))); - - function keyExists(string memory toml, string memory key) internal view returns (bool) { - return vm.keyExistsToml(toml, key); - } - - function parseRaw(string memory toml, string memory key) internal pure returns (bytes memory) { - return vm.parseToml(toml, key); - } - - function readUint(string memory toml, string memory key) internal pure returns (uint256) { - return vm.parseTomlUint(toml, key); - } - - function readUintArray(string memory toml, string memory key) internal pure returns (uint256[] memory) { - return vm.parseTomlUintArray(toml, key); - } - - function readInt(string memory toml, string memory key) internal pure returns (int256) { - return vm.parseTomlInt(toml, key); - } - - function readIntArray(string memory toml, string memory key) internal pure returns (int256[] memory) { - return vm.parseTomlIntArray(toml, key); - } - - function readBytes32(string memory toml, string memory key) internal pure returns (bytes32) { - return vm.parseTomlBytes32(toml, key); - } - - function readBytes32Array(string memory toml, string memory key) internal pure returns (bytes32[] memory) { - return vm.parseTomlBytes32Array(toml, key); - } - - function readString(string memory toml, string memory key) internal pure returns (string memory) { - return vm.parseTomlString(toml, key); - } - - function readStringArray(string memory toml, string memory key) internal pure returns (string[] memory) { - return vm.parseTomlStringArray(toml, key); - } - - function readAddress(string memory toml, string memory key) internal pure returns (address) { - return vm.parseTomlAddress(toml, key); - } - - function readAddressArray(string memory toml, string memory key) internal pure returns (address[] memory) { - return vm.parseTomlAddressArray(toml, key); - } - - function readBool(string memory toml, string memory key) internal pure returns (bool) { - return vm.parseTomlBool(toml, key); - } - - function readBoolArray(string memory toml, string memory key) internal pure returns (bool[] memory) { - return vm.parseTomlBoolArray(toml, key); - } - - function readBytes(string memory toml, string memory key) internal pure returns (bytes memory) { - return vm.parseTomlBytes(toml, key); - } - - function readBytesArray(string memory toml, string memory key) internal pure returns (bytes[] memory) { - return vm.parseTomlBytesArray(toml, key); - } - - function readUintOr(string memory toml, string memory key, uint256 defaultValue) internal view returns (uint256) { - return keyExists(toml, key) ? readUint(toml, key) : defaultValue; - } - - function readUintArrayOr(string memory toml, string memory key, uint256[] memory defaultValue) - internal - view - returns (uint256[] memory) - { - return keyExists(toml, key) ? readUintArray(toml, key) : defaultValue; - } - - function readIntOr(string memory toml, string memory key, int256 defaultValue) internal view returns (int256) { - return keyExists(toml, key) ? readInt(toml, key) : defaultValue; - } - - function readIntArrayOr(string memory toml, string memory key, int256[] memory defaultValue) - internal - view - returns (int256[] memory) - { - return keyExists(toml, key) ? readIntArray(toml, key) : defaultValue; - } - - function readBytes32Or(string memory toml, string memory key, bytes32 defaultValue) - internal - view - returns (bytes32) - { - return keyExists(toml, key) ? readBytes32(toml, key) : defaultValue; - } - - function readBytes32ArrayOr(string memory toml, string memory key, bytes32[] memory defaultValue) - internal - view - returns (bytes32[] memory) - { - return keyExists(toml, key) ? readBytes32Array(toml, key) : defaultValue; - } - - function readStringOr(string memory toml, string memory key, string memory defaultValue) - internal - view - returns (string memory) - { - return keyExists(toml, key) ? readString(toml, key) : defaultValue; - } - - function readStringArrayOr(string memory toml, string memory key, string[] memory defaultValue) - internal - view - returns (string[] memory) - { - return keyExists(toml, key) ? readStringArray(toml, key) : defaultValue; - } - - function readAddressOr(string memory toml, string memory key, address defaultValue) - internal - view - returns (address) - { - return keyExists(toml, key) ? readAddress(toml, key) : defaultValue; - } - - function readAddressArrayOr(string memory toml, string memory key, address[] memory defaultValue) - internal - view - returns (address[] memory) - { - return keyExists(toml, key) ? readAddressArray(toml, key) : defaultValue; - } - - function readBoolOr(string memory toml, string memory key, bool defaultValue) internal view returns (bool) { - return keyExists(toml, key) ? readBool(toml, key) : defaultValue; - } - - function readBoolArrayOr(string memory toml, string memory key, bool[] memory defaultValue) - internal - view - returns (bool[] memory) - { - return keyExists(toml, key) ? readBoolArray(toml, key) : defaultValue; - } - - function readBytesOr(string memory toml, string memory key, bytes memory defaultValue) - internal - view - returns (bytes memory) - { - return keyExists(toml, key) ? readBytes(toml, key) : defaultValue; - } - - function readBytesArrayOr(string memory toml, string memory key, bytes[] memory defaultValue) - internal - view - returns (bytes[] memory) - { - return keyExists(toml, key) ? readBytesArray(toml, key) : defaultValue; - } - - function serialize(string memory jsonKey, string memory rootObject) internal returns (string memory) { - return vm.serializeJson(jsonKey, rootObject); - } - - function serialize(string memory jsonKey, string memory key, bool value) internal returns (string memory) { - return vm.serializeBool(jsonKey, key, value); - } - - function serialize(string memory jsonKey, string memory key, bool[] memory value) - internal - returns (string memory) - { - return vm.serializeBool(jsonKey, key, value); - } - - function serialize(string memory jsonKey, string memory key, uint256 value) internal returns (string memory) { - return vm.serializeUint(jsonKey, key, value); - } - - function serialize(string memory jsonKey, string memory key, uint256[] memory value) - internal - returns (string memory) - { - return vm.serializeUint(jsonKey, key, value); - } - - function serialize(string memory jsonKey, string memory key, int256 value) internal returns (string memory) { - return vm.serializeInt(jsonKey, key, value); - } - - function serialize(string memory jsonKey, string memory key, int256[] memory value) - internal - returns (string memory) - { - return vm.serializeInt(jsonKey, key, value); - } - - function serialize(string memory jsonKey, string memory key, address value) internal returns (string memory) { - return vm.serializeAddress(jsonKey, key, value); - } - - function serialize(string memory jsonKey, string memory key, address[] memory value) - internal - returns (string memory) - { - return vm.serializeAddress(jsonKey, key, value); - } - - function serialize(string memory jsonKey, string memory key, bytes32 value) internal returns (string memory) { - return vm.serializeBytes32(jsonKey, key, value); - } - - function serialize(string memory jsonKey, string memory key, bytes32[] memory value) - internal - returns (string memory) - { - return vm.serializeBytes32(jsonKey, key, value); - } - - function serialize(string memory jsonKey, string memory key, bytes memory value) internal returns (string memory) { - return vm.serializeBytes(jsonKey, key, value); - } - - function serialize(string memory jsonKey, string memory key, bytes[] memory value) - internal - returns (string memory) - { - return vm.serializeBytes(jsonKey, key, value); - } - - function serialize(string memory jsonKey, string memory key, string memory value) - internal - returns (string memory) - { - return vm.serializeString(jsonKey, key, value); - } - - function serialize(string memory jsonKey, string memory key, string[] memory value) - internal - returns (string memory) - { - return vm.serializeString(jsonKey, key, value); - } - - function write(string memory jsonKey, string memory path) internal { - vm.writeToml(jsonKey, path); - } - - function write(string memory jsonKey, string memory path, string memory valueKey) internal { - vm.writeToml(jsonKey, path, valueKey); - } -} diff --git a/contracts/src/v0.8/vendor/forge-std/src/StdUtils.sol b/contracts/src/v0.8/vendor/forge-std/src/StdUtils.sol deleted file mode 100644 index 7106960bbc..0000000000 --- a/contracts/src/v0.8/vendor/forge-std/src/StdUtils.sol +++ /dev/null @@ -1,209 +0,0 @@ -// SPDX-License-Identifier: MIT -pragma solidity >=0.6.2 <0.9.0; - -pragma experimental ABIEncoderV2; - -import {IMulticall3} from "./interfaces/IMulticall3.sol"; -import {VmSafe} from "./Vm.sol"; - -abstract contract StdUtils { - /*////////////////////////////////////////////////////////////////////////// - CONSTANTS - //////////////////////////////////////////////////////////////////////////*/ - - IMulticall3 private constant multicall = IMulticall3(0xcA11bde05977b3631167028862bE2a173976CA11); - VmSafe private constant vm = VmSafe(address(uint160(uint256(keccak256("hevm cheat code"))))); - address private constant CONSOLE2_ADDRESS = 0x000000000000000000636F6e736F6c652e6c6f67; - uint256 private constant INT256_MIN_ABS = - 57896044618658097711785492504343953926634992332820282019728792003956564819968; - uint256 private constant SECP256K1_ORDER = - 115792089237316195423570985008687907852837564279074904382605163141518161494337; - uint256 private constant UINT256_MAX = - 115792089237316195423570985008687907853269984665640564039457584007913129639935; - - // Used by default when deploying with create2, https://github.com/Arachnid/deterministic-deployment-proxy. - address private constant CREATE2_FACTORY = 0x4e59b44847b379578588920cA78FbF26c0B4956C; - - /*////////////////////////////////////////////////////////////////////////// - INTERNAL FUNCTIONS - //////////////////////////////////////////////////////////////////////////*/ - - function _bound(uint256 x, uint256 min, uint256 max) internal pure virtual returns (uint256 result) { - require(min <= max, "StdUtils bound(uint256,uint256,uint256): Max is less than min."); - // 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 bound(uint256 x, uint256 min, uint256 max) internal pure virtual returns (uint256 result) { - result = _bound(x, min, max); - console2_log_StdUtils("Bound result", result); - } - - function _bound(int256 x, int256 min, int256 max) internal pure virtual returns (int256 result) { - require(min <= max, "StdUtils bound(int256,int256,int256): Max is less than min."); - - // Shifting all int256 values to uint256 to use _bound function. The range of two types are: - // int256 : -(2**255) ~ (2**255 - 1) - // uint256: 0 ~ (2**256 - 1) - // So, add 2**255, INT256_MIN_ABS to the integer values. - // - // If the given integer value is -2**255, we cannot use `-uint256(-x)` because of the overflow. - // So, use `~uint256(x) + 1` instead. - uint256 _x = x < 0 ? (INT256_MIN_ABS - ~uint256(x) - 1) : (uint256(x) + INT256_MIN_ABS); - uint256 _min = min < 0 ? (INT256_MIN_ABS - ~uint256(min) - 1) : (uint256(min) + INT256_MIN_ABS); - uint256 _max = max < 0 ? (INT256_MIN_ABS - ~uint256(max) - 1) : (uint256(max) + INT256_MIN_ABS); - - uint256 y = _bound(_x, _min, _max); - - // To move it back to int256 value, subtract INT256_MIN_ABS at here. - result = y < INT256_MIN_ABS ? int256(~(INT256_MIN_ABS - y) + 1) : int256(y - INT256_MIN_ABS); - } - - function bound(int256 x, int256 min, int256 max) internal pure virtual returns (int256 result) { - result = _bound(x, min, max); - console2_log_StdUtils("Bound result", vm.toString(result)); - } - - function boundPrivateKey(uint256 privateKey) internal pure virtual returns (uint256 result) { - result = _bound(privateKey, 1, SECP256K1_ORDER - 1); - } - - function bytesToUint(bytes memory b) internal pure virtual returns (uint256) { - require(b.length <= 32, "StdUtils bytesToUint(bytes): Bytes length exceeds 32."); - return abi.decode(abi.encodePacked(new bytes(32 - b.length), b), (uint256)); - } - - /// @dev Compute the address a contract will be deployed at for a given deployer address and nonce - /// @notice adapted from Solmate implementation (https://github.com/Rari-Capital/solmate/blob/main/src/utils/LibRLP.sol) - function computeCreateAddress(address deployer, uint256 nonce) internal pure virtual returns (address) { - console2_log_StdUtils("computeCreateAddress is deprecated. Please use vm.computeCreateAddress instead."); - return vm.computeCreateAddress(deployer, nonce); - } - - function computeCreate2Address(bytes32 salt, bytes32 initcodeHash, address deployer) - internal - pure - virtual - returns (address) - { - console2_log_StdUtils("computeCreate2Address is deprecated. Please use vm.computeCreate2Address instead."); - return vm.computeCreate2Address(salt, initcodeHash, deployer); - } - - /// @dev returns the address of a contract created with CREATE2 using the default CREATE2 deployer - function computeCreate2Address(bytes32 salt, bytes32 initCodeHash) internal pure returns (address) { - console2_log_StdUtils("computeCreate2Address is deprecated. Please use vm.computeCreate2Address instead."); - return vm.computeCreate2Address(salt, initCodeHash); - } - - /// @dev returns the hash of the init code (creation code + no args) used in CREATE2 with no constructor arguments - /// @param creationCode the creation code of a contract C, as returned by type(C).creationCode - function hashInitCode(bytes memory creationCode) internal pure returns (bytes32) { - return hashInitCode(creationCode, ""); - } - - /// @dev returns the hash of the init code (creation code + ABI-encoded args) used in CREATE2 - /// @param creationCode the creation code of a contract C, as returned by type(C).creationCode - /// @param args the ABI-encoded arguments to the constructor of C - function hashInitCode(bytes memory creationCode, bytes memory args) internal pure returns (bytes32) { - return keccak256(abi.encodePacked(creationCode, args)); - } - - // Performs a single call with Multicall3 to query the ERC-20 token balances of the given addresses. - function getTokenBalances(address token, address[] memory addresses) - internal - virtual - returns (uint256[] memory balances) - { - uint256 tokenCodeSize; - assembly { - tokenCodeSize := extcodesize(token) - } - require(tokenCodeSize > 0, "StdUtils getTokenBalances(address,address[]): Token address is not a contract."); - - // ABI encode the aggregate call to Multicall3. - uint256 length = addresses.length; - IMulticall3.Call[] memory calls = new IMulticall3.Call[](length); - for (uint256 i = 0; i < length; ++i) { - // 0x70a08231 = bytes4("balanceOf(address)")) - calls[i] = IMulticall3.Call({target: token, callData: abi.encodeWithSelector(0x70a08231, (addresses[i]))}); - } - - // Make the aggregate call. - (, bytes[] memory returnData) = multicall.aggregate(calls); - - // ABI decode the return data and return the balances. - balances = new uint256[](length); - for (uint256 i = 0; i < length; ++i) { - balances[i] = abi.decode(returnData[i], (uint256)); - } - } - - /*////////////////////////////////////////////////////////////////////////// - PRIVATE FUNCTIONS - //////////////////////////////////////////////////////////////////////////*/ - - function addressFromLast20Bytes(bytes32 bytesValue) private pure returns (address) { - return address(uint160(uint256(bytesValue))); - } - - // This section is used to prevent the compilation of console, which shortens the compilation time when console is - // not used elsewhere. We also trick the compiler into letting us make the console log methods as `pure` to avoid - // any breaking changes to function signatures. - function _castLogPayloadViewToPure(function(bytes memory) internal view fnIn) - internal - pure - returns (function(bytes memory) internal pure fnOut) - { - assembly { - fnOut := fnIn - } - } - - function _sendLogPayload(bytes memory payload) internal pure { - _castLogPayloadViewToPure(_sendLogPayloadView)(payload); - } - - function _sendLogPayloadView(bytes memory payload) private view { - uint256 payloadLength = payload.length; - address consoleAddress = CONSOLE2_ADDRESS; - /// @solidity memory-safe-assembly - assembly { - let payloadStart := add(payload, 32) - let r := staticcall(gas(), consoleAddress, payloadStart, payloadLength, 0, 0) - } - } - - function console2_log_StdUtils(string memory p0) private pure { - _sendLogPayload(abi.encodeWithSignature("log(string)", p0)); - } - - function console2_log_StdUtils(string memory p0, uint256 p1) private pure { - _sendLogPayload(abi.encodeWithSignature("log(string,uint256)", p0, p1)); - } - - function console2_log_StdUtils(string memory p0, string memory p1) private pure { - _sendLogPayload(abi.encodeWithSignature("log(string,string)", p0, p1)); - } -} diff --git a/contracts/src/v0.8/vendor/forge-std/src/Test.sol b/contracts/src/v0.8/vendor/forge-std/src/Test.sol deleted file mode 100644 index 11b18f29f3..0000000000 --- a/contracts/src/v0.8/vendor/forge-std/src/Test.sol +++ /dev/null @@ -1,34 +0,0 @@ -// SPDX-License-Identifier: MIT -pragma solidity >=0.6.2 <0.9.0; - -pragma experimental ABIEncoderV2; - -// 💬 ABOUT -// Forge Std's default Test. - -// 🧩 MODULES -import {console} from "./console.sol"; -import {console2} from "./console2.sol"; -import {safeconsole} from "./safeconsole.sol"; -import {StdAssertions} from "./StdAssertions.sol"; -import {StdChains} from "./StdChains.sol"; -import {StdCheats} from "./StdCheats.sol"; -import {StdConstants} from "./StdConstants.sol"; -import {stdError} from "./StdError.sol"; -import {StdInvariant} from "./StdInvariant.sol"; -import {stdJson} from "./StdJson.sol"; -import {stdMath} from "./StdMath.sol"; -import {StdStorage, stdStorage} from "./StdStorage.sol"; -import {StdStyle} from "./StdStyle.sol"; -import {stdToml} from "./StdToml.sol"; -import {StdUtils} from "./StdUtils.sol"; -import {Vm} from "./Vm.sol"; - -// 📦 BOILERPLATE -import {TestBase} from "./Base.sol"; - -// ⭐️ TEST -abstract contract Test is TestBase, StdAssertions, StdChains, StdCheats, StdInvariant, StdUtils { - // Note: IS_TEST() must return true. - bool public IS_TEST = true; -} diff --git a/contracts/src/v0.8/vendor/forge-std/src/Vm.sol b/contracts/src/v0.8/vendor/forge-std/src/Vm.sol deleted file mode 100644 index a899da2fc8..0000000000 --- a/contracts/src/v0.8/vendor/forge-std/src/Vm.sol +++ /dev/null @@ -1,2397 +0,0 @@ -// Automatically @generated by scripts/vm.py. Do not modify manually. - -// SPDX-License-Identifier: MIT OR Apache-2.0 -pragma solidity >=0.6.2 <0.9.0; -pragma experimental ABIEncoderV2; - -/// The `VmSafe` interface does not allow manipulation of the EVM state or other actions that may -/// result in Script simulations differing from on-chain execution. It is recommended to only use -/// these cheats in scripts. -interface VmSafe { - /// A modification applied to either `msg.sender` or `tx.origin`. Returned by `readCallers`. - enum CallerMode { - // No caller modification is currently active. - None, - // A one time broadcast triggered by a `vm.broadcast()` call is currently active. - Broadcast, - // A recurrent broadcast triggered by a `vm.startBroadcast()` call is currently active. - RecurrentBroadcast, - // A one time prank triggered by a `vm.prank()` call is currently active. - Prank, - // A recurrent prank triggered by a `vm.startPrank()` call is currently active. - RecurrentPrank - } - - /// The kind of account access that occurred. - enum AccountAccessKind { - // The account was called. - Call, - // The account was called via delegatecall. - DelegateCall, - // The account was called via callcode. - CallCode, - // The account was called via staticcall. - StaticCall, - // The account was created. - Create, - // The account was selfdestructed. - SelfDestruct, - // Synthetic access indicating the current context has resumed after a previous sub-context (AccountAccess). - Resume, - // The account's balance was read. - Balance, - // The account's codesize was read. - Extcodesize, - // The account's codehash was read. - Extcodehash, - // The account's code was copied. - Extcodecopy - } - - /// Forge execution contexts. - enum ForgeContext { - // Test group execution context (test, coverage or snapshot). - TestGroup, - // `forge test` execution context. - Test, - // `forge coverage` execution context. - Coverage, - // `forge snapshot` execution context. - Snapshot, - // Script group execution context (dry run, broadcast or resume). - ScriptGroup, - // `forge script` execution context. - ScriptDryRun, - // `forge script --broadcast` execution context. - ScriptBroadcast, - // `forge script --resume` execution context. - ScriptResume, - // Unknown `forge` execution context. - Unknown - } - - /// The transaction type (`txType`) of the broadcast. - enum BroadcastTxType { - // Represents a CALL broadcast tx. - Call, - // Represents a CREATE broadcast tx. - Create, - // Represents a CREATE2 broadcast tx. - Create2 - } - - /// An Ethereum log. Returned by `getRecordedLogs`. - struct Log { - // The topics of the log, including the signature, if any. - bytes32[] topics; - // The raw data of the log. - bytes data; - // The address of the log's emitter. - address emitter; - } - - /// An RPC URL and its alias. Returned by `rpcUrlStructs`. - struct Rpc { - // The alias of the RPC URL. - string key; - // The RPC URL. - string url; - } - - /// An RPC log object. Returned by `eth_getLogs`. - struct EthGetLogs { - // The address of the log's emitter. - address emitter; - // The topics of the log, including the signature, if any. - bytes32[] topics; - // The raw data of the log. - bytes data; - // The block hash. - bytes32 blockHash; - // The block number. - uint64 blockNumber; - // The transaction hash. - bytes32 transactionHash; - // The transaction index in the block. - uint64 transactionIndex; - // The log index. - uint256 logIndex; - // Whether the log was removed. - bool removed; - } - - /// A single entry in a directory listing. Returned by `readDir`. - struct DirEntry { - // The error message, if any. - string errorMessage; - // The path of the entry. - string path; - // The depth of the entry. - uint64 depth; - // Whether the entry is a directory. - bool isDir; - // Whether the entry is a symlink. - bool isSymlink; - } - - /// Metadata information about a file. - /// This structure is returned from the `fsMetadata` function and represents known - /// metadata about a file such as its permissions, size, modification - /// times, etc. - struct FsMetadata { - // True if this metadata is for a directory. - bool isDir; - // True if this metadata is for a symlink. - bool isSymlink; - // The size of the file, in bytes, this metadata is for. - uint256 length; - // True if this metadata is for a readonly (unwritable) file. - bool readOnly; - // The last modification time listed in this metadata. - uint256 modified; - // The last access time of this metadata. - uint256 accessed; - // The creation time listed in this metadata. - uint256 created; - } - - /// A wallet with a public and private key. - struct Wallet { - // The wallet's address. - address addr; - // The wallet's public key `X`. - uint256 publicKeyX; - // The wallet's public key `Y`. - uint256 publicKeyY; - // The wallet's private key. - uint256 privateKey; - } - - /// The result of a `tryFfi` call. - struct FfiResult { - // The exit code of the call. - int32 exitCode; - // The optionally hex-decoded `stdout` data. - bytes stdout; - // The `stderr` data. - bytes stderr; - } - - /// Information on the chain and fork. - struct ChainInfo { - // The fork identifier. Set to zero if no fork is active. - uint256 forkId; - // The chain ID of the current fork. - uint256 chainId; - } - - /// Information about a blockchain. - struct Chain { - // The chain name. - string name; - // The chain's Chain ID. - uint256 chainId; - // The chain's alias. (i.e. what gets specified in `foundry.toml`). - string chainAlias; - // A default RPC endpoint for this chain. - string rpcUrl; - } - - /// The result of a `stopAndReturnStateDiff` call. - struct AccountAccess { - // The chain and fork the access occurred. - ChainInfo chainInfo; - // The kind of account access that determines what the account is. - // If kind is Call, DelegateCall, StaticCall or CallCode, then the account is the callee. - // If kind is Create, then the account is the newly created account. - // If kind is SelfDestruct, then the account is the selfdestruct recipient. - // If kind is a Resume, then account represents a account context that has resumed. - AccountAccessKind kind; - // The account that was accessed. - // It's either the account created, callee or a selfdestruct recipient for CREATE, CALL or SELFDESTRUCT. - address account; - // What accessed the account. - address accessor; - // If the account was initialized or empty prior to the access. - // An account is considered initialized if it has code, a - // non-zero nonce, or a non-zero balance. - bool initialized; - // The previous balance of the accessed account. - uint256 oldBalance; - // The potential new balance of the accessed account. - // That is, all balance changes are recorded here, even if reverts occurred. - uint256 newBalance; - // Code of the account deployed by CREATE. - bytes deployedCode; - // Value passed along with the account access - uint256 value; - // Input data provided to the CREATE or CALL - bytes data; - // If this access reverted in either the current or parent context. - bool reverted; - // An ordered list of storage accesses made during an account access operation. - StorageAccess[] storageAccesses; - // Call depth traversed during the recording of state differences - uint64 depth; - } - - /// The storage accessed during an `AccountAccess`. - struct StorageAccess { - // The account whose storage was accessed. - address account; - // The slot that was accessed. - bytes32 slot; - // If the access was a write. - bool isWrite; - // The previous value of the slot. - bytes32 previousValue; - // The new value of the slot. - bytes32 newValue; - // If the access was reverted. - bool reverted; - } - - /// Gas used. Returned by `lastCallGas`. - struct Gas { - // The gas limit of the call. - uint64 gasLimit; - // The total gas used. - uint64 gasTotalUsed; - // DEPRECATED: The amount of gas used for memory expansion. Ref: - uint64 gasMemoryUsed; - // The amount of gas refunded. - int64 gasRefunded; - // The amount of gas remaining. - uint64 gasRemaining; - } - - /// The result of the `stopDebugTraceRecording` call - struct DebugStep { - // The stack before executing the step of the run. - // stack\[0\] represents the top of the stack. - // and only stack data relevant to the opcode execution is contained. - uint256[] stack; - // The memory input data before executing the step of the run. - // only input data relevant to the opcode execution is contained. - // e.g. for MLOAD, it will have memory\[offset:offset+32\] copied here. - // the offset value can be get by the stack data. - bytes memoryInput; - // The opcode that was accessed. - uint8 opcode; - // The call depth of the step. - uint64 depth; - // Whether the call end up with out of gas error. - bool isOutOfGas; - // The contract address where the opcode is running - address contractAddr; - } - - /// Represents a transaction's broadcast details. - struct BroadcastTxSummary { - // The hash of the transaction that was broadcasted - bytes32 txHash; - // Represent the type of transaction among CALL, CREATE, CREATE2 - BroadcastTxType txType; - // The address of the contract that was called or created. - // This is address of the contract that is created if the txType is CREATE or CREATE2. - address contractAddress; - // The block number the transaction landed in. - uint64 blockNumber; - // Status of the transaction, retrieved from the transaction receipt. - bool success; - } - - /// Holds a signed EIP-7702 authorization for an authority account to delegate to an implementation. - struct SignedDelegation { - // The y-parity of the recovered secp256k1 signature (0 or 1). - uint8 v; - // First 32 bytes of the signature. - bytes32 r; - // Second 32 bytes of the signature. - bytes32 s; - // The current nonce of the authority account at signing time. - // Used to ensure signature can't be replayed after account nonce changes. - uint64 nonce; - // Address of the contract implementation that will be delegated to. - // Gets encoded into delegation code: 0xef0100 || implementation. - address implementation; - } - - /// Represents a "potential" revert reason from a single subsequent call when using `vm.assumeNoReverts`. - /// Reverts that match will result in a FOUNDRY::ASSUME rejection, whereas unmatched reverts will be surfaced - /// as normal. - struct PotentialRevert { - // The allowed origin of the revert opcode; address(0) allows reverts from any address - address reverter; - // When true, only matches on the beginning of the revert data, otherwise, matches on entire revert data - bool partialMatch; - // The data to use to match encountered reverts - bytes revertData; - } - - /// An EIP-2930 access list item. - struct AccessListItem { - // The address to be added in access list. - address target; - // The storage keys to be added in access list. - bytes32[] storageKeys; - } - - // ======== Crypto ======== - - /// Derives a private key from the name, labels the account with that name, and returns the wallet. - function createWallet(string calldata walletLabel) external returns (Wallet memory wallet); - - /// Generates a wallet from the private key and returns the wallet. - function createWallet(uint256 privateKey) external returns (Wallet memory wallet); - - /// Generates a wallet from the private key, labels the account with that name, and returns the wallet. - function createWallet(uint256 privateKey, string calldata walletLabel) external returns (Wallet memory wallet); - - /// Derive a private key from a provided mnenomic string (or mnenomic file path) - /// at the derivation path `m/44'/60'/0'/0/{index}`. - function deriveKey(string calldata mnemonic, uint32 index) external pure returns (uint256 privateKey); - - /// Derive a private key from a provided mnenomic string (or mnenomic file path) - /// at `{derivationPath}{index}`. - function deriveKey(string calldata mnemonic, string calldata derivationPath, uint32 index) - external - pure - returns (uint256 privateKey); - - /// Derive a private key from a provided mnenomic string (or mnenomic file path) in the specified language - /// at the derivation path `m/44'/60'/0'/0/{index}`. - function deriveKey(string calldata mnemonic, uint32 index, string calldata language) - external - pure - returns (uint256 privateKey); - - /// Derive a private key from a provided mnenomic string (or mnenomic file path) in the specified language - /// at `{derivationPath}{index}`. - function deriveKey(string calldata mnemonic, string calldata derivationPath, uint32 index, string calldata language) - external - pure - returns (uint256 privateKey); - - /// Derives secp256r1 public key from the provided `privateKey`. - function publicKeyP256(uint256 privateKey) external pure returns (uint256 publicKeyX, uint256 publicKeyY); - - /// Adds a private key to the local forge wallet and returns the address. - function rememberKey(uint256 privateKey) external returns (address keyAddr); - - /// Derive a set number of wallets from a mnemonic at the derivation path `m/44'/60'/0'/0/{0..count}`. - /// The respective private keys are saved to the local forge wallet for later use and their addresses are returned. - function rememberKeys(string calldata mnemonic, string calldata derivationPath, uint32 count) - external - returns (address[] memory keyAddrs); - - /// Derive a set number of wallets from a mnemonic in the specified language at the derivation path `m/44'/60'/0'/0/{0..count}`. - /// The respective private keys are saved to the local forge wallet for later use and their addresses are returned. - function rememberKeys( - string calldata mnemonic, - string calldata derivationPath, - string calldata language, - uint32 count - ) external returns (address[] memory keyAddrs); - - /// Signs data with a `Wallet`. - /// Returns a compact signature (`r`, `vs`) as per EIP-2098, where `vs` encodes both the - /// signature's `s` value, and the recovery id `v` in a single bytes32. - /// This format reduces the signature size from 65 to 64 bytes. - function signCompact(Wallet calldata wallet, bytes32 digest) external returns (bytes32 r, bytes32 vs); - - /// Signs `digest` with `privateKey` using the secp256k1 curve. - /// Returns a compact signature (`r`, `vs`) as per EIP-2098, where `vs` encodes both the - /// signature's `s` value, and the recovery id `v` in a single bytes32. - /// This format reduces the signature size from 65 to 64 bytes. - function signCompact(uint256 privateKey, bytes32 digest) external pure returns (bytes32 r, bytes32 vs); - - /// Signs `digest` with signer provided to script using the secp256k1 curve. - /// Returns a compact signature (`r`, `vs`) as per EIP-2098, where `vs` encodes both the - /// signature's `s` value, and the recovery id `v` in a single bytes32. - /// This format reduces the signature size from 65 to 64 bytes. - /// If `--sender` is provided, the signer with provided address is used, otherwise, - /// if exactly one signer is provided to the script, that signer is used. - /// Raises error if signer passed through `--sender` does not match any unlocked signers or - /// if `--sender` is not provided and not exactly one signer is passed to the script. - function signCompact(bytes32 digest) external pure returns (bytes32 r, bytes32 vs); - - /// Signs `digest` with signer provided to script using the secp256k1 curve. - /// Returns a compact signature (`r`, `vs`) as per EIP-2098, where `vs` encodes both the - /// signature's `s` value, and the recovery id `v` in a single bytes32. - /// This format reduces the signature size from 65 to 64 bytes. - /// Raises error if none of the signers passed into the script have provided address. - function signCompact(address signer, bytes32 digest) external pure returns (bytes32 r, bytes32 vs); - - /// Signs `digest` with `privateKey` using the secp256r1 curve. - function signP256(uint256 privateKey, bytes32 digest) external pure returns (bytes32 r, bytes32 s); - - /// Signs data with a `Wallet`. - function sign(Wallet calldata wallet, bytes32 digest) external returns (uint8 v, bytes32 r, bytes32 s); - - /// Signs `digest` with `privateKey` using the secp256k1 curve. - function sign(uint256 privateKey, bytes32 digest) external pure returns (uint8 v, bytes32 r, bytes32 s); - - /// Signs `digest` with signer provided to script using the secp256k1 curve. - /// If `--sender` is provided, the signer with provided address is used, otherwise, - /// if exactly one signer is provided to the script, that signer is used. - /// Raises error if signer passed through `--sender` does not match any unlocked signers or - /// if `--sender` is not provided and not exactly one signer is passed to the script. - function sign(bytes32 digest) external pure returns (uint8 v, bytes32 r, bytes32 s); - - /// Signs `digest` with signer provided to script using the secp256k1 curve. - /// Raises error if none of the signers passed into the script have provided address. - function sign(address signer, bytes32 digest) external pure returns (uint8 v, bytes32 r, bytes32 s); - - // ======== Environment ======== - - /// Gets the environment variable `name` and parses it as `address`. - /// Reverts if the variable was not found or could not be parsed. - function envAddress(string calldata name) external view returns (address value); - - /// Gets the environment variable `name` and parses it as an array of `address`, delimited by `delim`. - /// Reverts if the variable was not found or could not be parsed. - function envAddress(string calldata name, string calldata delim) external view returns (address[] memory value); - - /// Gets the environment variable `name` and parses it as `bool`. - /// Reverts if the variable was not found or could not be parsed. - function envBool(string calldata name) external view returns (bool value); - - /// Gets the environment variable `name` and parses it as an array of `bool`, delimited by `delim`. - /// Reverts if the variable was not found or could not be parsed. - function envBool(string calldata name, string calldata delim) external view returns (bool[] memory value); - - /// Gets the environment variable `name` and parses it as `bytes32`. - /// Reverts if the variable was not found or could not be parsed. - function envBytes32(string calldata name) external view returns (bytes32 value); - - /// Gets the environment variable `name` and parses it as an array of `bytes32`, delimited by `delim`. - /// Reverts if the variable was not found or could not be parsed. - function envBytes32(string calldata name, string calldata delim) external view returns (bytes32[] memory value); - - /// Gets the environment variable `name` and parses it as `bytes`. - /// Reverts if the variable was not found or could not be parsed. - function envBytes(string calldata name) external view returns (bytes memory value); - - /// Gets the environment variable `name` and parses it as an array of `bytes`, delimited by `delim`. - /// Reverts if the variable was not found or could not be parsed. - function envBytes(string calldata name, string calldata delim) external view returns (bytes[] memory value); - - /// Gets the environment variable `name` and returns true if it exists, else returns false. - function envExists(string calldata name) external view returns (bool result); - - /// Gets the environment variable `name` and parses it as `int256`. - /// Reverts if the variable was not found or could not be parsed. - function envInt(string calldata name) external view returns (int256 value); - - /// Gets the environment variable `name` and parses it as an array of `int256`, delimited by `delim`. - /// Reverts if the variable was not found or could not be parsed. - function envInt(string calldata name, string calldata delim) external view returns (int256[] memory value); - - /// Gets the environment variable `name` and parses it as `bool`. - /// Reverts if the variable could not be parsed. - /// Returns `defaultValue` if the variable was not found. - function envOr(string calldata name, bool defaultValue) external view returns (bool value); - - /// Gets the environment variable `name` and parses it as `uint256`. - /// Reverts if the variable could not be parsed. - /// Returns `defaultValue` if the variable was not found. - function envOr(string calldata name, uint256 defaultValue) external view returns (uint256 value); - - /// Gets the environment variable `name` and parses it as an array of `address`, delimited by `delim`. - /// Reverts if the variable could not be parsed. - /// Returns `defaultValue` if the variable was not found. - function envOr(string calldata name, string calldata delim, address[] calldata defaultValue) - external - view - returns (address[] memory value); - - /// Gets the environment variable `name` and parses it as an array of `bytes32`, delimited by `delim`. - /// Reverts if the variable could not be parsed. - /// Returns `defaultValue` if the variable was not found. - function envOr(string calldata name, string calldata delim, bytes32[] calldata defaultValue) - external - view - returns (bytes32[] memory value); - - /// Gets the environment variable `name` and parses it as an array of `string`, delimited by `delim`. - /// Reverts if the variable could not be parsed. - /// Returns `defaultValue` if the variable was not found. - function envOr(string calldata name, string calldata delim, string[] calldata defaultValue) - external - view - returns (string[] memory value); - - /// Gets the environment variable `name` and parses it as an array of `bytes`, delimited by `delim`. - /// Reverts if the variable could not be parsed. - /// Returns `defaultValue` if the variable was not found. - function envOr(string calldata name, string calldata delim, bytes[] calldata defaultValue) - external - view - returns (bytes[] memory value); - - /// Gets the environment variable `name` and parses it as `int256`. - /// Reverts if the variable could not be parsed. - /// Returns `defaultValue` if the variable was not found. - function envOr(string calldata name, int256 defaultValue) external view returns (int256 value); - - /// Gets the environment variable `name` and parses it as `address`. - /// Reverts if the variable could not be parsed. - /// Returns `defaultValue` if the variable was not found. - function envOr(string calldata name, address defaultValue) external view returns (address value); - - /// Gets the environment variable `name` and parses it as `bytes32`. - /// Reverts if the variable could not be parsed. - /// Returns `defaultValue` if the variable was not found. - function envOr(string calldata name, bytes32 defaultValue) external view returns (bytes32 value); - - /// Gets the environment variable `name` and parses it as `string`. - /// Reverts if the variable could not be parsed. - /// Returns `defaultValue` if the variable was not found. - function envOr(string calldata name, string calldata defaultValue) external view returns (string memory value); - - /// Gets the environment variable `name` and parses it as `bytes`. - /// Reverts if the variable could not be parsed. - /// Returns `defaultValue` if the variable was not found. - function envOr(string calldata name, bytes calldata defaultValue) external view returns (bytes memory value); - - /// Gets the environment variable `name` and parses it as an array of `bool`, delimited by `delim`. - /// Reverts if the variable could not be parsed. - /// Returns `defaultValue` if the variable was not found. - function envOr(string calldata name, string calldata delim, bool[] calldata defaultValue) - external - view - returns (bool[] memory value); - - /// Gets the environment variable `name` and parses it as an array of `uint256`, delimited by `delim`. - /// Reverts if the variable could not be parsed. - /// Returns `defaultValue` if the variable was not found. - function envOr(string calldata name, string calldata delim, uint256[] calldata defaultValue) - external - view - returns (uint256[] memory value); - - /// Gets the environment variable `name` and parses it as an array of `int256`, delimited by `delim`. - /// Reverts if the variable could not be parsed. - /// Returns `defaultValue` if the variable was not found. - function envOr(string calldata name, string calldata delim, int256[] calldata defaultValue) - external - view - returns (int256[] memory value); - - /// Gets the environment variable `name` and parses it as `string`. - /// Reverts if the variable was not found or could not be parsed. - function envString(string calldata name) external view returns (string memory value); - - /// Gets the environment variable `name` and parses it as an array of `string`, delimited by `delim`. - /// Reverts if the variable was not found or could not be parsed. - function envString(string calldata name, string calldata delim) external view returns (string[] memory value); - - /// Gets the environment variable `name` and parses it as `uint256`. - /// Reverts if the variable was not found or could not be parsed. - function envUint(string calldata name) external view returns (uint256 value); - - /// Gets the environment variable `name` and parses it as an array of `uint256`, delimited by `delim`. - /// Reverts if the variable was not found or could not be parsed. - function envUint(string calldata name, string calldata delim) external view returns (uint256[] memory value); - - /// Returns true if `forge` command was executed in given context. - function isContext(ForgeContext context) external view returns (bool result); - - /// Sets environment variables. - function setEnv(string calldata name, string calldata value) external; - - // ======== EVM ======== - - /// Gets all accessed reads and write slot from a `vm.record` session, for a given address. - function accesses(address target) external returns (bytes32[] memory readSlots, bytes32[] memory writeSlots); - - /// Gets the address for a given private key. - function addr(uint256 privateKey) external pure returns (address keyAddr); - - /// Gets all the logs according to specified filter. - function eth_getLogs(uint256 fromBlock, uint256 toBlock, address target, bytes32[] calldata topics) - external - returns (EthGetLogs[] memory logs); - - /// Gets the current `block.blobbasefee`. - /// You should use this instead of `block.blobbasefee` if you use `vm.blobBaseFee`, as `block.blobbasefee` is assumed to be constant across a transaction, - /// and as a result will get optimized out by the compiler. - /// See https://github.com/foundry-rs/foundry/issues/6180 - function getBlobBaseFee() external view returns (uint256 blobBaseFee); - - /// Gets the current `block.number`. - /// You should use this instead of `block.number` if you use `vm.roll`, as `block.number` is assumed to be constant across a transaction, - /// and as a result will get optimized out by the compiler. - /// See https://github.com/foundry-rs/foundry/issues/6180 - function getBlockNumber() external view returns (uint256 height); - - /// Gets the current `block.timestamp`. - /// You should use this instead of `block.timestamp` if you use `vm.warp`, as `block.timestamp` is assumed to be constant across a transaction, - /// and as a result will get optimized out by the compiler. - /// See https://github.com/foundry-rs/foundry/issues/6180 - function getBlockTimestamp() external view returns (uint256 timestamp); - - /// Gets the map key and parent of a mapping at a given slot, for a given address. - function getMappingKeyAndParentOf(address target, bytes32 elementSlot) - external - returns (bool found, bytes32 key, bytes32 parent); - - /// Gets the number of elements in the mapping at the given slot, for a given address. - function getMappingLength(address target, bytes32 mappingSlot) external returns (uint256 length); - - /// Gets the elements at index idx of the mapping at the given slot, for a given address. The - /// index must be less than the length of the mapping (i.e. the number of keys in the mapping). - function getMappingSlotAt(address target, bytes32 mappingSlot, uint256 idx) external returns (bytes32 value); - - /// Gets the nonce of an account. - function getNonce(address account) external view returns (uint64 nonce); - - /// Get the nonce of a `Wallet`. - function getNonce(Wallet calldata wallet) external returns (uint64 nonce); - - /// Gets all the recorded logs. - function getRecordedLogs() external returns (Log[] memory logs); - - /// Returns state diffs from current `vm.startStateDiffRecording` session. - function getStateDiff() external view returns (string memory diff); - - /// Returns state diffs from current `vm.startStateDiffRecording` session, in json format. - function getStateDiffJson() external view returns (string memory diff); - - /// Gets the gas used in the last call from the callee perspective. - function lastCallGas() external view returns (Gas memory gas); - - /// Loads a storage slot from an address. - function load(address target, bytes32 slot) external view returns (bytes32 data); - - /// Pauses gas metering (i.e. gas usage is not counted). Noop if already paused. - function pauseGasMetering() external; - - /// Records all storage reads and writes. - function record() external; - - /// Record all the transaction logs. - function recordLogs() external; - - /// Reset gas metering (i.e. gas usage is set to gas limit). - function resetGasMetering() external; - - /// Resumes gas metering (i.e. gas usage is counted again). Noop if already on. - function resumeGasMetering() external; - - /// Performs an Ethereum JSON-RPC request to the current fork URL. - function rpc(string calldata method, string calldata params) external returns (bytes memory data); - - /// Performs an Ethereum JSON-RPC request to the given endpoint. - function rpc(string calldata urlOrAlias, string calldata method, string calldata params) - external - returns (bytes memory data); - - /// Records the debug trace during the run. - function startDebugTraceRecording() external; - - /// Starts recording all map SSTOREs for later retrieval. - function startMappingRecording() external; - - /// Record all account accesses as part of CREATE, CALL or SELFDESTRUCT opcodes in order, - /// along with the context of the calls - function startStateDiffRecording() external; - - /// Stop debug trace recording and returns the recorded debug trace. - function stopAndReturnDebugTraceRecording() external returns (DebugStep[] memory step); - - /// Returns an ordered array of all account accesses from a `vm.startStateDiffRecording` session. - function stopAndReturnStateDiff() external returns (AccountAccess[] memory accountAccesses); - - /// Stops recording all map SSTOREs for later retrieval and clears the recorded data. - function stopMappingRecording() external; - - // ======== Filesystem ======== - - /// Closes file for reading, resetting the offset and allowing to read it from beginning with readLine. - /// `path` is relative to the project root. - function closeFile(string calldata path) external; - - /// Copies the contents of one file to another. This function will **overwrite** the contents of `to`. - /// On success, the total number of bytes copied is returned and it is equal to the length of the `to` file as reported by `metadata`. - /// Both `from` and `to` are relative to the project root. - function copyFile(string calldata from, string calldata to) external returns (uint64 copied); - - /// Creates a new, empty directory at the provided path. - /// This cheatcode will revert in the following situations, but is not limited to just these cases: - /// - User lacks permissions to modify `path`. - /// - A parent of the given path doesn't exist and `recursive` is false. - /// - `path` already exists and `recursive` is false. - /// `path` is relative to the project root. - function createDir(string calldata path, bool recursive) external; - - /// Deploys a contract from an artifact file. Takes in the relative path to the json file or the path to the - /// artifact in the form of :: where and parts are optional. - function deployCode(string calldata artifactPath) external returns (address deployedAddress); - - /// Deploys a contract from an artifact file. Takes in the relative path to the json file or the path to the - /// artifact in the form of :: where and parts are optional. - /// Additionally accepts abi-encoded constructor arguments. - function deployCode(string calldata artifactPath, bytes calldata constructorArgs) - external - returns (address deployedAddress); - - /// Deploys a contract from an artifact file. Takes in the relative path to the json file or the path to the - /// artifact in the form of :: where and parts are optional. - /// Additionally accepts `msg.value`. - function deployCode(string calldata artifactPath, uint256 value) external returns (address deployedAddress); - - /// Deploys a contract from an artifact file. Takes in the relative path to the json file or the path to the - /// artifact in the form of :: where and parts are optional. - /// Additionally accepts abi-encoded constructor arguments and `msg.value`. - function deployCode(string calldata artifactPath, bytes calldata constructorArgs, uint256 value) - external - returns (address deployedAddress); - - /// Deploys a contract from an artifact file, using the CREATE2 salt. Takes in the relative path to the json file or the path to the - /// artifact in the form of :: where and parts are optional. - function deployCode(string calldata artifactPath, bytes32 salt) external returns (address deployedAddress); - - /// Deploys a contract from an artifact file, using the CREATE2 salt. Takes in the relative path to the json file or the path to the - /// artifact in the form of :: where and parts are optional. - /// Additionally accepts abi-encoded constructor arguments. - function deployCode(string calldata artifactPath, bytes calldata constructorArgs, bytes32 salt) - external - returns (address deployedAddress); - - /// Deploys a contract from an artifact file, using the CREATE2 salt. Takes in the relative path to the json file or the path to the - /// artifact in the form of :: where and parts are optional. - /// Additionally accepts `msg.value`. - function deployCode(string calldata artifactPath, uint256 value, bytes32 salt) - external - returns (address deployedAddress); - - /// Deploys a contract from an artifact file, using the CREATE2 salt. Takes in the relative path to the json file or the path to the - /// artifact in the form of :: where and parts are optional. - /// Additionally accepts abi-encoded constructor arguments and `msg.value`. - function deployCode(string calldata artifactPath, bytes calldata constructorArgs, uint256 value, bytes32 salt) - external - returns (address deployedAddress); - - /// Returns true if the given path points to an existing entity, else returns false. - function exists(string calldata path) external view returns (bool result); - - /// Performs a foreign function call via the terminal. - function ffi(string[] calldata commandInput) external returns (bytes memory result); - - /// Given a path, query the file system to get information about a file, directory, etc. - function fsMetadata(string calldata path) external view returns (FsMetadata memory metadata); - - /// Gets the artifact path from code (aka. creation code). - function getArtifactPathByCode(bytes calldata code) external view returns (string memory path); - - /// Gets the artifact path from deployed code (aka. runtime code). - function getArtifactPathByDeployedCode(bytes calldata deployedCode) external view returns (string memory path); - - /// Returns the most recent broadcast for the given contract on `chainId` matching `txType`. - /// For example: - /// The most recent deployment can be fetched by passing `txType` as `CREATE` or `CREATE2`. - /// The most recent call can be fetched by passing `txType` as `CALL`. - function getBroadcast(string calldata contractName, uint64 chainId, BroadcastTxType txType) - external - view - returns (BroadcastTxSummary memory); - - /// Returns all broadcasts for the given contract on `chainId` with the specified `txType`. - /// Sorted such that the most recent broadcast is the first element, and the oldest is the last. i.e descending order of BroadcastTxSummary.blockNumber. - function getBroadcasts(string calldata contractName, uint64 chainId, BroadcastTxType txType) - external - view - returns (BroadcastTxSummary[] memory); - - /// Returns all broadcasts for the given contract on `chainId`. - /// Sorted such that the most recent broadcast is the first element, and the oldest is the last. i.e descending order of BroadcastTxSummary.blockNumber. - function getBroadcasts(string calldata contractName, uint64 chainId) - external - view - returns (BroadcastTxSummary[] memory); - - /// Gets the creation bytecode from an artifact file. Takes in the relative path to the json file or the path to the - /// artifact in the form of :: where and parts are optional. - function getCode(string calldata artifactPath) external view returns (bytes memory creationBytecode); - - /// Gets the deployed bytecode from an artifact file. Takes in the relative path to the json file or the path to the - /// artifact in the form of :: where and parts are optional. - function getDeployedCode(string calldata artifactPath) external view returns (bytes memory runtimeBytecode); - - /// Returns the most recent deployment for the current `chainId`. - function getDeployment(string calldata contractName) external view returns (address deployedAddress); - - /// Returns the most recent deployment for the given contract on `chainId` - function getDeployment(string calldata contractName, uint64 chainId) - external - view - returns (address deployedAddress); - - /// Returns all deployments for the given contract on `chainId` - /// Sorted in descending order of deployment time i.e descending order of BroadcastTxSummary.blockNumber. - /// The most recent deployment is the first element, and the oldest is the last. - function getDeployments(string calldata contractName, uint64 chainId) - external - view - returns (address[] memory deployedAddresses); - - /// Returns true if the path exists on disk and is pointing at a directory, else returns false. - function isDir(string calldata path) external view returns (bool result); - - /// Returns true if the path exists on disk and is pointing at a regular file, else returns false. - function isFile(string calldata path) external view returns (bool result); - - /// Get the path of the current project root. - function projectRoot() external view returns (string memory path); - - /// Prompts the user for a string value in the terminal. - function prompt(string calldata promptText) external returns (string memory input); - - /// Prompts the user for an address in the terminal. - function promptAddress(string calldata promptText) external returns (address); - - /// Prompts the user for a hidden string value in the terminal. - function promptSecret(string calldata promptText) external returns (string memory input); - - /// Prompts the user for hidden uint256 in the terminal (usually pk). - function promptSecretUint(string calldata promptText) external returns (uint256); - - /// Prompts the user for uint256 in the terminal. - function promptUint(string calldata promptText) external returns (uint256); - - /// Reads the directory at the given path recursively, up to `maxDepth`. - /// `maxDepth` defaults to 1, meaning only the direct children of the given directory will be returned. - /// Follows symbolic links if `followLinks` is true. - function readDir(string calldata path) external view returns (DirEntry[] memory entries); - - /// See `readDir(string)`. - function readDir(string calldata path, uint64 maxDepth) external view returns (DirEntry[] memory entries); - - /// See `readDir(string)`. - function readDir(string calldata path, uint64 maxDepth, bool followLinks) - external - view - returns (DirEntry[] memory entries); - - /// Reads the entire content of file to string. `path` is relative to the project root. - function readFile(string calldata path) external view returns (string memory data); - - /// Reads the entire content of file as binary. `path` is relative to the project root. - function readFileBinary(string calldata path) external view returns (bytes memory data); - - /// Reads next line of file to string. - function readLine(string calldata path) external view returns (string memory line); - - /// Reads a symbolic link, returning the path that the link points to. - /// This cheatcode will revert in the following situations, but is not limited to just these cases: - /// - `path` is not a symbolic link. - /// - `path` does not exist. - function readLink(string calldata linkPath) external view returns (string memory targetPath); - - /// Removes a directory at the provided path. - /// This cheatcode will revert in the following situations, but is not limited to just these cases: - /// - `path` doesn't exist. - /// - `path` isn't a directory. - /// - User lacks permissions to modify `path`. - /// - The directory is not empty and `recursive` is false. - /// `path` is relative to the project root. - function removeDir(string calldata path, bool recursive) external; - - /// Removes a file from the filesystem. - /// This cheatcode will revert in the following situations, but is not limited to just these cases: - /// - `path` points to a directory. - /// - The file doesn't exist. - /// - The user lacks permissions to remove the file. - /// `path` is relative to the project root. - function removeFile(string calldata path) external; - - /// Performs a foreign function call via terminal and returns the exit code, stdout, and stderr. - function tryFfi(string[] calldata commandInput) external returns (FfiResult memory result); - - /// Returns the time since unix epoch in milliseconds. - function unixTime() external view returns (uint256 milliseconds); - - /// Writes data to file, creating a file if it does not exist, and entirely replacing its contents if it does. - /// `path` is relative to the project root. - function writeFile(string calldata path, string calldata data) external; - - /// Writes binary data to a file, creating a file if it does not exist, and entirely replacing its contents if it does. - /// `path` is relative to the project root. - function writeFileBinary(string calldata path, bytes calldata data) external; - - /// Writes line to file, creating a file if it does not exist. - /// `path` is relative to the project root. - function writeLine(string calldata path, string calldata data) external; - - // ======== JSON ======== - - /// Checks if `key` exists in a JSON object. - function keyExistsJson(string calldata json, string calldata key) external view returns (bool); - - /// Parses a string of JSON data at `key` and coerces it to `address`. - function parseJsonAddress(string calldata json, string calldata key) external pure returns (address); - - /// Parses a string of JSON data at `key` and coerces it to `address[]`. - function parseJsonAddressArray(string calldata json, string calldata key) - external - pure - returns (address[] memory); - - /// Parses a string of JSON data at `key` and coerces it to `bool`. - function parseJsonBool(string calldata json, string calldata key) external pure returns (bool); - - /// Parses a string of JSON data at `key` and coerces it to `bool[]`. - function parseJsonBoolArray(string calldata json, string calldata key) external pure returns (bool[] memory); - - /// Parses a string of JSON data at `key` and coerces it to `bytes`. - function parseJsonBytes(string calldata json, string calldata key) external pure returns (bytes memory); - - /// Parses a string of JSON data at `key` and coerces it to `bytes32`. - function parseJsonBytes32(string calldata json, string calldata key) external pure returns (bytes32); - - /// Parses a string of JSON data at `key` and coerces it to `bytes32[]`. - function parseJsonBytes32Array(string calldata json, string calldata key) - external - pure - returns (bytes32[] memory); - - /// Parses a string of JSON data at `key` and coerces it to `bytes[]`. - function parseJsonBytesArray(string calldata json, string calldata key) external pure returns (bytes[] memory); - - /// Parses a string of JSON data at `key` and coerces it to `int256`. - function parseJsonInt(string calldata json, string calldata key) external pure returns (int256); - - /// Parses a string of JSON data at `key` and coerces it to `int256[]`. - function parseJsonIntArray(string calldata json, string calldata key) external pure returns (int256[] memory); - - /// Returns an array of all the keys in a JSON object. - function parseJsonKeys(string calldata json, string calldata key) external pure returns (string[] memory keys); - - /// Parses a string of JSON data at `key` and coerces it to `string`. - function parseJsonString(string calldata json, string calldata key) external pure returns (string memory); - - /// Parses a string of JSON data at `key` and coerces it to `string[]`. - function parseJsonStringArray(string calldata json, string calldata key) external pure returns (string[] memory); - - /// Parses a string of JSON data at `key` and coerces it to type array corresponding to `typeDescription`. - function parseJsonTypeArray(string calldata json, string calldata key, string calldata typeDescription) - external - pure - returns (bytes memory); - - /// Parses a string of JSON data and coerces it to type corresponding to `typeDescription`. - function parseJsonType(string calldata json, string calldata typeDescription) - external - pure - returns (bytes memory); - - /// Parses a string of JSON data at `key` and coerces it to type corresponding to `typeDescription`. - function parseJsonType(string calldata json, string calldata key, string calldata typeDescription) - external - pure - returns (bytes memory); - - /// Parses a string of JSON data at `key` and coerces it to `uint256`. - function parseJsonUint(string calldata json, string calldata key) external pure returns (uint256); - - /// Parses a string of JSON data at `key` and coerces it to `uint256[]`. - function parseJsonUintArray(string calldata json, string calldata key) external pure returns (uint256[] memory); - - /// ABI-encodes a JSON object. - function parseJson(string calldata json) external pure returns (bytes memory abiEncodedData); - - /// ABI-encodes a JSON object at `key`. - function parseJson(string calldata json, string calldata key) external pure returns (bytes memory abiEncodedData); - - /// See `serializeJson`. - function serializeAddress(string calldata objectKey, string calldata valueKey, address value) - external - returns (string memory json); - - /// See `serializeJson`. - function serializeAddress(string calldata objectKey, string calldata valueKey, address[] calldata values) - external - returns (string memory json); - - /// See `serializeJson`. - function serializeBool(string calldata objectKey, string calldata valueKey, bool value) - external - returns (string memory json); - - /// See `serializeJson`. - function serializeBool(string calldata objectKey, string calldata valueKey, bool[] calldata values) - external - returns (string memory json); - - /// See `serializeJson`. - function serializeBytes32(string calldata objectKey, string calldata valueKey, bytes32 value) - external - returns (string memory json); - - /// See `serializeJson`. - function serializeBytes32(string calldata objectKey, string calldata valueKey, bytes32[] calldata values) - external - returns (string memory json); - - /// See `serializeJson`. - function serializeBytes(string calldata objectKey, string calldata valueKey, bytes calldata value) - external - returns (string memory json); - - /// See `serializeJson`. - function serializeBytes(string calldata objectKey, string calldata valueKey, bytes[] calldata values) - external - returns (string memory json); - - /// See `serializeJson`. - function serializeInt(string calldata objectKey, string calldata valueKey, int256 value) - external - returns (string memory json); - - /// See `serializeJson`. - function serializeInt(string calldata objectKey, string calldata valueKey, int256[] calldata values) - external - returns (string memory json); - - /// Serializes a key and value to a JSON object stored in-memory that can be later written to a file. - /// Returns the stringified version of the specific JSON file up to that moment. - function serializeJson(string calldata objectKey, string calldata value) external returns (string memory json); - - /// See `serializeJson`. - function serializeJsonType(string calldata typeDescription, bytes calldata value) - external - pure - returns (string memory json); - - /// See `serializeJson`. - function serializeJsonType( - string calldata objectKey, - string calldata valueKey, - string calldata typeDescription, - bytes calldata value - ) external returns (string memory json); - - /// See `serializeJson`. - function serializeString(string calldata objectKey, string calldata valueKey, string calldata value) - external - returns (string memory json); - - /// See `serializeJson`. - function serializeString(string calldata objectKey, string calldata valueKey, string[] calldata values) - external - returns (string memory json); - - /// See `serializeJson`. - function serializeUintToHex(string calldata objectKey, string calldata valueKey, uint256 value) - external - returns (string memory json); - - /// See `serializeJson`. - function serializeUint(string calldata objectKey, string calldata valueKey, uint256 value) - external - returns (string memory json); - - /// See `serializeJson`. - function serializeUint(string calldata objectKey, string calldata valueKey, uint256[] calldata values) - external - returns (string memory json); - - /// Write a serialized JSON object to a file. If the file exists, it will be overwritten. - function writeJson(string calldata json, string calldata path) external; - - /// Write a serialized JSON object to an **existing** JSON file, replacing a value with key = - /// This is useful to replace a specific value of a JSON file, without having to parse the entire thing. - function writeJson(string calldata json, string calldata path, string calldata valueKey) external; - - /// Checks if `key` exists in a JSON object - /// `keyExists` is being deprecated in favor of `keyExistsJson`. It will be removed in future versions. - function keyExists(string calldata json, string calldata key) external view returns (bool); - - // ======== Scripting ======== - - /// Attach an EIP-4844 blob to the next call - function attachBlob(bytes calldata blob) external; - - /// Designate the next call as an EIP-7702 transaction - function attachDelegation(SignedDelegation calldata signedDelegation) external; - - /// Takes a signed transaction and broadcasts it to the network. - function broadcastRawTransaction(bytes calldata data) external; - - /// Has the next call (at this call depth only) create transactions that can later be signed and sent onchain. - /// Broadcasting address is determined by checking the following in order: - /// 1. If `--sender` argument was provided, that address is used. - /// 2. If exactly one signer (e.g. private key, hw wallet, keystore) is set when `forge broadcast` is invoked, that signer is used. - /// 3. Otherwise, default foundry sender (1804c8AB1F12E6bbf3894d4083f33e07309d1f38) is used. - function broadcast() external; - - /// Has the next call (at this call depth only) create a transaction with the address provided - /// as the sender that can later be signed and sent onchain. - function broadcast(address signer) external; - - /// Has the next call (at this call depth only) create a transaction with the private key - /// provided as the sender that can later be signed and sent onchain. - function broadcast(uint256 privateKey) external; - - /// Returns addresses of available unlocked wallets in the script environment. - function getWallets() external returns (address[] memory wallets); - - /// Sign an EIP-7702 authorization and designate the next call as an EIP-7702 transaction - function signAndAttachDelegation(address implementation, uint256 privateKey) - external - returns (SignedDelegation memory signedDelegation); - - /// Sign an EIP-7702 authorization and designate the next call as an EIP-7702 transaction for specific nonce - function signAndAttachDelegation(address implementation, uint256 privateKey, uint64 nonce) - external - returns (SignedDelegation memory signedDelegation); - - /// Sign an EIP-7702 authorization for delegation - function signDelegation(address implementation, uint256 privateKey) - external - returns (SignedDelegation memory signedDelegation); - - /// Sign an EIP-7702 authorization for delegation for specific nonce - function signDelegation(address implementation, uint256 privateKey, uint64 nonce) - external - returns (SignedDelegation memory signedDelegation); - - /// Has all subsequent calls (at this call depth only) create transactions that can later be signed and sent onchain. - /// Broadcasting address is determined by checking the following in order: - /// 1. If `--sender` argument was provided, that address is used. - /// 2. If exactly one signer (e.g. private key, hw wallet, keystore) is set when `forge broadcast` is invoked, that signer is used. - /// 3. Otherwise, default foundry sender (1804c8AB1F12E6bbf3894d4083f33e07309d1f38) is used. - function startBroadcast() external; - - /// Has all subsequent calls (at this call depth only) create transactions with the address - /// provided that can later be signed and sent onchain. - function startBroadcast(address signer) external; - - /// Has all subsequent calls (at this call depth only) create transactions with the private key - /// provided that can later be signed and sent onchain. - function startBroadcast(uint256 privateKey) external; - - /// Stops collecting onchain transactions. - function stopBroadcast() external; - - // ======== String ======== - - /// Returns true if `search` is found in `subject`, false otherwise. - function contains(string calldata subject, string calldata search) external returns (bool result); - - /// Returns the index of the first occurrence of a `key` in an `input` string. - /// Returns `NOT_FOUND` (i.e. `type(uint256).max`) if the `key` is not found. - /// Returns 0 in case of an empty `key`. - function indexOf(string calldata input, string calldata key) external pure returns (uint256); - - /// Parses the given `string` into an `address`. - function parseAddress(string calldata stringifiedValue) external pure returns (address parsedValue); - - /// Parses the given `string` into a `bool`. - function parseBool(string calldata stringifiedValue) external pure returns (bool parsedValue); - - /// Parses the given `string` into `bytes`. - function parseBytes(string calldata stringifiedValue) external pure returns (bytes memory parsedValue); - - /// Parses the given `string` into a `bytes32`. - function parseBytes32(string calldata stringifiedValue) external pure returns (bytes32 parsedValue); - - /// Parses the given `string` into a `int256`. - function parseInt(string calldata stringifiedValue) external pure returns (int256 parsedValue); - - /// Parses the given `string` into a `uint256`. - function parseUint(string calldata stringifiedValue) external pure returns (uint256 parsedValue); - - /// Replaces occurrences of `from` in the given `string` with `to`. - function replace(string calldata input, string calldata from, string calldata to) - external - pure - returns (string memory output); - - /// Splits the given `string` into an array of strings divided by the `delimiter`. - function split(string calldata input, string calldata delimiter) external pure returns (string[] memory outputs); - - /// Converts the given `string` value to Lowercase. - function toLowercase(string calldata input) external pure returns (string memory output); - - /// Converts the given value to a `string`. - function toString(address value) external pure returns (string memory stringifiedValue); - - /// Converts the given value to a `string`. - function toString(bytes calldata value) external pure returns (string memory stringifiedValue); - - /// Converts the given value to a `string`. - function toString(bytes32 value) external pure returns (string memory stringifiedValue); - - /// Converts the given value to a `string`. - function toString(bool value) external pure returns (string memory stringifiedValue); - - /// Converts the given value to a `string`. - function toString(uint256 value) external pure returns (string memory stringifiedValue); - - /// Converts the given value to a `string`. - function toString(int256 value) external pure returns (string memory stringifiedValue); - - /// Converts the given `string` value to Uppercase. - function toUppercase(string calldata input) external pure returns (string memory output); - - /// Trims leading and trailing whitespace from the given `string` value. - function trim(string calldata input) external pure returns (string memory output); - - // ======== Testing ======== - - /// Compares two `uint256` values. Expects difference to be less than or equal to `maxDelta`. - /// Formats values with decimals in failure message. - function assertApproxEqAbsDecimal(uint256 left, uint256 right, uint256 maxDelta, uint256 decimals) external pure; - - /// Compares two `uint256` values. Expects difference to be less than or equal to `maxDelta`. - /// Formats values with decimals in failure message. Includes error message into revert string on failure. - function assertApproxEqAbsDecimal( - uint256 left, - uint256 right, - uint256 maxDelta, - uint256 decimals, - string calldata error - ) external pure; - - /// Compares two `int256` values. Expects difference to be less than or equal to `maxDelta`. - /// Formats values with decimals in failure message. - function assertApproxEqAbsDecimal(int256 left, int256 right, uint256 maxDelta, uint256 decimals) external pure; - - /// Compares two `int256` values. Expects difference to be less than or equal to `maxDelta`. - /// Formats values with decimals in failure message. Includes error message into revert string on failure. - function assertApproxEqAbsDecimal( - int256 left, - int256 right, - uint256 maxDelta, - uint256 decimals, - string calldata error - ) external pure; - - /// Compares two `uint256` values. Expects difference to be less than or equal to `maxDelta`. - function assertApproxEqAbs(uint256 left, uint256 right, uint256 maxDelta) external pure; - - /// Compares two `uint256` values. Expects difference to be less than or equal to `maxDelta`. - /// Includes error message into revert string on failure. - function assertApproxEqAbs(uint256 left, uint256 right, uint256 maxDelta, string calldata error) external pure; - - /// Compares two `int256` values. Expects difference to be less than or equal to `maxDelta`. - function assertApproxEqAbs(int256 left, int256 right, uint256 maxDelta) external pure; - - /// Compares two `int256` values. Expects difference to be less than or equal to `maxDelta`. - /// Includes error message into revert string on failure. - function assertApproxEqAbs(int256 left, int256 right, uint256 maxDelta, string calldata error) external pure; - - /// Compares two `uint256` values. Expects relative difference in percents to be less than or equal to `maxPercentDelta`. - /// `maxPercentDelta` is an 18 decimal fixed point number, where 1e18 == 100% - /// Formats values with decimals in failure message. - function assertApproxEqRelDecimal(uint256 left, uint256 right, uint256 maxPercentDelta, uint256 decimals) - external - pure; - - /// Compares two `uint256` values. Expects relative difference in percents to be less than or equal to `maxPercentDelta`. - /// `maxPercentDelta` is an 18 decimal fixed point number, where 1e18 == 100% - /// Formats values with decimals in failure message. Includes error message into revert string on failure. - function assertApproxEqRelDecimal( - uint256 left, - uint256 right, - uint256 maxPercentDelta, - uint256 decimals, - string calldata error - ) external pure; - - /// Compares two `int256` values. Expects relative difference in percents to be less than or equal to `maxPercentDelta`. - /// `maxPercentDelta` is an 18 decimal fixed point number, where 1e18 == 100% - /// Formats values with decimals in failure message. - function assertApproxEqRelDecimal(int256 left, int256 right, uint256 maxPercentDelta, uint256 decimals) - external - pure; - - /// Compares two `int256` values. Expects relative difference in percents to be less than or equal to `maxPercentDelta`. - /// `maxPercentDelta` is an 18 decimal fixed point number, where 1e18 == 100% - /// Formats values with decimals in failure message. Includes error message into revert string on failure. - function assertApproxEqRelDecimal( - int256 left, - int256 right, - uint256 maxPercentDelta, - uint256 decimals, - string calldata error - ) external pure; - - /// Compares two `uint256` values. Expects relative difference in percents to be less than or equal to `maxPercentDelta`. - /// `maxPercentDelta` is an 18 decimal fixed point number, where 1e18 == 100% - function assertApproxEqRel(uint256 left, uint256 right, uint256 maxPercentDelta) external pure; - - /// Compares two `uint256` values. Expects relative difference in percents to be less than or equal to `maxPercentDelta`. - /// `maxPercentDelta` is an 18 decimal fixed point number, where 1e18 == 100% - /// Includes error message into revert string on failure. - function assertApproxEqRel(uint256 left, uint256 right, uint256 maxPercentDelta, string calldata error) - external - pure; - - /// Compares two `int256` values. Expects relative difference in percents to be less than or equal to `maxPercentDelta`. - /// `maxPercentDelta` is an 18 decimal fixed point number, where 1e18 == 100% - function assertApproxEqRel(int256 left, int256 right, uint256 maxPercentDelta) external pure; - - /// Compares two `int256` values. Expects relative difference in percents to be less than or equal to `maxPercentDelta`. - /// `maxPercentDelta` is an 18 decimal fixed point number, where 1e18 == 100% - /// Includes error message into revert string on failure. - function assertApproxEqRel(int256 left, int256 right, uint256 maxPercentDelta, string calldata error) - external - pure; - - /// Asserts that two `uint256` values are equal, formatting them with decimals in failure message. - function assertEqDecimal(uint256 left, uint256 right, uint256 decimals) external pure; - - /// Asserts that two `uint256` values are equal, formatting them with decimals in failure message. - /// Includes error message into revert string on failure. - function assertEqDecimal(uint256 left, uint256 right, uint256 decimals, string calldata error) external pure; - - /// Asserts that two `int256` values are equal, formatting them with decimals in failure message. - function assertEqDecimal(int256 left, int256 right, uint256 decimals) external pure; - - /// Asserts that two `int256` values are equal, formatting them with decimals in failure message. - /// Includes error message into revert string on failure. - function assertEqDecimal(int256 left, int256 right, uint256 decimals, string calldata error) external pure; - - /// Asserts that two `bool` values are equal. - function assertEq(bool left, bool right) external pure; - - /// Asserts that two `bool` values are equal and includes error message into revert string on failure. - function assertEq(bool left, bool right, string calldata error) external pure; - - /// Asserts that two `string` values are equal. - function assertEq(string calldata left, string calldata right) external pure; - - /// Asserts that two `string` values are equal and includes error message into revert string on failure. - function assertEq(string calldata left, string calldata right, string calldata error) external pure; - - /// Asserts that two `bytes` values are equal. - function assertEq(bytes calldata left, bytes calldata right) external pure; - - /// Asserts that two `bytes` values are equal and includes error message into revert string on failure. - function assertEq(bytes calldata left, bytes calldata right, string calldata error) external pure; - - /// Asserts that two arrays of `bool` values are equal. - function assertEq(bool[] calldata left, bool[] calldata right) external pure; - - /// Asserts that two arrays of `bool` values are equal and includes error message into revert string on failure. - function assertEq(bool[] calldata left, bool[] calldata right, string calldata error) external pure; - - /// Asserts that two arrays of `uint256 values are equal. - function assertEq(uint256[] calldata left, uint256[] calldata right) external pure; - - /// Asserts that two arrays of `uint256` values are equal and includes error message into revert string on failure. - function assertEq(uint256[] calldata left, uint256[] calldata right, string calldata error) external pure; - - /// Asserts that two arrays of `int256` values are equal. - function assertEq(int256[] calldata left, int256[] calldata right) external pure; - - /// Asserts that two arrays of `int256` values are equal and includes error message into revert string on failure. - function assertEq(int256[] calldata left, int256[] calldata right, string calldata error) external pure; - - /// Asserts that two `uint256` values are equal. - function assertEq(uint256 left, uint256 right) external pure; - - /// Asserts that two arrays of `address` values are equal. - function assertEq(address[] calldata left, address[] calldata right) external pure; - - /// Asserts that two arrays of `address` values are equal and includes error message into revert string on failure. - function assertEq(address[] calldata left, address[] calldata right, string calldata error) external pure; - - /// Asserts that two arrays of `bytes32` values are equal. - function assertEq(bytes32[] calldata left, bytes32[] calldata right) external pure; - - /// Asserts that two arrays of `bytes32` values are equal and includes error message into revert string on failure. - function assertEq(bytes32[] calldata left, bytes32[] calldata right, string calldata error) external pure; - - /// Asserts that two arrays of `string` values are equal. - function assertEq(string[] calldata left, string[] calldata right) external pure; - - /// Asserts that two arrays of `string` values are equal and includes error message into revert string on failure. - function assertEq(string[] calldata left, string[] calldata right, string calldata error) external pure; - - /// Asserts that two arrays of `bytes` values are equal. - function assertEq(bytes[] calldata left, bytes[] calldata right) external pure; - - /// Asserts that two arrays of `bytes` values are equal and includes error message into revert string on failure. - function assertEq(bytes[] calldata left, bytes[] calldata right, string calldata error) external pure; - - /// Asserts that two `uint256` values are equal and includes error message into revert string on failure. - function assertEq(uint256 left, uint256 right, string calldata error) external pure; - - /// Asserts that two `int256` values are equal. - function assertEq(int256 left, int256 right) external pure; - - /// Asserts that two `int256` values are equal and includes error message into revert string on failure. - function assertEq(int256 left, int256 right, string calldata error) external pure; - - /// Asserts that two `address` values are equal. - function assertEq(address left, address right) external pure; - - /// Asserts that two `address` values are equal and includes error message into revert string on failure. - function assertEq(address left, address right, string calldata error) external pure; - - /// Asserts that two `bytes32` values are equal. - function assertEq(bytes32 left, bytes32 right) external pure; - - /// Asserts that two `bytes32` values are equal and includes error message into revert string on failure. - function assertEq(bytes32 left, bytes32 right, string calldata error) external pure; - - /// Asserts that the given condition is false. - function assertFalse(bool condition) external pure; - - /// Asserts that the given condition is false and includes error message into revert string on failure. - function assertFalse(bool condition, string calldata error) external pure; - - /// Compares two `uint256` values. Expects first value to be greater than or equal to second. - /// Formats values with decimals in failure message. - function assertGeDecimal(uint256 left, uint256 right, uint256 decimals) external pure; - - /// Compares two `uint256` values. Expects first value to be greater than or equal to second. - /// Formats values with decimals in failure message. Includes error message into revert string on failure. - function assertGeDecimal(uint256 left, uint256 right, uint256 decimals, string calldata error) external pure; - - /// Compares two `int256` values. Expects first value to be greater than or equal to second. - /// Formats values with decimals in failure message. - function assertGeDecimal(int256 left, int256 right, uint256 decimals) external pure; - - /// Compares two `int256` values. Expects first value to be greater than or equal to second. - /// Formats values with decimals in failure message. Includes error message into revert string on failure. - function assertGeDecimal(int256 left, int256 right, uint256 decimals, string calldata error) external pure; - - /// Compares two `uint256` values. Expects first value to be greater than or equal to second. - function assertGe(uint256 left, uint256 right) external pure; - - /// Compares two `uint256` values. Expects first value to be greater than or equal to second. - /// Includes error message into revert string on failure. - function assertGe(uint256 left, uint256 right, string calldata error) external pure; - - /// Compares two `int256` values. Expects first value to be greater than or equal to second. - function assertGe(int256 left, int256 right) external pure; - - /// Compares two `int256` values. Expects first value to be greater than or equal to second. - /// Includes error message into revert string on failure. - function assertGe(int256 left, int256 right, string calldata error) external pure; - - /// Compares two `uint256` values. Expects first value to be greater than second. - /// Formats values with decimals in failure message. - function assertGtDecimal(uint256 left, uint256 right, uint256 decimals) external pure; - - /// Compares two `uint256` values. Expects first value to be greater than second. - /// Formats values with decimals in failure message. Includes error message into revert string on failure. - function assertGtDecimal(uint256 left, uint256 right, uint256 decimals, string calldata error) external pure; - - /// Compares two `int256` values. Expects first value to be greater than second. - /// Formats values with decimals in failure message. - function assertGtDecimal(int256 left, int256 right, uint256 decimals) external pure; - - /// Compares two `int256` values. Expects first value to be greater than second. - /// Formats values with decimals in failure message. Includes error message into revert string on failure. - function assertGtDecimal(int256 left, int256 right, uint256 decimals, string calldata error) external pure; - - /// Compares two `uint256` values. Expects first value to be greater than second. - function assertGt(uint256 left, uint256 right) external pure; - - /// Compares two `uint256` values. Expects first value to be greater than second. - /// Includes error message into revert string on failure. - function assertGt(uint256 left, uint256 right, string calldata error) external pure; - - /// Compares two `int256` values. Expects first value to be greater than second. - function assertGt(int256 left, int256 right) external pure; - - /// Compares two `int256` values. Expects first value to be greater than second. - /// Includes error message into revert string on failure. - function assertGt(int256 left, int256 right, string calldata error) external pure; - - /// Compares two `uint256` values. Expects first value to be less than or equal to second. - /// Formats values with decimals in failure message. - function assertLeDecimal(uint256 left, uint256 right, uint256 decimals) external pure; - - /// Compares two `uint256` values. Expects first value to be less than or equal to second. - /// Formats values with decimals in failure message. Includes error message into revert string on failure. - function assertLeDecimal(uint256 left, uint256 right, uint256 decimals, string calldata error) external pure; - - /// Compares two `int256` values. Expects first value to be less than or equal to second. - /// Formats values with decimals in failure message. - function assertLeDecimal(int256 left, int256 right, uint256 decimals) external pure; - - /// Compares two `int256` values. Expects first value to be less than or equal to second. - /// Formats values with decimals in failure message. Includes error message into revert string on failure. - function assertLeDecimal(int256 left, int256 right, uint256 decimals, string calldata error) external pure; - - /// Compares two `uint256` values. Expects first value to be less than or equal to second. - function assertLe(uint256 left, uint256 right) external pure; - - /// Compares two `uint256` values. Expects first value to be less than or equal to second. - /// Includes error message into revert string on failure. - function assertLe(uint256 left, uint256 right, string calldata error) external pure; - - /// Compares two `int256` values. Expects first value to be less than or equal to second. - function assertLe(int256 left, int256 right) external pure; - - /// Compares two `int256` values. Expects first value to be less than or equal to second. - /// Includes error message into revert string on failure. - function assertLe(int256 left, int256 right, string calldata error) external pure; - - /// Compares two `uint256` values. Expects first value to be less than second. - /// Formats values with decimals in failure message. - function assertLtDecimal(uint256 left, uint256 right, uint256 decimals) external pure; - - /// Compares two `uint256` values. Expects first value to be less than second. - /// Formats values with decimals in failure message. Includes error message into revert string on failure. - function assertLtDecimal(uint256 left, uint256 right, uint256 decimals, string calldata error) external pure; - - /// Compares two `int256` values. Expects first value to be less than second. - /// Formats values with decimals in failure message. - function assertLtDecimal(int256 left, int256 right, uint256 decimals) external pure; - - /// Compares two `int256` values. Expects first value to be less than second. - /// Formats values with decimals in failure message. Includes error message into revert string on failure. - function assertLtDecimal(int256 left, int256 right, uint256 decimals, string calldata error) external pure; - - /// Compares two `uint256` values. Expects first value to be less than second. - function assertLt(uint256 left, uint256 right) external pure; - - /// Compares two `uint256` values. Expects first value to be less than second. - /// Includes error message into revert string on failure. - function assertLt(uint256 left, uint256 right, string calldata error) external pure; - - /// Compares two `int256` values. Expects first value to be less than second. - function assertLt(int256 left, int256 right) external pure; - - /// Compares two `int256` values. Expects first value to be less than second. - /// Includes error message into revert string on failure. - function assertLt(int256 left, int256 right, string calldata error) external pure; - - /// Asserts that two `uint256` values are not equal, formatting them with decimals in failure message. - function assertNotEqDecimal(uint256 left, uint256 right, uint256 decimals) external pure; - - /// Asserts that two `uint256` values are not equal, formatting them with decimals in failure message. - /// Includes error message into revert string on failure. - function assertNotEqDecimal(uint256 left, uint256 right, uint256 decimals, string calldata error) external pure; - - /// Asserts that two `int256` values are not equal, formatting them with decimals in failure message. - function assertNotEqDecimal(int256 left, int256 right, uint256 decimals) external pure; - - /// Asserts that two `int256` values are not equal, formatting them with decimals in failure message. - /// Includes error message into revert string on failure. - function assertNotEqDecimal(int256 left, int256 right, uint256 decimals, string calldata error) external pure; - - /// Asserts that two `bool` values are not equal. - function assertNotEq(bool left, bool right) external pure; - - /// Asserts that two `bool` values are not equal and includes error message into revert string on failure. - function assertNotEq(bool left, bool right, string calldata error) external pure; - - /// Asserts that two `string` values are not equal. - function assertNotEq(string calldata left, string calldata right) external pure; - - /// Asserts that two `string` values are not equal and includes error message into revert string on failure. - function assertNotEq(string calldata left, string calldata right, string calldata error) external pure; - - /// Asserts that two `bytes` values are not equal. - function assertNotEq(bytes calldata left, bytes calldata right) external pure; - - /// Asserts that two `bytes` values are not equal and includes error message into revert string on failure. - function assertNotEq(bytes calldata left, bytes calldata right, string calldata error) external pure; - - /// Asserts that two arrays of `bool` values are not equal. - function assertNotEq(bool[] calldata left, bool[] calldata right) external pure; - - /// Asserts that two arrays of `bool` values are not equal and includes error message into revert string on failure. - function assertNotEq(bool[] calldata left, bool[] calldata right, string calldata error) external pure; - - /// Asserts that two arrays of `uint256` values are not equal. - function assertNotEq(uint256[] calldata left, uint256[] calldata right) external pure; - - /// Asserts that two arrays of `uint256` values are not equal and includes error message into revert string on failure. - function assertNotEq(uint256[] calldata left, uint256[] calldata right, string calldata error) external pure; - - /// Asserts that two arrays of `int256` values are not equal. - function assertNotEq(int256[] calldata left, int256[] calldata right) external pure; - - /// Asserts that two arrays of `int256` values are not equal and includes error message into revert string on failure. - function assertNotEq(int256[] calldata left, int256[] calldata right, string calldata error) external pure; - - /// Asserts that two `uint256` values are not equal. - function assertNotEq(uint256 left, uint256 right) external pure; - - /// Asserts that two arrays of `address` values are not equal. - function assertNotEq(address[] calldata left, address[] calldata right) external pure; - - /// Asserts that two arrays of `address` values are not equal and includes error message into revert string on failure. - function assertNotEq(address[] calldata left, address[] calldata right, string calldata error) external pure; - - /// Asserts that two arrays of `bytes32` values are not equal. - function assertNotEq(bytes32[] calldata left, bytes32[] calldata right) external pure; - - /// Asserts that two arrays of `bytes32` values are not equal and includes error message into revert string on failure. - function assertNotEq(bytes32[] calldata left, bytes32[] calldata right, string calldata error) external pure; - - /// Asserts that two arrays of `string` values are not equal. - function assertNotEq(string[] calldata left, string[] calldata right) external pure; - - /// Asserts that two arrays of `string` values are not equal and includes error message into revert string on failure. - function assertNotEq(string[] calldata left, string[] calldata right, string calldata error) external pure; - - /// Asserts that two arrays of `bytes` values are not equal. - function assertNotEq(bytes[] calldata left, bytes[] calldata right) external pure; - - /// Asserts that two arrays of `bytes` values are not equal and includes error message into revert string on failure. - function assertNotEq(bytes[] calldata left, bytes[] calldata right, string calldata error) external pure; - - /// Asserts that two `uint256` values are not equal and includes error message into revert string on failure. - function assertNotEq(uint256 left, uint256 right, string calldata error) external pure; - - /// Asserts that two `int256` values are not equal. - function assertNotEq(int256 left, int256 right) external pure; - - /// Asserts that two `int256` values are not equal and includes error message into revert string on failure. - function assertNotEq(int256 left, int256 right, string calldata error) external pure; - - /// Asserts that two `address` values are not equal. - function assertNotEq(address left, address right) external pure; - - /// Asserts that two `address` values are not equal and includes error message into revert string on failure. - function assertNotEq(address left, address right, string calldata error) external pure; - - /// Asserts that two `bytes32` values are not equal. - function assertNotEq(bytes32 left, bytes32 right) external pure; - - /// Asserts that two `bytes32` values are not equal and includes error message into revert string on failure. - function assertNotEq(bytes32 left, bytes32 right, string calldata error) external pure; - - /// Asserts that the given condition is true. - function assertTrue(bool condition) external pure; - - /// Asserts that the given condition is true and includes error message into revert string on failure. - function assertTrue(bool condition, string calldata error) external pure; - - /// If the condition is false, discard this run's fuzz inputs and generate new ones. - function assume(bool condition) external pure; - - /// Discard this run's fuzz inputs and generate new ones if next call reverted. - function assumeNoRevert() external pure; - - /// Discard this run's fuzz inputs and generate new ones if next call reverts with the potential revert parameters. - function assumeNoRevert(PotentialRevert calldata potentialRevert) external pure; - - /// Discard this run's fuzz inputs and generate new ones if next call reverts with the any of the potential revert parameters. - function assumeNoRevert(PotentialRevert[] calldata potentialReverts) external pure; - - /// Writes a breakpoint to jump to in the debugger. - function breakpoint(string calldata char) external pure; - - /// Writes a conditional breakpoint to jump to in the debugger. - function breakpoint(string calldata char, bool value) external pure; - - /// Returns true if the current Foundry version is greater than or equal to the given version. - /// The given version string must be in the format `major.minor.patch`. - /// This is equivalent to `foundryVersionCmp(version) >= 0`. - function foundryVersionAtLeast(string calldata version) external view returns (bool); - - /// Compares the current Foundry version with the given version string. - /// The given version string must be in the format `major.minor.patch`. - /// Returns: - /// -1 if current Foundry version is less than the given version - /// 0 if current Foundry version equals the given version - /// 1 if current Foundry version is greater than the given version - /// This result can then be used with a comparison operator against `0`. - /// For example, to check if the current Foundry version is greater than or equal to `1.0.0`: - /// `if (foundryVersionCmp("1.0.0") >= 0) { ... }` - function foundryVersionCmp(string calldata version) external view returns (int256); - - /// Returns a Chain struct for specific alias - function getChain(string calldata chainAlias) external view returns (Chain memory chain); - - /// Returns a Chain struct for specific chainId - function getChain(uint256 chainId) external view returns (Chain memory chain); - - /// Returns the Foundry version. - /// Format: -+.. - /// Sample output: 0.3.0-nightly+3cb96bde9b.1737036656.debug - /// Note: Build timestamps may vary slightly across platforms due to separate CI jobs. - /// For reliable version comparisons, use UNIX format (e.g., >= 1700000000) - /// to compare timestamps while ignoring minor time differences. - function getFoundryVersion() external view returns (string memory version); - - /// Returns the RPC url for the given alias. - function rpcUrl(string calldata rpcAlias) external view returns (string memory json); - - /// Returns all rpc urls and their aliases as structs. - function rpcUrlStructs() external view returns (Rpc[] memory urls); - - /// Returns all rpc urls and their aliases `[alias, url][]`. - function rpcUrls() external view returns (string[2][] memory urls); - - /// Suspends execution of the main thread for `duration` milliseconds. - function sleep(uint256 duration) external; - - // ======== Toml ======== - - /// Checks if `key` exists in a TOML table. - function keyExistsToml(string calldata toml, string calldata key) external view returns (bool); - - /// Parses a string of TOML data at `key` and coerces it to `address`. - function parseTomlAddress(string calldata toml, string calldata key) external pure returns (address); - - /// Parses a string of TOML data at `key` and coerces it to `address[]`. - function parseTomlAddressArray(string calldata toml, string calldata key) - external - pure - returns (address[] memory); - - /// Parses a string of TOML data at `key` and coerces it to `bool`. - function parseTomlBool(string calldata toml, string calldata key) external pure returns (bool); - - /// Parses a string of TOML data at `key` and coerces it to `bool[]`. - function parseTomlBoolArray(string calldata toml, string calldata key) external pure returns (bool[] memory); - - /// Parses a string of TOML data at `key` and coerces it to `bytes`. - function parseTomlBytes(string calldata toml, string calldata key) external pure returns (bytes memory); - - /// Parses a string of TOML data at `key` and coerces it to `bytes32`. - function parseTomlBytes32(string calldata toml, string calldata key) external pure returns (bytes32); - - /// Parses a string of TOML data at `key` and coerces it to `bytes32[]`. - function parseTomlBytes32Array(string calldata toml, string calldata key) - external - pure - returns (bytes32[] memory); - - /// Parses a string of TOML data at `key` and coerces it to `bytes[]`. - function parseTomlBytesArray(string calldata toml, string calldata key) external pure returns (bytes[] memory); - - /// Parses a string of TOML data at `key` and coerces it to `int256`. - function parseTomlInt(string calldata toml, string calldata key) external pure returns (int256); - - /// Parses a string of TOML data at `key` and coerces it to `int256[]`. - function parseTomlIntArray(string calldata toml, string calldata key) external pure returns (int256[] memory); - - /// Returns an array of all the keys in a TOML table. - function parseTomlKeys(string calldata toml, string calldata key) external pure returns (string[] memory keys); - - /// Parses a string of TOML data at `key` and coerces it to `string`. - function parseTomlString(string calldata toml, string calldata key) external pure returns (string memory); - - /// Parses a string of TOML data at `key` and coerces it to `string[]`. - function parseTomlStringArray(string calldata toml, string calldata key) external pure returns (string[] memory); - - /// Parses a string of TOML data at `key` and coerces it to type array corresponding to `typeDescription`. - function parseTomlTypeArray(string calldata toml, string calldata key, string calldata typeDescription) - external - pure - returns (bytes memory); - - /// Parses a string of TOML data and coerces it to type corresponding to `typeDescription`. - function parseTomlType(string calldata toml, string calldata typeDescription) - external - pure - returns (bytes memory); - - /// Parses a string of TOML data at `key` and coerces it to type corresponding to `typeDescription`. - function parseTomlType(string calldata toml, string calldata key, string calldata typeDescription) - external - pure - returns (bytes memory); - - /// Parses a string of TOML data at `key` and coerces it to `uint256`. - function parseTomlUint(string calldata toml, string calldata key) external pure returns (uint256); - - /// Parses a string of TOML data at `key` and coerces it to `uint256[]`. - function parseTomlUintArray(string calldata toml, string calldata key) external pure returns (uint256[] memory); - - /// ABI-encodes a TOML table. - function parseToml(string calldata toml) external pure returns (bytes memory abiEncodedData); - - /// ABI-encodes a TOML table at `key`. - function parseToml(string calldata toml, string calldata key) external pure returns (bytes memory abiEncodedData); - - /// Takes serialized JSON, converts to TOML and write a serialized TOML to a file. - function writeToml(string calldata json, string calldata path) external; - - /// Takes serialized JSON, converts to TOML and write a serialized TOML table to an **existing** TOML file, replacing a value with key = - /// This is useful to replace a specific value of a TOML file, without having to parse the entire thing. - function writeToml(string calldata json, string calldata path, string calldata valueKey) external; - - // ======== Utilities ======== - - /// Compute the address of a contract created with CREATE2 using the given CREATE2 deployer. - function computeCreate2Address(bytes32 salt, bytes32 initCodeHash, address deployer) - external - pure - returns (address); - - /// Compute the address of a contract created with CREATE2 using the default CREATE2 deployer. - function computeCreate2Address(bytes32 salt, bytes32 initCodeHash) external pure returns (address); - - /// Compute the address a contract will be deployed at for a given deployer address and nonce. - function computeCreateAddress(address deployer, uint256 nonce) external pure returns (address); - - /// Utility cheatcode to copy storage of `from` contract to another `to` contract. - function copyStorage(address from, address to) external; - - /// Returns ENS namehash for provided string. - function ensNamehash(string calldata name) external pure returns (bytes32); - - /// Gets the label for the specified address. - function getLabel(address account) external view returns (string memory currentLabel); - - /// Labels an address in call traces. - function label(address account, string calldata newLabel) external; - - /// Pauses collection of call traces. Useful in cases when you want to skip tracing of - /// complex calls which are not useful for debugging. - function pauseTracing() external view; - - /// Returns a random `address`. - function randomAddress() external returns (address); - - /// Returns a random `bool`. - function randomBool() external view returns (bool); - - /// Returns a random byte array value of the given length. - function randomBytes(uint256 len) external view returns (bytes memory); - - /// Returns a random fixed-size byte array of length 4. - function randomBytes4() external view returns (bytes4); - - /// Returns a random fixed-size byte array of length 8. - function randomBytes8() external view returns (bytes8); - - /// Returns a random `int256` value. - function randomInt() external view returns (int256); - - /// Returns a random `int256` value of given bits. - function randomInt(uint256 bits) external view returns (int256); - - /// Returns a random uint256 value. - function randomUint() external returns (uint256); - - /// Returns random uint256 value between the provided range (=min..=max). - function randomUint(uint256 min, uint256 max) external returns (uint256); - - /// Returns a random `uint256` value of given bits. - function randomUint(uint256 bits) external view returns (uint256); - - /// Unpauses collection of call traces. - function resumeTracing() external view; - - /// Utility cheatcode to set arbitrary storage for given target address. - function setArbitraryStorage(address target) external; - - /// Utility cheatcode to set arbitrary storage for given target address and overwrite - /// any storage slots that have been previously set. - function setArbitraryStorage(address target, bool overwrite) external; - - /// Randomly shuffles an array. - function shuffle(uint256[] calldata array) external returns (uint256[] memory); - - /// Sorts an array in ascending order. - function sort(uint256[] calldata array) external returns (uint256[] memory); - - /// Encodes a `bytes` value to a base64url string. - function toBase64URL(bytes calldata data) external pure returns (string memory); - - /// Encodes a `string` value to a base64url string. - function toBase64URL(string calldata data) external pure returns (string memory); - - /// Encodes a `bytes` value to a base64 string. - function toBase64(bytes calldata data) external pure returns (string memory); - - /// Encodes a `string` value to a base64 string. - function toBase64(string calldata data) external pure returns (string memory); -} - -/// The `Vm` interface does allow manipulation of the EVM state. These are all intended to be used -/// in tests, but it is not recommended to use these cheats in scripts. -interface Vm is VmSafe { - // ======== EVM ======== - - /// Utility cheatcode to set an EIP-2930 access list for all subsequent transactions. - function accessList(AccessListItem[] calldata access) external; - - /// Returns the identifier of the currently active fork. Reverts if no fork is currently active. - function activeFork() external view returns (uint256 forkId); - - /// In forking mode, explicitly grant the given address cheatcode access. - function allowCheatcodes(address account) external; - - /// Sets `block.blobbasefee` - function blobBaseFee(uint256 newBlobBaseFee) external; - - /// Sets the blobhashes in the transaction. - /// Not available on EVM versions before Cancun. - /// If used on unsupported EVM versions it will revert. - function blobhashes(bytes32[] calldata hashes) external; - - /// Sets `block.chainid`. - function chainId(uint256 newChainId) external; - - /// Clears all mocked calls. - function clearMockedCalls() external; - - /// Clones a source account code, state, balance and nonce to a target account and updates in-memory EVM state. - function cloneAccount(address source, address target) external; - - /// Sets `block.coinbase`. - function coinbase(address newCoinbase) external; - - /// Marks the slots of an account and the account address as cold. - function cool(address target) external; - - /// Utility cheatcode to mark specific storage slot as cold, simulating no prior read. - function coolSlot(address target, bytes32 slot) external; - - /// Creates a new fork with the given endpoint and the _latest_ block and returns the identifier of the fork. - function createFork(string calldata urlOrAlias) external returns (uint256 forkId); - - /// Creates a new fork with the given endpoint and block and returns the identifier of the fork. - function createFork(string calldata urlOrAlias, uint256 blockNumber) external returns (uint256 forkId); - - /// Creates a new fork with the given endpoint and at the block the given transaction was mined in, - /// replays all transaction mined in the block before the transaction, and returns the identifier of the fork. - function createFork(string calldata urlOrAlias, bytes32 txHash) external returns (uint256 forkId); - - /// Creates and also selects a new fork with the given endpoint and the latest block and returns the identifier of the fork. - function createSelectFork(string calldata urlOrAlias) external returns (uint256 forkId); - - /// Creates and also selects a new fork with the given endpoint and block and returns the identifier of the fork. - function createSelectFork(string calldata urlOrAlias, uint256 blockNumber) external returns (uint256 forkId); - - /// Creates and also selects new fork with the given endpoint and at the block the given transaction was mined in, - /// replays all transaction mined in the block before the transaction, returns the identifier of the fork. - function createSelectFork(string calldata urlOrAlias, bytes32 txHash) external returns (uint256 forkId); - - /// Sets an address' balance. - function deal(address account, uint256 newBalance) external; - - /// Removes the snapshot with the given ID created by `snapshot`. - /// Takes the snapshot ID to delete. - /// Returns `true` if the snapshot was successfully deleted. - /// Returns `false` if the snapshot does not exist. - function deleteStateSnapshot(uint256 snapshotId) external returns (bool success); - - /// Removes _all_ snapshots previously created by `snapshot`. - function deleteStateSnapshots() external; - - /// Sets `block.difficulty`. - /// Not available on EVM versions from Paris onwards. Use `prevrandao` instead. - /// Reverts if used on unsupported EVM versions. - function difficulty(uint256 newDifficulty) external; - - /// Dump a genesis JSON file's `allocs` to disk. - function dumpState(string calldata pathToStateJson) external; - - /// Sets an address' code. - function etch(address target, bytes calldata newRuntimeBytecode) external; - - /// Sets `block.basefee`. - function fee(uint256 newBasefee) external; - - /// Gets the blockhashes from the current transaction. - /// Not available on EVM versions before Cancun. - /// If used on unsupported EVM versions it will revert. - function getBlobhashes() external view returns (bytes32[] memory hashes); - - /// Returns true if the account is marked as persistent. - function isPersistent(address account) external view returns (bool persistent); - - /// Load a genesis JSON file's `allocs` into the in-memory EVM state. - function loadAllocs(string calldata pathToAllocsJson) external; - - /// Marks that the account(s) should use persistent storage across fork swaps in a multifork setup - /// Meaning, changes made to the state of this account will be kept when switching forks. - function makePersistent(address account) external; - - /// See `makePersistent(address)`. - function makePersistent(address account0, address account1) external; - - /// See `makePersistent(address)`. - function makePersistent(address account0, address account1, address account2) external; - - /// See `makePersistent(address)`. - function makePersistent(address[] calldata accounts) external; - - /// Reverts a call to an address with specified revert data. - function mockCallRevert(address callee, bytes calldata data, bytes calldata revertData) external; - - /// Reverts a call to an address with a specific `msg.value`, with specified revert data. - function mockCallRevert(address callee, uint256 msgValue, bytes calldata data, bytes calldata revertData) - external; - - /// Reverts a call to an address with specified revert data. - /// Overload to pass the function selector directly `token.approve.selector` instead of `abi.encodeWithSelector(token.approve.selector)`. - function mockCallRevert(address callee, bytes4 data, bytes calldata revertData) external; - - /// Reverts a call to an address with a specific `msg.value`, with specified revert data. - /// Overload to pass the function selector directly `token.approve.selector` instead of `abi.encodeWithSelector(token.approve.selector)`. - function mockCallRevert(address callee, uint256 msgValue, bytes4 data, bytes calldata revertData) external; - - /// Mocks a call to an address, returning specified data. - /// Calldata can either be strict or a partial match, e.g. if you only - /// pass a Solidity selector to the expected calldata, then the entire Solidity - /// function will be mocked. - function mockCall(address callee, bytes calldata data, bytes calldata returnData) external; - - /// Mocks a call to an address with a specific `msg.value`, returning specified data. - /// Calldata match takes precedence over `msg.value` in case of ambiguity. - function mockCall(address callee, uint256 msgValue, bytes calldata data, bytes calldata returnData) external; - - /// Mocks a call to an address, returning specified data. - /// Calldata can either be strict or a partial match, e.g. if you only - /// pass a Solidity selector to the expected calldata, then the entire Solidity - /// function will be mocked. - /// Overload to pass the function selector directly `token.approve.selector` instead of `abi.encodeWithSelector(token.approve.selector)`. - function mockCall(address callee, bytes4 data, bytes calldata returnData) external; - - /// Mocks a call to an address with a specific `msg.value`, returning specified data. - /// Calldata match takes precedence over `msg.value` in case of ambiguity. - /// Overload to pass the function selector directly `token.approve.selector` instead of `abi.encodeWithSelector(token.approve.selector)`. - function mockCall(address callee, uint256 msgValue, bytes4 data, bytes calldata returnData) external; - - /// Mocks multiple calls to an address, returning specified data for each call. - function mockCalls(address callee, bytes calldata data, bytes[] calldata returnData) external; - - /// Mocks multiple calls to an address with a specific `msg.value`, returning specified data for each call. - function mockCalls(address callee, uint256 msgValue, bytes calldata data, bytes[] calldata returnData) external; - - /// Whenever a call is made to `callee` with calldata `data`, this cheatcode instead calls - /// `target` with the same calldata. This functionality is similar to a delegate call made to - /// `target` contract from `callee`. - /// Can be used to substitute a call to a function with another implementation that captures - /// the primary logic of the original function but is easier to reason about. - /// If calldata is not a strict match then partial match by selector is attempted. - function mockFunction(address callee, address target, bytes calldata data) external; - - /// Utility cheatcode to remove any EIP-2930 access list set by `accessList` cheatcode. - function noAccessList() external; - - /// Sets the *next* call's `msg.sender` to be the input address. - function prank(address msgSender) external; - - /// Sets the *next* call's `msg.sender` to be the input address, and the `tx.origin` to be the second input. - function prank(address msgSender, address txOrigin) external; - - /// Sets the *next* delegate call's `msg.sender` to be the input address. - function prank(address msgSender, bool delegateCall) external; - - /// Sets the *next* delegate call's `msg.sender` to be the input address, and the `tx.origin` to be the second input. - function prank(address msgSender, address txOrigin, bool delegateCall) external; - - /// Sets `block.prevrandao`. - /// Not available on EVM versions before Paris. Use `difficulty` instead. - /// If used on unsupported EVM versions it will revert. - function prevrandao(bytes32 newPrevrandao) external; - - /// Sets `block.prevrandao`. - /// Not available on EVM versions before Paris. Use `difficulty` instead. - /// If used on unsupported EVM versions it will revert. - function prevrandao(uint256 newPrevrandao) external; - - /// Reads the current `msg.sender` and `tx.origin` from state and reports if there is any active caller modification. - function readCallers() external returns (CallerMode callerMode, address msgSender, address txOrigin); - - /// Resets the nonce of an account to 0 for EOAs and 1 for contract accounts. - function resetNonce(address account) external; - - /// Revert the state of the EVM to a previous snapshot - /// Takes the snapshot ID to revert to. - /// Returns `true` if the snapshot was successfully reverted. - /// Returns `false` if the snapshot does not exist. - /// **Note:** This does not automatically delete the snapshot. To delete the snapshot use `deleteStateSnapshot`. - function revertToState(uint256 snapshotId) external returns (bool success); - - /// Revert the state of the EVM to a previous snapshot and automatically deletes the snapshots - /// Takes the snapshot ID to revert to. - /// Returns `true` if the snapshot was successfully reverted and deleted. - /// Returns `false` if the snapshot does not exist. - function revertToStateAndDelete(uint256 snapshotId) external returns (bool success); - - /// Revokes persistent status from the address, previously added via `makePersistent`. - function revokePersistent(address account) external; - - /// See `revokePersistent(address)`. - function revokePersistent(address[] calldata accounts) external; - - /// Sets `block.height`. - function roll(uint256 newHeight) external; - - /// Updates the currently active fork to given block number - /// This is similar to `roll` but for the currently active fork. - function rollFork(uint256 blockNumber) external; - - /// Updates the currently active fork to given transaction. This will `rollFork` with the number - /// of the block the transaction was mined in and replays all transaction mined before it in the block. - function rollFork(bytes32 txHash) external; - - /// Updates the given fork to given block number. - function rollFork(uint256 forkId, uint256 blockNumber) external; - - /// Updates the given fork to block number of the given transaction and replays all transaction mined before it in the block. - function rollFork(uint256 forkId, bytes32 txHash) external; - - /// Takes a fork identifier created by `createFork` and sets the corresponding forked state as active. - function selectFork(uint256 forkId) external; - - /// Set blockhash for the current block. - /// It only sets the blockhash for blocks where `block.number - 256 <= number < block.number`. - function setBlockhash(uint256 blockNumber, bytes32 blockHash) external; - - /// Sets the nonce of an account. Must be higher than the current nonce of the account. - function setNonce(address account, uint64 newNonce) external; - - /// Sets the nonce of an account to an arbitrary value. - function setNonceUnsafe(address account, uint64 newNonce) external; - - /// Snapshot capture the gas usage of the last call by name from the callee perspective. - function snapshotGasLastCall(string calldata name) external returns (uint256 gasUsed); - - /// Snapshot capture the gas usage of the last call by name in a group from the callee perspective. - function snapshotGasLastCall(string calldata group, string calldata name) external returns (uint256 gasUsed); - - /// Snapshot the current state of the evm. - /// Returns the ID of the snapshot that was created. - /// To revert a snapshot use `revertToState`. - function snapshotState() external returns (uint256 snapshotId); - - /// Snapshot capture an arbitrary numerical value by name. - /// The group name is derived from the contract name. - function snapshotValue(string calldata name, uint256 value) external; - - /// Snapshot capture an arbitrary numerical value by name in a group. - function snapshotValue(string calldata group, string calldata name, uint256 value) external; - - /// Sets all subsequent calls' `msg.sender` to be the input address until `stopPrank` is called. - function startPrank(address msgSender) external; - - /// Sets all subsequent calls' `msg.sender` to be the input address until `stopPrank` is called, and the `tx.origin` to be the second input. - function startPrank(address msgSender, address txOrigin) external; - - /// Sets all subsequent delegate calls' `msg.sender` to be the input address until `stopPrank` is called. - function startPrank(address msgSender, bool delegateCall) external; - - /// Sets all subsequent delegate calls' `msg.sender` to be the input address until `stopPrank` is called, and the `tx.origin` to be the second input. - function startPrank(address msgSender, address txOrigin, bool delegateCall) external; - - /// Start a snapshot capture of the current gas usage by name. - /// The group name is derived from the contract name. - function startSnapshotGas(string calldata name) external; - - /// Start a snapshot capture of the current gas usage by name in a group. - function startSnapshotGas(string calldata group, string calldata name) external; - - /// Resets subsequent calls' `msg.sender` to be `address(this)`. - function stopPrank() external; - - /// Stop the snapshot capture of the current gas by latest snapshot name, capturing the gas used since the start. - function stopSnapshotGas() external returns (uint256 gasUsed); - - /// Stop the snapshot capture of the current gas usage by name, capturing the gas used since the start. - /// The group name is derived from the contract name. - function stopSnapshotGas(string calldata name) external returns (uint256 gasUsed); - - /// Stop the snapshot capture of the current gas usage by name in a group, capturing the gas used since the start. - function stopSnapshotGas(string calldata group, string calldata name) external returns (uint256 gasUsed); - - /// Stores a value to an address' storage slot. - function store(address target, bytes32 slot, bytes32 value) external; - - /// Fetches the given transaction from the active fork and executes it on the current state. - function transact(bytes32 txHash) external; - - /// Fetches the given transaction from the given fork and executes it on the current state. - function transact(uint256 forkId, bytes32 txHash) external; - - /// Sets `tx.gasprice`. - function txGasPrice(uint256 newGasPrice) external; - - /// Utility cheatcode to mark specific storage slot as warm, simulating a prior read. - function warmSlot(address target, bytes32 slot) external; - - /// Sets `block.timestamp`. - function warp(uint256 newTimestamp) external; - - /// `deleteSnapshot` is being deprecated in favor of `deleteStateSnapshot`. It will be removed in future versions. - function deleteSnapshot(uint256 snapshotId) external returns (bool success); - - /// `deleteSnapshots` is being deprecated in favor of `deleteStateSnapshots`. It will be removed in future versions. - function deleteSnapshots() external; - - /// `revertToAndDelete` is being deprecated in favor of `revertToStateAndDelete`. It will be removed in future versions. - function revertToAndDelete(uint256 snapshotId) external returns (bool success); - - /// `revertTo` is being deprecated in favor of `revertToState`. It will be removed in future versions. - function revertTo(uint256 snapshotId) external returns (bool success); - - /// `snapshot` is being deprecated in favor of `snapshotState`. It will be removed in future versions. - function snapshot() external returns (uint256 snapshotId); - - // ======== Testing ======== - - /// Expect a call to an address with the specified `msg.value` and calldata, and a *minimum* amount of gas. - function expectCallMinGas(address callee, uint256 msgValue, uint64 minGas, bytes calldata data) external; - - /// Expect given number of calls to an address with the specified `msg.value` and calldata, and a *minimum* amount of gas. - function expectCallMinGas(address callee, uint256 msgValue, uint64 minGas, bytes calldata data, uint64 count) - external; - - /// Expects a call to an address with the specified calldata. - /// Calldata can either be a strict or a partial match. - function expectCall(address callee, bytes calldata data) external; - - /// Expects given number of calls to an address with the specified calldata. - function expectCall(address callee, bytes calldata data, uint64 count) external; - - /// Expects a call to an address with the specified `msg.value` and calldata. - function expectCall(address callee, uint256 msgValue, bytes calldata data) external; - - /// Expects given number of calls to an address with the specified `msg.value` and calldata. - function expectCall(address callee, uint256 msgValue, bytes calldata data, uint64 count) external; - - /// Expect a call to an address with the specified `msg.value`, gas, and calldata. - function expectCall(address callee, uint256 msgValue, uint64 gas, bytes calldata data) external; - - /// Expects given number of calls to an address with the specified `msg.value`, gas, and calldata. - function expectCall(address callee, uint256 msgValue, uint64 gas, bytes calldata data, uint64 count) external; - - /// Expects the deployment of the specified bytecode by the specified address using the CREATE opcode - function expectCreate(bytes calldata bytecode, address deployer) external; - - /// Expects the deployment of the specified bytecode by the specified address using the CREATE2 opcode - function expectCreate2(bytes calldata bytecode, address deployer) external; - - /// Prepare an expected anonymous log with (bool checkTopic1, bool checkTopic2, bool checkTopic3, bool checkData.). - /// Call this function, then emit an anonymous event, then call a function. Internally after the call, we check if - /// logs were emitted in the expected order with the expected topics and data (as specified by the booleans). - function expectEmitAnonymous(bool checkTopic0, bool checkTopic1, bool checkTopic2, bool checkTopic3, bool checkData) - external; - - /// Same as the previous method, but also checks supplied address against emitting contract. - function expectEmitAnonymous( - bool checkTopic0, - bool checkTopic1, - bool checkTopic2, - bool checkTopic3, - bool checkData, - address emitter - ) external; - - /// Prepare an expected anonymous log with all topic and data checks enabled. - /// Call this function, then emit an anonymous event, then call a function. Internally after the call, we check if - /// logs were emitted in the expected order with the expected topics and data. - function expectEmitAnonymous() external; - - /// Same as the previous method, but also checks supplied address against emitting contract. - function expectEmitAnonymous(address emitter) external; - - /// Prepare an expected log with (bool checkTopic1, bool checkTopic2, bool checkTopic3, bool checkData.). - /// Call this function, then emit an event, then call a function. Internally after the call, we check if - /// logs were emitted in the expected order with the expected topics and data (as specified by the booleans). - function expectEmit(bool checkTopic1, bool checkTopic2, bool checkTopic3, bool checkData) external; - - /// Same as the previous method, but also checks supplied address against emitting contract. - function expectEmit(bool checkTopic1, bool checkTopic2, bool checkTopic3, bool checkData, address emitter) - external; - - /// Prepare an expected log with all topic and data checks enabled. - /// Call this function, then emit an event, then call a function. Internally after the call, we check if - /// logs were emitted in the expected order with the expected topics and data. - function expectEmit() external; - - /// Same as the previous method, but also checks supplied address against emitting contract. - function expectEmit(address emitter) external; - - /// Expect a given number of logs with the provided topics. - function expectEmit(bool checkTopic1, bool checkTopic2, bool checkTopic3, bool checkData, uint64 count) external; - - /// Expect a given number of logs from a specific emitter with the provided topics. - function expectEmit( - bool checkTopic1, - bool checkTopic2, - bool checkTopic3, - bool checkData, - address emitter, - uint64 count - ) external; - - /// Expect a given number of logs with all topic and data checks enabled. - function expectEmit(uint64 count) external; - - /// Expect a given number of logs from a specific emitter with all topic and data checks enabled. - function expectEmit(address emitter, uint64 count) external; - - /// Expects an error on next call that starts with the revert data. - function expectPartialRevert(bytes4 revertData) external; - - /// Expects an error on next call to reverter address, that starts with the revert data. - function expectPartialRevert(bytes4 revertData, address reverter) external; - - /// Expects an error on next call with any revert data. - function expectRevert() external; - - /// Expects an error on next call that exactly matches the revert data. - function expectRevert(bytes4 revertData) external; - - /// Expects a `count` number of reverts from the upcoming calls from the reverter address that match the revert data. - function expectRevert(bytes4 revertData, address reverter, uint64 count) external; - - /// Expects a `count` number of reverts from the upcoming calls from the reverter address that exactly match the revert data. - function expectRevert(bytes calldata revertData, address reverter, uint64 count) external; - - /// Expects an error on next call that exactly matches the revert data. - function expectRevert(bytes calldata revertData) external; - - /// Expects an error with any revert data on next call to reverter address. - function expectRevert(address reverter) external; - - /// Expects an error from reverter address on next call, with any revert data. - function expectRevert(bytes4 revertData, address reverter) external; - - /// Expects an error from reverter address on next call, that exactly matches the revert data. - function expectRevert(bytes calldata revertData, address reverter) external; - - /// Expects a `count` number of reverts from the upcoming calls with any revert data or reverter. - function expectRevert(uint64 count) external; - - /// Expects a `count` number of reverts from the upcoming calls that match the revert data. - function expectRevert(bytes4 revertData, uint64 count) external; - - /// Expects a `count` number of reverts from the upcoming calls that exactly match the revert data. - function expectRevert(bytes calldata revertData, uint64 count) external; - - /// Expects a `count` number of reverts from the upcoming calls from the reverter address. - function expectRevert(address reverter, uint64 count) external; - - /// Only allows memory writes to offsets [0x00, 0x60) ∪ [min, max) in the current subcontext. If any other - /// memory is written to, the test will fail. Can be called multiple times to add more ranges to the set. - function expectSafeMemory(uint64 min, uint64 max) external; - - /// Only allows memory writes to offsets [0x00, 0x60) ∪ [min, max) in the next created subcontext. - /// If any other memory is written to, the test will fail. Can be called multiple times to add more ranges - /// to the set. - function expectSafeMemoryCall(uint64 min, uint64 max) external; - - /// Marks a test as skipped. Must be called at the top level of a test. - function skip(bool skipTest) external; - - /// Marks a test as skipped with a reason. Must be called at the top level of a test. - function skip(bool skipTest, string calldata reason) external; - - /// Stops all safe memory expectation in the current subcontext. - function stopExpectSafeMemory() external; - - // ======== Utilities ======== - - /// Causes the next contract creation (via new) to fail and return its initcode in the returndata buffer. - /// This allows type-safe access to the initcode payload that would be used for contract creation. - /// Example usage: - /// vm.interceptInitcode(); - /// bytes memory initcode; - /// try new MyContract(param1, param2) { assert(false); } - /// catch (bytes memory interceptedInitcode) { initcode = interceptedInitcode; } - function interceptInitcode() external; -} diff --git a/contracts/src/v0.8/vendor/forge-std/src/console.sol b/contracts/src/v0.8/vendor/forge-std/src/console.sol deleted file mode 100644 index 4fdb6679ed..0000000000 --- a/contracts/src/v0.8/vendor/forge-std/src/console.sol +++ /dev/null @@ -1,1560 +0,0 @@ -// SPDX-License-Identifier: MIT -pragma solidity >=0.4.22 <0.9.0; - -library console { - address constant CONSOLE_ADDRESS = - 0x000000000000000000636F6e736F6c652e6c6f67; - - function _sendLogPayloadImplementation(bytes memory payload) internal view { - address consoleAddress = CONSOLE_ADDRESS; - /// @solidity memory-safe-assembly - assembly { - pop( - staticcall( - gas(), - consoleAddress, - add(payload, 32), - mload(payload), - 0, - 0 - ) - ) - } - } - - function _castToPure( - function(bytes memory) internal view fnIn - ) internal pure returns (function(bytes memory) pure fnOut) { - assembly { - fnOut := fnIn - } - } - - function _sendLogPayload(bytes memory payload) internal pure { - _castToPure(_sendLogPayloadImplementation)(payload); - } - - function log() internal pure { - _sendLogPayload(abi.encodeWithSignature("log()")); - } - - function logInt(int256 p0) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(int256)", p0)); - } - - function logUint(uint256 p0) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(uint256)", p0)); - } - - function logString(string memory p0) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(string)", p0)); - } - - function logBool(bool p0) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(bool)", p0)); - } - - function logAddress(address p0) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(address)", p0)); - } - - function logBytes(bytes memory p0) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(bytes)", p0)); - } - - function logBytes1(bytes1 p0) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(bytes1)", p0)); - } - - function logBytes2(bytes2 p0) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(bytes2)", p0)); - } - - function logBytes3(bytes3 p0) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(bytes3)", p0)); - } - - function logBytes4(bytes4 p0) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(bytes4)", p0)); - } - - function logBytes5(bytes5 p0) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(bytes5)", p0)); - } - - function logBytes6(bytes6 p0) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(bytes6)", p0)); - } - - function logBytes7(bytes7 p0) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(bytes7)", p0)); - } - - function logBytes8(bytes8 p0) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(bytes8)", p0)); - } - - function logBytes9(bytes9 p0) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(bytes9)", p0)); - } - - function logBytes10(bytes10 p0) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(bytes10)", p0)); - } - - function logBytes11(bytes11 p0) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(bytes11)", p0)); - } - - function logBytes12(bytes12 p0) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(bytes12)", p0)); - } - - function logBytes13(bytes13 p0) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(bytes13)", p0)); - } - - function logBytes14(bytes14 p0) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(bytes14)", p0)); - } - - function logBytes15(bytes15 p0) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(bytes15)", p0)); - } - - function logBytes16(bytes16 p0) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(bytes16)", p0)); - } - - function logBytes17(bytes17 p0) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(bytes17)", p0)); - } - - function logBytes18(bytes18 p0) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(bytes18)", p0)); - } - - function logBytes19(bytes19 p0) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(bytes19)", p0)); - } - - function logBytes20(bytes20 p0) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(bytes20)", p0)); - } - - function logBytes21(bytes21 p0) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(bytes21)", p0)); - } - - function logBytes22(bytes22 p0) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(bytes22)", p0)); - } - - function logBytes23(bytes23 p0) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(bytes23)", p0)); - } - - function logBytes24(bytes24 p0) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(bytes24)", p0)); - } - - function logBytes25(bytes25 p0) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(bytes25)", p0)); - } - - function logBytes26(bytes26 p0) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(bytes26)", p0)); - } - - function logBytes27(bytes27 p0) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(bytes27)", p0)); - } - - function logBytes28(bytes28 p0) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(bytes28)", p0)); - } - - function logBytes29(bytes29 p0) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(bytes29)", p0)); - } - - function logBytes30(bytes30 p0) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(bytes30)", p0)); - } - - function logBytes31(bytes31 p0) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(bytes31)", p0)); - } - - function logBytes32(bytes32 p0) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(bytes32)", p0)); - } - - function log(uint256 p0) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(uint256)", p0)); - } - - function log(int256 p0) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(int256)", p0)); - } - - function log(string memory p0) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(string)", p0)); - } - - function log(bool p0) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(bool)", p0)); - } - - function log(address p0) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(address)", p0)); - } - - function log(uint256 p0, uint256 p1) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(uint256,uint256)", p0, p1)); - } - - function log(uint256 p0, string memory p1) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(uint256,string)", p0, p1)); - } - - function log(uint256 p0, bool p1) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(uint256,bool)", p0, p1)); - } - - function log(uint256 p0, address p1) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(uint256,address)", p0, p1)); - } - - function log(string memory p0, uint256 p1) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(string,uint256)", p0, p1)); - } - - function log(string memory p0, int256 p1) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(string,int256)", p0, p1)); - } - - function log(string memory p0, string memory p1) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(string,string)", p0, p1)); - } - - function log(string memory p0, bool p1) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(string,bool)", p0, p1)); - } - - function log(string memory p0, address p1) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(string,address)", p0, p1)); - } - - function log(bool p0, uint256 p1) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(bool,uint256)", p0, p1)); - } - - function log(bool p0, string memory p1) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(bool,string)", p0, p1)); - } - - function log(bool p0, bool p1) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(bool,bool)", p0, p1)); - } - - function log(bool p0, address p1) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(bool,address)", p0, p1)); - } - - function log(address p0, uint256 p1) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(address,uint256)", p0, p1)); - } - - function log(address p0, string memory p1) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(address,string)", p0, p1)); - } - - function log(address p0, bool p1) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(address,bool)", p0, p1)); - } - - function log(address p0, address p1) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(address,address)", p0, p1)); - } - - function log(uint256 p0, uint256 p1, uint256 p2) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(uint256,uint256,uint256)", p0, p1, p2)); - } - - function log(uint256 p0, uint256 p1, string memory p2) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(uint256,uint256,string)", p0, p1, p2)); - } - - function log(uint256 p0, uint256 p1, bool p2) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(uint256,uint256,bool)", p0, p1, p2)); - } - - function log(uint256 p0, uint256 p1, address p2) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(uint256,uint256,address)", p0, p1, p2)); - } - - function log(uint256 p0, string memory p1, uint256 p2) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(uint256,string,uint256)", p0, p1, p2)); - } - - function log(uint256 p0, string memory p1, string memory p2) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(uint256,string,string)", p0, p1, p2)); - } - - function log(uint256 p0, string memory p1, bool p2) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(uint256,string,bool)", p0, p1, p2)); - } - - function log(uint256 p0, string memory p1, address p2) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(uint256,string,address)", p0, p1, p2)); - } - - function log(uint256 p0, bool p1, uint256 p2) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(uint256,bool,uint256)", p0, p1, p2)); - } - - function log(uint256 p0, bool p1, string memory p2) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(uint256,bool,string)", p0, p1, p2)); - } - - function log(uint256 p0, bool p1, bool p2) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(uint256,bool,bool)", p0, p1, p2)); - } - - function log(uint256 p0, bool p1, address p2) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(uint256,bool,address)", p0, p1, p2)); - } - - function log(uint256 p0, address p1, uint256 p2) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(uint256,address,uint256)", p0, p1, p2)); - } - - function log(uint256 p0, address p1, string memory p2) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(uint256,address,string)", p0, p1, p2)); - } - - function log(uint256 p0, address p1, bool p2) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(uint256,address,bool)", p0, p1, p2)); - } - - function log(uint256 p0, address p1, address p2) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(uint256,address,address)", p0, p1, p2)); - } - - function log(string memory p0, uint256 p1, uint256 p2) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(string,uint256,uint256)", p0, p1, p2)); - } - - function log(string memory p0, uint256 p1, string memory p2) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(string,uint256,string)", p0, p1, p2)); - } - - function log(string memory p0, uint256 p1, bool p2) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(string,uint256,bool)", p0, p1, p2)); - } - - function log(string memory p0, uint256 p1, address p2) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(string,uint256,address)", p0, p1, p2)); - } - - function log(string memory p0, string memory p1, uint256 p2) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(string,string,uint256)", p0, p1, p2)); - } - - function log(string memory p0, string memory p1, string memory p2) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(string,string,string)", p0, p1, p2)); - } - - function log(string memory p0, string memory p1, bool p2) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(string,string,bool)", p0, p1, p2)); - } - - function log(string memory p0, string memory p1, address p2) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(string,string,address)", p0, p1, p2)); - } - - function log(string memory p0, bool p1, uint256 p2) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(string,bool,uint256)", p0, p1, p2)); - } - - function log(string memory p0, bool p1, string memory p2) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(string,bool,string)", p0, p1, p2)); - } - - function log(string memory p0, bool p1, bool p2) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(string,bool,bool)", p0, p1, p2)); - } - - function log(string memory p0, bool p1, address p2) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(string,bool,address)", p0, p1, p2)); - } - - function log(string memory p0, address p1, uint256 p2) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(string,address,uint256)", p0, p1, p2)); - } - - function log(string memory p0, address p1, string memory p2) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(string,address,string)", p0, p1, p2)); - } - - function log(string memory p0, address p1, bool p2) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(string,address,bool)", p0, p1, p2)); - } - - function log(string memory p0, address p1, address p2) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(string,address,address)", p0, p1, p2)); - } - - function log(bool p0, uint256 p1, uint256 p2) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(bool,uint256,uint256)", p0, p1, p2)); - } - - function log(bool p0, uint256 p1, string memory p2) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(bool,uint256,string)", p0, p1, p2)); - } - - function log(bool p0, uint256 p1, bool p2) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(bool,uint256,bool)", p0, p1, p2)); - } - - function log(bool p0, uint256 p1, address p2) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(bool,uint256,address)", p0, p1, p2)); - } - - function log(bool p0, string memory p1, uint256 p2) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(bool,string,uint256)", p0, p1, p2)); - } - - function log(bool p0, string memory p1, string memory p2) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(bool,string,string)", p0, p1, p2)); - } - - function log(bool p0, string memory p1, bool p2) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(bool,string,bool)", p0, p1, p2)); - } - - function log(bool p0, string memory p1, address p2) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(bool,string,address)", p0, p1, p2)); - } - - function log(bool p0, bool p1, uint256 p2) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(bool,bool,uint256)", p0, p1, p2)); - } - - function log(bool p0, bool p1, string memory p2) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(bool,bool,string)", p0, p1, p2)); - } - - function log(bool p0, bool p1, bool p2) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(bool,bool,bool)", p0, p1, p2)); - } - - function log(bool p0, bool p1, address p2) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(bool,bool,address)", p0, p1, p2)); - } - - function log(bool p0, address p1, uint256 p2) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(bool,address,uint256)", p0, p1, p2)); - } - - function log(bool p0, address p1, string memory p2) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(bool,address,string)", p0, p1, p2)); - } - - function log(bool p0, address p1, bool p2) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(bool,address,bool)", p0, p1, p2)); - } - - function log(bool p0, address p1, address p2) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(bool,address,address)", p0, p1, p2)); - } - - function log(address p0, uint256 p1, uint256 p2) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(address,uint256,uint256)", p0, p1, p2)); - } - - function log(address p0, uint256 p1, string memory p2) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(address,uint256,string)", p0, p1, p2)); - } - - function log(address p0, uint256 p1, bool p2) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(address,uint256,bool)", p0, p1, p2)); - } - - function log(address p0, uint256 p1, address p2) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(address,uint256,address)", p0, p1, p2)); - } - - function log(address p0, string memory p1, uint256 p2) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(address,string,uint256)", p0, p1, p2)); - } - - function log(address p0, string memory p1, string memory p2) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(address,string,string)", p0, p1, p2)); - } - - function log(address p0, string memory p1, bool p2) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(address,string,bool)", p0, p1, p2)); - } - - function log(address p0, string memory p1, address p2) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(address,string,address)", p0, p1, p2)); - } - - function log(address p0, bool p1, uint256 p2) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(address,bool,uint256)", p0, p1, p2)); - } - - function log(address p0, bool p1, string memory p2) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(address,bool,string)", p0, p1, p2)); - } - - function log(address p0, bool p1, bool p2) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(address,bool,bool)", p0, p1, p2)); - } - - function log(address p0, bool p1, address p2) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(address,bool,address)", p0, p1, p2)); - } - - function log(address p0, address p1, uint256 p2) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(address,address,uint256)", p0, p1, p2)); - } - - function log(address p0, address p1, string memory p2) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(address,address,string)", p0, p1, p2)); - } - - function log(address p0, address p1, bool p2) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(address,address,bool)", p0, p1, p2)); - } - - function log(address p0, address p1, address p2) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(address,address,address)", p0, p1, p2)); - } - - function log(uint256 p0, uint256 p1, uint256 p2, uint256 p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(uint256,uint256,uint256,uint256)", p0, p1, p2, p3)); - } - - function log(uint256 p0, uint256 p1, uint256 p2, string memory p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(uint256,uint256,uint256,string)", p0, p1, p2, p3)); - } - - function log(uint256 p0, uint256 p1, uint256 p2, bool p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(uint256,uint256,uint256,bool)", p0, p1, p2, p3)); - } - - function log(uint256 p0, uint256 p1, uint256 p2, address p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(uint256,uint256,uint256,address)", p0, p1, p2, p3)); - } - - function log(uint256 p0, uint256 p1, string memory p2, uint256 p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(uint256,uint256,string,uint256)", p0, p1, p2, p3)); - } - - function log(uint256 p0, uint256 p1, string memory p2, string memory p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(uint256,uint256,string,string)", p0, p1, p2, p3)); - } - - function log(uint256 p0, uint256 p1, string memory p2, bool p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(uint256,uint256,string,bool)", p0, p1, p2, p3)); - } - - function log(uint256 p0, uint256 p1, string memory p2, address p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(uint256,uint256,string,address)", p0, p1, p2, p3)); - } - - function log(uint256 p0, uint256 p1, bool p2, uint256 p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(uint256,uint256,bool,uint256)", p0, p1, p2, p3)); - } - - function log(uint256 p0, uint256 p1, bool p2, string memory p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(uint256,uint256,bool,string)", p0, p1, p2, p3)); - } - - function log(uint256 p0, uint256 p1, bool p2, bool p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(uint256,uint256,bool,bool)", p0, p1, p2, p3)); - } - - function log(uint256 p0, uint256 p1, bool p2, address p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(uint256,uint256,bool,address)", p0, p1, p2, p3)); - } - - function log(uint256 p0, uint256 p1, address p2, uint256 p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(uint256,uint256,address,uint256)", p0, p1, p2, p3)); - } - - function log(uint256 p0, uint256 p1, address p2, string memory p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(uint256,uint256,address,string)", p0, p1, p2, p3)); - } - - function log(uint256 p0, uint256 p1, address p2, bool p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(uint256,uint256,address,bool)", p0, p1, p2, p3)); - } - - function log(uint256 p0, uint256 p1, address p2, address p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(uint256,uint256,address,address)", p0, p1, p2, p3)); - } - - function log(uint256 p0, string memory p1, uint256 p2, uint256 p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(uint256,string,uint256,uint256)", p0, p1, p2, p3)); - } - - function log(uint256 p0, string memory p1, uint256 p2, string memory p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(uint256,string,uint256,string)", p0, p1, p2, p3)); - } - - function log(uint256 p0, string memory p1, uint256 p2, bool p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(uint256,string,uint256,bool)", p0, p1, p2, p3)); - } - - function log(uint256 p0, string memory p1, uint256 p2, address p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(uint256,string,uint256,address)", p0, p1, p2, p3)); - } - - function log(uint256 p0, string memory p1, string memory p2, uint256 p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(uint256,string,string,uint256)", p0, p1, p2, p3)); - } - - function log(uint256 p0, string memory p1, string memory p2, string memory p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(uint256,string,string,string)", p0, p1, p2, p3)); - } - - function log(uint256 p0, string memory p1, string memory p2, bool p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(uint256,string,string,bool)", p0, p1, p2, p3)); - } - - function log(uint256 p0, string memory p1, string memory p2, address p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(uint256,string,string,address)", p0, p1, p2, p3)); - } - - function log(uint256 p0, string memory p1, bool p2, uint256 p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(uint256,string,bool,uint256)", p0, p1, p2, p3)); - } - - function log(uint256 p0, string memory p1, bool p2, string memory p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(uint256,string,bool,string)", p0, p1, p2, p3)); - } - - function log(uint256 p0, string memory p1, bool p2, bool p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(uint256,string,bool,bool)", p0, p1, p2, p3)); - } - - function log(uint256 p0, string memory p1, bool p2, address p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(uint256,string,bool,address)", p0, p1, p2, p3)); - } - - function log(uint256 p0, string memory p1, address p2, uint256 p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(uint256,string,address,uint256)", p0, p1, p2, p3)); - } - - function log(uint256 p0, string memory p1, address p2, string memory p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(uint256,string,address,string)", p0, p1, p2, p3)); - } - - function log(uint256 p0, string memory p1, address p2, bool p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(uint256,string,address,bool)", p0, p1, p2, p3)); - } - - function log(uint256 p0, string memory p1, address p2, address p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(uint256,string,address,address)", p0, p1, p2, p3)); - } - - function log(uint256 p0, bool p1, uint256 p2, uint256 p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(uint256,bool,uint256,uint256)", p0, p1, p2, p3)); - } - - function log(uint256 p0, bool p1, uint256 p2, string memory p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(uint256,bool,uint256,string)", p0, p1, p2, p3)); - } - - function log(uint256 p0, bool p1, uint256 p2, bool p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(uint256,bool,uint256,bool)", p0, p1, p2, p3)); - } - - function log(uint256 p0, bool p1, uint256 p2, address p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(uint256,bool,uint256,address)", p0, p1, p2, p3)); - } - - function log(uint256 p0, bool p1, string memory p2, uint256 p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(uint256,bool,string,uint256)", p0, p1, p2, p3)); - } - - function log(uint256 p0, bool p1, string memory p2, string memory p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(uint256,bool,string,string)", p0, p1, p2, p3)); - } - - function log(uint256 p0, bool p1, string memory p2, bool p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(uint256,bool,string,bool)", p0, p1, p2, p3)); - } - - function log(uint256 p0, bool p1, string memory p2, address p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(uint256,bool,string,address)", p0, p1, p2, p3)); - } - - function log(uint256 p0, bool p1, bool p2, uint256 p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(uint256,bool,bool,uint256)", p0, p1, p2, p3)); - } - - function log(uint256 p0, bool p1, bool p2, string memory p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(uint256,bool,bool,string)", p0, p1, p2, p3)); - } - - function log(uint256 p0, bool p1, bool p2, bool p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(uint256,bool,bool,bool)", p0, p1, p2, p3)); - } - - function log(uint256 p0, bool p1, bool p2, address p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(uint256,bool,bool,address)", p0, p1, p2, p3)); - } - - function log(uint256 p0, bool p1, address p2, uint256 p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(uint256,bool,address,uint256)", p0, p1, p2, p3)); - } - - function log(uint256 p0, bool p1, address p2, string memory p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(uint256,bool,address,string)", p0, p1, p2, p3)); - } - - function log(uint256 p0, bool p1, address p2, bool p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(uint256,bool,address,bool)", p0, p1, p2, p3)); - } - - function log(uint256 p0, bool p1, address p2, address p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(uint256,bool,address,address)", p0, p1, p2, p3)); - } - - function log(uint256 p0, address p1, uint256 p2, uint256 p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(uint256,address,uint256,uint256)", p0, p1, p2, p3)); - } - - function log(uint256 p0, address p1, uint256 p2, string memory p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(uint256,address,uint256,string)", p0, p1, p2, p3)); - } - - function log(uint256 p0, address p1, uint256 p2, bool p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(uint256,address,uint256,bool)", p0, p1, p2, p3)); - } - - function log(uint256 p0, address p1, uint256 p2, address p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(uint256,address,uint256,address)", p0, p1, p2, p3)); - } - - function log(uint256 p0, address p1, string memory p2, uint256 p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(uint256,address,string,uint256)", p0, p1, p2, p3)); - } - - function log(uint256 p0, address p1, string memory p2, string memory p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(uint256,address,string,string)", p0, p1, p2, p3)); - } - - function log(uint256 p0, address p1, string memory p2, bool p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(uint256,address,string,bool)", p0, p1, p2, p3)); - } - - function log(uint256 p0, address p1, string memory p2, address p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(uint256,address,string,address)", p0, p1, p2, p3)); - } - - function log(uint256 p0, address p1, bool p2, uint256 p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(uint256,address,bool,uint256)", p0, p1, p2, p3)); - } - - function log(uint256 p0, address p1, bool p2, string memory p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(uint256,address,bool,string)", p0, p1, p2, p3)); - } - - function log(uint256 p0, address p1, bool p2, bool p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(uint256,address,bool,bool)", p0, p1, p2, p3)); - } - - function log(uint256 p0, address p1, bool p2, address p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(uint256,address,bool,address)", p0, p1, p2, p3)); - } - - function log(uint256 p0, address p1, address p2, uint256 p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(uint256,address,address,uint256)", p0, p1, p2, p3)); - } - - function log(uint256 p0, address p1, address p2, string memory p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(uint256,address,address,string)", p0, p1, p2, p3)); - } - - function log(uint256 p0, address p1, address p2, bool p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(uint256,address,address,bool)", p0, p1, p2, p3)); - } - - function log(uint256 p0, address p1, address p2, address p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(uint256,address,address,address)", p0, p1, p2, p3)); - } - - function log(string memory p0, uint256 p1, uint256 p2, uint256 p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(string,uint256,uint256,uint256)", p0, p1, p2, p3)); - } - - function log(string memory p0, uint256 p1, uint256 p2, string memory p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(string,uint256,uint256,string)", p0, p1, p2, p3)); - } - - function log(string memory p0, uint256 p1, uint256 p2, bool p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(string,uint256,uint256,bool)", p0, p1, p2, p3)); - } - - function log(string memory p0, uint256 p1, uint256 p2, address p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(string,uint256,uint256,address)", p0, p1, p2, p3)); - } - - function log(string memory p0, uint256 p1, string memory p2, uint256 p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(string,uint256,string,uint256)", p0, p1, p2, p3)); - } - - function log(string memory p0, uint256 p1, string memory p2, string memory p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(string,uint256,string,string)", p0, p1, p2, p3)); - } - - function log(string memory p0, uint256 p1, string memory p2, bool p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(string,uint256,string,bool)", p0, p1, p2, p3)); - } - - function log(string memory p0, uint256 p1, string memory p2, address p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(string,uint256,string,address)", p0, p1, p2, p3)); - } - - function log(string memory p0, uint256 p1, bool p2, uint256 p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(string,uint256,bool,uint256)", p0, p1, p2, p3)); - } - - function log(string memory p0, uint256 p1, bool p2, string memory p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(string,uint256,bool,string)", p0, p1, p2, p3)); - } - - function log(string memory p0, uint256 p1, bool p2, bool p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(string,uint256,bool,bool)", p0, p1, p2, p3)); - } - - function log(string memory p0, uint256 p1, bool p2, address p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(string,uint256,bool,address)", p0, p1, p2, p3)); - } - - function log(string memory p0, uint256 p1, address p2, uint256 p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(string,uint256,address,uint256)", p0, p1, p2, p3)); - } - - function log(string memory p0, uint256 p1, address p2, string memory p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(string,uint256,address,string)", p0, p1, p2, p3)); - } - - function log(string memory p0, uint256 p1, address p2, bool p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(string,uint256,address,bool)", p0, p1, p2, p3)); - } - - function log(string memory p0, uint256 p1, address p2, address p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(string,uint256,address,address)", p0, p1, p2, p3)); - } - - function log(string memory p0, string memory p1, uint256 p2, uint256 p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(string,string,uint256,uint256)", p0, p1, p2, p3)); - } - - function log(string memory p0, string memory p1, uint256 p2, string memory p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(string,string,uint256,string)", p0, p1, p2, p3)); - } - - function log(string memory p0, string memory p1, uint256 p2, bool p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(string,string,uint256,bool)", p0, p1, p2, p3)); - } - - function log(string memory p0, string memory p1, uint256 p2, address p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(string,string,uint256,address)", p0, p1, p2, p3)); - } - - function log(string memory p0, string memory p1, string memory p2, uint256 p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(string,string,string,uint256)", p0, p1, p2, p3)); - } - - function log(string memory p0, string memory p1, string memory p2, string memory p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(string,string,string,string)", p0, p1, p2, p3)); - } - - function log(string memory p0, string memory p1, string memory p2, bool p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(string,string,string,bool)", p0, p1, p2, p3)); - } - - function log(string memory p0, string memory p1, string memory p2, address p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(string,string,string,address)", p0, p1, p2, p3)); - } - - function log(string memory p0, string memory p1, bool p2, uint256 p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(string,string,bool,uint256)", p0, p1, p2, p3)); - } - - function log(string memory p0, string memory p1, bool p2, string memory p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(string,string,bool,string)", p0, p1, p2, p3)); - } - - function log(string memory p0, string memory p1, bool p2, bool p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(string,string,bool,bool)", p0, p1, p2, p3)); - } - - function log(string memory p0, string memory p1, bool p2, address p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(string,string,bool,address)", p0, p1, p2, p3)); - } - - function log(string memory p0, string memory p1, address p2, uint256 p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(string,string,address,uint256)", p0, p1, p2, p3)); - } - - function log(string memory p0, string memory p1, address p2, string memory p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(string,string,address,string)", p0, p1, p2, p3)); - } - - function log(string memory p0, string memory p1, address p2, bool p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(string,string,address,bool)", p0, p1, p2, p3)); - } - - function log(string memory p0, string memory p1, address p2, address p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(string,string,address,address)", p0, p1, p2, p3)); - } - - function log(string memory p0, bool p1, uint256 p2, uint256 p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(string,bool,uint256,uint256)", p0, p1, p2, p3)); - } - - function log(string memory p0, bool p1, uint256 p2, string memory p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(string,bool,uint256,string)", p0, p1, p2, p3)); - } - - function log(string memory p0, bool p1, uint256 p2, bool p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(string,bool,uint256,bool)", p0, p1, p2, p3)); - } - - function log(string memory p0, bool p1, uint256 p2, address p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(string,bool,uint256,address)", p0, p1, p2, p3)); - } - - function log(string memory p0, bool p1, string memory p2, uint256 p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(string,bool,string,uint256)", p0, p1, p2, p3)); - } - - function log(string memory p0, bool p1, string memory p2, string memory p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(string,bool,string,string)", p0, p1, p2, p3)); - } - - function log(string memory p0, bool p1, string memory p2, bool p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(string,bool,string,bool)", p0, p1, p2, p3)); - } - - function log(string memory p0, bool p1, string memory p2, address p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(string,bool,string,address)", p0, p1, p2, p3)); - } - - function log(string memory p0, bool p1, bool p2, uint256 p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(string,bool,bool,uint256)", p0, p1, p2, p3)); - } - - function log(string memory p0, bool p1, bool p2, string memory p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(string,bool,bool,string)", p0, p1, p2, p3)); - } - - function log(string memory p0, bool p1, bool p2, bool p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(string,bool,bool,bool)", p0, p1, p2, p3)); - } - - function log(string memory p0, bool p1, bool p2, address p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(string,bool,bool,address)", p0, p1, p2, p3)); - } - - function log(string memory p0, bool p1, address p2, uint256 p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(string,bool,address,uint256)", p0, p1, p2, p3)); - } - - function log(string memory p0, bool p1, address p2, string memory p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(string,bool,address,string)", p0, p1, p2, p3)); - } - - function log(string memory p0, bool p1, address p2, bool p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(string,bool,address,bool)", p0, p1, p2, p3)); - } - - function log(string memory p0, bool p1, address p2, address p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(string,bool,address,address)", p0, p1, p2, p3)); - } - - function log(string memory p0, address p1, uint256 p2, uint256 p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(string,address,uint256,uint256)", p0, p1, p2, p3)); - } - - function log(string memory p0, address p1, uint256 p2, string memory p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(string,address,uint256,string)", p0, p1, p2, p3)); - } - - function log(string memory p0, address p1, uint256 p2, bool p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(string,address,uint256,bool)", p0, p1, p2, p3)); - } - - function log(string memory p0, address p1, uint256 p2, address p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(string,address,uint256,address)", p0, p1, p2, p3)); - } - - function log(string memory p0, address p1, string memory p2, uint256 p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(string,address,string,uint256)", p0, p1, p2, p3)); - } - - function log(string memory p0, address p1, string memory p2, string memory p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(string,address,string,string)", p0, p1, p2, p3)); - } - - function log(string memory p0, address p1, string memory p2, bool p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(string,address,string,bool)", p0, p1, p2, p3)); - } - - function log(string memory p0, address p1, string memory p2, address p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(string,address,string,address)", p0, p1, p2, p3)); - } - - function log(string memory p0, address p1, bool p2, uint256 p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(string,address,bool,uint256)", p0, p1, p2, p3)); - } - - function log(string memory p0, address p1, bool p2, string memory p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(string,address,bool,string)", p0, p1, p2, p3)); - } - - function log(string memory p0, address p1, bool p2, bool p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(string,address,bool,bool)", p0, p1, p2, p3)); - } - - function log(string memory p0, address p1, bool p2, address p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(string,address,bool,address)", p0, p1, p2, p3)); - } - - function log(string memory p0, address p1, address p2, uint256 p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(string,address,address,uint256)", p0, p1, p2, p3)); - } - - function log(string memory p0, address p1, address p2, string memory p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(string,address,address,string)", p0, p1, p2, p3)); - } - - function log(string memory p0, address p1, address p2, bool p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(string,address,address,bool)", p0, p1, p2, p3)); - } - - function log(string memory p0, address p1, address p2, address p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(string,address,address,address)", p0, p1, p2, p3)); - } - - function log(bool p0, uint256 p1, uint256 p2, uint256 p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(bool,uint256,uint256,uint256)", p0, p1, p2, p3)); - } - - function log(bool p0, uint256 p1, uint256 p2, string memory p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(bool,uint256,uint256,string)", p0, p1, p2, p3)); - } - - function log(bool p0, uint256 p1, uint256 p2, bool p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(bool,uint256,uint256,bool)", p0, p1, p2, p3)); - } - - function log(bool p0, uint256 p1, uint256 p2, address p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(bool,uint256,uint256,address)", p0, p1, p2, p3)); - } - - function log(bool p0, uint256 p1, string memory p2, uint256 p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(bool,uint256,string,uint256)", p0, p1, p2, p3)); - } - - function log(bool p0, uint256 p1, string memory p2, string memory p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(bool,uint256,string,string)", p0, p1, p2, p3)); - } - - function log(bool p0, uint256 p1, string memory p2, bool p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(bool,uint256,string,bool)", p0, p1, p2, p3)); - } - - function log(bool p0, uint256 p1, string memory p2, address p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(bool,uint256,string,address)", p0, p1, p2, p3)); - } - - function log(bool p0, uint256 p1, bool p2, uint256 p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(bool,uint256,bool,uint256)", p0, p1, p2, p3)); - } - - function log(bool p0, uint256 p1, bool p2, string memory p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(bool,uint256,bool,string)", p0, p1, p2, p3)); - } - - function log(bool p0, uint256 p1, bool p2, bool p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(bool,uint256,bool,bool)", p0, p1, p2, p3)); - } - - function log(bool p0, uint256 p1, bool p2, address p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(bool,uint256,bool,address)", p0, p1, p2, p3)); - } - - function log(bool p0, uint256 p1, address p2, uint256 p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(bool,uint256,address,uint256)", p0, p1, p2, p3)); - } - - function log(bool p0, uint256 p1, address p2, string memory p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(bool,uint256,address,string)", p0, p1, p2, p3)); - } - - function log(bool p0, uint256 p1, address p2, bool p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(bool,uint256,address,bool)", p0, p1, p2, p3)); - } - - function log(bool p0, uint256 p1, address p2, address p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(bool,uint256,address,address)", p0, p1, p2, p3)); - } - - function log(bool p0, string memory p1, uint256 p2, uint256 p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(bool,string,uint256,uint256)", p0, p1, p2, p3)); - } - - function log(bool p0, string memory p1, uint256 p2, string memory p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(bool,string,uint256,string)", p0, p1, p2, p3)); - } - - function log(bool p0, string memory p1, uint256 p2, bool p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(bool,string,uint256,bool)", p0, p1, p2, p3)); - } - - function log(bool p0, string memory p1, uint256 p2, address p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(bool,string,uint256,address)", p0, p1, p2, p3)); - } - - function log(bool p0, string memory p1, string memory p2, uint256 p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(bool,string,string,uint256)", p0, p1, p2, p3)); - } - - function log(bool p0, string memory p1, string memory p2, string memory p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(bool,string,string,string)", p0, p1, p2, p3)); - } - - function log(bool p0, string memory p1, string memory p2, bool p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(bool,string,string,bool)", p0, p1, p2, p3)); - } - - function log(bool p0, string memory p1, string memory p2, address p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(bool,string,string,address)", p0, p1, p2, p3)); - } - - function log(bool p0, string memory p1, bool p2, uint256 p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(bool,string,bool,uint256)", p0, p1, p2, p3)); - } - - function log(bool p0, string memory p1, bool p2, string memory p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(bool,string,bool,string)", p0, p1, p2, p3)); - } - - function log(bool p0, string memory p1, bool p2, bool p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(bool,string,bool,bool)", p0, p1, p2, p3)); - } - - function log(bool p0, string memory p1, bool p2, address p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(bool,string,bool,address)", p0, p1, p2, p3)); - } - - function log(bool p0, string memory p1, address p2, uint256 p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(bool,string,address,uint256)", p0, p1, p2, p3)); - } - - function log(bool p0, string memory p1, address p2, string memory p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(bool,string,address,string)", p0, p1, p2, p3)); - } - - function log(bool p0, string memory p1, address p2, bool p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(bool,string,address,bool)", p0, p1, p2, p3)); - } - - function log(bool p0, string memory p1, address p2, address p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(bool,string,address,address)", p0, p1, p2, p3)); - } - - function log(bool p0, bool p1, uint256 p2, uint256 p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(bool,bool,uint256,uint256)", p0, p1, p2, p3)); - } - - function log(bool p0, bool p1, uint256 p2, string memory p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(bool,bool,uint256,string)", p0, p1, p2, p3)); - } - - function log(bool p0, bool p1, uint256 p2, bool p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(bool,bool,uint256,bool)", p0, p1, p2, p3)); - } - - function log(bool p0, bool p1, uint256 p2, address p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(bool,bool,uint256,address)", p0, p1, p2, p3)); - } - - function log(bool p0, bool p1, string memory p2, uint256 p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(bool,bool,string,uint256)", p0, p1, p2, p3)); - } - - function log(bool p0, bool p1, string memory p2, string memory p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(bool,bool,string,string)", p0, p1, p2, p3)); - } - - function log(bool p0, bool p1, string memory p2, bool p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(bool,bool,string,bool)", p0, p1, p2, p3)); - } - - function log(bool p0, bool p1, string memory p2, address p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(bool,bool,string,address)", p0, p1, p2, p3)); - } - - function log(bool p0, bool p1, bool p2, uint256 p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(bool,bool,bool,uint256)", p0, p1, p2, p3)); - } - - function log(bool p0, bool p1, bool p2, string memory p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(bool,bool,bool,string)", p0, p1, p2, p3)); - } - - function log(bool p0, bool p1, bool p2, bool p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(bool,bool,bool,bool)", p0, p1, p2, p3)); - } - - function log(bool p0, bool p1, bool p2, address p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(bool,bool,bool,address)", p0, p1, p2, p3)); - } - - function log(bool p0, bool p1, address p2, uint256 p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(bool,bool,address,uint256)", p0, p1, p2, p3)); - } - - function log(bool p0, bool p1, address p2, string memory p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(bool,bool,address,string)", p0, p1, p2, p3)); - } - - function log(bool p0, bool p1, address p2, bool p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(bool,bool,address,bool)", p0, p1, p2, p3)); - } - - function log(bool p0, bool p1, address p2, address p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(bool,bool,address,address)", p0, p1, p2, p3)); - } - - function log(bool p0, address p1, uint256 p2, uint256 p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(bool,address,uint256,uint256)", p0, p1, p2, p3)); - } - - function log(bool p0, address p1, uint256 p2, string memory p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(bool,address,uint256,string)", p0, p1, p2, p3)); - } - - function log(bool p0, address p1, uint256 p2, bool p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(bool,address,uint256,bool)", p0, p1, p2, p3)); - } - - function log(bool p0, address p1, uint256 p2, address p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(bool,address,uint256,address)", p0, p1, p2, p3)); - } - - function log(bool p0, address p1, string memory p2, uint256 p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(bool,address,string,uint256)", p0, p1, p2, p3)); - } - - function log(bool p0, address p1, string memory p2, string memory p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(bool,address,string,string)", p0, p1, p2, p3)); - } - - function log(bool p0, address p1, string memory p2, bool p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(bool,address,string,bool)", p0, p1, p2, p3)); - } - - function log(bool p0, address p1, string memory p2, address p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(bool,address,string,address)", p0, p1, p2, p3)); - } - - function log(bool p0, address p1, bool p2, uint256 p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(bool,address,bool,uint256)", p0, p1, p2, p3)); - } - - function log(bool p0, address p1, bool p2, string memory p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(bool,address,bool,string)", p0, p1, p2, p3)); - } - - function log(bool p0, address p1, bool p2, bool p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(bool,address,bool,bool)", p0, p1, p2, p3)); - } - - function log(bool p0, address p1, bool p2, address p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(bool,address,bool,address)", p0, p1, p2, p3)); - } - - function log(bool p0, address p1, address p2, uint256 p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(bool,address,address,uint256)", p0, p1, p2, p3)); - } - - function log(bool p0, address p1, address p2, string memory p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(bool,address,address,string)", p0, p1, p2, p3)); - } - - function log(bool p0, address p1, address p2, bool p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(bool,address,address,bool)", p0, p1, p2, p3)); - } - - function log(bool p0, address p1, address p2, address p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(bool,address,address,address)", p0, p1, p2, p3)); - } - - function log(address p0, uint256 p1, uint256 p2, uint256 p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(address,uint256,uint256,uint256)", p0, p1, p2, p3)); - } - - function log(address p0, uint256 p1, uint256 p2, string memory p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(address,uint256,uint256,string)", p0, p1, p2, p3)); - } - - function log(address p0, uint256 p1, uint256 p2, bool p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(address,uint256,uint256,bool)", p0, p1, p2, p3)); - } - - function log(address p0, uint256 p1, uint256 p2, address p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(address,uint256,uint256,address)", p0, p1, p2, p3)); - } - - function log(address p0, uint256 p1, string memory p2, uint256 p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(address,uint256,string,uint256)", p0, p1, p2, p3)); - } - - function log(address p0, uint256 p1, string memory p2, string memory p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(address,uint256,string,string)", p0, p1, p2, p3)); - } - - function log(address p0, uint256 p1, string memory p2, bool p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(address,uint256,string,bool)", p0, p1, p2, p3)); - } - - function log(address p0, uint256 p1, string memory p2, address p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(address,uint256,string,address)", p0, p1, p2, p3)); - } - - function log(address p0, uint256 p1, bool p2, uint256 p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(address,uint256,bool,uint256)", p0, p1, p2, p3)); - } - - function log(address p0, uint256 p1, bool p2, string memory p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(address,uint256,bool,string)", p0, p1, p2, p3)); - } - - function log(address p0, uint256 p1, bool p2, bool p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(address,uint256,bool,bool)", p0, p1, p2, p3)); - } - - function log(address p0, uint256 p1, bool p2, address p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(address,uint256,bool,address)", p0, p1, p2, p3)); - } - - function log(address p0, uint256 p1, address p2, uint256 p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(address,uint256,address,uint256)", p0, p1, p2, p3)); - } - - function log(address p0, uint256 p1, address p2, string memory p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(address,uint256,address,string)", p0, p1, p2, p3)); - } - - function log(address p0, uint256 p1, address p2, bool p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(address,uint256,address,bool)", p0, p1, p2, p3)); - } - - function log(address p0, uint256 p1, address p2, address p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(address,uint256,address,address)", p0, p1, p2, p3)); - } - - function log(address p0, string memory p1, uint256 p2, uint256 p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(address,string,uint256,uint256)", p0, p1, p2, p3)); - } - - function log(address p0, string memory p1, uint256 p2, string memory p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(address,string,uint256,string)", p0, p1, p2, p3)); - } - - function log(address p0, string memory p1, uint256 p2, bool p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(address,string,uint256,bool)", p0, p1, p2, p3)); - } - - function log(address p0, string memory p1, uint256 p2, address p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(address,string,uint256,address)", p0, p1, p2, p3)); - } - - function log(address p0, string memory p1, string memory p2, uint256 p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(address,string,string,uint256)", p0, p1, p2, p3)); - } - - function log(address p0, string memory p1, string memory p2, string memory p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(address,string,string,string)", p0, p1, p2, p3)); - } - - function log(address p0, string memory p1, string memory p2, bool p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(address,string,string,bool)", p0, p1, p2, p3)); - } - - function log(address p0, string memory p1, string memory p2, address p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(address,string,string,address)", p0, p1, p2, p3)); - } - - function log(address p0, string memory p1, bool p2, uint256 p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(address,string,bool,uint256)", p0, p1, p2, p3)); - } - - function log(address p0, string memory p1, bool p2, string memory p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(address,string,bool,string)", p0, p1, p2, p3)); - } - - function log(address p0, string memory p1, bool p2, bool p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(address,string,bool,bool)", p0, p1, p2, p3)); - } - - function log(address p0, string memory p1, bool p2, address p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(address,string,bool,address)", p0, p1, p2, p3)); - } - - function log(address p0, string memory p1, address p2, uint256 p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(address,string,address,uint256)", p0, p1, p2, p3)); - } - - function log(address p0, string memory p1, address p2, string memory p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(address,string,address,string)", p0, p1, p2, p3)); - } - - function log(address p0, string memory p1, address p2, bool p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(address,string,address,bool)", p0, p1, p2, p3)); - } - - function log(address p0, string memory p1, address p2, address p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(address,string,address,address)", p0, p1, p2, p3)); - } - - function log(address p0, bool p1, uint256 p2, uint256 p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(address,bool,uint256,uint256)", p0, p1, p2, p3)); - } - - function log(address p0, bool p1, uint256 p2, string memory p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(address,bool,uint256,string)", p0, p1, p2, p3)); - } - - function log(address p0, bool p1, uint256 p2, bool p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(address,bool,uint256,bool)", p0, p1, p2, p3)); - } - - function log(address p0, bool p1, uint256 p2, address p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(address,bool,uint256,address)", p0, p1, p2, p3)); - } - - function log(address p0, bool p1, string memory p2, uint256 p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(address,bool,string,uint256)", p0, p1, p2, p3)); - } - - function log(address p0, bool p1, string memory p2, string memory p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(address,bool,string,string)", p0, p1, p2, p3)); - } - - function log(address p0, bool p1, string memory p2, bool p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(address,bool,string,bool)", p0, p1, p2, p3)); - } - - function log(address p0, bool p1, string memory p2, address p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(address,bool,string,address)", p0, p1, p2, p3)); - } - - function log(address p0, bool p1, bool p2, uint256 p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(address,bool,bool,uint256)", p0, p1, p2, p3)); - } - - function log(address p0, bool p1, bool p2, string memory p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(address,bool,bool,string)", p0, p1, p2, p3)); - } - - function log(address p0, bool p1, bool p2, bool p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(address,bool,bool,bool)", p0, p1, p2, p3)); - } - - function log(address p0, bool p1, bool p2, address p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(address,bool,bool,address)", p0, p1, p2, p3)); - } - - function log(address p0, bool p1, address p2, uint256 p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(address,bool,address,uint256)", p0, p1, p2, p3)); - } - - function log(address p0, bool p1, address p2, string memory p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(address,bool,address,string)", p0, p1, p2, p3)); - } - - function log(address p0, bool p1, address p2, bool p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(address,bool,address,bool)", p0, p1, p2, p3)); - } - - function log(address p0, bool p1, address p2, address p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(address,bool,address,address)", p0, p1, p2, p3)); - } - - function log(address p0, address p1, uint256 p2, uint256 p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(address,address,uint256,uint256)", p0, p1, p2, p3)); - } - - function log(address p0, address p1, uint256 p2, string memory p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(address,address,uint256,string)", p0, p1, p2, p3)); - } - - function log(address p0, address p1, uint256 p2, bool p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(address,address,uint256,bool)", p0, p1, p2, p3)); - } - - function log(address p0, address p1, uint256 p2, address p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(address,address,uint256,address)", p0, p1, p2, p3)); - } - - function log(address p0, address p1, string memory p2, uint256 p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(address,address,string,uint256)", p0, p1, p2, p3)); - } - - function log(address p0, address p1, string memory p2, string memory p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(address,address,string,string)", p0, p1, p2, p3)); - } - - function log(address p0, address p1, string memory p2, bool p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(address,address,string,bool)", p0, p1, p2, p3)); - } - - function log(address p0, address p1, string memory p2, address p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(address,address,string,address)", p0, p1, p2, p3)); - } - - function log(address p0, address p1, bool p2, uint256 p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(address,address,bool,uint256)", p0, p1, p2, p3)); - } - - function log(address p0, address p1, bool p2, string memory p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(address,address,bool,string)", p0, p1, p2, p3)); - } - - function log(address p0, address p1, bool p2, bool p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(address,address,bool,bool)", p0, p1, p2, p3)); - } - - function log(address p0, address p1, bool p2, address p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(address,address,bool,address)", p0, p1, p2, p3)); - } - - function log(address p0, address p1, address p2, uint256 p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(address,address,address,uint256)", p0, p1, p2, p3)); - } - - function log(address p0, address p1, address p2, string memory p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(address,address,address,string)", p0, p1, p2, p3)); - } - - function log(address p0, address p1, address p2, bool p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(address,address,address,bool)", p0, p1, p2, p3)); - } - - function log(address p0, address p1, address p2, address p3) internal pure { - _sendLogPayload(abi.encodeWithSignature("log(address,address,address,address)", p0, p1, p2, p3)); - } -} diff --git a/contracts/src/v0.8/vendor/forge-std/src/console2.sol b/contracts/src/v0.8/vendor/forge-std/src/console2.sol deleted file mode 100644 index 03531d91d3..0000000000 --- a/contracts/src/v0.8/vendor/forge-std/src/console2.sol +++ /dev/null @@ -1,4 +0,0 @@ -// SPDX-License-Identifier: MIT -pragma solidity >=0.4.22 <0.9.0; - -import {console as console2} from "./console.sol"; diff --git a/contracts/src/v0.8/vendor/forge-std/src/interfaces/IERC1155.sol b/contracts/src/v0.8/vendor/forge-std/src/interfaces/IERC1155.sol deleted file mode 100644 index ffc82984a7..0000000000 --- a/contracts/src/v0.8/vendor/forge-std/src/interfaces/IERC1155.sol +++ /dev/null @@ -1,105 +0,0 @@ -// SPDX-License-Identifier: MIT -pragma solidity >=0.6.2; - -import {IERC165} from "./IERC165.sol"; - -/// @title ERC-1155 Multi Token Standard -/// @dev See https://eips.ethereum.org/EIPS/eip-1155 -/// Note: The ERC-165 identifier for this interface is 0xd9b67a26. -interface IERC1155 is IERC165 { - /// @dev - /// - Either `TransferSingle` or `TransferBatch` MUST emit when tokens are transferred, including zero value transfers as well as minting or burning (see "Safe Transfer Rules" section of the standard). - /// - The `_operator` argument MUST be the address of an account/contract that is approved to make the transfer (SHOULD be msg.sender). - /// - The `_from` argument MUST be the address of the holder whose balance is decreased. - /// - The `_to` argument MUST be the address of the recipient whose balance is increased. - /// - The `_id` argument MUST be the token type being transferred. - /// - The `_value` argument MUST be the number of tokens the holder balance is decreased by and match what the recipient balance is increased by. - /// - When minting/creating tokens, the `_from` argument MUST be set to `0x0` (i.e. zero address). - /// - When burning/destroying tokens, the `_to` argument MUST be set to `0x0` (i.e. zero address). - event TransferSingle( - address indexed _operator, address indexed _from, address indexed _to, uint256 _id, uint256 _value - ); - - /// @dev - /// - Either `TransferSingle` or `TransferBatch` MUST emit when tokens are transferred, including zero value transfers as well as minting or burning (see "Safe Transfer Rules" section of the standard). - /// - The `_operator` argument MUST be the address of an account/contract that is approved to make the transfer (SHOULD be msg.sender). - /// - The `_from` argument MUST be the address of the holder whose balance is decreased. - /// - The `_to` argument MUST be the address of the recipient whose balance is increased. - /// - The `_ids` argument MUST be the list of tokens being transferred. - /// - The `_values` argument MUST be the list of number of tokens (matching the list and order of tokens specified in _ids) the holder balance is decreased by and match what the recipient balance is increased by. - /// - When minting/creating tokens, the `_from` argument MUST be set to `0x0` (i.e. zero address). - /// - When burning/destroying tokens, the `_to` argument MUST be set to `0x0` (i.e. zero address). - event TransferBatch( - address indexed _operator, address indexed _from, address indexed _to, uint256[] _ids, uint256[] _values - ); - - /// @dev MUST emit when approval for a second party/operator address to manage all tokens for an owner address is enabled or disabled (absence of an event assumes disabled). - event ApprovalForAll(address indexed _owner, address indexed _operator, bool _approved); - - /// @dev MUST emit when the URI is updated for a token ID. URIs are defined in RFC 3986. - /// The URI MUST point to a JSON file that conforms to the "ERC-1155 Metadata URI JSON Schema". - event URI(string _value, uint256 indexed _id); - - /// @notice Transfers `_value` amount of an `_id` from the `_from` address to the `_to` address specified (with safety call). - /// @dev Caller must be approved to manage the tokens being transferred out of the `_from` account (see "Approval" section of the standard). - /// - MUST revert if `_to` is the zero address. - /// - MUST revert if balance of holder for token `_id` is lower than the `_value` sent. - /// - MUST revert on any other error. - /// - MUST emit the `TransferSingle` event to reflect the balance change (see "Safe Transfer Rules" section of the standard). - /// - After the above conditions are met, this function MUST check if `_to` is a smart contract (e.g. code size > 0). If so, it MUST call `onERC1155Received` on `_to` and act appropriately (see "Safe Transfer Rules" section of the standard). - /// @param _from Source address - /// @param _to Target address - /// @param _id ID of the token type - /// @param _value Transfer amount - /// @param _data Additional data with no specified format, MUST be sent unaltered in call to `onERC1155Received` on `_to` - function safeTransferFrom(address _from, address _to, uint256 _id, uint256 _value, bytes calldata _data) external; - - /// @notice Transfers `_values` amount(s) of `_ids` from the `_from` address to the `_to` address specified (with safety call). - /// @dev Caller must be approved to manage the tokens being transferred out of the `_from` account (see "Approval" section of the standard). - /// - MUST revert if `_to` is the zero address. - /// - MUST revert if length of `_ids` is not the same as length of `_values`. - /// - MUST revert if any of the balance(s) of the holder(s) for token(s) in `_ids` is lower than the respective amount(s) in `_values` sent to the recipient. - /// - MUST revert on any other error. - /// - MUST emit `TransferSingle` or `TransferBatch` event(s) such that all the balance changes are reflected (see "Safe Transfer Rules" section of the standard). - /// - Balance changes and events MUST follow the ordering of the arrays (_ids[0]/_values[0] before _ids[1]/_values[1], etc). - /// - After the above conditions for the transfer(s) in the batch are met, this function MUST check if `_to` is a smart contract (e.g. code size > 0). If so, it MUST call the relevant `ERC1155TokenReceiver` hook(s) on `_to` and act appropriately (see "Safe Transfer Rules" section of the standard). - /// @param _from Source address - /// @param _to Target address - /// @param _ids IDs of each token type (order and length must match _values array) - /// @param _values Transfer amounts per token type (order and length must match _ids array) - /// @param _data Additional data with no specified format, MUST be sent unaltered in call to the `ERC1155TokenReceiver` hook(s) on `_to` - function safeBatchTransferFrom( - address _from, - address _to, - uint256[] calldata _ids, - uint256[] calldata _values, - bytes calldata _data - ) external; - - /// @notice Get the balance of an account's tokens. - /// @param _owner The address of the token holder - /// @param _id ID of the token - /// @return The _owner's balance of the token type requested - function balanceOf(address _owner, uint256 _id) external view returns (uint256); - - /// @notice Get the balance of multiple account/token pairs - /// @param _owners The addresses of the token holders - /// @param _ids ID of the tokens - /// @return The _owner's balance of the token types requested (i.e. balance for each (owner, id) pair) - function balanceOfBatch(address[] calldata _owners, uint256[] calldata _ids) - external - view - returns (uint256[] memory); - - /// @notice Enable or disable approval for a third party ("operator") to manage all of the caller's tokens. - /// @dev MUST emit the ApprovalForAll event on success. - /// @param _operator Address to add to the set of authorized operators - /// @param _approved True if the operator is approved, false to revoke approval - function setApprovalForAll(address _operator, bool _approved) external; - - /// @notice Queries the approval status of an operator for a given owner. - /// @param _owner The owner of the tokens - /// @param _operator Address of authorized operator - /// @return True if the operator is approved, false if not - function isApprovedForAll(address _owner, address _operator) external view returns (bool); -} diff --git a/contracts/src/v0.8/vendor/forge-std/src/interfaces/IERC165.sol b/contracts/src/v0.8/vendor/forge-std/src/interfaces/IERC165.sol deleted file mode 100644 index 9af4bf800f..0000000000 --- a/contracts/src/v0.8/vendor/forge-std/src/interfaces/IERC165.sol +++ /dev/null @@ -1,12 +0,0 @@ -// SPDX-License-Identifier: MIT -pragma solidity >=0.6.2; - -interface IERC165 { - /// @notice Query if a contract implements an interface - /// @param interfaceID The interface identifier, as specified in ERC-165 - /// @dev Interface identification is specified in ERC-165. This function - /// uses less than 30,000 gas. - /// @return `true` if the contract implements `interfaceID` and - /// `interfaceID` is not 0xffffffff, `false` otherwise - function supportsInterface(bytes4 interfaceID) external view returns (bool); -} diff --git a/contracts/src/v0.8/vendor/forge-std/src/interfaces/IERC20.sol b/contracts/src/v0.8/vendor/forge-std/src/interfaces/IERC20.sol deleted file mode 100644 index ba40806c3b..0000000000 --- a/contracts/src/v0.8/vendor/forge-std/src/interfaces/IERC20.sol +++ /dev/null @@ -1,43 +0,0 @@ -// SPDX-License-Identifier: MIT -pragma solidity >=0.6.2; - -/// @dev Interface of the ERC20 standard as defined in the EIP. -/// @dev This includes the optional name, symbol, and decimals metadata. -interface IERC20 { - /// @dev Emitted when `value` tokens are moved from one account (`from`) to another (`to`). - event Transfer(address indexed from, address indexed to, uint256 value); - - /// @dev Emitted when the allowance of a `spender` for an `owner` is set, where `value` - /// is the new allowance. - event Approval(address indexed owner, address indexed spender, uint256 value); - - /// @notice Returns the amount of tokens in existence. - function totalSupply() external view returns (uint256); - - /// @notice Returns the amount of tokens owned by `account`. - function balanceOf(address account) external view returns (uint256); - - /// @notice Moves `amount` tokens from the caller's account to `to`. - function transfer(address to, uint256 amount) external returns (bool); - - /// @notice Returns the remaining number of tokens that `spender` is allowed - /// to spend on behalf of `owner` - function allowance(address owner, address spender) external view returns (uint256); - - /// @notice Sets `amount` as the allowance of `spender` over the caller's tokens. - /// @dev Be aware of front-running risks: https://github.com/ethereum/EIPs/issues/20#issuecomment-263524729 - function approve(address spender, uint256 amount) external returns (bool); - - /// @notice Moves `amount` tokens from `from` to `to` using the allowance mechanism. - /// `amount` is then deducted from the caller's allowance. - function transferFrom(address from, address to, uint256 amount) external returns (bool); - - /// @notice Returns the name of the token. - function name() external view returns (string memory); - - /// @notice Returns the symbol of the token. - function symbol() external view returns (string memory); - - /// @notice Returns the decimals places of the token. - function decimals() external view returns (uint8); -} diff --git a/contracts/src/v0.8/vendor/forge-std/src/interfaces/IERC4626.sol b/contracts/src/v0.8/vendor/forge-std/src/interfaces/IERC4626.sol deleted file mode 100644 index c645a0fecf..0000000000 --- a/contracts/src/v0.8/vendor/forge-std/src/interfaces/IERC4626.sol +++ /dev/null @@ -1,190 +0,0 @@ -// SPDX-License-Identifier: MIT -pragma solidity >=0.6.2; - -import {IERC20} from "./IERC20.sol"; - -/// @dev Interface of the ERC4626 "Tokenized Vault Standard", as defined in -/// https://eips.ethereum.org/EIPS/eip-4626 -interface IERC4626 is IERC20 { - event Deposit(address indexed sender, address indexed owner, uint256 assets, uint256 shares); - - event Withdraw( - address indexed sender, address indexed receiver, address indexed owner, uint256 assets, uint256 shares - ); - - /// @notice Returns the address of the underlying token used for the Vault for accounting, depositing, and withdrawing. - /// @dev - /// - MUST be an ERC-20 token contract. - /// - MUST NOT revert. - function asset() external view returns (address assetTokenAddress); - - /// @notice Returns the total amount of the underlying asset that is “managed” by Vault. - /// @dev - /// - SHOULD include any compounding that occurs from yield. - /// - MUST be inclusive of any fees that are charged against assets in the Vault. - /// - MUST NOT revert. - function totalAssets() external view returns (uint256 totalManagedAssets); - - /// @notice Returns the amount of shares that the Vault would exchange for the amount of assets provided, in an ideal - /// scenario where all the conditions are met. - /// @dev - /// - MUST NOT be inclusive of any fees that are charged against assets in the Vault. - /// - MUST NOT show any variations depending on the caller. - /// - MUST NOT reflect slippage or other on-chain conditions, when performing the actual exchange. - /// - MUST NOT revert. - /// - /// NOTE: This calculation MAY NOT reflect the “per-user” price-per-share, and instead should reflect the - /// “average-user’s” price-per-share, meaning what the average user should expect to see when exchanging to and - /// from. - function convertToShares(uint256 assets) external view returns (uint256 shares); - - /// @notice Returns the amount of assets that the Vault would exchange for the amount of shares provided, in an ideal - /// scenario where all the conditions are met. - /// @dev - /// - MUST NOT be inclusive of any fees that are charged against assets in the Vault. - /// - MUST NOT show any variations depending on the caller. - /// - MUST NOT reflect slippage or other on-chain conditions, when performing the actual exchange. - /// - MUST NOT revert. - /// - /// NOTE: This calculation MAY NOT reflect the “per-user” price-per-share, and instead should reflect the - /// “average-user’s” price-per-share, meaning what the average user should expect to see when exchanging to and - /// from. - function convertToAssets(uint256 shares) external view returns (uint256 assets); - - /// @notice Returns the maximum amount of the underlying asset that can be deposited into the Vault for the receiver, - /// through a deposit call. - /// @dev - /// - MUST return a limited value if receiver is subject to some deposit limit. - /// - MUST return 2 ** 256 - 1 if there is no limit on the maximum amount of assets that may be deposited. - /// - MUST NOT revert. - function maxDeposit(address receiver) external view returns (uint256 maxAssets); - - /// @notice Allows an on-chain or off-chain user to simulate the effects of their deposit at the current block, given - /// current on-chain conditions. - /// @dev - /// - MUST return as close to and no more than the exact amount of Vault shares that would be minted in a deposit - /// call in the same transaction. I.e. deposit should return the same or more shares as previewDeposit if called - /// in the same transaction. - /// - MUST NOT account for deposit limits like those returned from maxDeposit and should always act as though the - /// deposit would be accepted, regardless if the user has enough tokens approved, etc. - /// - MUST be inclusive of deposit fees. Integrators should be aware of the existence of deposit fees. - /// - MUST NOT revert. - /// - /// NOTE: any unfavorable discrepancy between convertToShares and previewDeposit SHOULD be considered slippage in - /// share price or some other type of condition, meaning the depositor will lose assets by depositing. - function previewDeposit(uint256 assets) external view returns (uint256 shares); - - /// @notice Mints shares Vault shares to receiver by depositing exactly amount of underlying tokens. - /// @dev - /// - MUST emit the Deposit event. - /// - MAY support an additional flow in which the underlying tokens are owned by the Vault contract before the - /// deposit execution, and are accounted for during deposit. - /// - MUST revert if all of assets cannot be deposited (due to deposit limit being reached, slippage, the user not - /// approving enough underlying tokens to the Vault contract, etc). - /// - /// NOTE: most implementations will require pre-approval of the Vault with the Vault’s underlying asset token. - function deposit(uint256 assets, address receiver) external returns (uint256 shares); - - /// @notice Returns the maximum amount of the Vault shares that can be minted for the receiver, through a mint call. - /// @dev - /// - MUST return a limited value if receiver is subject to some mint limit. - /// - MUST return 2 ** 256 - 1 if there is no limit on the maximum amount of shares that may be minted. - /// - MUST NOT revert. - function maxMint(address receiver) external view returns (uint256 maxShares); - - /// @notice Allows an on-chain or off-chain user to simulate the effects of their mint at the current block, given - /// current on-chain conditions. - /// @dev - /// - MUST return as close to and no fewer than the exact amount of assets that would be deposited in a mint call - /// in the same transaction. I.e. mint should return the same or fewer assets as previewMint if called in the - /// same transaction. - /// - MUST NOT account for mint limits like those returned from maxMint and should always act as though the mint - /// would be accepted, regardless if the user has enough tokens approved, etc. - /// - MUST be inclusive of deposit fees. Integrators should be aware of the existence of deposit fees. - /// - MUST NOT revert. - /// - /// NOTE: any unfavorable discrepancy between convertToAssets and previewMint SHOULD be considered slippage in - /// share price or some other type of condition, meaning the depositor will lose assets by minting. - function previewMint(uint256 shares) external view returns (uint256 assets); - - /// @notice Mints exactly shares Vault shares to receiver by depositing amount of underlying tokens. - /// @dev - /// - MUST emit the Deposit event. - /// - MAY support an additional flow in which the underlying tokens are owned by the Vault contract before the mint - /// execution, and are accounted for during mint. - /// - MUST revert if all of shares cannot be minted (due to deposit limit being reached, slippage, the user not - /// approving enough underlying tokens to the Vault contract, etc). - /// - /// NOTE: most implementations will require pre-approval of the Vault with the Vault’s underlying asset token. - function mint(uint256 shares, address receiver) external returns (uint256 assets); - - /// @notice Returns the maximum amount of the underlying asset that can be withdrawn from the owner balance in the - /// Vault, through a withdrawal call. - /// @dev - /// - MUST return a limited value if owner is subject to some withdrawal limit or timelock. - /// - MUST NOT revert. - function maxWithdraw(address owner) external view returns (uint256 maxAssets); - - /// @notice Allows an on-chain or off-chain user to simulate the effects of their withdrawal at the current block, - /// given current on-chain conditions. - /// @dev - /// - MUST return as close to and no fewer than the exact amount of Vault shares that would be burned in a withdraw - /// call in the same transaction. I.e. withdraw should return the same or fewer shares as previewWithdraw if - /// called - /// in the same transaction. - /// - MUST NOT account for withdrawal limits like those returned from maxWithdraw and should always act as though - /// the withdrawal would be accepted, regardless if the user has enough shares, etc. - /// - MUST be inclusive of withdrawal fees. Integrators should be aware of the existence of withdrawal fees. - /// - MUST NOT revert. - /// - /// NOTE: any unfavorable discrepancy between convertToShares and previewWithdraw SHOULD be considered slippage in - /// share price or some other type of condition, meaning the depositor will lose assets by depositing. - function previewWithdraw(uint256 assets) external view returns (uint256 shares); - - /// @notice Burns shares from owner and sends exactly assets of underlying tokens to receiver. - /// @dev - /// - MUST emit the Withdraw event. - /// - MAY support an additional flow in which the underlying tokens are owned by the Vault contract before the - /// withdraw execution, and are accounted for during withdrawal. - /// - MUST revert if all of assets cannot be withdrawn (due to withdrawal limit being reached, slippage, the owner - /// not having enough shares, etc). - /// - /// Note that some implementations will require pre-requesting to the Vault before a withdrawal may be performed. - /// Those methods should be performed separately. - function withdraw(uint256 assets, address receiver, address owner) external returns (uint256 shares); - - /// @notice Returns the maximum amount of Vault shares that can be redeemed from the owner balance in the Vault, - /// through a redeem call. - /// @dev - /// - MUST return a limited value if owner is subject to some withdrawal limit or timelock. - /// - MUST return balanceOf(owner) if owner is not subject to any withdrawal limit or timelock. - /// - MUST NOT revert. - function maxRedeem(address owner) external view returns (uint256 maxShares); - - /// @notice Allows an on-chain or off-chain user to simulate the effects of their redeemption at the current block, - /// given current on-chain conditions. - /// @dev - /// - MUST return as close to and no more than the exact amount of assets that would be withdrawn in a redeem call - /// in the same transaction. I.e. redeem should return the same or more assets as previewRedeem if called in the - /// same transaction. - /// - MUST NOT account for redemption limits like those returned from maxRedeem and should always act as though the - /// redemption would be accepted, regardless if the user has enough shares, etc. - /// - MUST be inclusive of withdrawal fees. Integrators should be aware of the existence of withdrawal fees. - /// - MUST NOT revert. - /// - /// NOTE: any unfavorable discrepancy between convertToAssets and previewRedeem SHOULD be considered slippage in - /// share price or some other type of condition, meaning the depositor will lose assets by redeeming. - function previewRedeem(uint256 shares) external view returns (uint256 assets); - - /// @notice Burns exactly shares from owner and sends assets of underlying tokens to receiver. - /// @dev - /// - MUST emit the Withdraw event. - /// - MAY support an additional flow in which the underlying tokens are owned by the Vault contract before the - /// redeem execution, and are accounted for during redeem. - /// - MUST revert if all of shares cannot be redeemed (due to withdrawal limit being reached, slippage, the owner - /// not having enough shares, etc). - /// - /// NOTE: some implementations will require pre-requesting to the Vault before a withdrawal may be performed. - /// Those methods should be performed separately. - function redeem(uint256 shares, address receiver, address owner) external returns (uint256 assets); -} diff --git a/contracts/src/v0.8/vendor/forge-std/src/interfaces/IERC6909.sol b/contracts/src/v0.8/vendor/forge-std/src/interfaces/IERC6909.sol deleted file mode 100644 index 6e11cb460d..0000000000 --- a/contracts/src/v0.8/vendor/forge-std/src/interfaces/IERC6909.sol +++ /dev/null @@ -1,72 +0,0 @@ -// SPDX-License-Identifier: MIT -pragma solidity >=0.6.2; - -import {IERC165} from "./IERC165.sol"; - -/// @dev Required interface of an ERC-6909 compliant contract, as defined in -/// https://eips.ethereum.org/EIPS/eip-6909 -interface IERC6909 is IERC165 { - /// @dev Emitted when the allowance of a `spender` for an `owner` is set for a token of type `id`. - event Approval(address indexed owner, address indexed spender, uint256 indexed id, uint256 amount); - - /// @dev Emitted when `owner` grants or revokes operator status for a `spender`. - event OperatorSet(address indexed owner, address indexed spender, bool approved); - - /// @dev Emitted when `amount` tokens of type `id` are moved from `sender` to `receiver` initiated by `caller`. - event Transfer( - address caller, address indexed sender, address indexed receiver, uint256 indexed id, uint256 amount - ); - - ///@dev Returns the amount of tokens of type `id` owned by `owner`. - function balanceOf(address owner, uint256 id) external view returns (uint256); - - /// @dev Returns the amount of tokens of type `id` that `spender` is allowed to spend on behalf of `owner`. - /// NOTE: Does not include operator allowances. - function allowance(address owner, address spender, uint256 id) external view returns (uint256); - - /// @dev Returns true if `spender` is set as an operator for `owner`. - function isOperator(address owner, address spender) external view returns (bool); - - /// @dev Sets an approval to `spender` for `amount` tokens of type `id` from the caller's tokens. - /// Must return true. - function approve(address spender, uint256 id, uint256 amount) external returns (bool); - - /// @dev Grants or revokes unlimited transfer permission of any token id to `spender` for the caller's tokens. - /// Must return true. - function setOperator(address spender, bool approved) external returns (bool); - - /// @dev Transfers `amount` of token type `id` from the caller's account to `receiver`. - /// Must return true. - function transfer(address receiver, uint256 id, uint256 amount) external returns (bool); - - /// @dev Transfers `amount` of token type `id` from `sender` to `receiver`. - /// Must return true. - function transferFrom(address sender, address receiver, uint256 id, uint256 amount) external returns (bool); -} - -/// @dev Optional extension of {IERC6909} that adds metadata functions. -interface IERC6909Metadata is IERC6909 { - /// @dev Returns the name of the token of type `id`. - function name(uint256 id) external view returns (string memory); - - /// @dev Returns the ticker symbol of the token of type `id`. - function symbol(uint256 id) external view returns (string memory); - - /// @dev Returns the number of decimals for the token of type `id`. - function decimals(uint256 id) external view returns (uint8); -} - -/// @dev Optional extension of {IERC6909} that adds content URI functions. -interface IERC6909ContentURI is IERC6909 { - /// @dev Returns URI for the contract. - function contractURI() external view returns (string memory); - - /// @dev Returns the URI for the token of type `id`. - function tokenURI(uint256 id) external view returns (string memory); -} - -/// @dev Optional extension of {IERC6909} that adds a token supply function. -interface IERC6909TokenSupply is IERC6909 { - /// @dev Returns the total supply of the token of type `id`. - function totalSupply(uint256 id) external view returns (uint256); -} diff --git a/contracts/src/v0.8/vendor/forge-std/src/interfaces/IERC721.sol b/contracts/src/v0.8/vendor/forge-std/src/interfaces/IERC721.sol deleted file mode 100644 index 21a4a94dea..0000000000 --- a/contracts/src/v0.8/vendor/forge-std/src/interfaces/IERC721.sol +++ /dev/null @@ -1,164 +0,0 @@ -// SPDX-License-Identifier: MIT -pragma solidity >=0.6.2; - -import {IERC165} from "./IERC165.sol"; - -/// @title ERC-721 Non-Fungible Token Standard -/// @dev See https://eips.ethereum.org/EIPS/eip-721 -/// Note: the ERC-165 identifier for this interface is 0x80ac58cd. -interface IERC721 is IERC165 { - /// @dev This emits when ownership of any NFT changes by any mechanism. - /// This event emits when NFTs are created (`from` == 0) and destroyed - /// (`to` == 0). Exception: during contract creation, any number of NFTs - /// may be created and assigned without emitting Transfer. At the time of - /// any transfer, the approved address for that NFT (if any) is reset to none. - event Transfer(address indexed _from, address indexed _to, uint256 indexed _tokenId); - - /// @dev This emits when the approved address for an NFT is changed or - /// reaffirmed. The zero address indicates there is no approved address. - /// When a Transfer event emits, this also indicates that the approved - /// address for that NFT (if any) is reset to none. - event Approval(address indexed _owner, address indexed _approved, uint256 indexed _tokenId); - - /// @dev This emits when an operator is enabled or disabled for an owner. - /// The operator can manage all NFTs of the owner. - event ApprovalForAll(address indexed _owner, address indexed _operator, bool _approved); - - /// @notice Count all NFTs assigned to an owner - /// @dev NFTs assigned to the zero address are considered invalid, and this - /// function throws for queries about the zero address. - /// @param _owner An address for whom to query the balance - /// @return The number of NFTs owned by `_owner`, possibly zero - function balanceOf(address _owner) external view returns (uint256); - - /// @notice Find the owner of an NFT - /// @dev NFTs assigned to zero address are considered invalid, and queries - /// about them do throw. - /// @param _tokenId The identifier for an NFT - /// @return The address of the owner of the NFT - function ownerOf(uint256 _tokenId) external view returns (address); - - /// @notice Transfers the ownership of an NFT from one address to another address - /// @dev Throws unless `msg.sender` is the current owner, an authorized - /// operator, or the approved address for this NFT. Throws if `_from` is - /// not the current owner. Throws if `_to` is the zero address. Throws if - /// `_tokenId` is not a valid NFT. When transfer is complete, this function - /// checks if `_to` is a smart contract (code size > 0). If so, it calls - /// `onERC721Received` on `_to` and throws if the return value is not - /// `bytes4(keccak256("onERC721Received(address,address,uint256,bytes)"))`. - /// @param _from The current owner of the NFT - /// @param _to The new owner - /// @param _tokenId The NFT to transfer - /// @param data Additional data with no specified format, sent in call to `_to` - function safeTransferFrom(address _from, address _to, uint256 _tokenId, bytes calldata data) external payable; - - /// @notice Transfers the ownership of an NFT from one address to another address - /// @dev This works identically to the other function with an extra data parameter, - /// except this function just sets data to "". - /// @param _from The current owner of the NFT - /// @param _to The new owner - /// @param _tokenId The NFT to transfer - function safeTransferFrom(address _from, address _to, uint256 _tokenId) external payable; - - /// @notice Transfer ownership of an NFT -- THE CALLER IS RESPONSIBLE - /// TO CONFIRM THAT `_to` IS CAPABLE OF RECEIVING NFTS OR ELSE - /// THEY MAY BE PERMANENTLY LOST - /// @dev Throws unless `msg.sender` is the current owner, an authorized - /// operator, or the approved address for this NFT. Throws if `_from` is - /// not the current owner. Throws if `_to` is the zero address. Throws if - /// `_tokenId` is not a valid NFT. - /// @param _from The current owner of the NFT - /// @param _to The new owner - /// @param _tokenId The NFT to transfer - function transferFrom(address _from, address _to, uint256 _tokenId) external payable; - - /// @notice Change or reaffirm the approved address for an NFT - /// @dev The zero address indicates there is no approved address. - /// Throws unless `msg.sender` is the current NFT owner, or an authorized - /// operator of the current owner. - /// @param _approved The new approved NFT controller - /// @param _tokenId The NFT to approve - function approve(address _approved, uint256 _tokenId) external payable; - - /// @notice Enable or disable approval for a third party ("operator") to manage - /// all of `msg.sender`'s assets - /// @dev Emits the ApprovalForAll event. The contract MUST allow - /// multiple operators per owner. - /// @param _operator Address to add to the set of authorized operators - /// @param _approved True if the operator is approved, false to revoke approval - function setApprovalForAll(address _operator, bool _approved) external; - - /// @notice Get the approved address for a single NFT - /// @dev Throws if `_tokenId` is not a valid NFT. - /// @param _tokenId The NFT to find the approved address for - /// @return The approved address for this NFT, or the zero address if there is none - function getApproved(uint256 _tokenId) external view returns (address); - - /// @notice Query if an address is an authorized operator for another address - /// @param _owner The address that owns the NFTs - /// @param _operator The address that acts on behalf of the owner - /// @return True if `_operator` is an approved operator for `_owner`, false otherwise - function isApprovedForAll(address _owner, address _operator) external view returns (bool); -} - -/// @dev Note: the ERC-165 identifier for this interface is 0x150b7a02. -interface IERC721TokenReceiver { - /// @notice Handle the receipt of an NFT - /// @dev The ERC721 smart contract calls this function on the recipient - /// after a `transfer`. This function MAY throw to revert and reject the - /// transfer. Return of other than the magic value MUST result in the - /// transaction being reverted. - /// Note: the contract address is always the message sender. - /// @param _operator The address which called `safeTransferFrom` function - /// @param _from The address which previously owned the token - /// @param _tokenId The NFT identifier which is being transferred - /// @param _data Additional data with no specified format - /// @return `bytes4(keccak256("onERC721Received(address,address,uint256,bytes)"))` - /// unless throwing - function onERC721Received(address _operator, address _from, uint256 _tokenId, bytes calldata _data) - external - returns (bytes4); -} - -/// @title ERC-721 Non-Fungible Token Standard, optional metadata extension -/// @dev See https://eips.ethereum.org/EIPS/eip-721 -/// Note: the ERC-165 identifier for this interface is 0x5b5e139f. -interface IERC721Metadata is IERC721 { - /// @notice A descriptive name for a collection of NFTs in this contract - function name() external view returns (string memory _name); - - /// @notice An abbreviated name for NFTs in this contract - function symbol() external view returns (string memory _symbol); - - /// @notice A distinct Uniform Resource Identifier (URI) for a given asset. - /// @dev Throws if `_tokenId` is not a valid NFT. URIs are defined in RFC - /// 3986. The URI may point to a JSON file that conforms to the "ERC721 - /// Metadata JSON Schema". - function tokenURI(uint256 _tokenId) external view returns (string memory); -} - -/// @title ERC-721 Non-Fungible Token Standard, optional enumeration extension -/// @dev See https://eips.ethereum.org/EIPS/eip-721 -/// Note: the ERC-165 identifier for this interface is 0x780e9d63. -interface IERC721Enumerable is IERC721 { - /// @notice Count NFTs tracked by this contract - /// @return A count of valid NFTs tracked by this contract, where each one of - /// them has an assigned and queryable owner not equal to the zero address - function totalSupply() external view returns (uint256); - - /// @notice Enumerate valid NFTs - /// @dev Throws if `_index` >= `totalSupply()`. - /// @param _index A counter less than `totalSupply()` - /// @return The token identifier for the `_index`th NFT, - /// (sort order not specified) - function tokenByIndex(uint256 _index) external view returns (uint256); - - /// @notice Enumerate NFTs assigned to an owner - /// @dev Throws if `_index` >= `balanceOf(_owner)` or if - /// `_owner` is the zero address, representing invalid NFTs. - /// @param _owner An address where we are interested in NFTs owned by them - /// @param _index A counter less than `balanceOf(_owner)` - /// @return The token identifier for the `_index`th NFT assigned to `_owner`, - /// (sort order not specified) - function tokenOfOwnerByIndex(address _owner, uint256 _index) external view returns (uint256); -} diff --git a/contracts/src/v0.8/vendor/forge-std/src/interfaces/IERC7540.sol b/contracts/src/v0.8/vendor/forge-std/src/interfaces/IERC7540.sol deleted file mode 100644 index 91a38ca359..0000000000 --- a/contracts/src/v0.8/vendor/forge-std/src/interfaces/IERC7540.sol +++ /dev/null @@ -1,150 +0,0 @@ -// SPDX-License-Identifier: MIT -pragma solidity >=0.6.2; - -import {IERC7575} from "./IERC7575.sol"; - -/// @dev Interface of the base operator logic of ERC7540, as defined in -/// https://eips.ethereum.org/EIPS/eip-7540 -interface IERC7540Operator { - /** - * @dev The event emitted when an operator is set. - * - * @param controller The address of the controller. - * @param operator The address of the operator. - * @param approved The approval status. - */ - event OperatorSet(address indexed controller, address indexed operator, bool approved); - - /** - * @dev Sets or removes an operator for the caller. - * - * @param operator The address of the operator. - * @param approved The approval status. - * @return Whether the call was executed successfully or not - */ - function setOperator(address operator, bool approved) external returns (bool); - - /** - * @dev Returns `true` if the `operator` is approved as an operator for an `controller`. - * - * @param controller The address of the controller. - * @param operator The address of the operator. - * @return status The approval status - */ - function isOperator(address controller, address operator) external view returns (bool status); -} - -/// @dev Interface of the asynchronous deposit Vault interface of ERC7540, as defined in -/// https://eips.ethereum.org/EIPS/eip-7540 -interface IERC7540Deposit is IERC7540Operator { - event DepositRequest( - address indexed controller, address indexed owner, uint256 indexed requestId, address sender, uint256 assets - ); - /** - * @dev Transfers assets from sender into the Vault and submits a Request for asynchronous deposit. - * - * - MUST support ERC-20 approve / transferFrom on asset as a deposit Request flow. - * - MUST revert if all of assets cannot be requested for deposit. - * - owner MUST be msg.sender unless some unspecified explicit approval is given by the caller, - * approval of ERC-20 tokens from owner to sender is NOT enough. - * - * @param assets the amount of deposit assets to transfer from owner - * @param controller the controller of the request who will be able to operate the request - * @param owner the source of the deposit assets - * - * NOTE: most implementations will require pre-approval of the Vault with the Vault's underlying asset token. - */ - - function requestDeposit(uint256 assets, address controller, address owner) external returns (uint256 requestId); - - /** - * @dev Returns the amount of requested assets in Pending state. - * - * - MUST NOT include any assets in Claimable state for deposit or mint. - * - MUST NOT show any variations depending on the caller. - * - MUST NOT revert unless due to integer overflow caused by an unreasonably large input. - */ - function pendingDepositRequest(uint256 requestId, address controller) - external - view - returns (uint256 pendingAssets); - - /** - * @dev Returns the amount of requested assets in Claimable state for the controller to deposit or mint. - * - * - MUST NOT include any assets in Pending state. - * - MUST NOT show any variations depending on the caller. - * - MUST NOT revert unless due to integer overflow caused by an unreasonably large input. - */ - function claimableDepositRequest(uint256 requestId, address controller) - external - view - returns (uint256 claimableAssets); - - /** - * @dev Mints shares Vault shares to receiver by claiming the Request of the controller. - * - * - MUST emit the Deposit event. - * - controller MUST equal msg.sender unless the controller has approved the msg.sender as an operator. - */ - function deposit(uint256 assets, address receiver, address controller) external returns (uint256 shares); - - /** - * @dev Mints exactly shares Vault shares to receiver by claiming the Request of the controller. - * - * - MUST emit the Deposit event. - * - controller MUST equal msg.sender unless the controller has approved the msg.sender as an operator. - */ - function mint(uint256 shares, address receiver, address controller) external returns (uint256 assets); -} - -/// @dev Interface of the asynchronous deposit Vault interface of ERC7540, as defined in -/// https://eips.ethereum.org/EIPS/eip-7540 -interface IERC7540Redeem is IERC7540Operator { - event RedeemRequest( - address indexed controller, address indexed owner, uint256 indexed requestId, address sender, uint256 assets - ); - - /** - * @dev Assumes control of shares from sender into the Vault and submits a Request for asynchronous redeem. - * - * - MUST support a redeem Request flow where the control of shares is taken from sender directly - * where msg.sender has ERC-20 approval over the shares of owner. - * - MUST revert if all of shares cannot be requested for redeem. - * - * @param shares the amount of shares to be redeemed to transfer from owner - * @param controller the controller of the request who will be able to operate the request - * @param owner the source of the shares to be redeemed - * - * NOTE: most implementations will require pre-approval of the Vault with the Vault's share token. - */ - function requestRedeem(uint256 shares, address controller, address owner) external returns (uint256 requestId); - - /** - * @dev Returns the amount of requested shares in Pending state. - * - * - MUST NOT include any shares in Claimable state for redeem or withdraw. - * - MUST NOT show any variations depending on the caller. - * - MUST NOT revert unless due to integer overflow caused by an unreasonably large input. - */ - function pendingRedeemRequest(uint256 requestId, address controller) - external - view - returns (uint256 pendingShares); - - /** - * @dev Returns the amount of requested shares in Claimable state for the controller to redeem or withdraw. - * - * - MUST NOT include any shares in Pending state for redeem or withdraw. - * - MUST NOT show any variations depending on the caller. - * - MUST NOT revert unless due to integer overflow caused by an unreasonably large input. - */ - function claimableRedeemRequest(uint256 requestId, address controller) - external - view - returns (uint256 claimableShares); -} - -/// @dev Interface of the fully asynchronous Vault interface of ERC7540, as defined in -/// https://eips.ethereum.org/EIPS/eip-7540 -interface IERC7540 is IERC7540Deposit, IERC7540Redeem, IERC7575 {} diff --git a/contracts/src/v0.8/vendor/forge-std/src/interfaces/IERC7575.sol b/contracts/src/v0.8/vendor/forge-std/src/interfaces/IERC7575.sol deleted file mode 100644 index 207e3e7fec..0000000000 --- a/contracts/src/v0.8/vendor/forge-std/src/interfaces/IERC7575.sol +++ /dev/null @@ -1,241 +0,0 @@ -// SPDX-License-Identifier: MIT -pragma solidity >=0.6.2; - -import {IERC165} from "./IERC165.sol"; - -/// @dev Interface of the ERC7575 "Multi-Asset ERC-4626 Vaults", as defined in -/// https://eips.ethereum.org/EIPS/eip-7575 -interface IERC7575 is IERC165 { - event Deposit(address indexed sender, address indexed owner, uint256 assets, uint256 shares); - event Withdraw( - address indexed sender, address indexed receiver, address indexed owner, uint256 assets, uint256 shares - ); - - /** - * @dev Returns the address of the underlying token used for the Vault for accounting, depositing, and withdrawing. - * - * - MUST be an ERC-20 token contract. - * - MUST NOT revert. - */ - function asset() external view returns (address assetTokenAddress); - - /** - * @dev Returns the address of the share token - * - * - MUST be an ERC-20 token contract. - * - MUST NOT revert. - */ - function share() external view returns (address shareTokenAddress); - - /** - * @dev Returns the amount of shares that the Vault would exchange for the amount of assets provided, in an ideal - * scenario where all the conditions are met. - * - * - MUST NOT be inclusive of any fees that are charged against assets in the Vault. - * - MUST NOT show any variations depending on the caller. - * - MUST NOT reflect slippage or other on-chain conditions, when performing the actual exchange. - * - MUST NOT revert. - * - * NOTE: This calculation MAY NOT reflect the “per-user” price-per-share, and instead should reflect the - * “average-user’s” price-per-share, meaning what the average user should expect to see when exchanging to and - * from. - */ - function convertToShares(uint256 assets) external view returns (uint256 shares); - - /** - * @dev Returns the amount of assets that the Vault would exchange for the amount of shares provided, in an ideal - * scenario where all the conditions are met. - * - * - MUST NOT be inclusive of any fees that are charged against assets in the Vault. - * - MUST NOT show any variations depending on the caller. - * - MUST NOT reflect slippage or other on-chain conditions, when performing the actual exchange. - * - MUST NOT revert. - * - * NOTE: This calculation MAY NOT reflect the “per-user” price-per-share, and instead should reflect the - * “average-user’s” price-per-share, meaning what the average user should expect to see when exchanging to and - * from. - */ - function convertToAssets(uint256 shares) external view returns (uint256 assets); - - /** - * @dev Returns the total amount of the underlying asset that is “managed” by Vault. - * - * - SHOULD include any compounding that occurs from yield. - * - MUST be inclusive of any fees that are charged against assets in the Vault. - * - MUST NOT revert. - */ - function totalAssets() external view returns (uint256 totalManagedAssets); - - /** - * @dev Returns the maximum amount of the underlying asset that can be deposited into the Vault for the receiver, - * through a deposit call. - * - * - MUST return a limited value if receiver is subject to some deposit limit. - * - MUST return 2 ** 256 - 1 if there is no limit on the maximum amount of assets that may be deposited. - * - MUST NOT revert. - */ - function maxDeposit(address receiver) external view returns (uint256 maxAssets); - - /** - * @dev Allows an on-chain or off-chain user to simulate the effects of their deposit at the current block, given - * current on-chain conditions. - * - * - MUST return as close to and no more than the exact amount of Vault shares that would be minted in a deposit - * call in the same transaction. I.e. deposit should return the same or more shares as previewDeposit if called - * in the same transaction. - * - MUST NOT account for deposit limits like those returned from maxDeposit and should always act as though the - * deposit would be accepted, regardless if the user has enough tokens approved, etc. - * - MUST be inclusive of deposit fees. Integrators should be aware of the existence of deposit fees. - * - MUST NOT revert. - * - * NOTE: any unfavorable discrepancy between convertToShares and previewDeposit SHOULD be considered slippage in - * share price or some other type of condition, meaning the depositor will lose assets by depositing. - */ - function previewDeposit(uint256 assets) external view returns (uint256 shares); - - /** - * @dev Mints shares Vault shares to receiver by depositing exactly amount of underlying tokens. - * - * - MUST emit the Deposit event. - * - MAY support an additional flow in which the underlying tokens are owned by the Vault contract before the - * deposit execution, and are accounted for during deposit. - * - MUST revert if all of assets cannot be deposited (due to deposit limit being reached, slippage, the user not - * approving enough underlying tokens to the Vault contract, etc). - * - * NOTE: most implementations will require pre-approval of the Vault with the Vault’s underlying asset token. - */ - function deposit(uint256 assets, address receiver) external returns (uint256 shares); - - /** - * @dev Returns the maximum amount of the Vault shares that can be minted for the receiver, through a mint call. - * - MUST return a limited value if receiver is subject to some mint limit. - * - MUST return 2 ** 256 - 1 if there is no limit on the maximum amount of shares that may be minted. - * - MUST NOT revert. - */ - function maxMint(address receiver) external view returns (uint256 maxShares); - - /** - * @dev Allows an on-chain or off-chain user to simulate the effects of their mint at the current block, given - * current on-chain conditions. - * - * - MUST return as close to and no fewer than the exact amount of assets that would be deposited in a mint call - * in the same transaction. I.e. mint should return the same or fewer assets as previewMint if called in the - * same transaction. - * - MUST NOT account for mint limits like those returned from maxMint and should always act as though the mint - * would be accepted, regardless if the user has enough tokens approved, etc. - * - MUST be inclusive of deposit fees. Integrators should be aware of the existence of deposit fees. - * - MUST NOT revert. - * - * NOTE: any unfavorable discrepancy between convertToAssets and previewMint SHOULD be considered slippage in - * share price or some other type of condition, meaning the depositor will lose assets by minting. - */ - function previewMint(uint256 shares) external view returns (uint256 assets); - - /** - * @dev Mints exactly shares Vault shares to receiver by depositing amount of underlying tokens. - * - * - MUST emit the Deposit event. - * - MAY support an additional flow in which the underlying tokens are owned by the Vault contract before the mint - * execution, and are accounted for during mint. - * - MUST revert if all of shares cannot be minted (due to deposit limit being reached, slippage, the user not - * approving enough underlying tokens to the Vault contract, etc). - * - * NOTE: most implementations will require pre-approval of the Vault with the Vault’s underlying asset token. - */ - function mint(uint256 shares, address receiver) external returns (uint256 assets); - - /** - * @dev Returns the maximum amount of the underlying asset that can be withdrawn from the owner balance in the - * Vault, through a withdraw call. - * - * - MUST return a limited value if owner is subject to some withdrawal limit or timelock. - * - MUST NOT revert. - */ - function maxWithdraw(address owner) external view returns (uint256 maxAssets); - - /** - * @dev Allows an on-chain or off-chain user to simulate the effects of their withdrawal at the current block, - * given current on-chain conditions. - * - * - MUST return as close to and no fewer than the exact amount of Vault shares that would be burned in a withdraw - * call in the same transaction. I.e. withdraw should return the same or fewer shares as previewWithdraw if - * called - * in the same transaction. - * - MUST NOT account for withdrawal limits like those returned from maxWithdraw and should always act as though - * the withdrawal would be accepted, regardless if the user has enough shares, etc. - * - MUST be inclusive of withdrawal fees. Integrators should be aware of the existence of withdrawal fees. - * - MUST NOT revert. - * - * NOTE: any unfavorable discrepancy between convertToShares and previewWithdraw SHOULD be considered slippage in - * share price or some other type of condition, meaning the depositor will lose assets by depositing. - */ - function previewWithdraw(uint256 assets) external view returns (uint256 shares); - - /** - * @dev Burns shares from owner and sends exactly assets of underlying tokens to receiver. - * - * - MUST emit the Withdraw event. - * - MAY support an additional flow in which the underlying tokens are owned by the Vault contract before the - * withdraw execution, and are accounted for during withdraw. - * - MUST revert if all of assets cannot be withdrawn (due to withdrawal limit being reached, slippage, the owner - * not having enough shares, etc). - * - * Note that some implementations will require pre-requesting to the Vault before a withdrawal may be performed. - * Those methods should be performed separately. - */ - function withdraw(uint256 assets, address receiver, address owner) external returns (uint256 shares); - - /** - * @dev Returns the maximum amount of Vault shares that can be redeemed from the owner balance in the Vault, - * through a redeem call. - * - * - MUST return a limited value if owner is subject to some withdrawal limit or timelock. - * - MUST return balanceOf(owner) if owner is not subject to any withdrawal limit or timelock. - * - MUST NOT revert. - */ - function maxRedeem(address owner) external view returns (uint256 maxShares); - - /** - * @dev Allows an on-chain or off-chain user to simulate the effects of their redeemption at the current block, - * given current on-chain conditions. - * - * - MUST return as close to and no more than the exact amount of assets that would be withdrawn in a redeem call - * in the same transaction. I.e. redeem should return the same or more assets as previewRedeem if called in the - * same transaction. - * - MUST NOT account for redemption limits like those returned from maxRedeem and should always act as though the - * redemption would be accepted, regardless if the user has enough shares, etc. - * - MUST be inclusive of withdrawal fees. Integrators should be aware of the existence of withdrawal fees. - * - MUST NOT revert. - * - * NOTE: any unfavorable discrepancy between convertToAssets and previewRedeem SHOULD be considered slippage in - * share price or some other type of condition, meaning the depositor will lose assets by redeeming. - */ - function previewRedeem(uint256 shares) external view returns (uint256 assets); - - /** - * @dev Burns exactly shares from owner and sends assets of underlying tokens to receiver. - * - * - MUST emit the Withdraw event. - * - MAY support an additional flow in which the underlying tokens are owned by the Vault contract before the - * redeem execution, and are accounted for during redeem. - * - MUST revert if all of shares cannot be redeemed (due to withdrawal limit being reached, slippage, the owner - * not having enough shares, etc). - * - * NOTE: some implementations will require pre-requesting to the Vault before a withdrawal may be performed. - * Those methods should be performed separately. - */ - function redeem(uint256 shares, address receiver, address owner) external returns (uint256 assets); -} - -/// @dev Interface of the ERC20 share token, as defined in -/// https://eips.ethereum.org/EIPS/eip-7575 -interface IERC7575Share is IERC165 { - event VaultUpdate(address indexed asset, address vault); - - /** - * @dev Returns the address of the Vault for the given asset. - * - * @param asset the ERC-20 token to deposit with into the Vault - */ - function vault(address asset) external view returns (address); -} diff --git a/contracts/src/v0.8/vendor/forge-std/src/interfaces/IMulticall3.sol b/contracts/src/v0.8/vendor/forge-std/src/interfaces/IMulticall3.sol deleted file mode 100644 index 0d031b71dc..0000000000 --- a/contracts/src/v0.8/vendor/forge-std/src/interfaces/IMulticall3.sol +++ /dev/null @@ -1,73 +0,0 @@ -// SPDX-License-Identifier: MIT -pragma solidity >=0.6.2 <0.9.0; - -pragma experimental ABIEncoderV2; - -interface IMulticall3 { - struct Call { - address target; - bytes callData; - } - - struct Call3 { - address target; - bool allowFailure; - bytes callData; - } - - struct Call3Value { - address target; - bool allowFailure; - uint256 value; - bytes callData; - } - - struct Result { - bool success; - bytes returnData; - } - - function aggregate(Call[] calldata calls) - external - payable - returns (uint256 blockNumber, bytes[] memory returnData); - - function aggregate3(Call3[] calldata calls) external payable returns (Result[] memory returnData); - - function aggregate3Value(Call3Value[] calldata calls) external payable returns (Result[] memory returnData); - - function blockAndAggregate(Call[] calldata calls) - external - payable - returns (uint256 blockNumber, bytes32 blockHash, Result[] memory returnData); - - function getBasefee() external view returns (uint256 basefee); - - function getBlockHash(uint256 blockNumber) external view returns (bytes32 blockHash); - - function getBlockNumber() external view returns (uint256 blockNumber); - - function getChainId() external view returns (uint256 chainid); - - function getCurrentBlockCoinbase() external view returns (address coinbase); - - function getCurrentBlockDifficulty() external view returns (uint256 difficulty); - - function getCurrentBlockGasLimit() external view returns (uint256 gaslimit); - - function getCurrentBlockTimestamp() external view returns (uint256 timestamp); - - function getEthBalance(address addr) external view returns (uint256 balance); - - function getLastBlockHash() external view returns (bytes32 blockHash); - - function tryAggregate(bool requireSuccess, Call[] calldata calls) - external - payable - returns (Result[] memory returnData); - - function tryBlockAndAggregate(bool requireSuccess, Call[] calldata calls) - external - payable - returns (uint256 blockNumber, bytes32 blockHash, Result[] memory returnData); -} diff --git a/contracts/src/v0.8/vendor/forge-std/src/safeconsole.sol b/contracts/src/v0.8/vendor/forge-std/src/safeconsole.sol deleted file mode 100644 index 87c475a5b0..0000000000 --- a/contracts/src/v0.8/vendor/forge-std/src/safeconsole.sol +++ /dev/null @@ -1,13937 +0,0 @@ -// SPDX-License-Identifier: MIT -pragma solidity >=0.6.2 <0.9.0; - -/// @author philogy -/// @dev Code generated automatically by script. -library safeconsole { - uint256 constant CONSOLE_ADDR = 0x000000000000000000000000000000000000000000636F6e736F6c652e6c6f67; - - // Credit to [0age](https://twitter.com/z0age/status/1654922202930888704) and [0xdapper](https://github.com/foundry-rs/forge-std/pull/374) - // for the view-to-pure log trick. - function _sendLogPayload(uint256 offset, uint256 size) private pure { - function(uint256, uint256) internal view fnIn = _sendLogPayloadView; - function(uint256, uint256) internal pure pureSendLogPayload; - /// @solidity memory-safe-assembly - assembly { - pureSendLogPayload := fnIn - } - pureSendLogPayload(offset, size); - } - - function _sendLogPayloadView(uint256 offset, uint256 size) private view { - /// @solidity memory-safe-assembly - assembly { - pop(staticcall(gas(), CONSOLE_ADDR, offset, size, 0x0, 0x0)) - } - } - - function _memcopy(uint256 fromOffset, uint256 toOffset, uint256 length) private pure { - function(uint256, uint256, uint256) internal view fnIn = _memcopyView; - function(uint256, uint256, uint256) internal pure pureMemcopy; - /// @solidity memory-safe-assembly - assembly { - pureMemcopy := fnIn - } - pureMemcopy(fromOffset, toOffset, length); - } - - function _memcopyView(uint256 fromOffset, uint256 toOffset, uint256 length) private view { - /// @solidity memory-safe-assembly - assembly { - pop(staticcall(gas(), 0x4, fromOffset, length, toOffset, length)) - } - } - - function logMemory(uint256 offset, uint256 length) internal pure { - if (offset >= 0x60) { - // Sufficient memory before slice to prepare call header. - bytes32 m0; - bytes32 m1; - bytes32 m2; - /// @solidity memory-safe-assembly - assembly { - m0 := mload(sub(offset, 0x60)) - m1 := mload(sub(offset, 0x40)) - m2 := mload(sub(offset, 0x20)) - // Selector of `log(bytes)`. - mstore(sub(offset, 0x60), 0x0be77f56) - mstore(sub(offset, 0x40), 0x20) - mstore(sub(offset, 0x20), length) - } - _sendLogPayload(offset - 0x44, length + 0x44); - /// @solidity memory-safe-assembly - assembly { - mstore(sub(offset, 0x60), m0) - mstore(sub(offset, 0x40), m1) - mstore(sub(offset, 0x20), m2) - } - } else { - // Insufficient space, so copy slice forward, add header and reverse. - bytes32 m0; - bytes32 m1; - bytes32 m2; - uint256 endOffset = offset + length; - /// @solidity memory-safe-assembly - assembly { - m0 := mload(add(endOffset, 0x00)) - m1 := mload(add(endOffset, 0x20)) - m2 := mload(add(endOffset, 0x40)) - } - _memcopy(offset, offset + 0x60, length); - /// @solidity memory-safe-assembly - assembly { - // Selector of `log(bytes)`. - mstore(add(offset, 0x00), 0x0be77f56) - mstore(add(offset, 0x20), 0x20) - mstore(add(offset, 0x40), length) - } - _sendLogPayload(offset + 0x1c, length + 0x44); - _memcopy(offset + 0x60, offset, length); - /// @solidity memory-safe-assembly - assembly { - mstore(add(endOffset, 0x00), m0) - mstore(add(endOffset, 0x20), m1) - mstore(add(endOffset, 0x40), m2) - } - } - } - - function log(address p0) internal pure { - bytes32 m0; - bytes32 m1; - /// @solidity memory-safe-assembly - assembly { - m0 := mload(0x00) - m1 := mload(0x20) - // Selector of `log(address)`. - mstore(0x00, 0x2c2ecbc2) - mstore(0x20, p0) - } - _sendLogPayload(0x1c, 0x24); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - } - } - - function log(bool p0) internal pure { - bytes32 m0; - bytes32 m1; - /// @solidity memory-safe-assembly - assembly { - m0 := mload(0x00) - m1 := mload(0x20) - // Selector of `log(bool)`. - mstore(0x00, 0x32458eed) - mstore(0x20, p0) - } - _sendLogPayload(0x1c, 0x24); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - } - } - - function log(uint256 p0) internal pure { - bytes32 m0; - bytes32 m1; - /// @solidity memory-safe-assembly - assembly { - m0 := mload(0x00) - m1 := mload(0x20) - // Selector of `log(uint256)`. - mstore(0x00, 0xf82c50f1) - mstore(0x20, p0) - } - _sendLogPayload(0x1c, 0x24); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - } - } - - function log(bytes32 p0) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - // Selector of `log(string)`. - mstore(0x00, 0x41304fac) - mstore(0x20, 0x20) - writeString(0x40, p0) - } - _sendLogPayload(0x1c, 0x64); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - } - } - - function log(address p0, address p1) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - /// @solidity memory-safe-assembly - assembly { - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - // Selector of `log(address,address)`. - mstore(0x00, 0xdaf0d4aa) - mstore(0x20, p0) - mstore(0x40, p1) - } - _sendLogPayload(0x1c, 0x44); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - } - } - - function log(address p0, bool p1) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - /// @solidity memory-safe-assembly - assembly { - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - // Selector of `log(address,bool)`. - mstore(0x00, 0x75b605d3) - mstore(0x20, p0) - mstore(0x40, p1) - } - _sendLogPayload(0x1c, 0x44); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - } - } - - function log(address p0, uint256 p1) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - /// @solidity memory-safe-assembly - assembly { - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - // Selector of `log(address,uint256)`. - mstore(0x00, 0x8309e8a8) - mstore(0x20, p0) - mstore(0x40, p1) - } - _sendLogPayload(0x1c, 0x44); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - } - } - - function log(address p0, bytes32 p1) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - // Selector of `log(address,string)`. - mstore(0x00, 0x759f86bb) - mstore(0x20, p0) - mstore(0x40, 0x40) - writeString(0x60, p1) - } - _sendLogPayload(0x1c, 0x84); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - } - } - - function log(bool p0, address p1) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - /// @solidity memory-safe-assembly - assembly { - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - // Selector of `log(bool,address)`. - mstore(0x00, 0x853c4849) - mstore(0x20, p0) - mstore(0x40, p1) - } - _sendLogPayload(0x1c, 0x44); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - } - } - - function log(bool p0, bool p1) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - /// @solidity memory-safe-assembly - assembly { - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - // Selector of `log(bool,bool)`. - mstore(0x00, 0x2a110e83) - mstore(0x20, p0) - mstore(0x40, p1) - } - _sendLogPayload(0x1c, 0x44); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - } - } - - function log(bool p0, uint256 p1) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - /// @solidity memory-safe-assembly - assembly { - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - // Selector of `log(bool,uint256)`. - mstore(0x00, 0x399174d3) - mstore(0x20, p0) - mstore(0x40, p1) - } - _sendLogPayload(0x1c, 0x44); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - } - } - - function log(bool p0, bytes32 p1) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - // Selector of `log(bool,string)`. - mstore(0x00, 0x8feac525) - mstore(0x20, p0) - mstore(0x40, 0x40) - writeString(0x60, p1) - } - _sendLogPayload(0x1c, 0x84); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - } - } - - function log(uint256 p0, address p1) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - /// @solidity memory-safe-assembly - assembly { - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - // Selector of `log(uint256,address)`. - mstore(0x00, 0x69276c86) - mstore(0x20, p0) - mstore(0x40, p1) - } - _sendLogPayload(0x1c, 0x44); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - } - } - - function log(uint256 p0, bool p1) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - /// @solidity memory-safe-assembly - assembly { - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - // Selector of `log(uint256,bool)`. - mstore(0x00, 0x1c9d7eb3) - mstore(0x20, p0) - mstore(0x40, p1) - } - _sendLogPayload(0x1c, 0x44); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - } - } - - function log(uint256 p0, uint256 p1) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - /// @solidity memory-safe-assembly - assembly { - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - // Selector of `log(uint256,uint256)`. - mstore(0x00, 0xf666715a) - mstore(0x20, p0) - mstore(0x40, p1) - } - _sendLogPayload(0x1c, 0x44); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - } - } - - function log(uint256 p0, bytes32 p1) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - // Selector of `log(uint256,string)`. - mstore(0x00, 0x643fd0df) - mstore(0x20, p0) - mstore(0x40, 0x40) - writeString(0x60, p1) - } - _sendLogPayload(0x1c, 0x84); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - } - } - - function log(bytes32 p0, address p1) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - // Selector of `log(string,address)`. - mstore(0x00, 0x319af333) - mstore(0x20, 0x40) - mstore(0x40, p1) - writeString(0x60, p0) - } - _sendLogPayload(0x1c, 0x84); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - } - } - - function log(bytes32 p0, bool p1) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - // Selector of `log(string,bool)`. - mstore(0x00, 0xc3b55635) - mstore(0x20, 0x40) - mstore(0x40, p1) - writeString(0x60, p0) - } - _sendLogPayload(0x1c, 0x84); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - } - } - - function log(bytes32 p0, uint256 p1) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - // Selector of `log(string,uint256)`. - mstore(0x00, 0xb60e72cc) - mstore(0x20, 0x40) - mstore(0x40, p1) - writeString(0x60, p0) - } - _sendLogPayload(0x1c, 0x84); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - } - } - - function log(bytes32 p0, bytes32 p1) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - // Selector of `log(string,string)`. - mstore(0x00, 0x4b5c4277) - mstore(0x20, 0x40) - mstore(0x40, 0x80) - writeString(0x60, p0) - writeString(0xa0, p1) - } - _sendLogPayload(0x1c, 0xc4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - } - } - - function log(address p0, address p1, address p2) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - /// @solidity memory-safe-assembly - assembly { - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - // Selector of `log(address,address,address)`. - mstore(0x00, 0x018c84c2) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, p2) - } - _sendLogPayload(0x1c, 0x64); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - } - } - - function log(address p0, address p1, bool p2) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - /// @solidity memory-safe-assembly - assembly { - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - // Selector of `log(address,address,bool)`. - mstore(0x00, 0xf2a66286) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, p2) - } - _sendLogPayload(0x1c, 0x64); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - } - } - - function log(address p0, address p1, uint256 p2) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - /// @solidity memory-safe-assembly - assembly { - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - // Selector of `log(address,address,uint256)`. - mstore(0x00, 0x17fe6185) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, p2) - } - _sendLogPayload(0x1c, 0x64); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - } - } - - function log(address p0, address p1, bytes32 p2) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - // Selector of `log(address,address,string)`. - mstore(0x00, 0x007150be) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, 0x60) - writeString(0x80, p2) - } - _sendLogPayload(0x1c, 0xa4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - } - } - - function log(address p0, bool p1, address p2) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - /// @solidity memory-safe-assembly - assembly { - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - // Selector of `log(address,bool,address)`. - mstore(0x00, 0xf11699ed) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, p2) - } - _sendLogPayload(0x1c, 0x64); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - } - } - - function log(address p0, bool p1, bool p2) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - /// @solidity memory-safe-assembly - assembly { - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - // Selector of `log(address,bool,bool)`. - mstore(0x00, 0xeb830c92) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, p2) - } - _sendLogPayload(0x1c, 0x64); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - } - } - - function log(address p0, bool p1, uint256 p2) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - /// @solidity memory-safe-assembly - assembly { - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - // Selector of `log(address,bool,uint256)`. - mstore(0x00, 0x9c4f99fb) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, p2) - } - _sendLogPayload(0x1c, 0x64); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - } - } - - function log(address p0, bool p1, bytes32 p2) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - // Selector of `log(address,bool,string)`. - mstore(0x00, 0x212255cc) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, 0x60) - writeString(0x80, p2) - } - _sendLogPayload(0x1c, 0xa4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - } - } - - function log(address p0, uint256 p1, address p2) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - /// @solidity memory-safe-assembly - assembly { - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - // Selector of `log(address,uint256,address)`. - mstore(0x00, 0x7bc0d848) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, p2) - } - _sendLogPayload(0x1c, 0x64); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - } - } - - function log(address p0, uint256 p1, bool p2) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - /// @solidity memory-safe-assembly - assembly { - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - // Selector of `log(address,uint256,bool)`. - mstore(0x00, 0x678209a8) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, p2) - } - _sendLogPayload(0x1c, 0x64); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - } - } - - function log(address p0, uint256 p1, uint256 p2) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - /// @solidity memory-safe-assembly - assembly { - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - // Selector of `log(address,uint256,uint256)`. - mstore(0x00, 0xb69bcaf6) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, p2) - } - _sendLogPayload(0x1c, 0x64); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - } - } - - function log(address p0, uint256 p1, bytes32 p2) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - // Selector of `log(address,uint256,string)`. - mstore(0x00, 0xa1f2e8aa) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, 0x60) - writeString(0x80, p2) - } - _sendLogPayload(0x1c, 0xa4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - } - } - - function log(address p0, bytes32 p1, address p2) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - // Selector of `log(address,string,address)`. - mstore(0x00, 0xf08744e8) - mstore(0x20, p0) - mstore(0x40, 0x60) - mstore(0x60, p2) - writeString(0x80, p1) - } - _sendLogPayload(0x1c, 0xa4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - } - } - - function log(address p0, bytes32 p1, bool p2) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - // Selector of `log(address,string,bool)`. - mstore(0x00, 0xcf020fb1) - mstore(0x20, p0) - mstore(0x40, 0x60) - mstore(0x60, p2) - writeString(0x80, p1) - } - _sendLogPayload(0x1c, 0xa4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - } - } - - function log(address p0, bytes32 p1, uint256 p2) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - // Selector of `log(address,string,uint256)`. - mstore(0x00, 0x67dd6ff1) - mstore(0x20, p0) - mstore(0x40, 0x60) - mstore(0x60, p2) - writeString(0x80, p1) - } - _sendLogPayload(0x1c, 0xa4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - } - } - - function log(address p0, bytes32 p1, bytes32 p2) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - bytes32 m7; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - m7 := mload(0xe0) - // Selector of `log(address,string,string)`. - mstore(0x00, 0xfb772265) - mstore(0x20, p0) - mstore(0x40, 0x60) - mstore(0x60, 0xa0) - writeString(0x80, p1) - writeString(0xc0, p2) - } - _sendLogPayload(0x1c, 0xe4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - mstore(0xe0, m7) - } - } - - function log(bool p0, address p1, address p2) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - /// @solidity memory-safe-assembly - assembly { - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - // Selector of `log(bool,address,address)`. - mstore(0x00, 0xd2763667) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, p2) - } - _sendLogPayload(0x1c, 0x64); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - } - } - - function log(bool p0, address p1, bool p2) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - /// @solidity memory-safe-assembly - assembly { - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - // Selector of `log(bool,address,bool)`. - mstore(0x00, 0x18c9c746) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, p2) - } - _sendLogPayload(0x1c, 0x64); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - } - } - - function log(bool p0, address p1, uint256 p2) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - /// @solidity memory-safe-assembly - assembly { - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - // Selector of `log(bool,address,uint256)`. - mstore(0x00, 0x5f7b9afb) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, p2) - } - _sendLogPayload(0x1c, 0x64); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - } - } - - function log(bool p0, address p1, bytes32 p2) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - // Selector of `log(bool,address,string)`. - mstore(0x00, 0xde9a9270) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, 0x60) - writeString(0x80, p2) - } - _sendLogPayload(0x1c, 0xa4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - } - } - - function log(bool p0, bool p1, address p2) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - /// @solidity memory-safe-assembly - assembly { - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - // Selector of `log(bool,bool,address)`. - mstore(0x00, 0x1078f68d) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, p2) - } - _sendLogPayload(0x1c, 0x64); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - } - } - - function log(bool p0, bool p1, bool p2) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - /// @solidity memory-safe-assembly - assembly { - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - // Selector of `log(bool,bool,bool)`. - mstore(0x00, 0x50709698) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, p2) - } - _sendLogPayload(0x1c, 0x64); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - } - } - - function log(bool p0, bool p1, uint256 p2) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - /// @solidity memory-safe-assembly - assembly { - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - // Selector of `log(bool,bool,uint256)`. - mstore(0x00, 0x12f21602) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, p2) - } - _sendLogPayload(0x1c, 0x64); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - } - } - - function log(bool p0, bool p1, bytes32 p2) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - // Selector of `log(bool,bool,string)`. - mstore(0x00, 0x2555fa46) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, 0x60) - writeString(0x80, p2) - } - _sendLogPayload(0x1c, 0xa4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - } - } - - function log(bool p0, uint256 p1, address p2) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - /// @solidity memory-safe-assembly - assembly { - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - // Selector of `log(bool,uint256,address)`. - mstore(0x00, 0x088ef9d2) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, p2) - } - _sendLogPayload(0x1c, 0x64); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - } - } - - function log(bool p0, uint256 p1, bool p2) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - /// @solidity memory-safe-assembly - assembly { - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - // Selector of `log(bool,uint256,bool)`. - mstore(0x00, 0xe8defba9) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, p2) - } - _sendLogPayload(0x1c, 0x64); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - } - } - - function log(bool p0, uint256 p1, uint256 p2) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - /// @solidity memory-safe-assembly - assembly { - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - // Selector of `log(bool,uint256,uint256)`. - mstore(0x00, 0x37103367) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, p2) - } - _sendLogPayload(0x1c, 0x64); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - } - } - - function log(bool p0, uint256 p1, bytes32 p2) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - // Selector of `log(bool,uint256,string)`. - mstore(0x00, 0xc3fc3970) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, 0x60) - writeString(0x80, p2) - } - _sendLogPayload(0x1c, 0xa4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - } - } - - function log(bool p0, bytes32 p1, address p2) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - // Selector of `log(bool,string,address)`. - mstore(0x00, 0x9591b953) - mstore(0x20, p0) - mstore(0x40, 0x60) - mstore(0x60, p2) - writeString(0x80, p1) - } - _sendLogPayload(0x1c, 0xa4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - } - } - - function log(bool p0, bytes32 p1, bool p2) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - // Selector of `log(bool,string,bool)`. - mstore(0x00, 0xdbb4c247) - mstore(0x20, p0) - mstore(0x40, 0x60) - mstore(0x60, p2) - writeString(0x80, p1) - } - _sendLogPayload(0x1c, 0xa4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - } - } - - function log(bool p0, bytes32 p1, uint256 p2) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - // Selector of `log(bool,string,uint256)`. - mstore(0x00, 0x1093ee11) - mstore(0x20, p0) - mstore(0x40, 0x60) - mstore(0x60, p2) - writeString(0x80, p1) - } - _sendLogPayload(0x1c, 0xa4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - } - } - - function log(bool p0, bytes32 p1, bytes32 p2) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - bytes32 m7; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - m7 := mload(0xe0) - // Selector of `log(bool,string,string)`. - mstore(0x00, 0xb076847f) - mstore(0x20, p0) - mstore(0x40, 0x60) - mstore(0x60, 0xa0) - writeString(0x80, p1) - writeString(0xc0, p2) - } - _sendLogPayload(0x1c, 0xe4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - mstore(0xe0, m7) - } - } - - function log(uint256 p0, address p1, address p2) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - /// @solidity memory-safe-assembly - assembly { - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - // Selector of `log(uint256,address,address)`. - mstore(0x00, 0xbcfd9be0) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, p2) - } - _sendLogPayload(0x1c, 0x64); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - } - } - - function log(uint256 p0, address p1, bool p2) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - /// @solidity memory-safe-assembly - assembly { - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - // Selector of `log(uint256,address,bool)`. - mstore(0x00, 0x9b6ec042) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, p2) - } - _sendLogPayload(0x1c, 0x64); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - } - } - - function log(uint256 p0, address p1, uint256 p2) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - /// @solidity memory-safe-assembly - assembly { - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - // Selector of `log(uint256,address,uint256)`. - mstore(0x00, 0x5a9b5ed5) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, p2) - } - _sendLogPayload(0x1c, 0x64); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - } - } - - function log(uint256 p0, address p1, bytes32 p2) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - // Selector of `log(uint256,address,string)`. - mstore(0x00, 0x63cb41f9) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, 0x60) - writeString(0x80, p2) - } - _sendLogPayload(0x1c, 0xa4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - } - } - - function log(uint256 p0, bool p1, address p2) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - /// @solidity memory-safe-assembly - assembly { - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - // Selector of `log(uint256,bool,address)`. - mstore(0x00, 0x35085f7b) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, p2) - } - _sendLogPayload(0x1c, 0x64); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - } - } - - function log(uint256 p0, bool p1, bool p2) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - /// @solidity memory-safe-assembly - assembly { - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - // Selector of `log(uint256,bool,bool)`. - mstore(0x00, 0x20718650) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, p2) - } - _sendLogPayload(0x1c, 0x64); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - } - } - - function log(uint256 p0, bool p1, uint256 p2) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - /// @solidity memory-safe-assembly - assembly { - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - // Selector of `log(uint256,bool,uint256)`. - mstore(0x00, 0x20098014) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, p2) - } - _sendLogPayload(0x1c, 0x64); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - } - } - - function log(uint256 p0, bool p1, bytes32 p2) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - // Selector of `log(uint256,bool,string)`. - mstore(0x00, 0x85775021) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, 0x60) - writeString(0x80, p2) - } - _sendLogPayload(0x1c, 0xa4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - } - } - - function log(uint256 p0, uint256 p1, address p2) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - /// @solidity memory-safe-assembly - assembly { - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - // Selector of `log(uint256,uint256,address)`. - mstore(0x00, 0x5c96b331) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, p2) - } - _sendLogPayload(0x1c, 0x64); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - } - } - - function log(uint256 p0, uint256 p1, bool p2) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - /// @solidity memory-safe-assembly - assembly { - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - // Selector of `log(uint256,uint256,bool)`. - mstore(0x00, 0x4766da72) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, p2) - } - _sendLogPayload(0x1c, 0x64); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - } - } - - function log(uint256 p0, uint256 p1, uint256 p2) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - /// @solidity memory-safe-assembly - assembly { - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - // Selector of `log(uint256,uint256,uint256)`. - mstore(0x00, 0xd1ed7a3c) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, p2) - } - _sendLogPayload(0x1c, 0x64); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - } - } - - function log(uint256 p0, uint256 p1, bytes32 p2) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - // Selector of `log(uint256,uint256,string)`. - mstore(0x00, 0x71d04af2) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, 0x60) - writeString(0x80, p2) - } - _sendLogPayload(0x1c, 0xa4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - } - } - - function log(uint256 p0, bytes32 p1, address p2) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - // Selector of `log(uint256,string,address)`. - mstore(0x00, 0x7afac959) - mstore(0x20, p0) - mstore(0x40, 0x60) - mstore(0x60, p2) - writeString(0x80, p1) - } - _sendLogPayload(0x1c, 0xa4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - } - } - - function log(uint256 p0, bytes32 p1, bool p2) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - // Selector of `log(uint256,string,bool)`. - mstore(0x00, 0x4ceda75a) - mstore(0x20, p0) - mstore(0x40, 0x60) - mstore(0x60, p2) - writeString(0x80, p1) - } - _sendLogPayload(0x1c, 0xa4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - } - } - - function log(uint256 p0, bytes32 p1, uint256 p2) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - // Selector of `log(uint256,string,uint256)`. - mstore(0x00, 0x37aa7d4c) - mstore(0x20, p0) - mstore(0x40, 0x60) - mstore(0x60, p2) - writeString(0x80, p1) - } - _sendLogPayload(0x1c, 0xa4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - } - } - - function log(uint256 p0, bytes32 p1, bytes32 p2) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - bytes32 m7; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - m7 := mload(0xe0) - // Selector of `log(uint256,string,string)`. - mstore(0x00, 0xb115611f) - mstore(0x20, p0) - mstore(0x40, 0x60) - mstore(0x60, 0xa0) - writeString(0x80, p1) - writeString(0xc0, p2) - } - _sendLogPayload(0x1c, 0xe4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - mstore(0xe0, m7) - } - } - - function log(bytes32 p0, address p1, address p2) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - // Selector of `log(string,address,address)`. - mstore(0x00, 0xfcec75e0) - mstore(0x20, 0x60) - mstore(0x40, p1) - mstore(0x60, p2) - writeString(0x80, p0) - } - _sendLogPayload(0x1c, 0xa4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - } - } - - function log(bytes32 p0, address p1, bool p2) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - // Selector of `log(string,address,bool)`. - mstore(0x00, 0xc91d5ed4) - mstore(0x20, 0x60) - mstore(0x40, p1) - mstore(0x60, p2) - writeString(0x80, p0) - } - _sendLogPayload(0x1c, 0xa4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - } - } - - function log(bytes32 p0, address p1, uint256 p2) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - // Selector of `log(string,address,uint256)`. - mstore(0x00, 0x0d26b925) - mstore(0x20, 0x60) - mstore(0x40, p1) - mstore(0x60, p2) - writeString(0x80, p0) - } - _sendLogPayload(0x1c, 0xa4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - } - } - - function log(bytes32 p0, address p1, bytes32 p2) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - bytes32 m7; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - m7 := mload(0xe0) - // Selector of `log(string,address,string)`. - mstore(0x00, 0xe0e9ad4f) - mstore(0x20, 0x60) - mstore(0x40, p1) - mstore(0x60, 0xa0) - writeString(0x80, p0) - writeString(0xc0, p2) - } - _sendLogPayload(0x1c, 0xe4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - mstore(0xe0, m7) - } - } - - function log(bytes32 p0, bool p1, address p2) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - // Selector of `log(string,bool,address)`. - mstore(0x00, 0x932bbb38) - mstore(0x20, 0x60) - mstore(0x40, p1) - mstore(0x60, p2) - writeString(0x80, p0) - } - _sendLogPayload(0x1c, 0xa4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - } - } - - function log(bytes32 p0, bool p1, bool p2) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - // Selector of `log(string,bool,bool)`. - mstore(0x00, 0x850b7ad6) - mstore(0x20, 0x60) - mstore(0x40, p1) - mstore(0x60, p2) - writeString(0x80, p0) - } - _sendLogPayload(0x1c, 0xa4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - } - } - - function log(bytes32 p0, bool p1, uint256 p2) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - // Selector of `log(string,bool,uint256)`. - mstore(0x00, 0xc95958d6) - mstore(0x20, 0x60) - mstore(0x40, p1) - mstore(0x60, p2) - writeString(0x80, p0) - } - _sendLogPayload(0x1c, 0xa4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - } - } - - function log(bytes32 p0, bool p1, bytes32 p2) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - bytes32 m7; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - m7 := mload(0xe0) - // Selector of `log(string,bool,string)`. - mstore(0x00, 0xe298f47d) - mstore(0x20, 0x60) - mstore(0x40, p1) - mstore(0x60, 0xa0) - writeString(0x80, p0) - writeString(0xc0, p2) - } - _sendLogPayload(0x1c, 0xe4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - mstore(0xe0, m7) - } - } - - function log(bytes32 p0, uint256 p1, address p2) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - // Selector of `log(string,uint256,address)`. - mstore(0x00, 0x1c7ec448) - mstore(0x20, 0x60) - mstore(0x40, p1) - mstore(0x60, p2) - writeString(0x80, p0) - } - _sendLogPayload(0x1c, 0xa4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - } - } - - function log(bytes32 p0, uint256 p1, bool p2) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - // Selector of `log(string,uint256,bool)`. - mstore(0x00, 0xca7733b1) - mstore(0x20, 0x60) - mstore(0x40, p1) - mstore(0x60, p2) - writeString(0x80, p0) - } - _sendLogPayload(0x1c, 0xa4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - } - } - - function log(bytes32 p0, uint256 p1, uint256 p2) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - // Selector of `log(string,uint256,uint256)`. - mstore(0x00, 0xca47c4eb) - mstore(0x20, 0x60) - mstore(0x40, p1) - mstore(0x60, p2) - writeString(0x80, p0) - } - _sendLogPayload(0x1c, 0xa4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - } - } - - function log(bytes32 p0, uint256 p1, bytes32 p2) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - bytes32 m7; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - m7 := mload(0xe0) - // Selector of `log(string,uint256,string)`. - mstore(0x00, 0x5970e089) - mstore(0x20, 0x60) - mstore(0x40, p1) - mstore(0x60, 0xa0) - writeString(0x80, p0) - writeString(0xc0, p2) - } - _sendLogPayload(0x1c, 0xe4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - mstore(0xe0, m7) - } - } - - function log(bytes32 p0, bytes32 p1, address p2) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - bytes32 m7; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - m7 := mload(0xe0) - // Selector of `log(string,string,address)`. - mstore(0x00, 0x95ed0195) - mstore(0x20, 0x60) - mstore(0x40, 0xa0) - mstore(0x60, p2) - writeString(0x80, p0) - writeString(0xc0, p1) - } - _sendLogPayload(0x1c, 0xe4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - mstore(0xe0, m7) - } - } - - function log(bytes32 p0, bytes32 p1, bool p2) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - bytes32 m7; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - m7 := mload(0xe0) - // Selector of `log(string,string,bool)`. - mstore(0x00, 0xb0e0f9b5) - mstore(0x20, 0x60) - mstore(0x40, 0xa0) - mstore(0x60, p2) - writeString(0x80, p0) - writeString(0xc0, p1) - } - _sendLogPayload(0x1c, 0xe4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - mstore(0xe0, m7) - } - } - - function log(bytes32 p0, bytes32 p1, uint256 p2) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - bytes32 m7; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - m7 := mload(0xe0) - // Selector of `log(string,string,uint256)`. - mstore(0x00, 0x5821efa1) - mstore(0x20, 0x60) - mstore(0x40, 0xa0) - mstore(0x60, p2) - writeString(0x80, p0) - writeString(0xc0, p1) - } - _sendLogPayload(0x1c, 0xe4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - mstore(0xe0, m7) - } - } - - function log(bytes32 p0, bytes32 p1, bytes32 p2) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - bytes32 m7; - bytes32 m8; - bytes32 m9; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - m7 := mload(0xe0) - m8 := mload(0x100) - m9 := mload(0x120) - // Selector of `log(string,string,string)`. - mstore(0x00, 0x2ced7cef) - mstore(0x20, 0x60) - mstore(0x40, 0xa0) - mstore(0x60, 0xe0) - writeString(0x80, p0) - writeString(0xc0, p1) - writeString(0x100, p2) - } - _sendLogPayload(0x1c, 0x124); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - mstore(0xe0, m7) - mstore(0x100, m8) - mstore(0x120, m9) - } - } - - function log(address p0, address p1, address p2, address p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - /// @solidity memory-safe-assembly - assembly { - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - // Selector of `log(address,address,address,address)`. - mstore(0x00, 0x665bf134) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, p3) - } - _sendLogPayload(0x1c, 0x84); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - } - } - - function log(address p0, address p1, address p2, bool p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - /// @solidity memory-safe-assembly - assembly { - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - // Selector of `log(address,address,address,bool)`. - mstore(0x00, 0x0e378994) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, p3) - } - _sendLogPayload(0x1c, 0x84); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - } - } - - function log(address p0, address p1, address p2, uint256 p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - /// @solidity memory-safe-assembly - assembly { - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - // Selector of `log(address,address,address,uint256)`. - mstore(0x00, 0x94250d77) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, p3) - } - _sendLogPayload(0x1c, 0x84); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - } - } - - function log(address p0, address p1, address p2, bytes32 p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - // Selector of `log(address,address,address,string)`. - mstore(0x00, 0xf808da20) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, 0x80) - writeString(0xa0, p3) - } - _sendLogPayload(0x1c, 0xc4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - } - } - - function log(address p0, address p1, bool p2, address p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - /// @solidity memory-safe-assembly - assembly { - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - // Selector of `log(address,address,bool,address)`. - mstore(0x00, 0x9f1bc36e) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, p3) - } - _sendLogPayload(0x1c, 0x84); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - } - } - - function log(address p0, address p1, bool p2, bool p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - /// @solidity memory-safe-assembly - assembly { - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - // Selector of `log(address,address,bool,bool)`. - mstore(0x00, 0x2cd4134a) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, p3) - } - _sendLogPayload(0x1c, 0x84); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - } - } - - function log(address p0, address p1, bool p2, uint256 p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - /// @solidity memory-safe-assembly - assembly { - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - // Selector of `log(address,address,bool,uint256)`. - mstore(0x00, 0x3971e78c) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, p3) - } - _sendLogPayload(0x1c, 0x84); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - } - } - - function log(address p0, address p1, bool p2, bytes32 p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - // Selector of `log(address,address,bool,string)`. - mstore(0x00, 0xaa6540c8) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, 0x80) - writeString(0xa0, p3) - } - _sendLogPayload(0x1c, 0xc4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - } - } - - function log(address p0, address p1, uint256 p2, address p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - /// @solidity memory-safe-assembly - assembly { - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - // Selector of `log(address,address,uint256,address)`. - mstore(0x00, 0x8da6def5) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, p3) - } - _sendLogPayload(0x1c, 0x84); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - } - } - - function log(address p0, address p1, uint256 p2, bool p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - /// @solidity memory-safe-assembly - assembly { - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - // Selector of `log(address,address,uint256,bool)`. - mstore(0x00, 0x9b4254e2) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, p3) - } - _sendLogPayload(0x1c, 0x84); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - } - } - - function log(address p0, address p1, uint256 p2, uint256 p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - /// @solidity memory-safe-assembly - assembly { - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - // Selector of `log(address,address,uint256,uint256)`. - mstore(0x00, 0xbe553481) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, p3) - } - _sendLogPayload(0x1c, 0x84); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - } - } - - function log(address p0, address p1, uint256 p2, bytes32 p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - // Selector of `log(address,address,uint256,string)`. - mstore(0x00, 0xfdb4f990) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, 0x80) - writeString(0xa0, p3) - } - _sendLogPayload(0x1c, 0xc4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - } - } - - function log(address p0, address p1, bytes32 p2, address p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - // Selector of `log(address,address,string,address)`. - mstore(0x00, 0x8f736d16) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, 0x80) - mstore(0x80, p3) - writeString(0xa0, p2) - } - _sendLogPayload(0x1c, 0xc4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - } - } - - function log(address p0, address p1, bytes32 p2, bool p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - // Selector of `log(address,address,string,bool)`. - mstore(0x00, 0x6f1a594e) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, 0x80) - mstore(0x80, p3) - writeString(0xa0, p2) - } - _sendLogPayload(0x1c, 0xc4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - } - } - - function log(address p0, address p1, bytes32 p2, uint256 p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - // Selector of `log(address,address,string,uint256)`. - mstore(0x00, 0xef1cefe7) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, 0x80) - mstore(0x80, p3) - writeString(0xa0, p2) - } - _sendLogPayload(0x1c, 0xc4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - } - } - - function log(address p0, address p1, bytes32 p2, bytes32 p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - bytes32 m7; - bytes32 m8; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - m7 := mload(0xe0) - m8 := mload(0x100) - // Selector of `log(address,address,string,string)`. - mstore(0x00, 0x21bdaf25) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, 0x80) - mstore(0x80, 0xc0) - writeString(0xa0, p2) - writeString(0xe0, p3) - } - _sendLogPayload(0x1c, 0x104); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - mstore(0xe0, m7) - mstore(0x100, m8) - } - } - - function log(address p0, bool p1, address p2, address p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - /// @solidity memory-safe-assembly - assembly { - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - // Selector of `log(address,bool,address,address)`. - mstore(0x00, 0x660375dd) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, p3) - } - _sendLogPayload(0x1c, 0x84); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - } - } - - function log(address p0, bool p1, address p2, bool p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - /// @solidity memory-safe-assembly - assembly { - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - // Selector of `log(address,bool,address,bool)`. - mstore(0x00, 0xa6f50b0f) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, p3) - } - _sendLogPayload(0x1c, 0x84); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - } - } - - function log(address p0, bool p1, address p2, uint256 p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - /// @solidity memory-safe-assembly - assembly { - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - // Selector of `log(address,bool,address,uint256)`. - mstore(0x00, 0xa75c59de) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, p3) - } - _sendLogPayload(0x1c, 0x84); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - } - } - - function log(address p0, bool p1, address p2, bytes32 p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - // Selector of `log(address,bool,address,string)`. - mstore(0x00, 0x2dd778e6) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, 0x80) - writeString(0xa0, p3) - } - _sendLogPayload(0x1c, 0xc4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - } - } - - function log(address p0, bool p1, bool p2, address p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - /// @solidity memory-safe-assembly - assembly { - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - // Selector of `log(address,bool,bool,address)`. - mstore(0x00, 0xcf394485) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, p3) - } - _sendLogPayload(0x1c, 0x84); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - } - } - - function log(address p0, bool p1, bool p2, bool p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - /// @solidity memory-safe-assembly - assembly { - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - // Selector of `log(address,bool,bool,bool)`. - mstore(0x00, 0xcac43479) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, p3) - } - _sendLogPayload(0x1c, 0x84); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - } - } - - function log(address p0, bool p1, bool p2, uint256 p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - /// @solidity memory-safe-assembly - assembly { - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - // Selector of `log(address,bool,bool,uint256)`. - mstore(0x00, 0x8c4e5de6) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, p3) - } - _sendLogPayload(0x1c, 0x84); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - } - } - - function log(address p0, bool p1, bool p2, bytes32 p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - // Selector of `log(address,bool,bool,string)`. - mstore(0x00, 0xdfc4a2e8) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, 0x80) - writeString(0xa0, p3) - } - _sendLogPayload(0x1c, 0xc4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - } - } - - function log(address p0, bool p1, uint256 p2, address p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - /// @solidity memory-safe-assembly - assembly { - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - // Selector of `log(address,bool,uint256,address)`. - mstore(0x00, 0xccf790a1) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, p3) - } - _sendLogPayload(0x1c, 0x84); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - } - } - - function log(address p0, bool p1, uint256 p2, bool p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - /// @solidity memory-safe-assembly - assembly { - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - // Selector of `log(address,bool,uint256,bool)`. - mstore(0x00, 0xc4643e20) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, p3) - } - _sendLogPayload(0x1c, 0x84); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - } - } - - function log(address p0, bool p1, uint256 p2, uint256 p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - /// @solidity memory-safe-assembly - assembly { - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - // Selector of `log(address,bool,uint256,uint256)`. - mstore(0x00, 0x386ff5f4) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, p3) - } - _sendLogPayload(0x1c, 0x84); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - } - } - - function log(address p0, bool p1, uint256 p2, bytes32 p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - // Selector of `log(address,bool,uint256,string)`. - mstore(0x00, 0x0aa6cfad) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, 0x80) - writeString(0xa0, p3) - } - _sendLogPayload(0x1c, 0xc4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - } - } - - function log(address p0, bool p1, bytes32 p2, address p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - // Selector of `log(address,bool,string,address)`. - mstore(0x00, 0x19fd4956) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, 0x80) - mstore(0x80, p3) - writeString(0xa0, p2) - } - _sendLogPayload(0x1c, 0xc4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - } - } - - function log(address p0, bool p1, bytes32 p2, bool p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - // Selector of `log(address,bool,string,bool)`. - mstore(0x00, 0x50ad461d) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, 0x80) - mstore(0x80, p3) - writeString(0xa0, p2) - } - _sendLogPayload(0x1c, 0xc4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - } - } - - function log(address p0, bool p1, bytes32 p2, uint256 p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - // Selector of `log(address,bool,string,uint256)`. - mstore(0x00, 0x80e6a20b) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, 0x80) - mstore(0x80, p3) - writeString(0xa0, p2) - } - _sendLogPayload(0x1c, 0xc4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - } - } - - function log(address p0, bool p1, bytes32 p2, bytes32 p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - bytes32 m7; - bytes32 m8; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - m7 := mload(0xe0) - m8 := mload(0x100) - // Selector of `log(address,bool,string,string)`. - mstore(0x00, 0x475c5c33) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, 0x80) - mstore(0x80, 0xc0) - writeString(0xa0, p2) - writeString(0xe0, p3) - } - _sendLogPayload(0x1c, 0x104); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - mstore(0xe0, m7) - mstore(0x100, m8) - } - } - - function log(address p0, uint256 p1, address p2, address p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - /// @solidity memory-safe-assembly - assembly { - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - // Selector of `log(address,uint256,address,address)`. - mstore(0x00, 0x478d1c62) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, p3) - } - _sendLogPayload(0x1c, 0x84); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - } - } - - function log(address p0, uint256 p1, address p2, bool p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - /// @solidity memory-safe-assembly - assembly { - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - // Selector of `log(address,uint256,address,bool)`. - mstore(0x00, 0xa1bcc9b3) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, p3) - } - _sendLogPayload(0x1c, 0x84); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - } - } - - function log(address p0, uint256 p1, address p2, uint256 p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - /// @solidity memory-safe-assembly - assembly { - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - // Selector of `log(address,uint256,address,uint256)`. - mstore(0x00, 0x100f650e) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, p3) - } - _sendLogPayload(0x1c, 0x84); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - } - } - - function log(address p0, uint256 p1, address p2, bytes32 p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - // Selector of `log(address,uint256,address,string)`. - mstore(0x00, 0x1da986ea) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, 0x80) - writeString(0xa0, p3) - } - _sendLogPayload(0x1c, 0xc4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - } - } - - function log(address p0, uint256 p1, bool p2, address p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - /// @solidity memory-safe-assembly - assembly { - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - // Selector of `log(address,uint256,bool,address)`. - mstore(0x00, 0xa31bfdcc) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, p3) - } - _sendLogPayload(0x1c, 0x84); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - } - } - - function log(address p0, uint256 p1, bool p2, bool p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - /// @solidity memory-safe-assembly - assembly { - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - // Selector of `log(address,uint256,bool,bool)`. - mstore(0x00, 0x3bf5e537) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, p3) - } - _sendLogPayload(0x1c, 0x84); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - } - } - - function log(address p0, uint256 p1, bool p2, uint256 p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - /// @solidity memory-safe-assembly - assembly { - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - // Selector of `log(address,uint256,bool,uint256)`. - mstore(0x00, 0x22f6b999) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, p3) - } - _sendLogPayload(0x1c, 0x84); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - } - } - - function log(address p0, uint256 p1, bool p2, bytes32 p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - // Selector of `log(address,uint256,bool,string)`. - mstore(0x00, 0xc5ad85f9) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, 0x80) - writeString(0xa0, p3) - } - _sendLogPayload(0x1c, 0xc4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - } - } - - function log(address p0, uint256 p1, uint256 p2, address p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - /// @solidity memory-safe-assembly - assembly { - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - // Selector of `log(address,uint256,uint256,address)`. - mstore(0x00, 0x20e3984d) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, p3) - } - _sendLogPayload(0x1c, 0x84); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - } - } - - function log(address p0, uint256 p1, uint256 p2, bool p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - /// @solidity memory-safe-assembly - assembly { - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - // Selector of `log(address,uint256,uint256,bool)`. - mstore(0x00, 0x66f1bc67) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, p3) - } - _sendLogPayload(0x1c, 0x84); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - } - } - - function log(address p0, uint256 p1, uint256 p2, uint256 p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - /// @solidity memory-safe-assembly - assembly { - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - // Selector of `log(address,uint256,uint256,uint256)`. - mstore(0x00, 0x34f0e636) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, p3) - } - _sendLogPayload(0x1c, 0x84); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - } - } - - function log(address p0, uint256 p1, uint256 p2, bytes32 p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - // Selector of `log(address,uint256,uint256,string)`. - mstore(0x00, 0x4a28c017) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, 0x80) - writeString(0xa0, p3) - } - _sendLogPayload(0x1c, 0xc4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - } - } - - function log(address p0, uint256 p1, bytes32 p2, address p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - // Selector of `log(address,uint256,string,address)`. - mstore(0x00, 0x5c430d47) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, 0x80) - mstore(0x80, p3) - writeString(0xa0, p2) - } - _sendLogPayload(0x1c, 0xc4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - } - } - - function log(address p0, uint256 p1, bytes32 p2, bool p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - // Selector of `log(address,uint256,string,bool)`. - mstore(0x00, 0xcf18105c) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, 0x80) - mstore(0x80, p3) - writeString(0xa0, p2) - } - _sendLogPayload(0x1c, 0xc4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - } - } - - function log(address p0, uint256 p1, bytes32 p2, uint256 p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - // Selector of `log(address,uint256,string,uint256)`. - mstore(0x00, 0xbf01f891) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, 0x80) - mstore(0x80, p3) - writeString(0xa0, p2) - } - _sendLogPayload(0x1c, 0xc4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - } - } - - function log(address p0, uint256 p1, bytes32 p2, bytes32 p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - bytes32 m7; - bytes32 m8; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - m7 := mload(0xe0) - m8 := mload(0x100) - // Selector of `log(address,uint256,string,string)`. - mstore(0x00, 0x88a8c406) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, 0x80) - mstore(0x80, 0xc0) - writeString(0xa0, p2) - writeString(0xe0, p3) - } - _sendLogPayload(0x1c, 0x104); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - mstore(0xe0, m7) - mstore(0x100, m8) - } - } - - function log(address p0, bytes32 p1, address p2, address p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - // Selector of `log(address,string,address,address)`. - mstore(0x00, 0x0d36fa20) - mstore(0x20, p0) - mstore(0x40, 0x80) - mstore(0x60, p2) - mstore(0x80, p3) - writeString(0xa0, p1) - } - _sendLogPayload(0x1c, 0xc4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - } - } - - function log(address p0, bytes32 p1, address p2, bool p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - // Selector of `log(address,string,address,bool)`. - mstore(0x00, 0x0df12b76) - mstore(0x20, p0) - mstore(0x40, 0x80) - mstore(0x60, p2) - mstore(0x80, p3) - writeString(0xa0, p1) - } - _sendLogPayload(0x1c, 0xc4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - } - } - - function log(address p0, bytes32 p1, address p2, uint256 p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - // Selector of `log(address,string,address,uint256)`. - mstore(0x00, 0x457fe3cf) - mstore(0x20, p0) - mstore(0x40, 0x80) - mstore(0x60, p2) - mstore(0x80, p3) - writeString(0xa0, p1) - } - _sendLogPayload(0x1c, 0xc4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - } - } - - function log(address p0, bytes32 p1, address p2, bytes32 p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - bytes32 m7; - bytes32 m8; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - m7 := mload(0xe0) - m8 := mload(0x100) - // Selector of `log(address,string,address,string)`. - mstore(0x00, 0xf7e36245) - mstore(0x20, p0) - mstore(0x40, 0x80) - mstore(0x60, p2) - mstore(0x80, 0xc0) - writeString(0xa0, p1) - writeString(0xe0, p3) - } - _sendLogPayload(0x1c, 0x104); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - mstore(0xe0, m7) - mstore(0x100, m8) - } - } - - function log(address p0, bytes32 p1, bool p2, address p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - // Selector of `log(address,string,bool,address)`. - mstore(0x00, 0x205871c2) - mstore(0x20, p0) - mstore(0x40, 0x80) - mstore(0x60, p2) - mstore(0x80, p3) - writeString(0xa0, p1) - } - _sendLogPayload(0x1c, 0xc4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - } - } - - function log(address p0, bytes32 p1, bool p2, bool p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - // Selector of `log(address,string,bool,bool)`. - mstore(0x00, 0x5f1d5c9f) - mstore(0x20, p0) - mstore(0x40, 0x80) - mstore(0x60, p2) - mstore(0x80, p3) - writeString(0xa0, p1) - } - _sendLogPayload(0x1c, 0xc4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - } - } - - function log(address p0, bytes32 p1, bool p2, uint256 p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - // Selector of `log(address,string,bool,uint256)`. - mstore(0x00, 0x515e38b6) - mstore(0x20, p0) - mstore(0x40, 0x80) - mstore(0x60, p2) - mstore(0x80, p3) - writeString(0xa0, p1) - } - _sendLogPayload(0x1c, 0xc4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - } - } - - function log(address p0, bytes32 p1, bool p2, bytes32 p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - bytes32 m7; - bytes32 m8; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - m7 := mload(0xe0) - m8 := mload(0x100) - // Selector of `log(address,string,bool,string)`. - mstore(0x00, 0xbc0b61fe) - mstore(0x20, p0) - mstore(0x40, 0x80) - mstore(0x60, p2) - mstore(0x80, 0xc0) - writeString(0xa0, p1) - writeString(0xe0, p3) - } - _sendLogPayload(0x1c, 0x104); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - mstore(0xe0, m7) - mstore(0x100, m8) - } - } - - function log(address p0, bytes32 p1, uint256 p2, address p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - // Selector of `log(address,string,uint256,address)`. - mstore(0x00, 0x63183678) - mstore(0x20, p0) - mstore(0x40, 0x80) - mstore(0x60, p2) - mstore(0x80, p3) - writeString(0xa0, p1) - } - _sendLogPayload(0x1c, 0xc4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - } - } - - function log(address p0, bytes32 p1, uint256 p2, bool p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - // Selector of `log(address,string,uint256,bool)`. - mstore(0x00, 0x0ef7e050) - mstore(0x20, p0) - mstore(0x40, 0x80) - mstore(0x60, p2) - mstore(0x80, p3) - writeString(0xa0, p1) - } - _sendLogPayload(0x1c, 0xc4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - } - } - - function log(address p0, bytes32 p1, uint256 p2, uint256 p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - // Selector of `log(address,string,uint256,uint256)`. - mstore(0x00, 0x1dc8e1b8) - mstore(0x20, p0) - mstore(0x40, 0x80) - mstore(0x60, p2) - mstore(0x80, p3) - writeString(0xa0, p1) - } - _sendLogPayload(0x1c, 0xc4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - } - } - - function log(address p0, bytes32 p1, uint256 p2, bytes32 p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - bytes32 m7; - bytes32 m8; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - m7 := mload(0xe0) - m8 := mload(0x100) - // Selector of `log(address,string,uint256,string)`. - mstore(0x00, 0x448830a8) - mstore(0x20, p0) - mstore(0x40, 0x80) - mstore(0x60, p2) - mstore(0x80, 0xc0) - writeString(0xa0, p1) - writeString(0xe0, p3) - } - _sendLogPayload(0x1c, 0x104); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - mstore(0xe0, m7) - mstore(0x100, m8) - } - } - - function log(address p0, bytes32 p1, bytes32 p2, address p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - bytes32 m7; - bytes32 m8; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - m7 := mload(0xe0) - m8 := mload(0x100) - // Selector of `log(address,string,string,address)`. - mstore(0x00, 0xa04e2f87) - mstore(0x20, p0) - mstore(0x40, 0x80) - mstore(0x60, 0xc0) - mstore(0x80, p3) - writeString(0xa0, p1) - writeString(0xe0, p2) - } - _sendLogPayload(0x1c, 0x104); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - mstore(0xe0, m7) - mstore(0x100, m8) - } - } - - function log(address p0, bytes32 p1, bytes32 p2, bool p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - bytes32 m7; - bytes32 m8; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - m7 := mload(0xe0) - m8 := mload(0x100) - // Selector of `log(address,string,string,bool)`. - mstore(0x00, 0x35a5071f) - mstore(0x20, p0) - mstore(0x40, 0x80) - mstore(0x60, 0xc0) - mstore(0x80, p3) - writeString(0xa0, p1) - writeString(0xe0, p2) - } - _sendLogPayload(0x1c, 0x104); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - mstore(0xe0, m7) - mstore(0x100, m8) - } - } - - function log(address p0, bytes32 p1, bytes32 p2, uint256 p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - bytes32 m7; - bytes32 m8; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - m7 := mload(0xe0) - m8 := mload(0x100) - // Selector of `log(address,string,string,uint256)`. - mstore(0x00, 0x159f8927) - mstore(0x20, p0) - mstore(0x40, 0x80) - mstore(0x60, 0xc0) - mstore(0x80, p3) - writeString(0xa0, p1) - writeString(0xe0, p2) - } - _sendLogPayload(0x1c, 0x104); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - mstore(0xe0, m7) - mstore(0x100, m8) - } - } - - function log(address p0, bytes32 p1, bytes32 p2, bytes32 p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - bytes32 m7; - bytes32 m8; - bytes32 m9; - bytes32 m10; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - m7 := mload(0xe0) - m8 := mload(0x100) - m9 := mload(0x120) - m10 := mload(0x140) - // Selector of `log(address,string,string,string)`. - mstore(0x00, 0x5d02c50b) - mstore(0x20, p0) - mstore(0x40, 0x80) - mstore(0x60, 0xc0) - mstore(0x80, 0x100) - writeString(0xa0, p1) - writeString(0xe0, p2) - writeString(0x120, p3) - } - _sendLogPayload(0x1c, 0x144); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - mstore(0xe0, m7) - mstore(0x100, m8) - mstore(0x120, m9) - mstore(0x140, m10) - } - } - - function log(bool p0, address p1, address p2, address p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - /// @solidity memory-safe-assembly - assembly { - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - // Selector of `log(bool,address,address,address)`. - mstore(0x00, 0x1d14d001) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, p3) - } - _sendLogPayload(0x1c, 0x84); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - } - } - - function log(bool p0, address p1, address p2, bool p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - /// @solidity memory-safe-assembly - assembly { - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - // Selector of `log(bool,address,address,bool)`. - mstore(0x00, 0x46600be0) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, p3) - } - _sendLogPayload(0x1c, 0x84); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - } - } - - function log(bool p0, address p1, address p2, uint256 p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - /// @solidity memory-safe-assembly - assembly { - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - // Selector of `log(bool,address,address,uint256)`. - mstore(0x00, 0x0c66d1be) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, p3) - } - _sendLogPayload(0x1c, 0x84); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - } - } - - function log(bool p0, address p1, address p2, bytes32 p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - // Selector of `log(bool,address,address,string)`. - mstore(0x00, 0xd812a167) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, 0x80) - writeString(0xa0, p3) - } - _sendLogPayload(0x1c, 0xc4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - } - } - - function log(bool p0, address p1, bool p2, address p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - /// @solidity memory-safe-assembly - assembly { - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - // Selector of `log(bool,address,bool,address)`. - mstore(0x00, 0x1c41a336) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, p3) - } - _sendLogPayload(0x1c, 0x84); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - } - } - - function log(bool p0, address p1, bool p2, bool p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - /// @solidity memory-safe-assembly - assembly { - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - // Selector of `log(bool,address,bool,bool)`. - mstore(0x00, 0x6a9c478b) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, p3) - } - _sendLogPayload(0x1c, 0x84); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - } - } - - function log(bool p0, address p1, bool p2, uint256 p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - /// @solidity memory-safe-assembly - assembly { - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - // Selector of `log(bool,address,bool,uint256)`. - mstore(0x00, 0x07831502) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, p3) - } - _sendLogPayload(0x1c, 0x84); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - } - } - - function log(bool p0, address p1, bool p2, bytes32 p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - // Selector of `log(bool,address,bool,string)`. - mstore(0x00, 0x4a66cb34) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, 0x80) - writeString(0xa0, p3) - } - _sendLogPayload(0x1c, 0xc4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - } - } - - function log(bool p0, address p1, uint256 p2, address p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - /// @solidity memory-safe-assembly - assembly { - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - // Selector of `log(bool,address,uint256,address)`. - mstore(0x00, 0x136b05dd) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, p3) - } - _sendLogPayload(0x1c, 0x84); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - } - } - - function log(bool p0, address p1, uint256 p2, bool p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - /// @solidity memory-safe-assembly - assembly { - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - // Selector of `log(bool,address,uint256,bool)`. - mstore(0x00, 0xd6019f1c) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, p3) - } - _sendLogPayload(0x1c, 0x84); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - } - } - - function log(bool p0, address p1, uint256 p2, uint256 p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - /// @solidity memory-safe-assembly - assembly { - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - // Selector of `log(bool,address,uint256,uint256)`. - mstore(0x00, 0x7bf181a1) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, p3) - } - _sendLogPayload(0x1c, 0x84); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - } - } - - function log(bool p0, address p1, uint256 p2, bytes32 p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - // Selector of `log(bool,address,uint256,string)`. - mstore(0x00, 0x51f09ff8) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, 0x80) - writeString(0xa0, p3) - } - _sendLogPayload(0x1c, 0xc4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - } - } - - function log(bool p0, address p1, bytes32 p2, address p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - // Selector of `log(bool,address,string,address)`. - mstore(0x00, 0x6f7c603e) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, 0x80) - mstore(0x80, p3) - writeString(0xa0, p2) - } - _sendLogPayload(0x1c, 0xc4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - } - } - - function log(bool p0, address p1, bytes32 p2, bool p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - // Selector of `log(bool,address,string,bool)`. - mstore(0x00, 0xe2bfd60b) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, 0x80) - mstore(0x80, p3) - writeString(0xa0, p2) - } - _sendLogPayload(0x1c, 0xc4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - } - } - - function log(bool p0, address p1, bytes32 p2, uint256 p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - // Selector of `log(bool,address,string,uint256)`. - mstore(0x00, 0xc21f64c7) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, 0x80) - mstore(0x80, p3) - writeString(0xa0, p2) - } - _sendLogPayload(0x1c, 0xc4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - } - } - - function log(bool p0, address p1, bytes32 p2, bytes32 p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - bytes32 m7; - bytes32 m8; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - m7 := mload(0xe0) - m8 := mload(0x100) - // Selector of `log(bool,address,string,string)`. - mstore(0x00, 0xa73c1db6) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, 0x80) - mstore(0x80, 0xc0) - writeString(0xa0, p2) - writeString(0xe0, p3) - } - _sendLogPayload(0x1c, 0x104); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - mstore(0xe0, m7) - mstore(0x100, m8) - } - } - - function log(bool p0, bool p1, address p2, address p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - /// @solidity memory-safe-assembly - assembly { - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - // Selector of `log(bool,bool,address,address)`. - mstore(0x00, 0xf4880ea4) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, p3) - } - _sendLogPayload(0x1c, 0x84); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - } - } - - function log(bool p0, bool p1, address p2, bool p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - /// @solidity memory-safe-assembly - assembly { - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - // Selector of `log(bool,bool,address,bool)`. - mstore(0x00, 0xc0a302d8) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, p3) - } - _sendLogPayload(0x1c, 0x84); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - } - } - - function log(bool p0, bool p1, address p2, uint256 p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - /// @solidity memory-safe-assembly - assembly { - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - // Selector of `log(bool,bool,address,uint256)`. - mstore(0x00, 0x4c123d57) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, p3) - } - _sendLogPayload(0x1c, 0x84); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - } - } - - function log(bool p0, bool p1, address p2, bytes32 p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - // Selector of `log(bool,bool,address,string)`. - mstore(0x00, 0xa0a47963) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, 0x80) - writeString(0xa0, p3) - } - _sendLogPayload(0x1c, 0xc4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - } - } - - function log(bool p0, bool p1, bool p2, address p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - /// @solidity memory-safe-assembly - assembly { - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - // Selector of `log(bool,bool,bool,address)`. - mstore(0x00, 0x8c329b1a) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, p3) - } - _sendLogPayload(0x1c, 0x84); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - } - } - - function log(bool p0, bool p1, bool p2, bool p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - /// @solidity memory-safe-assembly - assembly { - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - // Selector of `log(bool,bool,bool,bool)`. - mstore(0x00, 0x3b2a5ce0) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, p3) - } - _sendLogPayload(0x1c, 0x84); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - } - } - - function log(bool p0, bool p1, bool p2, uint256 p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - /// @solidity memory-safe-assembly - assembly { - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - // Selector of `log(bool,bool,bool,uint256)`. - mstore(0x00, 0x6d7045c1) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, p3) - } - _sendLogPayload(0x1c, 0x84); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - } - } - - function log(bool p0, bool p1, bool p2, bytes32 p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - // Selector of `log(bool,bool,bool,string)`. - mstore(0x00, 0x2ae408d4) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, 0x80) - writeString(0xa0, p3) - } - _sendLogPayload(0x1c, 0xc4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - } - } - - function log(bool p0, bool p1, uint256 p2, address p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - /// @solidity memory-safe-assembly - assembly { - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - // Selector of `log(bool,bool,uint256,address)`. - mstore(0x00, 0x54a7a9a0) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, p3) - } - _sendLogPayload(0x1c, 0x84); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - } - } - - function log(bool p0, bool p1, uint256 p2, bool p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - /// @solidity memory-safe-assembly - assembly { - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - // Selector of `log(bool,bool,uint256,bool)`. - mstore(0x00, 0x619e4d0e) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, p3) - } - _sendLogPayload(0x1c, 0x84); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - } - } - - function log(bool p0, bool p1, uint256 p2, uint256 p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - /// @solidity memory-safe-assembly - assembly { - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - // Selector of `log(bool,bool,uint256,uint256)`. - mstore(0x00, 0x0bb00eab) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, p3) - } - _sendLogPayload(0x1c, 0x84); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - } - } - - function log(bool p0, bool p1, uint256 p2, bytes32 p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - // Selector of `log(bool,bool,uint256,string)`. - mstore(0x00, 0x7dd4d0e0) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, 0x80) - writeString(0xa0, p3) - } - _sendLogPayload(0x1c, 0xc4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - } - } - - function log(bool p0, bool p1, bytes32 p2, address p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - // Selector of `log(bool,bool,string,address)`. - mstore(0x00, 0xf9ad2b89) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, 0x80) - mstore(0x80, p3) - writeString(0xa0, p2) - } - _sendLogPayload(0x1c, 0xc4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - } - } - - function log(bool p0, bool p1, bytes32 p2, bool p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - // Selector of `log(bool,bool,string,bool)`. - mstore(0x00, 0xb857163a) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, 0x80) - mstore(0x80, p3) - writeString(0xa0, p2) - } - _sendLogPayload(0x1c, 0xc4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - } - } - - function log(bool p0, bool p1, bytes32 p2, uint256 p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - // Selector of `log(bool,bool,string,uint256)`. - mstore(0x00, 0xe3a9ca2f) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, 0x80) - mstore(0x80, p3) - writeString(0xa0, p2) - } - _sendLogPayload(0x1c, 0xc4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - } - } - - function log(bool p0, bool p1, bytes32 p2, bytes32 p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - bytes32 m7; - bytes32 m8; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - m7 := mload(0xe0) - m8 := mload(0x100) - // Selector of `log(bool,bool,string,string)`. - mstore(0x00, 0x6d1e8751) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, 0x80) - mstore(0x80, 0xc0) - writeString(0xa0, p2) - writeString(0xe0, p3) - } - _sendLogPayload(0x1c, 0x104); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - mstore(0xe0, m7) - mstore(0x100, m8) - } - } - - function log(bool p0, uint256 p1, address p2, address p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - /// @solidity memory-safe-assembly - assembly { - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - // Selector of `log(bool,uint256,address,address)`. - mstore(0x00, 0x26f560a8) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, p3) - } - _sendLogPayload(0x1c, 0x84); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - } - } - - function log(bool p0, uint256 p1, address p2, bool p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - /// @solidity memory-safe-assembly - assembly { - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - // Selector of `log(bool,uint256,address,bool)`. - mstore(0x00, 0xb4c314ff) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, p3) - } - _sendLogPayload(0x1c, 0x84); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - } - } - - function log(bool p0, uint256 p1, address p2, uint256 p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - /// @solidity memory-safe-assembly - assembly { - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - // Selector of `log(bool,uint256,address,uint256)`. - mstore(0x00, 0x1537dc87) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, p3) - } - _sendLogPayload(0x1c, 0x84); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - } - } - - function log(bool p0, uint256 p1, address p2, bytes32 p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - // Selector of `log(bool,uint256,address,string)`. - mstore(0x00, 0x1bb3b09a) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, 0x80) - writeString(0xa0, p3) - } - _sendLogPayload(0x1c, 0xc4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - } - } - - function log(bool p0, uint256 p1, bool p2, address p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - /// @solidity memory-safe-assembly - assembly { - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - // Selector of `log(bool,uint256,bool,address)`. - mstore(0x00, 0x9acd3616) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, p3) - } - _sendLogPayload(0x1c, 0x84); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - } - } - - function log(bool p0, uint256 p1, bool p2, bool p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - /// @solidity memory-safe-assembly - assembly { - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - // Selector of `log(bool,uint256,bool,bool)`. - mstore(0x00, 0xceb5f4d7) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, p3) - } - _sendLogPayload(0x1c, 0x84); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - } - } - - function log(bool p0, uint256 p1, bool p2, uint256 p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - /// @solidity memory-safe-assembly - assembly { - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - // Selector of `log(bool,uint256,bool,uint256)`. - mstore(0x00, 0x7f9bbca2) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, p3) - } - _sendLogPayload(0x1c, 0x84); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - } - } - - function log(bool p0, uint256 p1, bool p2, bytes32 p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - // Selector of `log(bool,uint256,bool,string)`. - mstore(0x00, 0x9143dbb1) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, 0x80) - writeString(0xa0, p3) - } - _sendLogPayload(0x1c, 0xc4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - } - } - - function log(bool p0, uint256 p1, uint256 p2, address p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - /// @solidity memory-safe-assembly - assembly { - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - // Selector of `log(bool,uint256,uint256,address)`. - mstore(0x00, 0x00dd87b9) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, p3) - } - _sendLogPayload(0x1c, 0x84); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - } - } - - function log(bool p0, uint256 p1, uint256 p2, bool p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - /// @solidity memory-safe-assembly - assembly { - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - // Selector of `log(bool,uint256,uint256,bool)`. - mstore(0x00, 0xbe984353) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, p3) - } - _sendLogPayload(0x1c, 0x84); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - } - } - - function log(bool p0, uint256 p1, uint256 p2, uint256 p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - /// @solidity memory-safe-assembly - assembly { - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - // Selector of `log(bool,uint256,uint256,uint256)`. - mstore(0x00, 0x374bb4b2) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, p3) - } - _sendLogPayload(0x1c, 0x84); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - } - } - - function log(bool p0, uint256 p1, uint256 p2, bytes32 p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - // Selector of `log(bool,uint256,uint256,string)`. - mstore(0x00, 0x8e69fb5d) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, 0x80) - writeString(0xa0, p3) - } - _sendLogPayload(0x1c, 0xc4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - } - } - - function log(bool p0, uint256 p1, bytes32 p2, address p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - // Selector of `log(bool,uint256,string,address)`. - mstore(0x00, 0xfedd1fff) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, 0x80) - mstore(0x80, p3) - writeString(0xa0, p2) - } - _sendLogPayload(0x1c, 0xc4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - } - } - - function log(bool p0, uint256 p1, bytes32 p2, bool p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - // Selector of `log(bool,uint256,string,bool)`. - mstore(0x00, 0xe5e70b2b) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, 0x80) - mstore(0x80, p3) - writeString(0xa0, p2) - } - _sendLogPayload(0x1c, 0xc4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - } - } - - function log(bool p0, uint256 p1, bytes32 p2, uint256 p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - // Selector of `log(bool,uint256,string,uint256)`. - mstore(0x00, 0x6a1199e2) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, 0x80) - mstore(0x80, p3) - writeString(0xa0, p2) - } - _sendLogPayload(0x1c, 0xc4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - } - } - - function log(bool p0, uint256 p1, bytes32 p2, bytes32 p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - bytes32 m7; - bytes32 m8; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - m7 := mload(0xe0) - m8 := mload(0x100) - // Selector of `log(bool,uint256,string,string)`. - mstore(0x00, 0xf5bc2249) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, 0x80) - mstore(0x80, 0xc0) - writeString(0xa0, p2) - writeString(0xe0, p3) - } - _sendLogPayload(0x1c, 0x104); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - mstore(0xe0, m7) - mstore(0x100, m8) - } - } - - function log(bool p0, bytes32 p1, address p2, address p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - // Selector of `log(bool,string,address,address)`. - mstore(0x00, 0x2b2b18dc) - mstore(0x20, p0) - mstore(0x40, 0x80) - mstore(0x60, p2) - mstore(0x80, p3) - writeString(0xa0, p1) - } - _sendLogPayload(0x1c, 0xc4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - } - } - - function log(bool p0, bytes32 p1, address p2, bool p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - // Selector of `log(bool,string,address,bool)`. - mstore(0x00, 0x6dd434ca) - mstore(0x20, p0) - mstore(0x40, 0x80) - mstore(0x60, p2) - mstore(0x80, p3) - writeString(0xa0, p1) - } - _sendLogPayload(0x1c, 0xc4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - } - } - - function log(bool p0, bytes32 p1, address p2, uint256 p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - // Selector of `log(bool,string,address,uint256)`. - mstore(0x00, 0xa5cada94) - mstore(0x20, p0) - mstore(0x40, 0x80) - mstore(0x60, p2) - mstore(0x80, p3) - writeString(0xa0, p1) - } - _sendLogPayload(0x1c, 0xc4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - } - } - - function log(bool p0, bytes32 p1, address p2, bytes32 p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - bytes32 m7; - bytes32 m8; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - m7 := mload(0xe0) - m8 := mload(0x100) - // Selector of `log(bool,string,address,string)`. - mstore(0x00, 0x12d6c788) - mstore(0x20, p0) - mstore(0x40, 0x80) - mstore(0x60, p2) - mstore(0x80, 0xc0) - writeString(0xa0, p1) - writeString(0xe0, p3) - } - _sendLogPayload(0x1c, 0x104); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - mstore(0xe0, m7) - mstore(0x100, m8) - } - } - - function log(bool p0, bytes32 p1, bool p2, address p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - // Selector of `log(bool,string,bool,address)`. - mstore(0x00, 0x538e06ab) - mstore(0x20, p0) - mstore(0x40, 0x80) - mstore(0x60, p2) - mstore(0x80, p3) - writeString(0xa0, p1) - } - _sendLogPayload(0x1c, 0xc4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - } - } - - function log(bool p0, bytes32 p1, bool p2, bool p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - // Selector of `log(bool,string,bool,bool)`. - mstore(0x00, 0xdc5e935b) - mstore(0x20, p0) - mstore(0x40, 0x80) - mstore(0x60, p2) - mstore(0x80, p3) - writeString(0xa0, p1) - } - _sendLogPayload(0x1c, 0xc4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - } - } - - function log(bool p0, bytes32 p1, bool p2, uint256 p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - // Selector of `log(bool,string,bool,uint256)`. - mstore(0x00, 0x1606a393) - mstore(0x20, p0) - mstore(0x40, 0x80) - mstore(0x60, p2) - mstore(0x80, p3) - writeString(0xa0, p1) - } - _sendLogPayload(0x1c, 0xc4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - } - } - - function log(bool p0, bytes32 p1, bool p2, bytes32 p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - bytes32 m7; - bytes32 m8; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - m7 := mload(0xe0) - m8 := mload(0x100) - // Selector of `log(bool,string,bool,string)`. - mstore(0x00, 0x483d0416) - mstore(0x20, p0) - mstore(0x40, 0x80) - mstore(0x60, p2) - mstore(0x80, 0xc0) - writeString(0xa0, p1) - writeString(0xe0, p3) - } - _sendLogPayload(0x1c, 0x104); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - mstore(0xe0, m7) - mstore(0x100, m8) - } - } - - function log(bool p0, bytes32 p1, uint256 p2, address p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - // Selector of `log(bool,string,uint256,address)`. - mstore(0x00, 0x1596a1ce) - mstore(0x20, p0) - mstore(0x40, 0x80) - mstore(0x60, p2) - mstore(0x80, p3) - writeString(0xa0, p1) - } - _sendLogPayload(0x1c, 0xc4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - } - } - - function log(bool p0, bytes32 p1, uint256 p2, bool p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - // Selector of `log(bool,string,uint256,bool)`. - mstore(0x00, 0x6b0e5d53) - mstore(0x20, p0) - mstore(0x40, 0x80) - mstore(0x60, p2) - mstore(0x80, p3) - writeString(0xa0, p1) - } - _sendLogPayload(0x1c, 0xc4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - } - } - - function log(bool p0, bytes32 p1, uint256 p2, uint256 p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - // Selector of `log(bool,string,uint256,uint256)`. - mstore(0x00, 0x28863fcb) - mstore(0x20, p0) - mstore(0x40, 0x80) - mstore(0x60, p2) - mstore(0x80, p3) - writeString(0xa0, p1) - } - _sendLogPayload(0x1c, 0xc4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - } - } - - function log(bool p0, bytes32 p1, uint256 p2, bytes32 p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - bytes32 m7; - bytes32 m8; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - m7 := mload(0xe0) - m8 := mload(0x100) - // Selector of `log(bool,string,uint256,string)`. - mstore(0x00, 0x1ad96de6) - mstore(0x20, p0) - mstore(0x40, 0x80) - mstore(0x60, p2) - mstore(0x80, 0xc0) - writeString(0xa0, p1) - writeString(0xe0, p3) - } - _sendLogPayload(0x1c, 0x104); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - mstore(0xe0, m7) - mstore(0x100, m8) - } - } - - function log(bool p0, bytes32 p1, bytes32 p2, address p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - bytes32 m7; - bytes32 m8; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - m7 := mload(0xe0) - m8 := mload(0x100) - // Selector of `log(bool,string,string,address)`. - mstore(0x00, 0x97d394d8) - mstore(0x20, p0) - mstore(0x40, 0x80) - mstore(0x60, 0xc0) - mstore(0x80, p3) - writeString(0xa0, p1) - writeString(0xe0, p2) - } - _sendLogPayload(0x1c, 0x104); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - mstore(0xe0, m7) - mstore(0x100, m8) - } - } - - function log(bool p0, bytes32 p1, bytes32 p2, bool p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - bytes32 m7; - bytes32 m8; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - m7 := mload(0xe0) - m8 := mload(0x100) - // Selector of `log(bool,string,string,bool)`. - mstore(0x00, 0x1e4b87e5) - mstore(0x20, p0) - mstore(0x40, 0x80) - mstore(0x60, 0xc0) - mstore(0x80, p3) - writeString(0xa0, p1) - writeString(0xe0, p2) - } - _sendLogPayload(0x1c, 0x104); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - mstore(0xe0, m7) - mstore(0x100, m8) - } - } - - function log(bool p0, bytes32 p1, bytes32 p2, uint256 p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - bytes32 m7; - bytes32 m8; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - m7 := mload(0xe0) - m8 := mload(0x100) - // Selector of `log(bool,string,string,uint256)`. - mstore(0x00, 0x7be0c3eb) - mstore(0x20, p0) - mstore(0x40, 0x80) - mstore(0x60, 0xc0) - mstore(0x80, p3) - writeString(0xa0, p1) - writeString(0xe0, p2) - } - _sendLogPayload(0x1c, 0x104); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - mstore(0xe0, m7) - mstore(0x100, m8) - } - } - - function log(bool p0, bytes32 p1, bytes32 p2, bytes32 p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - bytes32 m7; - bytes32 m8; - bytes32 m9; - bytes32 m10; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - m7 := mload(0xe0) - m8 := mload(0x100) - m9 := mload(0x120) - m10 := mload(0x140) - // Selector of `log(bool,string,string,string)`. - mstore(0x00, 0x1762e32a) - mstore(0x20, p0) - mstore(0x40, 0x80) - mstore(0x60, 0xc0) - mstore(0x80, 0x100) - writeString(0xa0, p1) - writeString(0xe0, p2) - writeString(0x120, p3) - } - _sendLogPayload(0x1c, 0x144); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - mstore(0xe0, m7) - mstore(0x100, m8) - mstore(0x120, m9) - mstore(0x140, m10) - } - } - - function log(uint256 p0, address p1, address p2, address p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - /// @solidity memory-safe-assembly - assembly { - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - // Selector of `log(uint256,address,address,address)`. - mstore(0x00, 0x2488b414) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, p3) - } - _sendLogPayload(0x1c, 0x84); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - } - } - - function log(uint256 p0, address p1, address p2, bool p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - /// @solidity memory-safe-assembly - assembly { - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - // Selector of `log(uint256,address,address,bool)`. - mstore(0x00, 0x091ffaf5) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, p3) - } - _sendLogPayload(0x1c, 0x84); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - } - } - - function log(uint256 p0, address p1, address p2, uint256 p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - /// @solidity memory-safe-assembly - assembly { - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - // Selector of `log(uint256,address,address,uint256)`. - mstore(0x00, 0x736efbb6) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, p3) - } - _sendLogPayload(0x1c, 0x84); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - } - } - - function log(uint256 p0, address p1, address p2, bytes32 p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - // Selector of `log(uint256,address,address,string)`. - mstore(0x00, 0x031c6f73) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, 0x80) - writeString(0xa0, p3) - } - _sendLogPayload(0x1c, 0xc4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - } - } - - function log(uint256 p0, address p1, bool p2, address p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - /// @solidity memory-safe-assembly - assembly { - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - // Selector of `log(uint256,address,bool,address)`. - mstore(0x00, 0xef72c513) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, p3) - } - _sendLogPayload(0x1c, 0x84); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - } - } - - function log(uint256 p0, address p1, bool p2, bool p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - /// @solidity memory-safe-assembly - assembly { - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - // Selector of `log(uint256,address,bool,bool)`. - mstore(0x00, 0xe351140f) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, p3) - } - _sendLogPayload(0x1c, 0x84); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - } - } - - function log(uint256 p0, address p1, bool p2, uint256 p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - /// @solidity memory-safe-assembly - assembly { - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - // Selector of `log(uint256,address,bool,uint256)`. - mstore(0x00, 0x5abd992a) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, p3) - } - _sendLogPayload(0x1c, 0x84); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - } - } - - function log(uint256 p0, address p1, bool p2, bytes32 p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - // Selector of `log(uint256,address,bool,string)`. - mstore(0x00, 0x90fb06aa) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, 0x80) - writeString(0xa0, p3) - } - _sendLogPayload(0x1c, 0xc4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - } - } - - function log(uint256 p0, address p1, uint256 p2, address p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - /// @solidity memory-safe-assembly - assembly { - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - // Selector of `log(uint256,address,uint256,address)`. - mstore(0x00, 0x15c127b5) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, p3) - } - _sendLogPayload(0x1c, 0x84); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - } - } - - function log(uint256 p0, address p1, uint256 p2, bool p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - /// @solidity memory-safe-assembly - assembly { - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - // Selector of `log(uint256,address,uint256,bool)`. - mstore(0x00, 0x5f743a7c) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, p3) - } - _sendLogPayload(0x1c, 0x84); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - } - } - - function log(uint256 p0, address p1, uint256 p2, uint256 p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - /// @solidity memory-safe-assembly - assembly { - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - // Selector of `log(uint256,address,uint256,uint256)`. - mstore(0x00, 0x0c9cd9c1) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, p3) - } - _sendLogPayload(0x1c, 0x84); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - } - } - - function log(uint256 p0, address p1, uint256 p2, bytes32 p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - // Selector of `log(uint256,address,uint256,string)`. - mstore(0x00, 0xddb06521) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, 0x80) - writeString(0xa0, p3) - } - _sendLogPayload(0x1c, 0xc4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - } - } - - function log(uint256 p0, address p1, bytes32 p2, address p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - // Selector of `log(uint256,address,string,address)`. - mstore(0x00, 0x9cba8fff) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, 0x80) - mstore(0x80, p3) - writeString(0xa0, p2) - } - _sendLogPayload(0x1c, 0xc4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - } - } - - function log(uint256 p0, address p1, bytes32 p2, bool p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - // Selector of `log(uint256,address,string,bool)`. - mstore(0x00, 0xcc32ab07) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, 0x80) - mstore(0x80, p3) - writeString(0xa0, p2) - } - _sendLogPayload(0x1c, 0xc4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - } - } - - function log(uint256 p0, address p1, bytes32 p2, uint256 p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - // Selector of `log(uint256,address,string,uint256)`. - mstore(0x00, 0x46826b5d) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, 0x80) - mstore(0x80, p3) - writeString(0xa0, p2) - } - _sendLogPayload(0x1c, 0xc4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - } - } - - function log(uint256 p0, address p1, bytes32 p2, bytes32 p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - bytes32 m7; - bytes32 m8; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - m7 := mload(0xe0) - m8 := mload(0x100) - // Selector of `log(uint256,address,string,string)`. - mstore(0x00, 0x3e128ca3) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, 0x80) - mstore(0x80, 0xc0) - writeString(0xa0, p2) - writeString(0xe0, p3) - } - _sendLogPayload(0x1c, 0x104); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - mstore(0xe0, m7) - mstore(0x100, m8) - } - } - - function log(uint256 p0, bool p1, address p2, address p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - /// @solidity memory-safe-assembly - assembly { - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - // Selector of `log(uint256,bool,address,address)`. - mstore(0x00, 0xa1ef4cbb) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, p3) - } - _sendLogPayload(0x1c, 0x84); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - } - } - - function log(uint256 p0, bool p1, address p2, bool p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - /// @solidity memory-safe-assembly - assembly { - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - // Selector of `log(uint256,bool,address,bool)`. - mstore(0x00, 0x454d54a5) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, p3) - } - _sendLogPayload(0x1c, 0x84); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - } - } - - function log(uint256 p0, bool p1, address p2, uint256 p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - /// @solidity memory-safe-assembly - assembly { - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - // Selector of `log(uint256,bool,address,uint256)`. - mstore(0x00, 0x078287f5) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, p3) - } - _sendLogPayload(0x1c, 0x84); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - } - } - - function log(uint256 p0, bool p1, address p2, bytes32 p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - // Selector of `log(uint256,bool,address,string)`. - mstore(0x00, 0xade052c7) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, 0x80) - writeString(0xa0, p3) - } - _sendLogPayload(0x1c, 0xc4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - } - } - - function log(uint256 p0, bool p1, bool p2, address p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - /// @solidity memory-safe-assembly - assembly { - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - // Selector of `log(uint256,bool,bool,address)`. - mstore(0x00, 0x69640b59) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, p3) - } - _sendLogPayload(0x1c, 0x84); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - } - } - - function log(uint256 p0, bool p1, bool p2, bool p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - /// @solidity memory-safe-assembly - assembly { - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - // Selector of `log(uint256,bool,bool,bool)`. - mstore(0x00, 0xb6f577a1) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, p3) - } - _sendLogPayload(0x1c, 0x84); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - } - } - - function log(uint256 p0, bool p1, bool p2, uint256 p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - /// @solidity memory-safe-assembly - assembly { - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - // Selector of `log(uint256,bool,bool,uint256)`. - mstore(0x00, 0x7464ce23) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, p3) - } - _sendLogPayload(0x1c, 0x84); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - } - } - - function log(uint256 p0, bool p1, bool p2, bytes32 p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - // Selector of `log(uint256,bool,bool,string)`. - mstore(0x00, 0xdddb9561) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, 0x80) - writeString(0xa0, p3) - } - _sendLogPayload(0x1c, 0xc4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - } - } - - function log(uint256 p0, bool p1, uint256 p2, address p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - /// @solidity memory-safe-assembly - assembly { - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - // Selector of `log(uint256,bool,uint256,address)`. - mstore(0x00, 0x88cb6041) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, p3) - } - _sendLogPayload(0x1c, 0x84); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - } - } - - function log(uint256 p0, bool p1, uint256 p2, bool p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - /// @solidity memory-safe-assembly - assembly { - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - // Selector of `log(uint256,bool,uint256,bool)`. - mstore(0x00, 0x91a02e2a) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, p3) - } - _sendLogPayload(0x1c, 0x84); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - } - } - - function log(uint256 p0, bool p1, uint256 p2, uint256 p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - /// @solidity memory-safe-assembly - assembly { - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - // Selector of `log(uint256,bool,uint256,uint256)`. - mstore(0x00, 0xc6acc7a8) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, p3) - } - _sendLogPayload(0x1c, 0x84); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - } - } - - function log(uint256 p0, bool p1, uint256 p2, bytes32 p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - // Selector of `log(uint256,bool,uint256,string)`. - mstore(0x00, 0xde03e774) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, 0x80) - writeString(0xa0, p3) - } - _sendLogPayload(0x1c, 0xc4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - } - } - - function log(uint256 p0, bool p1, bytes32 p2, address p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - // Selector of `log(uint256,bool,string,address)`. - mstore(0x00, 0xef529018) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, 0x80) - mstore(0x80, p3) - writeString(0xa0, p2) - } - _sendLogPayload(0x1c, 0xc4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - } - } - - function log(uint256 p0, bool p1, bytes32 p2, bool p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - // Selector of `log(uint256,bool,string,bool)`. - mstore(0x00, 0xeb928d7f) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, 0x80) - mstore(0x80, p3) - writeString(0xa0, p2) - } - _sendLogPayload(0x1c, 0xc4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - } - } - - function log(uint256 p0, bool p1, bytes32 p2, uint256 p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - // Selector of `log(uint256,bool,string,uint256)`. - mstore(0x00, 0x2c1d0746) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, 0x80) - mstore(0x80, p3) - writeString(0xa0, p2) - } - _sendLogPayload(0x1c, 0xc4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - } - } - - function log(uint256 p0, bool p1, bytes32 p2, bytes32 p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - bytes32 m7; - bytes32 m8; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - m7 := mload(0xe0) - m8 := mload(0x100) - // Selector of `log(uint256,bool,string,string)`. - mstore(0x00, 0x68c8b8bd) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, 0x80) - mstore(0x80, 0xc0) - writeString(0xa0, p2) - writeString(0xe0, p3) - } - _sendLogPayload(0x1c, 0x104); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - mstore(0xe0, m7) - mstore(0x100, m8) - } - } - - function log(uint256 p0, uint256 p1, address p2, address p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - /// @solidity memory-safe-assembly - assembly { - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - // Selector of `log(uint256,uint256,address,address)`. - mstore(0x00, 0x56a5d1b1) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, p3) - } - _sendLogPayload(0x1c, 0x84); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - } - } - - function log(uint256 p0, uint256 p1, address p2, bool p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - /// @solidity memory-safe-assembly - assembly { - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - // Selector of `log(uint256,uint256,address,bool)`. - mstore(0x00, 0x15cac476) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, p3) - } - _sendLogPayload(0x1c, 0x84); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - } - } - - function log(uint256 p0, uint256 p1, address p2, uint256 p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - /// @solidity memory-safe-assembly - assembly { - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - // Selector of `log(uint256,uint256,address,uint256)`. - mstore(0x00, 0x88f6e4b2) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, p3) - } - _sendLogPayload(0x1c, 0x84); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - } - } - - function log(uint256 p0, uint256 p1, address p2, bytes32 p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - // Selector of `log(uint256,uint256,address,string)`. - mstore(0x00, 0x6cde40b8) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, 0x80) - writeString(0xa0, p3) - } - _sendLogPayload(0x1c, 0xc4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - } - } - - function log(uint256 p0, uint256 p1, bool p2, address p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - /// @solidity memory-safe-assembly - assembly { - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - // Selector of `log(uint256,uint256,bool,address)`. - mstore(0x00, 0x9a816a83) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, p3) - } - _sendLogPayload(0x1c, 0x84); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - } - } - - function log(uint256 p0, uint256 p1, bool p2, bool p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - /// @solidity memory-safe-assembly - assembly { - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - // Selector of `log(uint256,uint256,bool,bool)`. - mstore(0x00, 0xab085ae6) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, p3) - } - _sendLogPayload(0x1c, 0x84); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - } - } - - function log(uint256 p0, uint256 p1, bool p2, uint256 p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - /// @solidity memory-safe-assembly - assembly { - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - // Selector of `log(uint256,uint256,bool,uint256)`. - mstore(0x00, 0xeb7f6fd2) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, p3) - } - _sendLogPayload(0x1c, 0x84); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - } - } - - function log(uint256 p0, uint256 p1, bool p2, bytes32 p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - // Selector of `log(uint256,uint256,bool,string)`. - mstore(0x00, 0xa5b4fc99) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, 0x80) - writeString(0xa0, p3) - } - _sendLogPayload(0x1c, 0xc4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - } - } - - function log(uint256 p0, uint256 p1, uint256 p2, address p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - /// @solidity memory-safe-assembly - assembly { - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - // Selector of `log(uint256,uint256,uint256,address)`. - mstore(0x00, 0xfa8185af) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, p3) - } - _sendLogPayload(0x1c, 0x84); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - } - } - - function log(uint256 p0, uint256 p1, uint256 p2, bool p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - /// @solidity memory-safe-assembly - assembly { - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - // Selector of `log(uint256,uint256,uint256,bool)`. - mstore(0x00, 0xc598d185) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, p3) - } - _sendLogPayload(0x1c, 0x84); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - } - } - - function log(uint256 p0, uint256 p1, uint256 p2, uint256 p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - /// @solidity memory-safe-assembly - assembly { - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - // Selector of `log(uint256,uint256,uint256,uint256)`. - mstore(0x00, 0x193fb800) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, p3) - } - _sendLogPayload(0x1c, 0x84); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - } - } - - function log(uint256 p0, uint256 p1, uint256 p2, bytes32 p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - // Selector of `log(uint256,uint256,uint256,string)`. - mstore(0x00, 0x59cfcbe3) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, 0x80) - writeString(0xa0, p3) - } - _sendLogPayload(0x1c, 0xc4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - } - } - - function log(uint256 p0, uint256 p1, bytes32 p2, address p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - // Selector of `log(uint256,uint256,string,address)`. - mstore(0x00, 0x42d21db7) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, 0x80) - mstore(0x80, p3) - writeString(0xa0, p2) - } - _sendLogPayload(0x1c, 0xc4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - } - } - - function log(uint256 p0, uint256 p1, bytes32 p2, bool p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - // Selector of `log(uint256,uint256,string,bool)`. - mstore(0x00, 0x7af6ab25) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, 0x80) - mstore(0x80, p3) - writeString(0xa0, p2) - } - _sendLogPayload(0x1c, 0xc4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - } - } - - function log(uint256 p0, uint256 p1, bytes32 p2, uint256 p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - // Selector of `log(uint256,uint256,string,uint256)`. - mstore(0x00, 0x5da297eb) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, 0x80) - mstore(0x80, p3) - writeString(0xa0, p2) - } - _sendLogPayload(0x1c, 0xc4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - } - } - - function log(uint256 p0, uint256 p1, bytes32 p2, bytes32 p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - bytes32 m7; - bytes32 m8; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - m7 := mload(0xe0) - m8 := mload(0x100) - // Selector of `log(uint256,uint256,string,string)`. - mstore(0x00, 0x27d8afd2) - mstore(0x20, p0) - mstore(0x40, p1) - mstore(0x60, 0x80) - mstore(0x80, 0xc0) - writeString(0xa0, p2) - writeString(0xe0, p3) - } - _sendLogPayload(0x1c, 0x104); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - mstore(0xe0, m7) - mstore(0x100, m8) - } - } - - function log(uint256 p0, bytes32 p1, address p2, address p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - // Selector of `log(uint256,string,address,address)`. - mstore(0x00, 0x6168ed61) - mstore(0x20, p0) - mstore(0x40, 0x80) - mstore(0x60, p2) - mstore(0x80, p3) - writeString(0xa0, p1) - } - _sendLogPayload(0x1c, 0xc4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - } - } - - function log(uint256 p0, bytes32 p1, address p2, bool p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - // Selector of `log(uint256,string,address,bool)`. - mstore(0x00, 0x90c30a56) - mstore(0x20, p0) - mstore(0x40, 0x80) - mstore(0x60, p2) - mstore(0x80, p3) - writeString(0xa0, p1) - } - _sendLogPayload(0x1c, 0xc4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - } - } - - function log(uint256 p0, bytes32 p1, address p2, uint256 p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - // Selector of `log(uint256,string,address,uint256)`. - mstore(0x00, 0xe8d3018d) - mstore(0x20, p0) - mstore(0x40, 0x80) - mstore(0x60, p2) - mstore(0x80, p3) - writeString(0xa0, p1) - } - _sendLogPayload(0x1c, 0xc4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - } - } - - function log(uint256 p0, bytes32 p1, address p2, bytes32 p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - bytes32 m7; - bytes32 m8; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - m7 := mload(0xe0) - m8 := mload(0x100) - // Selector of `log(uint256,string,address,string)`. - mstore(0x00, 0x9c3adfa1) - mstore(0x20, p0) - mstore(0x40, 0x80) - mstore(0x60, p2) - mstore(0x80, 0xc0) - writeString(0xa0, p1) - writeString(0xe0, p3) - } - _sendLogPayload(0x1c, 0x104); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - mstore(0xe0, m7) - mstore(0x100, m8) - } - } - - function log(uint256 p0, bytes32 p1, bool p2, address p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - // Selector of `log(uint256,string,bool,address)`. - mstore(0x00, 0xae2ec581) - mstore(0x20, p0) - mstore(0x40, 0x80) - mstore(0x60, p2) - mstore(0x80, p3) - writeString(0xa0, p1) - } - _sendLogPayload(0x1c, 0xc4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - } - } - - function log(uint256 p0, bytes32 p1, bool p2, bool p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - // Selector of `log(uint256,string,bool,bool)`. - mstore(0x00, 0xba535d9c) - mstore(0x20, p0) - mstore(0x40, 0x80) - mstore(0x60, p2) - mstore(0x80, p3) - writeString(0xa0, p1) - } - _sendLogPayload(0x1c, 0xc4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - } - } - - function log(uint256 p0, bytes32 p1, bool p2, uint256 p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - // Selector of `log(uint256,string,bool,uint256)`. - mstore(0x00, 0xcf009880) - mstore(0x20, p0) - mstore(0x40, 0x80) - mstore(0x60, p2) - mstore(0x80, p3) - writeString(0xa0, p1) - } - _sendLogPayload(0x1c, 0xc4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - } - } - - function log(uint256 p0, bytes32 p1, bool p2, bytes32 p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - bytes32 m7; - bytes32 m8; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - m7 := mload(0xe0) - m8 := mload(0x100) - // Selector of `log(uint256,string,bool,string)`. - mstore(0x00, 0xd2d423cd) - mstore(0x20, p0) - mstore(0x40, 0x80) - mstore(0x60, p2) - mstore(0x80, 0xc0) - writeString(0xa0, p1) - writeString(0xe0, p3) - } - _sendLogPayload(0x1c, 0x104); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - mstore(0xe0, m7) - mstore(0x100, m8) - } - } - - function log(uint256 p0, bytes32 p1, uint256 p2, address p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - // Selector of `log(uint256,string,uint256,address)`. - mstore(0x00, 0x3b2279b4) - mstore(0x20, p0) - mstore(0x40, 0x80) - mstore(0x60, p2) - mstore(0x80, p3) - writeString(0xa0, p1) - } - _sendLogPayload(0x1c, 0xc4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - } - } - - function log(uint256 p0, bytes32 p1, uint256 p2, bool p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - // Selector of `log(uint256,string,uint256,bool)`. - mstore(0x00, 0x691a8f74) - mstore(0x20, p0) - mstore(0x40, 0x80) - mstore(0x60, p2) - mstore(0x80, p3) - writeString(0xa0, p1) - } - _sendLogPayload(0x1c, 0xc4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - } - } - - function log(uint256 p0, bytes32 p1, uint256 p2, uint256 p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - // Selector of `log(uint256,string,uint256,uint256)`. - mstore(0x00, 0x82c25b74) - mstore(0x20, p0) - mstore(0x40, 0x80) - mstore(0x60, p2) - mstore(0x80, p3) - writeString(0xa0, p1) - } - _sendLogPayload(0x1c, 0xc4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - } - } - - function log(uint256 p0, bytes32 p1, uint256 p2, bytes32 p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - bytes32 m7; - bytes32 m8; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - m7 := mload(0xe0) - m8 := mload(0x100) - // Selector of `log(uint256,string,uint256,string)`. - mstore(0x00, 0xb7b914ca) - mstore(0x20, p0) - mstore(0x40, 0x80) - mstore(0x60, p2) - mstore(0x80, 0xc0) - writeString(0xa0, p1) - writeString(0xe0, p3) - } - _sendLogPayload(0x1c, 0x104); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - mstore(0xe0, m7) - mstore(0x100, m8) - } - } - - function log(uint256 p0, bytes32 p1, bytes32 p2, address p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - bytes32 m7; - bytes32 m8; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - m7 := mload(0xe0) - m8 := mload(0x100) - // Selector of `log(uint256,string,string,address)`. - mstore(0x00, 0xd583c602) - mstore(0x20, p0) - mstore(0x40, 0x80) - mstore(0x60, 0xc0) - mstore(0x80, p3) - writeString(0xa0, p1) - writeString(0xe0, p2) - } - _sendLogPayload(0x1c, 0x104); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - mstore(0xe0, m7) - mstore(0x100, m8) - } - } - - function log(uint256 p0, bytes32 p1, bytes32 p2, bool p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - bytes32 m7; - bytes32 m8; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - m7 := mload(0xe0) - m8 := mload(0x100) - // Selector of `log(uint256,string,string,bool)`. - mstore(0x00, 0xb3a6b6bd) - mstore(0x20, p0) - mstore(0x40, 0x80) - mstore(0x60, 0xc0) - mstore(0x80, p3) - writeString(0xa0, p1) - writeString(0xe0, p2) - } - _sendLogPayload(0x1c, 0x104); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - mstore(0xe0, m7) - mstore(0x100, m8) - } - } - - function log(uint256 p0, bytes32 p1, bytes32 p2, uint256 p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - bytes32 m7; - bytes32 m8; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - m7 := mload(0xe0) - m8 := mload(0x100) - // Selector of `log(uint256,string,string,uint256)`. - mstore(0x00, 0xb028c9bd) - mstore(0x20, p0) - mstore(0x40, 0x80) - mstore(0x60, 0xc0) - mstore(0x80, p3) - writeString(0xa0, p1) - writeString(0xe0, p2) - } - _sendLogPayload(0x1c, 0x104); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - mstore(0xe0, m7) - mstore(0x100, m8) - } - } - - function log(uint256 p0, bytes32 p1, bytes32 p2, bytes32 p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - bytes32 m7; - bytes32 m8; - bytes32 m9; - bytes32 m10; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - m7 := mload(0xe0) - m8 := mload(0x100) - m9 := mload(0x120) - m10 := mload(0x140) - // Selector of `log(uint256,string,string,string)`. - mstore(0x00, 0x21ad0683) - mstore(0x20, p0) - mstore(0x40, 0x80) - mstore(0x60, 0xc0) - mstore(0x80, 0x100) - writeString(0xa0, p1) - writeString(0xe0, p2) - writeString(0x120, p3) - } - _sendLogPayload(0x1c, 0x144); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - mstore(0xe0, m7) - mstore(0x100, m8) - mstore(0x120, m9) - mstore(0x140, m10) - } - } - - function log(bytes32 p0, address p1, address p2, address p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - // Selector of `log(string,address,address,address)`. - mstore(0x00, 0xed8f28f6) - mstore(0x20, 0x80) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, p3) - writeString(0xa0, p0) - } - _sendLogPayload(0x1c, 0xc4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - } - } - - function log(bytes32 p0, address p1, address p2, bool p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - // Selector of `log(string,address,address,bool)`. - mstore(0x00, 0xb59dbd60) - mstore(0x20, 0x80) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, p3) - writeString(0xa0, p0) - } - _sendLogPayload(0x1c, 0xc4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - } - } - - function log(bytes32 p0, address p1, address p2, uint256 p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - // Selector of `log(string,address,address,uint256)`. - mstore(0x00, 0x8ef3f399) - mstore(0x20, 0x80) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, p3) - writeString(0xa0, p0) - } - _sendLogPayload(0x1c, 0xc4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - } - } - - function log(bytes32 p0, address p1, address p2, bytes32 p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - bytes32 m7; - bytes32 m8; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - m7 := mload(0xe0) - m8 := mload(0x100) - // Selector of `log(string,address,address,string)`. - mstore(0x00, 0x800a1c67) - mstore(0x20, 0x80) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, 0xc0) - writeString(0xa0, p0) - writeString(0xe0, p3) - } - _sendLogPayload(0x1c, 0x104); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - mstore(0xe0, m7) - mstore(0x100, m8) - } - } - - function log(bytes32 p0, address p1, bool p2, address p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - // Selector of `log(string,address,bool,address)`. - mstore(0x00, 0x223603bd) - mstore(0x20, 0x80) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, p3) - writeString(0xa0, p0) - } - _sendLogPayload(0x1c, 0xc4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - } - } - - function log(bytes32 p0, address p1, bool p2, bool p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - // Selector of `log(string,address,bool,bool)`. - mstore(0x00, 0x79884c2b) - mstore(0x20, 0x80) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, p3) - writeString(0xa0, p0) - } - _sendLogPayload(0x1c, 0xc4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - } - } - - function log(bytes32 p0, address p1, bool p2, uint256 p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - // Selector of `log(string,address,bool,uint256)`. - mstore(0x00, 0x3e9f866a) - mstore(0x20, 0x80) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, p3) - writeString(0xa0, p0) - } - _sendLogPayload(0x1c, 0xc4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - } - } - - function log(bytes32 p0, address p1, bool p2, bytes32 p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - bytes32 m7; - bytes32 m8; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - m7 := mload(0xe0) - m8 := mload(0x100) - // Selector of `log(string,address,bool,string)`. - mstore(0x00, 0x0454c079) - mstore(0x20, 0x80) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, 0xc0) - writeString(0xa0, p0) - writeString(0xe0, p3) - } - _sendLogPayload(0x1c, 0x104); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - mstore(0xe0, m7) - mstore(0x100, m8) - } - } - - function log(bytes32 p0, address p1, uint256 p2, address p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - // Selector of `log(string,address,uint256,address)`. - mstore(0x00, 0x63fb8bc5) - mstore(0x20, 0x80) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, p3) - writeString(0xa0, p0) - } - _sendLogPayload(0x1c, 0xc4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - } - } - - function log(bytes32 p0, address p1, uint256 p2, bool p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - // Selector of `log(string,address,uint256,bool)`. - mstore(0x00, 0xfc4845f0) - mstore(0x20, 0x80) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, p3) - writeString(0xa0, p0) - } - _sendLogPayload(0x1c, 0xc4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - } - } - - function log(bytes32 p0, address p1, uint256 p2, uint256 p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - // Selector of `log(string,address,uint256,uint256)`. - mstore(0x00, 0xf8f51b1e) - mstore(0x20, 0x80) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, p3) - writeString(0xa0, p0) - } - _sendLogPayload(0x1c, 0xc4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - } - } - - function log(bytes32 p0, address p1, uint256 p2, bytes32 p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - bytes32 m7; - bytes32 m8; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - m7 := mload(0xe0) - m8 := mload(0x100) - // Selector of `log(string,address,uint256,string)`. - mstore(0x00, 0x5a477632) - mstore(0x20, 0x80) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, 0xc0) - writeString(0xa0, p0) - writeString(0xe0, p3) - } - _sendLogPayload(0x1c, 0x104); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - mstore(0xe0, m7) - mstore(0x100, m8) - } - } - - function log(bytes32 p0, address p1, bytes32 p2, address p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - bytes32 m7; - bytes32 m8; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - m7 := mload(0xe0) - m8 := mload(0x100) - // Selector of `log(string,address,string,address)`. - mstore(0x00, 0xaabc9a31) - mstore(0x20, 0x80) - mstore(0x40, p1) - mstore(0x60, 0xc0) - mstore(0x80, p3) - writeString(0xa0, p0) - writeString(0xe0, p2) - } - _sendLogPayload(0x1c, 0x104); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - mstore(0xe0, m7) - mstore(0x100, m8) - } - } - - function log(bytes32 p0, address p1, bytes32 p2, bool p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - bytes32 m7; - bytes32 m8; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - m7 := mload(0xe0) - m8 := mload(0x100) - // Selector of `log(string,address,string,bool)`. - mstore(0x00, 0x5f15d28c) - mstore(0x20, 0x80) - mstore(0x40, p1) - mstore(0x60, 0xc0) - mstore(0x80, p3) - writeString(0xa0, p0) - writeString(0xe0, p2) - } - _sendLogPayload(0x1c, 0x104); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - mstore(0xe0, m7) - mstore(0x100, m8) - } - } - - function log(bytes32 p0, address p1, bytes32 p2, uint256 p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - bytes32 m7; - bytes32 m8; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - m7 := mload(0xe0) - m8 := mload(0x100) - // Selector of `log(string,address,string,uint256)`. - mstore(0x00, 0x91d1112e) - mstore(0x20, 0x80) - mstore(0x40, p1) - mstore(0x60, 0xc0) - mstore(0x80, p3) - writeString(0xa0, p0) - writeString(0xe0, p2) - } - _sendLogPayload(0x1c, 0x104); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - mstore(0xe0, m7) - mstore(0x100, m8) - } - } - - function log(bytes32 p0, address p1, bytes32 p2, bytes32 p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - bytes32 m7; - bytes32 m8; - bytes32 m9; - bytes32 m10; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - m7 := mload(0xe0) - m8 := mload(0x100) - m9 := mload(0x120) - m10 := mload(0x140) - // Selector of `log(string,address,string,string)`. - mstore(0x00, 0x245986f2) - mstore(0x20, 0x80) - mstore(0x40, p1) - mstore(0x60, 0xc0) - mstore(0x80, 0x100) - writeString(0xa0, p0) - writeString(0xe0, p2) - writeString(0x120, p3) - } - _sendLogPayload(0x1c, 0x144); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - mstore(0xe0, m7) - mstore(0x100, m8) - mstore(0x120, m9) - mstore(0x140, m10) - } - } - - function log(bytes32 p0, bool p1, address p2, address p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - // Selector of `log(string,bool,address,address)`. - mstore(0x00, 0x33e9dd1d) - mstore(0x20, 0x80) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, p3) - writeString(0xa0, p0) - } - _sendLogPayload(0x1c, 0xc4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - } - } - - function log(bytes32 p0, bool p1, address p2, bool p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - // Selector of `log(string,bool,address,bool)`. - mstore(0x00, 0x958c28c6) - mstore(0x20, 0x80) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, p3) - writeString(0xa0, p0) - } - _sendLogPayload(0x1c, 0xc4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - } - } - - function log(bytes32 p0, bool p1, address p2, uint256 p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - // Selector of `log(string,bool,address,uint256)`. - mstore(0x00, 0x5d08bb05) - mstore(0x20, 0x80) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, p3) - writeString(0xa0, p0) - } - _sendLogPayload(0x1c, 0xc4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - } - } - - function log(bytes32 p0, bool p1, address p2, bytes32 p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - bytes32 m7; - bytes32 m8; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - m7 := mload(0xe0) - m8 := mload(0x100) - // Selector of `log(string,bool,address,string)`. - mstore(0x00, 0x2d8e33a4) - mstore(0x20, 0x80) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, 0xc0) - writeString(0xa0, p0) - writeString(0xe0, p3) - } - _sendLogPayload(0x1c, 0x104); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - mstore(0xe0, m7) - mstore(0x100, m8) - } - } - - function log(bytes32 p0, bool p1, bool p2, address p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - // Selector of `log(string,bool,bool,address)`. - mstore(0x00, 0x7190a529) - mstore(0x20, 0x80) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, p3) - writeString(0xa0, p0) - } - _sendLogPayload(0x1c, 0xc4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - } - } - - function log(bytes32 p0, bool p1, bool p2, bool p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - // Selector of `log(string,bool,bool,bool)`. - mstore(0x00, 0x895af8c5) - mstore(0x20, 0x80) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, p3) - writeString(0xa0, p0) - } - _sendLogPayload(0x1c, 0xc4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - } - } - - function log(bytes32 p0, bool p1, bool p2, uint256 p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - // Selector of `log(string,bool,bool,uint256)`. - mstore(0x00, 0x8e3f78a9) - mstore(0x20, 0x80) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, p3) - writeString(0xa0, p0) - } - _sendLogPayload(0x1c, 0xc4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - } - } - - function log(bytes32 p0, bool p1, bool p2, bytes32 p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - bytes32 m7; - bytes32 m8; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - m7 := mload(0xe0) - m8 := mload(0x100) - // Selector of `log(string,bool,bool,string)`. - mstore(0x00, 0x9d22d5dd) - mstore(0x20, 0x80) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, 0xc0) - writeString(0xa0, p0) - writeString(0xe0, p3) - } - _sendLogPayload(0x1c, 0x104); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - mstore(0xe0, m7) - mstore(0x100, m8) - } - } - - function log(bytes32 p0, bool p1, uint256 p2, address p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - // Selector of `log(string,bool,uint256,address)`. - mstore(0x00, 0x935e09bf) - mstore(0x20, 0x80) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, p3) - writeString(0xa0, p0) - } - _sendLogPayload(0x1c, 0xc4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - } - } - - function log(bytes32 p0, bool p1, uint256 p2, bool p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - // Selector of `log(string,bool,uint256,bool)`. - mstore(0x00, 0x8af7cf8a) - mstore(0x20, 0x80) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, p3) - writeString(0xa0, p0) - } - _sendLogPayload(0x1c, 0xc4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - } - } - - function log(bytes32 p0, bool p1, uint256 p2, uint256 p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - // Selector of `log(string,bool,uint256,uint256)`. - mstore(0x00, 0x64b5bb67) - mstore(0x20, 0x80) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, p3) - writeString(0xa0, p0) - } - _sendLogPayload(0x1c, 0xc4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - } - } - - function log(bytes32 p0, bool p1, uint256 p2, bytes32 p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - bytes32 m7; - bytes32 m8; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - m7 := mload(0xe0) - m8 := mload(0x100) - // Selector of `log(string,bool,uint256,string)`. - mstore(0x00, 0x742d6ee7) - mstore(0x20, 0x80) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, 0xc0) - writeString(0xa0, p0) - writeString(0xe0, p3) - } - _sendLogPayload(0x1c, 0x104); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - mstore(0xe0, m7) - mstore(0x100, m8) - } - } - - function log(bytes32 p0, bool p1, bytes32 p2, address p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - bytes32 m7; - bytes32 m8; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - m7 := mload(0xe0) - m8 := mload(0x100) - // Selector of `log(string,bool,string,address)`. - mstore(0x00, 0xe0625b29) - mstore(0x20, 0x80) - mstore(0x40, p1) - mstore(0x60, 0xc0) - mstore(0x80, p3) - writeString(0xa0, p0) - writeString(0xe0, p2) - } - _sendLogPayload(0x1c, 0x104); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - mstore(0xe0, m7) - mstore(0x100, m8) - } - } - - function log(bytes32 p0, bool p1, bytes32 p2, bool p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - bytes32 m7; - bytes32 m8; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - m7 := mload(0xe0) - m8 := mload(0x100) - // Selector of `log(string,bool,string,bool)`. - mstore(0x00, 0x3f8a701d) - mstore(0x20, 0x80) - mstore(0x40, p1) - mstore(0x60, 0xc0) - mstore(0x80, p3) - writeString(0xa0, p0) - writeString(0xe0, p2) - } - _sendLogPayload(0x1c, 0x104); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - mstore(0xe0, m7) - mstore(0x100, m8) - } - } - - function log(bytes32 p0, bool p1, bytes32 p2, uint256 p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - bytes32 m7; - bytes32 m8; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - m7 := mload(0xe0) - m8 := mload(0x100) - // Selector of `log(string,bool,string,uint256)`. - mstore(0x00, 0x24f91465) - mstore(0x20, 0x80) - mstore(0x40, p1) - mstore(0x60, 0xc0) - mstore(0x80, p3) - writeString(0xa0, p0) - writeString(0xe0, p2) - } - _sendLogPayload(0x1c, 0x104); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - mstore(0xe0, m7) - mstore(0x100, m8) - } - } - - function log(bytes32 p0, bool p1, bytes32 p2, bytes32 p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - bytes32 m7; - bytes32 m8; - bytes32 m9; - bytes32 m10; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - m7 := mload(0xe0) - m8 := mload(0x100) - m9 := mload(0x120) - m10 := mload(0x140) - // Selector of `log(string,bool,string,string)`. - mstore(0x00, 0xa826caeb) - mstore(0x20, 0x80) - mstore(0x40, p1) - mstore(0x60, 0xc0) - mstore(0x80, 0x100) - writeString(0xa0, p0) - writeString(0xe0, p2) - writeString(0x120, p3) - } - _sendLogPayload(0x1c, 0x144); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - mstore(0xe0, m7) - mstore(0x100, m8) - mstore(0x120, m9) - mstore(0x140, m10) - } - } - - function log(bytes32 p0, uint256 p1, address p2, address p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - // Selector of `log(string,uint256,address,address)`. - mstore(0x00, 0x5ea2b7ae) - mstore(0x20, 0x80) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, p3) - writeString(0xa0, p0) - } - _sendLogPayload(0x1c, 0xc4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - } - } - - function log(bytes32 p0, uint256 p1, address p2, bool p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - // Selector of `log(string,uint256,address,bool)`. - mstore(0x00, 0x82112a42) - mstore(0x20, 0x80) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, p3) - writeString(0xa0, p0) - } - _sendLogPayload(0x1c, 0xc4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - } - } - - function log(bytes32 p0, uint256 p1, address p2, uint256 p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - // Selector of `log(string,uint256,address,uint256)`. - mstore(0x00, 0x4f04fdc6) - mstore(0x20, 0x80) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, p3) - writeString(0xa0, p0) - } - _sendLogPayload(0x1c, 0xc4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - } - } - - function log(bytes32 p0, uint256 p1, address p2, bytes32 p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - bytes32 m7; - bytes32 m8; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - m7 := mload(0xe0) - m8 := mload(0x100) - // Selector of `log(string,uint256,address,string)`. - mstore(0x00, 0x9ffb2f93) - mstore(0x20, 0x80) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, 0xc0) - writeString(0xa0, p0) - writeString(0xe0, p3) - } - _sendLogPayload(0x1c, 0x104); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - mstore(0xe0, m7) - mstore(0x100, m8) - } - } - - function log(bytes32 p0, uint256 p1, bool p2, address p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - // Selector of `log(string,uint256,bool,address)`. - mstore(0x00, 0xe0e95b98) - mstore(0x20, 0x80) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, p3) - writeString(0xa0, p0) - } - _sendLogPayload(0x1c, 0xc4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - } - } - - function log(bytes32 p0, uint256 p1, bool p2, bool p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - // Selector of `log(string,uint256,bool,bool)`. - mstore(0x00, 0x354c36d6) - mstore(0x20, 0x80) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, p3) - writeString(0xa0, p0) - } - _sendLogPayload(0x1c, 0xc4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - } - } - - function log(bytes32 p0, uint256 p1, bool p2, uint256 p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - // Selector of `log(string,uint256,bool,uint256)`. - mstore(0x00, 0xe41b6f6f) - mstore(0x20, 0x80) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, p3) - writeString(0xa0, p0) - } - _sendLogPayload(0x1c, 0xc4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - } - } - - function log(bytes32 p0, uint256 p1, bool p2, bytes32 p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - bytes32 m7; - bytes32 m8; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - m7 := mload(0xe0) - m8 := mload(0x100) - // Selector of `log(string,uint256,bool,string)`. - mstore(0x00, 0xabf73a98) - mstore(0x20, 0x80) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, 0xc0) - writeString(0xa0, p0) - writeString(0xe0, p3) - } - _sendLogPayload(0x1c, 0x104); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - mstore(0xe0, m7) - mstore(0x100, m8) - } - } - - function log(bytes32 p0, uint256 p1, uint256 p2, address p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - // Selector of `log(string,uint256,uint256,address)`. - mstore(0x00, 0xe21de278) - mstore(0x20, 0x80) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, p3) - writeString(0xa0, p0) - } - _sendLogPayload(0x1c, 0xc4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - } - } - - function log(bytes32 p0, uint256 p1, uint256 p2, bool p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - // Selector of `log(string,uint256,uint256,bool)`. - mstore(0x00, 0x7626db92) - mstore(0x20, 0x80) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, p3) - writeString(0xa0, p0) - } - _sendLogPayload(0x1c, 0xc4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - } - } - - function log(bytes32 p0, uint256 p1, uint256 p2, uint256 p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - // Selector of `log(string,uint256,uint256,uint256)`. - mstore(0x00, 0xa7a87853) - mstore(0x20, 0x80) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, p3) - writeString(0xa0, p0) - } - _sendLogPayload(0x1c, 0xc4); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - } - } - - function log(bytes32 p0, uint256 p1, uint256 p2, bytes32 p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - bytes32 m7; - bytes32 m8; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - m7 := mload(0xe0) - m8 := mload(0x100) - // Selector of `log(string,uint256,uint256,string)`. - mstore(0x00, 0x854b3496) - mstore(0x20, 0x80) - mstore(0x40, p1) - mstore(0x60, p2) - mstore(0x80, 0xc0) - writeString(0xa0, p0) - writeString(0xe0, p3) - } - _sendLogPayload(0x1c, 0x104); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - mstore(0xe0, m7) - mstore(0x100, m8) - } - } - - function log(bytes32 p0, uint256 p1, bytes32 p2, address p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - bytes32 m7; - bytes32 m8; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - m7 := mload(0xe0) - m8 := mload(0x100) - // Selector of `log(string,uint256,string,address)`. - mstore(0x00, 0x7c4632a4) - mstore(0x20, 0x80) - mstore(0x40, p1) - mstore(0x60, 0xc0) - mstore(0x80, p3) - writeString(0xa0, p0) - writeString(0xe0, p2) - } - _sendLogPayload(0x1c, 0x104); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - mstore(0xe0, m7) - mstore(0x100, m8) - } - } - - function log(bytes32 p0, uint256 p1, bytes32 p2, bool p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - bytes32 m7; - bytes32 m8; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - m7 := mload(0xe0) - m8 := mload(0x100) - // Selector of `log(string,uint256,string,bool)`. - mstore(0x00, 0x7d24491d) - mstore(0x20, 0x80) - mstore(0x40, p1) - mstore(0x60, 0xc0) - mstore(0x80, p3) - writeString(0xa0, p0) - writeString(0xe0, p2) - } - _sendLogPayload(0x1c, 0x104); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - mstore(0xe0, m7) - mstore(0x100, m8) - } - } - - function log(bytes32 p0, uint256 p1, bytes32 p2, uint256 p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - bytes32 m7; - bytes32 m8; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - m7 := mload(0xe0) - m8 := mload(0x100) - // Selector of `log(string,uint256,string,uint256)`. - mstore(0x00, 0xc67ea9d1) - mstore(0x20, 0x80) - mstore(0x40, p1) - mstore(0x60, 0xc0) - mstore(0x80, p3) - writeString(0xa0, p0) - writeString(0xe0, p2) - } - _sendLogPayload(0x1c, 0x104); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - mstore(0xe0, m7) - mstore(0x100, m8) - } - } - - function log(bytes32 p0, uint256 p1, bytes32 p2, bytes32 p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - bytes32 m7; - bytes32 m8; - bytes32 m9; - bytes32 m10; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - m7 := mload(0xe0) - m8 := mload(0x100) - m9 := mload(0x120) - m10 := mload(0x140) - // Selector of `log(string,uint256,string,string)`. - mstore(0x00, 0x5ab84e1f) - mstore(0x20, 0x80) - mstore(0x40, p1) - mstore(0x60, 0xc0) - mstore(0x80, 0x100) - writeString(0xa0, p0) - writeString(0xe0, p2) - writeString(0x120, p3) - } - _sendLogPayload(0x1c, 0x144); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - mstore(0xe0, m7) - mstore(0x100, m8) - mstore(0x120, m9) - mstore(0x140, m10) - } - } - - function log(bytes32 p0, bytes32 p1, address p2, address p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - bytes32 m7; - bytes32 m8; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - m7 := mload(0xe0) - m8 := mload(0x100) - // Selector of `log(string,string,address,address)`. - mstore(0x00, 0x439c7bef) - mstore(0x20, 0x80) - mstore(0x40, 0xc0) - mstore(0x60, p2) - mstore(0x80, p3) - writeString(0xa0, p0) - writeString(0xe0, p1) - } - _sendLogPayload(0x1c, 0x104); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - mstore(0xe0, m7) - mstore(0x100, m8) - } - } - - function log(bytes32 p0, bytes32 p1, address p2, bool p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - bytes32 m7; - bytes32 m8; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - m7 := mload(0xe0) - m8 := mload(0x100) - // Selector of `log(string,string,address,bool)`. - mstore(0x00, 0x5ccd4e37) - mstore(0x20, 0x80) - mstore(0x40, 0xc0) - mstore(0x60, p2) - mstore(0x80, p3) - writeString(0xa0, p0) - writeString(0xe0, p1) - } - _sendLogPayload(0x1c, 0x104); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - mstore(0xe0, m7) - mstore(0x100, m8) - } - } - - function log(bytes32 p0, bytes32 p1, address p2, uint256 p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - bytes32 m7; - bytes32 m8; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - m7 := mload(0xe0) - m8 := mload(0x100) - // Selector of `log(string,string,address,uint256)`. - mstore(0x00, 0x7cc3c607) - mstore(0x20, 0x80) - mstore(0x40, 0xc0) - mstore(0x60, p2) - mstore(0x80, p3) - writeString(0xa0, p0) - writeString(0xe0, p1) - } - _sendLogPayload(0x1c, 0x104); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - mstore(0xe0, m7) - mstore(0x100, m8) - } - } - - function log(bytes32 p0, bytes32 p1, address p2, bytes32 p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - bytes32 m7; - bytes32 m8; - bytes32 m9; - bytes32 m10; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - m7 := mload(0xe0) - m8 := mload(0x100) - m9 := mload(0x120) - m10 := mload(0x140) - // Selector of `log(string,string,address,string)`. - mstore(0x00, 0xeb1bff80) - mstore(0x20, 0x80) - mstore(0x40, 0xc0) - mstore(0x60, p2) - mstore(0x80, 0x100) - writeString(0xa0, p0) - writeString(0xe0, p1) - writeString(0x120, p3) - } - _sendLogPayload(0x1c, 0x144); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - mstore(0xe0, m7) - mstore(0x100, m8) - mstore(0x120, m9) - mstore(0x140, m10) - } - } - - function log(bytes32 p0, bytes32 p1, bool p2, address p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - bytes32 m7; - bytes32 m8; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - m7 := mload(0xe0) - m8 := mload(0x100) - // Selector of `log(string,string,bool,address)`. - mstore(0x00, 0xc371c7db) - mstore(0x20, 0x80) - mstore(0x40, 0xc0) - mstore(0x60, p2) - mstore(0x80, p3) - writeString(0xa0, p0) - writeString(0xe0, p1) - } - _sendLogPayload(0x1c, 0x104); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - mstore(0xe0, m7) - mstore(0x100, m8) - } - } - - function log(bytes32 p0, bytes32 p1, bool p2, bool p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - bytes32 m7; - bytes32 m8; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - m7 := mload(0xe0) - m8 := mload(0x100) - // Selector of `log(string,string,bool,bool)`. - mstore(0x00, 0x40785869) - mstore(0x20, 0x80) - mstore(0x40, 0xc0) - mstore(0x60, p2) - mstore(0x80, p3) - writeString(0xa0, p0) - writeString(0xe0, p1) - } - _sendLogPayload(0x1c, 0x104); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - mstore(0xe0, m7) - mstore(0x100, m8) - } - } - - function log(bytes32 p0, bytes32 p1, bool p2, uint256 p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - bytes32 m7; - bytes32 m8; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - m7 := mload(0xe0) - m8 := mload(0x100) - // Selector of `log(string,string,bool,uint256)`. - mstore(0x00, 0xd6aefad2) - mstore(0x20, 0x80) - mstore(0x40, 0xc0) - mstore(0x60, p2) - mstore(0x80, p3) - writeString(0xa0, p0) - writeString(0xe0, p1) - } - _sendLogPayload(0x1c, 0x104); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - mstore(0xe0, m7) - mstore(0x100, m8) - } - } - - function log(bytes32 p0, bytes32 p1, bool p2, bytes32 p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - bytes32 m7; - bytes32 m8; - bytes32 m9; - bytes32 m10; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - m7 := mload(0xe0) - m8 := mload(0x100) - m9 := mload(0x120) - m10 := mload(0x140) - // Selector of `log(string,string,bool,string)`. - mstore(0x00, 0x5e84b0ea) - mstore(0x20, 0x80) - mstore(0x40, 0xc0) - mstore(0x60, p2) - mstore(0x80, 0x100) - writeString(0xa0, p0) - writeString(0xe0, p1) - writeString(0x120, p3) - } - _sendLogPayload(0x1c, 0x144); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - mstore(0xe0, m7) - mstore(0x100, m8) - mstore(0x120, m9) - mstore(0x140, m10) - } - } - - function log(bytes32 p0, bytes32 p1, uint256 p2, address p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - bytes32 m7; - bytes32 m8; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - m7 := mload(0xe0) - m8 := mload(0x100) - // Selector of `log(string,string,uint256,address)`. - mstore(0x00, 0x1023f7b2) - mstore(0x20, 0x80) - mstore(0x40, 0xc0) - mstore(0x60, p2) - mstore(0x80, p3) - writeString(0xa0, p0) - writeString(0xe0, p1) - } - _sendLogPayload(0x1c, 0x104); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - mstore(0xe0, m7) - mstore(0x100, m8) - } - } - - function log(bytes32 p0, bytes32 p1, uint256 p2, bool p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - bytes32 m7; - bytes32 m8; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - m7 := mload(0xe0) - m8 := mload(0x100) - // Selector of `log(string,string,uint256,bool)`. - mstore(0x00, 0xc3a8a654) - mstore(0x20, 0x80) - mstore(0x40, 0xc0) - mstore(0x60, p2) - mstore(0x80, p3) - writeString(0xa0, p0) - writeString(0xe0, p1) - } - _sendLogPayload(0x1c, 0x104); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - mstore(0xe0, m7) - mstore(0x100, m8) - } - } - - function log(bytes32 p0, bytes32 p1, uint256 p2, uint256 p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - bytes32 m7; - bytes32 m8; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - m7 := mload(0xe0) - m8 := mload(0x100) - // Selector of `log(string,string,uint256,uint256)`. - mstore(0x00, 0xf45d7d2c) - mstore(0x20, 0x80) - mstore(0x40, 0xc0) - mstore(0x60, p2) - mstore(0x80, p3) - writeString(0xa0, p0) - writeString(0xe0, p1) - } - _sendLogPayload(0x1c, 0x104); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - mstore(0xe0, m7) - mstore(0x100, m8) - } - } - - function log(bytes32 p0, bytes32 p1, uint256 p2, bytes32 p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - bytes32 m7; - bytes32 m8; - bytes32 m9; - bytes32 m10; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - m7 := mload(0xe0) - m8 := mload(0x100) - m9 := mload(0x120) - m10 := mload(0x140) - // Selector of `log(string,string,uint256,string)`. - mstore(0x00, 0x5d1a971a) - mstore(0x20, 0x80) - mstore(0x40, 0xc0) - mstore(0x60, p2) - mstore(0x80, 0x100) - writeString(0xa0, p0) - writeString(0xe0, p1) - writeString(0x120, p3) - } - _sendLogPayload(0x1c, 0x144); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - mstore(0xe0, m7) - mstore(0x100, m8) - mstore(0x120, m9) - mstore(0x140, m10) - } - } - - function log(bytes32 p0, bytes32 p1, bytes32 p2, address p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - bytes32 m7; - bytes32 m8; - bytes32 m9; - bytes32 m10; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - m7 := mload(0xe0) - m8 := mload(0x100) - m9 := mload(0x120) - m10 := mload(0x140) - // Selector of `log(string,string,string,address)`. - mstore(0x00, 0x6d572f44) - mstore(0x20, 0x80) - mstore(0x40, 0xc0) - mstore(0x60, 0x100) - mstore(0x80, p3) - writeString(0xa0, p0) - writeString(0xe0, p1) - writeString(0x120, p2) - } - _sendLogPayload(0x1c, 0x144); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - mstore(0xe0, m7) - mstore(0x100, m8) - mstore(0x120, m9) - mstore(0x140, m10) - } - } - - function log(bytes32 p0, bytes32 p1, bytes32 p2, bool p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - bytes32 m7; - bytes32 m8; - bytes32 m9; - bytes32 m10; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - m7 := mload(0xe0) - m8 := mload(0x100) - m9 := mload(0x120) - m10 := mload(0x140) - // Selector of `log(string,string,string,bool)`. - mstore(0x00, 0x2c1754ed) - mstore(0x20, 0x80) - mstore(0x40, 0xc0) - mstore(0x60, 0x100) - mstore(0x80, p3) - writeString(0xa0, p0) - writeString(0xe0, p1) - writeString(0x120, p2) - } - _sendLogPayload(0x1c, 0x144); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - mstore(0xe0, m7) - mstore(0x100, m8) - mstore(0x120, m9) - mstore(0x140, m10) - } - } - - function log(bytes32 p0, bytes32 p1, bytes32 p2, uint256 p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - bytes32 m7; - bytes32 m8; - bytes32 m9; - bytes32 m10; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - m7 := mload(0xe0) - m8 := mload(0x100) - m9 := mload(0x120) - m10 := mload(0x140) - // Selector of `log(string,string,string,uint256)`. - mstore(0x00, 0x8eafb02b) - mstore(0x20, 0x80) - mstore(0x40, 0xc0) - mstore(0x60, 0x100) - mstore(0x80, p3) - writeString(0xa0, p0) - writeString(0xe0, p1) - writeString(0x120, p2) - } - _sendLogPayload(0x1c, 0x144); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - mstore(0xe0, m7) - mstore(0x100, m8) - mstore(0x120, m9) - mstore(0x140, m10) - } - } - - function log(bytes32 p0, bytes32 p1, bytes32 p2, bytes32 p3) internal pure { - bytes32 m0; - bytes32 m1; - bytes32 m2; - bytes32 m3; - bytes32 m4; - bytes32 m5; - bytes32 m6; - bytes32 m7; - bytes32 m8; - bytes32 m9; - bytes32 m10; - bytes32 m11; - bytes32 m12; - /// @solidity memory-safe-assembly - assembly { - function writeString(pos, w) { - let length := 0 - for {} lt(length, 0x20) { length := add(length, 1) } { if iszero(byte(length, w)) { break } } - mstore(pos, length) - let shift := sub(256, shl(3, length)) - mstore(add(pos, 0x20), shl(shift, shr(shift, w))) - } - m0 := mload(0x00) - m1 := mload(0x20) - m2 := mload(0x40) - m3 := mload(0x60) - m4 := mload(0x80) - m5 := mload(0xa0) - m6 := mload(0xc0) - m7 := mload(0xe0) - m8 := mload(0x100) - m9 := mload(0x120) - m10 := mload(0x140) - m11 := mload(0x160) - m12 := mload(0x180) - // Selector of `log(string,string,string,string)`. - mstore(0x00, 0xde68f20a) - mstore(0x20, 0x80) - mstore(0x40, 0xc0) - mstore(0x60, 0x100) - mstore(0x80, 0x140) - writeString(0xa0, p0) - writeString(0xe0, p1) - writeString(0x120, p2) - writeString(0x160, p3) - } - _sendLogPayload(0x1c, 0x184); - /// @solidity memory-safe-assembly - assembly { - mstore(0x00, m0) - mstore(0x20, m1) - mstore(0x40, m2) - mstore(0x60, m3) - mstore(0x80, m4) - mstore(0xa0, m5) - mstore(0xc0, m6) - mstore(0xe0, m7) - mstore(0x100, m8) - mstore(0x120, m9) - mstore(0x140, m10) - mstore(0x160, m11) - mstore(0x180, m12) - } - } -} From 480aec0a159f175f66808a6ca38ed1b288dc3098 Mon Sep 17 00:00:00 2001 From: Rens Rooimans Date: Fri, 21 Aug 2026 11:19:41 +0200 Subject: [PATCH 3/9] fix snapshot all --- contracts/GNUmakefile | 2 +- .../gas-snapshots/llo-feeds.gas-snapshot | 225 +++++++++++++++++- 2 files changed, 225 insertions(+), 2 deletions(-) diff --git a/contracts/GNUmakefile b/contracts/GNUmakefile index 34c3a2c14b..66aa18ac35 100644 --- a/contracts/GNUmakefile +++ b/contracts/GNUmakefile @@ -1,6 +1,6 @@ # ALL_FOUNDRY_PRODUCTS contains a list of all products that have a foundry # profile defined and use the Foundry snapshots. -ALL_FOUNDRY_PRODUCTS = automation-cre keystone l2ep llo-feeds operatorforwarder payments shared workflow data-feeds +ALL_FOUNDRY_PRODUCTS = automation-cre l2ep llo-feeds operatorforwarder payments shared data-feeds # To make a snapshot for a specific product, either set the `FOUNDRY_PROFILE` env var # or call the target with `FOUNDRY_PROFILE=product` diff --git a/contracts/gas-snapshots/llo-feeds.gas-snapshot b/contracts/gas-snapshots/llo-feeds.gas-snapshot index 3a5d2d4b30..85c89f329c 100644 --- a/contracts/gas-snapshots/llo-feeds.gas-snapshot +++ b/contracts/gas-snapshots/llo-feeds.gas-snapshot @@ -19,59 +19,113 @@ ByteUtilTest:test_readUint32WithEmptyArray() (gas: 3231) ByteUtilTest:test_readUint32WithNotEnoughBytes() (gas: 3272) ByteUtilTest:test_readZeroAddress() (gas: 3343) ChannelConfigStoreChannelAdderTest:testAddChannelDefinitions_AdderCanAddToMultipleDons() (gas: 183710) +ChannelConfigStoreChannelAdderTest:testAddChannelDefinitions_AdderCanAddToMultipleDons() (gas: 183710) +ChannelConfigStoreChannelAdderTest:testAddChannelDefinitions_MultipleAddersCanAddToDon() (gas: 186501) ChannelConfigStoreChannelAdderTest:testAddChannelDefinitions_MultipleAddersCanAddToDon() (gas: 186501) ChannelConfigStoreChannelAdderTest:testAddChannelDefinitions_OneAddressCanControlMultipleChannelAdders() (gas: 195997) +ChannelConfigStoreChannelAdderTest:testAddChannelDefinitions_OneAddressCanControlMultipleChannelAdders() (gas: 195997) +ChannelConfigStoreChannelAdderTest:testAddChannelDefinitions_RevertsWhenAdderNotAllowedForDon() (gas: 38489) ChannelConfigStoreChannelAdderTest:testAddChannelDefinitions_RevertsWhenAdderNotAllowedForDon() (gas: 38489) ChannelConfigStoreChannelAdderTest:testAddChannelDefinitions_RevertsWhenAdderRemovedFromDon() (gas: 88366) +ChannelConfigStoreChannelAdderTest:testAddChannelDefinitions_RevertsWhenAdderRemovedFromDon() (gas: 88366) +ChannelConfigStoreChannelAdderTest:testAddChannelDefinitions_RevertsWhenCallerNotMatchingChannelAdderId() (gas: 106035) ChannelConfigStoreChannelAdderTest:testAddChannelDefinitions_RevertsWhenCallerNotMatchingChannelAdderId() (gas: 106035) ChannelConfigStoreChannelAdderTest:testAddChannelDefinitions_RevertsWhenNoAddressSetForChannelAdderId() (gas: 83374) +ChannelConfigStoreChannelAdderTest:testAddChannelDefinitions_RevertsWhenNoAddressSetForChannelAdderId() (gas: 83374) ChannelConfigStoreChannelAdderTest:testAddChannelDefinitions_SucceedsWithAuthorizedAdder() (gas: 111897) +ChannelConfigStoreChannelAdderTest:testAddChannelDefinitions_SucceedsWithAuthorizedAdder() (gas: 111897) +ChannelConfigStoreChannelAdderTest:testGetAllowedChannelAdders_ReturnsAllAllowedAdders() (gas: 131456) ChannelConfigStoreChannelAdderTest:testGetAllowedChannelAdders_ReturnsAllAllowedAdders() (gas: 131456) ChannelConfigStoreChannelAdderTest:testGetAllowedChannelAdders_ReturnsEmptyArrayWhenNone() (gas: 11649) +ChannelConfigStoreChannelAdderTest:testGetAllowedChannelAdders_ReturnsEmptyArrayWhenNone() (gas: 11649) +ChannelConfigStoreChannelAdderTest:testGetChannelAdderAddress_ReturnsZeroAddressForUnsetId() (gas: 10677) ChannelConfigStoreChannelAdderTest:testGetChannelAdderAddress_ReturnsZeroAddressForUnsetId() (gas: 10677) ChannelConfigStoreChannelAdderTest:testIsChannelAdderAllowed_ReturnsFalseForNonAllowedAdder() (gas: 10966) +ChannelConfigStoreChannelAdderTest:testIsChannelAdderAllowed_ReturnsFalseForNonAllowedAdder() (gas: 10966) +ChannelConfigStoreChannelAdderTest:testSetChannelAdderAddress() (gas: 37184) ChannelConfigStoreChannelAdderTest:testSetChannelAdderAddress() (gas: 37184) ChannelConfigStoreChannelAdderTest:testSetChannelAdderAddress_CanSetToZeroAddress() (gas: 27781) +ChannelConfigStoreChannelAdderTest:testSetChannelAdderAddress_CanSetToZeroAddress() (gas: 27781) ChannelConfigStoreChannelAdderTest:testSetChannelAdderAddress_RevertsForReservedChannelAdderId() (gas: 14099) +ChannelConfigStoreChannelAdderTest:testSetChannelAdderAddress_RevertsForReservedChannelAdderId() (gas: 14099) +ChannelConfigStoreChannelAdderTest:testSetChannelAdderAddress_RevertsWhenCalledByNonOwner() (gas: 11087) ChannelConfigStoreChannelAdderTest:testSetChannelAdderAddress_RevertsWhenCalledByNonOwner() (gas: 11087) ChannelConfigStoreChannelAdderTest:testSetChannelAdderAddress_SucceedsAtMinimumAllowedId() (gas: 35411) +ChannelConfigStoreChannelAdderTest:testSetChannelAdderAddress_SucceedsAtMinimumAllowedId() (gas: 35411) +ChannelConfigStoreChannelAdderTest:testSetChannelAdderAddress_UpdatesExistingAddress() (gas: 41413) ChannelConfigStoreChannelAdderTest:testSetChannelAdderAddress_UpdatesExistingAddress() (gas: 41413) ChannelConfigStoreChannelAdderTest:testSetChannelAdder_AdderCanBeAllowedOnMultipleDons() (gas: 152500) +ChannelConfigStoreChannelAdderTest:testSetChannelAdder_AdderCanBeAllowedOnMultipleDons() (gas: 152500) +ChannelConfigStoreChannelAdderTest:testSetChannelAdder_AllowsChannelAdder() (gas: 82989) ChannelConfigStoreChannelAdderTest:testSetChannelAdder_AllowsChannelAdder() (gas: 82989) ChannelConfigStoreChannelAdderTest:testSetChannelAdder_AllowsMultipleAddersPerDon() (gas: 134891) +ChannelConfigStoreChannelAdderTest:testSetChannelAdder_AllowsMultipleAddersPerDon() (gas: 134891) ChannelConfigStoreChannelAdderTest:testSetChannelAdder_RemovesChannelAdder() (gas: 67010) +ChannelConfigStoreChannelAdderTest:testSetChannelAdder_RemovesChannelAdder() (gas: 67010) +ChannelConfigStoreChannelAdderTest:testSetChannelAdder_RevertsForReservedChannelAdderId() (gas: 17864) ChannelConfigStoreChannelAdderTest:testSetChannelAdder_RevertsForReservedChannelAdderId() (gas: 17864) ChannelConfigStoreChannelAdderTest:testSetChannelAdder_RevertsWhenCalledByNonOwner() (gas: 11181) +ChannelConfigStoreChannelAdderTest:testSetChannelAdder_RevertsWhenCalledByNonOwner() (gas: 11181) +ChannelConfigStoreChannelAdderTest:testSetChannelAdder_SucceedsAtMinimumAllowedId() (gas: 80858) ChannelConfigStoreChannelAdderTest:testSetChannelAdder_SucceedsAtMinimumAllowedId() (gas: 80858) ChannelConfigStoreChannelAdderTest:testSetChannelDefinitions() (gas: 47277) +ChannelConfigStoreChannelAdderTest:testSetChannelDefinitions() (gas: 47277) +ChannelConfigStoreChannelAdderTest:testSupportsInterface() (gas: 8448) ChannelConfigStoreChannelAdderTest:testSupportsInterface() (gas: 8448) ChannelConfigStoreChannelAdderTest:testTypeAndVersion() (gas: 9744) +ChannelConfigStoreChannelAdderTest:testTypeAndVersion() (gas: 9744) ChannelConfigStoreChannelAdderTest:test_revertsIfCalledByNonOwner() (gas: 11426) +ChannelConfigStoreChannelAdderTest:test_revertsIfCalledByNonOwner() (gas: 11426) +ChannelConfigStoreTest:testSetChannelDefinitions() (gas: 47233) ChannelConfigStoreTest:testSetChannelDefinitions() (gas: 47233) ChannelConfigStoreTest:testSupportsInterface() (gas: 8413) +ChannelConfigStoreTest:testSupportsInterface() (gas: 8413) +ChannelConfigStoreTest:testTypeAndVersion() (gas: 9689) ChannelConfigStoreTest:testTypeAndVersion() (gas: 9689) ChannelConfigStoreTest:test_revertsIfCalledByNonOwner() (gas: 11360) +ChannelConfigStoreTest:test_revertsIfCalledByNonOwner() (gas: 11360) +ConfiguratorPromoteStagingConfigTest:test_promotesStagingConfig() (gas: 99035) ConfiguratorPromoteStagingConfigTest:test_promotesStagingConfig() (gas: 99035) ConfiguratorPromoteStagingConfigTest:test_revertsIfCalledByNonOwner() (gas: 10962) +ConfiguratorPromoteStagingConfigTest:test_revertsIfCalledByNonOwner() (gas: 10962) ConfiguratorPromoteStagingConfigTest:test_revertsIfIsGreenProductionDoesNotMatchContractState() (gas: 13423) +ConfiguratorPromoteStagingConfigTest:test_revertsIfIsGreenProductionDoesNotMatchContractState() (gas: 13423) +ConfiguratorPromoteStagingConfigTest:test_revertsIfNoConfigHasEverBeenSetWithThisConfigId() (gas: 13419) ConfiguratorPromoteStagingConfigTest:test_revertsIfNoConfigHasEverBeenSetWithThisConfigId() (gas: 13419) ConfiguratorPromoteStagingConfigTest:test_revertsIfProductionConfigDigestIsZero() (gas: 68521) +ConfiguratorPromoteStagingConfigTest:test_revertsIfProductionConfigDigestIsZero() (gas: 68521) +ConfiguratorPromoteStagingConfigTest:test_revertsIfStagingConfigDigestIsZero() (gas: 48258) ConfiguratorPromoteStagingConfigTest:test_revertsIfStagingConfigDigestIsZero() (gas: 48258) ConfiguratorSetProductionConfigTest:test_correctlyUpdatesTheConfig() (gas: 259758) +ConfiguratorSetProductionConfigTest:test_correctlyUpdatesTheConfig() (gas: 259758) +ConfiguratorSetProductionConfigTest:test_revertsIfCalledByNonOwner() (gas: 266559) ConfiguratorSetProductionConfigTest:test_revertsIfCalledByNonOwner() (gas: 266559) ConfiguratorSetProductionConfigTest:test_revertsIfFaultToleranceIsZero() (gas: 264173) +ConfiguratorSetProductionConfigTest:test_revertsIfFaultToleranceIsZero() (gas: 264173) ConfiguratorSetProductionConfigTest:test_revertsIfNotEnoughSigners() (gas: 95951) +ConfiguratorSetProductionConfigTest:test_revertsIfNotEnoughSigners() (gas: 95951) +ConfiguratorSetProductionConfigTest:test_revertsIfOnchainConfigIsInvalid() (gas: 60885) ConfiguratorSetProductionConfigTest:test_revertsIfOnchainConfigIsInvalid() (gas: 60885) ConfiguratorSetProductionConfigTest:test_revertsIfSetWithTooManySigners() (gas: 107412) +ConfiguratorSetProductionConfigTest:test_revertsIfSetWithTooManySigners() (gas: 107412) +ConfiguratorSetProductionConfigTest:test_supportsHigherVersionsIgnoringExcessOnchainConfig() (gas: 125093) ConfiguratorSetProductionConfigTest:test_supportsHigherVersionsIgnoringExcessOnchainConfig() (gas: 125093) ConfiguratorSetStagingConfigTest:test_correctlyUpdatesTheConfig() (gas: 266023) +ConfiguratorSetStagingConfigTest:test_correctlyUpdatesTheConfig() (gas: 266023) +ConfiguratorSetStagingConfigTest:test_revertsIfCalledByNonOwner() (gas: 266528) ConfiguratorSetStagingConfigTest:test_revertsIfCalledByNonOwner() (gas: 266528) ConfiguratorSetStagingConfigTest:test_revertsIfFaultToleranceIsZero() (gas: 264142) +ConfiguratorSetStagingConfigTest:test_revertsIfFaultToleranceIsZero() (gas: 264142) ConfiguratorSetStagingConfigTest:test_revertsIfNotEnoughSigners() (gas: 95920) +ConfiguratorSetStagingConfigTest:test_revertsIfNotEnoughSigners() (gas: 95920) +ConfiguratorSetStagingConfigTest:test_revertsIfOnchainConfigIsInvalid() (gas: 85217) ConfiguratorSetStagingConfigTest:test_revertsIfOnchainConfigIsInvalid() (gas: 85217) ConfiguratorSetStagingConfigTest:test_revertsIfSetWithTooManySigners() (gas: 107392) +ConfiguratorSetStagingConfigTest:test_revertsIfSetWithTooManySigners() (gas: 107392) +ConfiguratorTest:testSupportsInterface() (gas: 8367) ConfiguratorTest:testSupportsInterface() (gas: 8367) ConfiguratorTest:testTypeAndVersion() (gas: 9683) +ConfiguratorTest:testTypeAndVersion() (gas: 9683) DestinationFeeManagerProcessFeeTest:test_DiscountIsAppliedForNative() (gas: 52717) DestinationFeeManagerProcessFeeTest:test_DiscountIsReturnedForNative() (gas: 52645) DestinationFeeManagerProcessFeeTest:test_DiscountIsReturnedForNativeWithSurcharge() (gas: 78879) @@ -611,82 +665,238 @@ NoOpFeeManagerTestV051:test_supportsInterface_IVerifierFeeManager() (gas: 8529) NoOpFeeManagerTestV051:test_supportsInterface_UnsupportedInterface() (gas: 8607) NoOpFeeManagerTestV051:test_typeAndVersion() (gas: 9710) RewardManagerClaimTest:test_claimAllRecipients() (gas: 277087) +RewardManagerClaimTest:test_claimAllRecipients() (gas: 277087) +RewardManagerClaimTest:test_claimAllRecipients() (gas: 277087) RewardManagerClaimTest:test_claimMultipleRecipients() (gas: 154297) +RewardManagerClaimTest:test_claimMultipleRecipients() (gas: 154297) +RewardManagerClaimTest:test_claimMultipleRecipients() (gas: 154297) +RewardManagerClaimTest:test_claimRewardsWithDuplicatePoolIdsDoesNotPayoutTwice() (gas: 330011) +RewardManagerClaimTest:test_claimRewardsWithDuplicatePoolIdsDoesNotPayoutTwice() (gas: 330011) RewardManagerClaimTest:test_claimRewardsWithDuplicatePoolIdsDoesNotPayoutTwice() (gas: 330011) RewardManagerClaimTest:test_claimSingleRecipient() (gas: 88991) +RewardManagerClaimTest:test_claimSingleRecipient() (gas: 88991) +RewardManagerClaimTest:test_claimSingleRecipient() (gas: 88991) +RewardManagerClaimTest:test_claimUnevenAmountRoundsDown() (gas: 315214) RewardManagerClaimTest:test_claimUnevenAmountRoundsDown() (gas: 315214) +RewardManagerClaimTest:test_claimUnevenAmountRoundsDown() (gas: 315214) +RewardManagerClaimTest:test_claimUnregisteredPoolId() (gas: 35079) RewardManagerClaimTest:test_claimUnregisteredPoolId() (gas: 35079) +RewardManagerClaimTest:test_claimUnregisteredPoolId() (gas: 35079) +RewardManagerClaimTest:test_claimUnregisteredRecipient() (gas: 41138) RewardManagerClaimTest:test_claimUnregisteredRecipient() (gas: 41138) +RewardManagerClaimTest:test_claimUnregisteredRecipient() (gas: 41138) +RewardManagerClaimTest:test_eventIsEmittedUponClaim() (gas: 86074) +RewardManagerClaimTest:test_eventIsEmittedUponClaim() (gas: 86074) RewardManagerClaimTest:test_eventIsEmittedUponClaim() (gas: 86074) RewardManagerClaimTest:test_eventIsNotEmittedUponUnsuccessfulClaim() (gas: 25019) +RewardManagerClaimTest:test_eventIsNotEmittedUponUnsuccessfulClaim() (gas: 25019) +RewardManagerClaimTest:test_eventIsNotEmittedUponUnsuccessfulClaim() (gas: 25019) +RewardManagerClaimTest:test_recipientsClaimMultipleDeposits() (gas: 386534) +RewardManagerClaimTest:test_recipientsClaimMultipleDeposits() (gas: 386534) RewardManagerClaimTest:test_recipientsClaimMultipleDeposits() (gas: 386534) RewardManagerClaimTest:test_singleRecipientClaimMultipleDeposits() (gas: 137588) +RewardManagerClaimTest:test_singleRecipientClaimMultipleDeposits() (gas: 137588) +RewardManagerClaimTest:test_singleRecipientClaimMultipleDeposits() (gas: 137588) +RewardManagerNoRecipientSet:test_claimAllRecipientsAfterRecipientsSet() (gas: 491981) RewardManagerNoRecipientSet:test_claimAllRecipientsAfterRecipientsSet() (gas: 491981) +RewardManagerNoRecipientSet:test_claimAllRecipientsAfterRecipientsSet() (gas: 491981) +RewardManagerPayRecipientsTest:test_addFundsToPoolAsNonOwnerOrFeeManager() (gas: 11451) RewardManagerPayRecipientsTest:test_addFundsToPoolAsNonOwnerOrFeeManager() (gas: 11451) +RewardManagerPayRecipientsTest:test_addFundsToPoolAsNonOwnerOrFeeManager() (gas: 11451) +RewardManagerPayRecipientsTest:test_addFundsToPoolAsOwner() (gas: 53905) RewardManagerPayRecipientsTest:test_addFundsToPoolAsOwner() (gas: 53905) +RewardManagerPayRecipientsTest:test_addFundsToPoolAsOwner() (gas: 53905) +RewardManagerPayRecipientsTest:test_payAllRecipients() (gas: 250796) +RewardManagerPayRecipientsTest:test_payAllRecipients() (gas: 250796) RewardManagerPayRecipientsTest:test_payAllRecipients() (gas: 250796) RewardManagerPayRecipientsTest:test_payAllRecipientsFromNonAdminUser() (gas: 20475) +RewardManagerPayRecipientsTest:test_payAllRecipientsFromNonAdminUser() (gas: 20475) +RewardManagerPayRecipientsTest:test_payAllRecipientsFromNonAdminUser() (gas: 20475) +RewardManagerPayRecipientsTest:test_payAllRecipientsFromRecipientInPool() (gas: 251020) +RewardManagerPayRecipientsTest:test_payAllRecipientsFromRecipientInPool() (gas: 251020) RewardManagerPayRecipientsTest:test_payAllRecipientsFromRecipientInPool() (gas: 251020) RewardManagerPayRecipientsTest:test_payAllRecipientsWithAdditionalInvalidRecipient() (gas: 262224) +RewardManagerPayRecipientsTest:test_payAllRecipientsWithAdditionalInvalidRecipient() (gas: 262224) +RewardManagerPayRecipientsTest:test_payAllRecipientsWithAdditionalInvalidRecipient() (gas: 262224) +RewardManagerPayRecipientsTest:test_payAllRecipientsWithAdditionalUnregisteredRecipient() (gas: 265687) RewardManagerPayRecipientsTest:test_payAllRecipientsWithAdditionalUnregisteredRecipient() (gas: 265687) +RewardManagerPayRecipientsTest:test_payAllRecipientsWithAdditionalUnregisteredRecipient() (gas: 265687) +RewardManagerPayRecipientsTest:test_payRecipientWithInvalidPool() (gas: 28847) RewardManagerPayRecipientsTest:test_payRecipientWithInvalidPool() (gas: 28847) +RewardManagerPayRecipientsTest:test_payRecipientWithInvalidPool() (gas: 28847) +RewardManagerPayRecipientsTest:test_payRecipientsEmptyRecipientList() (gas: 25313) RewardManagerPayRecipientsTest:test_payRecipientsEmptyRecipientList() (gas: 25313) +RewardManagerPayRecipientsTest:test_payRecipientsEmptyRecipientList() (gas: 25313) +RewardManagerPayRecipientsTest:test_payRecipientsWithInvalidPoolId() (gas: 31375) +RewardManagerPayRecipientsTest:test_payRecipientsWithInvalidPoolId() (gas: 31375) RewardManagerPayRecipientsTest:test_payRecipientsWithInvalidPoolId() (gas: 31375) RewardManagerPayRecipientsTest:test_paySingleRecipient() (gas: 84729) +RewardManagerPayRecipientsTest:test_paySingleRecipient() (gas: 84729) +RewardManagerPayRecipientsTest:test_paySingleRecipient() (gas: 84729) +RewardManagerPayRecipientsTest:test_paySubsetOfRecipientsInPool() (gas: 198422) +RewardManagerPayRecipientsTest:test_paySubsetOfRecipientsInPool() (gas: 198422) RewardManagerPayRecipientsTest:test_paySubsetOfRecipientsInPool() (gas: 198422) RewardManagerRecipientClaimDifferentWeightsTest:test_allRecipientsClaimingReceiveExpectedAmount() (gas: 280683) +RewardManagerRecipientClaimDifferentWeightsTest:test_allRecipientsClaimingReceiveExpectedAmount() (gas: 280683) +RewardManagerRecipientClaimDifferentWeightsTest:test_allRecipientsClaimingReceiveExpectedAmount() (gas: 280683) +RewardManagerRecipientClaimMultiplePoolsTest:test_claimAllRecipientsMultiplePools() (gas: 512303) RewardManagerRecipientClaimMultiplePoolsTest:test_claimAllRecipientsMultiplePools() (gas: 512303) +RewardManagerRecipientClaimMultiplePoolsTest:test_claimAllRecipientsMultiplePools() (gas: 512303) +RewardManagerRecipientClaimMultiplePoolsTest:test_claimAllRecipientsSinglePool() (gas: 283568) RewardManagerRecipientClaimMultiplePoolsTest:test_claimAllRecipientsSinglePool() (gas: 283568) +RewardManagerRecipientClaimMultiplePoolsTest:test_claimAllRecipientsSinglePool() (gas: 283568) +RewardManagerRecipientClaimMultiplePoolsTest:test_claimEmptyPoolWhenSecondPoolContainsFunds() (gas: 293352) RewardManagerRecipientClaimMultiplePoolsTest:test_claimEmptyPoolWhenSecondPoolContainsFunds() (gas: 293352) +RewardManagerRecipientClaimMultiplePoolsTest:test_claimEmptyPoolWhenSecondPoolContainsFunds() (gas: 293352) +RewardManagerRecipientClaimMultiplePoolsTest:test_claimMultipleRecipientsMultiplePools() (gas: 262971) +RewardManagerRecipientClaimMultiplePoolsTest:test_claimMultipleRecipientsMultiplePools() (gas: 262971) RewardManagerRecipientClaimMultiplePoolsTest:test_claimMultipleRecipientsMultiplePools() (gas: 262971) RewardManagerRecipientClaimMultiplePoolsTest:test_claimMultipleRecipientsSinglePool() (gas: 154441) +RewardManagerRecipientClaimMultiplePoolsTest:test_claimMultipleRecipientsSinglePool() (gas: 154441) +RewardManagerRecipientClaimMultiplePoolsTest:test_claimMultipleRecipientsSinglePool() (gas: 154441) +RewardManagerRecipientClaimMultiplePoolsTest:test_claimSingleRecipientMultiplePools() (gas: 132601) +RewardManagerRecipientClaimMultiplePoolsTest:test_claimSingleRecipientMultiplePools() (gas: 132601) RewardManagerRecipientClaimMultiplePoolsTest:test_claimSingleRecipientMultiplePools() (gas: 132601) RewardManagerRecipientClaimMultiplePoolsTest:test_claimSingleUniqueRecipient() (gas: 105989) +RewardManagerRecipientClaimMultiplePoolsTest:test_claimSingleUniqueRecipient() (gas: 105989) +RewardManagerRecipientClaimMultiplePoolsTest:test_claimSingleUniqueRecipient() (gas: 105989) +RewardManagerRecipientClaimMultiplePoolsTest:test_claimUnevenAmountRoundsDown() (gas: 579404) RewardManagerRecipientClaimMultiplePoolsTest:test_claimUnevenAmountRoundsDown() (gas: 579404) +RewardManagerRecipientClaimMultiplePoolsTest:test_claimUnevenAmountRoundsDown() (gas: 579404) +RewardManagerRecipientClaimMultiplePoolsTest:test_claimUnregisteredRecipient() (gas: 64560) RewardManagerRecipientClaimMultiplePoolsTest:test_claimUnregisteredRecipient() (gas: 64560) +RewardManagerRecipientClaimMultiplePoolsTest:test_claimUnregisteredRecipient() (gas: 64560) +RewardManagerRecipientClaimMultiplePoolsTest:test_getAvailableRewardsCursorAndTotalPoolsEqual() (gas: 13029) RewardManagerRecipientClaimMultiplePoolsTest:test_getAvailableRewardsCursorAndTotalPoolsEqual() (gas: 13029) +RewardManagerRecipientClaimMultiplePoolsTest:test_getAvailableRewardsCursorAndTotalPoolsEqual() (gas: 13029) +RewardManagerRecipientClaimMultiplePoolsTest:test_getAvailableRewardsCursorCannotBeGreaterThanTotalPools() (gas: 12724) +RewardManagerRecipientClaimMultiplePoolsTest:test_getAvailableRewardsCursorCannotBeGreaterThanTotalPools() (gas: 12724) RewardManagerRecipientClaimMultiplePoolsTest:test_getAvailableRewardsCursorCannotBeGreaterThanTotalPools() (gas: 12724) RewardManagerRecipientClaimMultiplePoolsTest:test_getAvailableRewardsCursorSingleResult() (gas: 22426) +RewardManagerRecipientClaimMultiplePoolsTest:test_getAvailableRewardsCursorSingleResult() (gas: 22426) +RewardManagerRecipientClaimMultiplePoolsTest:test_getAvailableRewardsCursorSingleResult() (gas: 22426) +RewardManagerRecipientClaimMultiplePoolsTest:test_getRewardsAvailableToRecipientInBothPools() (gas: 32225) +RewardManagerRecipientClaimMultiplePoolsTest:test_getRewardsAvailableToRecipientInBothPools() (gas: 32225) RewardManagerRecipientClaimMultiplePoolsTest:test_getRewardsAvailableToRecipientInBothPools() (gas: 32225) RewardManagerRecipientClaimMultiplePoolsTest:test_getRewardsAvailableToRecipientInBothPoolsWhereAlreadyClaimed() (gas: 148575) +RewardManagerRecipientClaimMultiplePoolsTest:test_getRewardsAvailableToRecipientInBothPoolsWhereAlreadyClaimed() (gas: 148575) +RewardManagerRecipientClaimMultiplePoolsTest:test_getRewardsAvailableToRecipientInBothPoolsWhereAlreadyClaimed() (gas: 148575) +RewardManagerRecipientClaimMultiplePoolsTest:test_getRewardsAvailableToRecipientInNoPools() (gas: 21683) RewardManagerRecipientClaimMultiplePoolsTest:test_getRewardsAvailableToRecipientInNoPools() (gas: 21683) +RewardManagerRecipientClaimMultiplePoolsTest:test_getRewardsAvailableToRecipientInNoPools() (gas: 21683) +RewardManagerRecipientClaimMultiplePoolsTest:test_getRewardsAvailableToRecipientInSinglePool() (gas: 27742) RewardManagerRecipientClaimMultiplePoolsTest:test_getRewardsAvailableToRecipientInSinglePool() (gas: 27742) +RewardManagerRecipientClaimMultiplePoolsTest:test_getRewardsAvailableToRecipientInSinglePool() (gas: 27742) +RewardManagerRecipientClaimMultiplePoolsTest:test_recipientsClaimMultipleDeposits() (gas: 391104) RewardManagerRecipientClaimMultiplePoolsTest:test_recipientsClaimMultipleDeposits() (gas: 391104) +RewardManagerRecipientClaimMultiplePoolsTest:test_recipientsClaimMultipleDeposits() (gas: 391104) +RewardManagerRecipientClaimMultiplePoolsTest:test_singleRecipientClaimMultipleDeposits() (gas: 137673) +RewardManagerRecipientClaimMultiplePoolsTest:test_singleRecipientClaimMultipleDeposits() (gas: 137673) RewardManagerRecipientClaimMultiplePoolsTest:test_singleRecipientClaimMultipleDeposits() (gas: 137673) RewardManagerRecipientClaimUnevenWeightTest:test_allRecipientsClaimingReceiveExpectedAmount() (gas: 199401) +RewardManagerRecipientClaimUnevenWeightTest:test_allRecipientsClaimingReceiveExpectedAmount() (gas: 199401) +RewardManagerRecipientClaimUnevenWeightTest:test_allRecipientsClaimingReceiveExpectedAmount() (gas: 199401) +RewardManagerRecipientClaimUnevenWeightTest:test_allRecipientsClaimingReceiveExpectedAmountWithSmallDeposit() (gas: 219274) +RewardManagerRecipientClaimUnevenWeightTest:test_allRecipientsClaimingReceiveExpectedAmountWithSmallDeposit() (gas: 219274) RewardManagerRecipientClaimUnevenWeightTest:test_allRecipientsClaimingReceiveExpectedAmountWithSmallDeposit() (gas: 219274) RewardManagerSetRecipientsTest:test_eventIsEmittedUponSetRecipients() (gas: 191701) +RewardManagerSetRecipientsTest:test_eventIsEmittedUponSetRecipients() (gas: 191701) +RewardManagerSetRecipientsTest:test_eventIsEmittedUponSetRecipients() (gas: 191701) +RewardManagerSetRecipientsTest:test_setRecipientContainsDuplicateRecipients() (gas: 126082) RewardManagerSetRecipientsTest:test_setRecipientContainsDuplicateRecipients() (gas: 126082) +RewardManagerSetRecipientsTest:test_setRecipientContainsDuplicateRecipients() (gas: 126082) +RewardManagerSetRecipientsTest:test_setRewardRecipientFromManagerAddress() (gas: 193880) RewardManagerSetRecipientsTest:test_setRewardRecipientFromManagerAddress() (gas: 193880) +RewardManagerSetRecipientsTest:test_setRewardRecipientFromManagerAddress() (gas: 193880) +RewardManagerSetRecipientsTest:test_setRewardRecipientFromNonOwnerOrFeeManagerAddress() (gas: 21452) RewardManagerSetRecipientsTest:test_setRewardRecipientFromNonOwnerOrFeeManagerAddress() (gas: 21452) +RewardManagerSetRecipientsTest:test_setRewardRecipientFromNonOwnerOrFeeManagerAddress() (gas: 21452) +RewardManagerSetRecipientsTest:test_setRewardRecipientTwice() (gas: 193368) +RewardManagerSetRecipientsTest:test_setRewardRecipientTwice() (gas: 193368) RewardManagerSetRecipientsTest:test_setRewardRecipientTwice() (gas: 193368) RewardManagerSetRecipientsTest:test_setRewardRecipientWeights() (gas: 180630) +RewardManagerSetRecipientsTest:test_setRewardRecipientWeights() (gas: 180630) +RewardManagerSetRecipientsTest:test_setRewardRecipientWeights() (gas: 180630) +RewardManagerSetRecipientsTest:test_setRewardRecipientWithZeroAddress() (gas: 90224) +RewardManagerSetRecipientsTest:test_setRewardRecipientWithZeroAddress() (gas: 90224) RewardManagerSetRecipientsTest:test_setRewardRecipientWithZeroAddress() (gas: 90224) RewardManagerSetRecipientsTest:test_setRewardRecipientWithZeroWeight() (gas: 191334) +RewardManagerSetRecipientsTest:test_setRewardRecipientWithZeroWeight() (gas: 191334) +RewardManagerSetRecipientsTest:test_setRewardRecipientWithZeroWeight() (gas: 191334) +RewardManagerSetRecipientsTest:test_setRewardRecipients() (gas: 185589) RewardManagerSetRecipientsTest:test_setRewardRecipients() (gas: 185589) +RewardManagerSetRecipientsTest:test_setRewardRecipients() (gas: 185589) +RewardManagerSetRecipientsTest:test_setRewardRecipientsIsEmpty() (gas: 87136) RewardManagerSetRecipientsTest:test_setRewardRecipientsIsEmpty() (gas: 87136) +RewardManagerSetRecipientsTest:test_setRewardRecipientsIsEmpty() (gas: 87136) +RewardManagerSetRecipientsTest:test_setSingleRewardRecipient() (gas: 110371) RewardManagerSetRecipientsTest:test_setSingleRewardRecipient() (gas: 110371) +RewardManagerSetRecipientsTest:test_setSingleRewardRecipient() (gas: 110371) +RewardManagerSetupTest:test_eventEmittedUponFeeManagerUpdate() (gas: 21360) +RewardManagerSetupTest:test_eventEmittedUponFeeManagerUpdate() (gas: 21360) RewardManagerSetupTest:test_eventEmittedUponFeeManagerUpdate() (gas: 21360) RewardManagerSetupTest:test_eventEmittedUponFeePaid() (gas: 259117) +RewardManagerSetupTest:test_eventEmittedUponFeePaid() (gas: 259117) +RewardManagerSetupTest:test_eventEmittedUponFeePaid() (gas: 259117) +RewardManagerSetupTest:test_rejectsZeroLinkAddressOnConstruction() (gas: 59411) +RewardManagerSetupTest:test_rejectsZeroLinkAddressOnConstruction() (gas: 59411) RewardManagerSetupTest:test_rejectsZeroLinkAddressOnConstruction() (gas: 59411) RewardManagerSetupTest:test_setFeeManagerZeroAddress() (gas: 17105) +RewardManagerSetupTest:test_setFeeManagerZeroAddress() (gas: 17105) +RewardManagerSetupTest:test_setFeeManagerZeroAddress() (gas: 17105) +RewardManagerUpdateRewardRecipientsMultiplePoolsTest:test_updatePrimaryRecipientWeights() (gas: 376509) RewardManagerUpdateRewardRecipientsMultiplePoolsTest:test_updatePrimaryRecipientWeights() (gas: 376509) +RewardManagerUpdateRewardRecipientsMultiplePoolsTest:test_updatePrimaryRecipientWeights() (gas: 376509) +RewardManagerUpdateRewardRecipientsTest:test_eventIsEmittedUponUpdateRecipients() (gas: 280459) RewardManagerUpdateRewardRecipientsTest:test_eventIsEmittedUponUpdateRecipients() (gas: 280459) +RewardManagerUpdateRewardRecipientsTest:test_eventIsEmittedUponUpdateRecipients() (gas: 280459) +RewardManagerUpdateRewardRecipientsTest:test_onlyAdminCanUpdateRecipients() (gas: 19749) RewardManagerUpdateRewardRecipientsTest:test_onlyAdminCanUpdateRecipients() (gas: 19749) +RewardManagerUpdateRewardRecipientsTest:test_onlyAdminCanUpdateRecipients() (gas: 19749) +RewardManagerUpdateRewardRecipientsTest:test_partialUpdateRecipientWeights() (gas: 220875) +RewardManagerUpdateRewardRecipientsTest:test_partialUpdateRecipientWeights() (gas: 220875) RewardManagerUpdateRewardRecipientsTest:test_partialUpdateRecipientWeights() (gas: 220875) RewardManagerUpdateRewardRecipientsTest:test_updateAllRecipientsWithSameAddressAndWeight() (gas: 274265) +RewardManagerUpdateRewardRecipientsTest:test_updateAllRecipientsWithSameAddressAndWeight() (gas: 274265) +RewardManagerUpdateRewardRecipientsTest:test_updateAllRecipientsWithSameAddressAndWeight() (gas: 274265) +RewardManagerUpdateRewardRecipientsTest:test_updatePartialRecipientsToSubset() (gas: 254276) +RewardManagerUpdateRewardRecipientsTest:test_updatePartialRecipientsToSubset() (gas: 254276) RewardManagerUpdateRewardRecipientsTest:test_updatePartialRecipientsToSubset() (gas: 254276) RewardManagerUpdateRewardRecipientsTest:test_updatePartialRecipientsWithExcessiveWeight() (gas: 259263) +RewardManagerUpdateRewardRecipientsTest:test_updatePartialRecipientsWithExcessiveWeight() (gas: 259263) +RewardManagerUpdateRewardRecipientsTest:test_updatePartialRecipientsWithExcessiveWeight() (gas: 259263) +RewardManagerUpdateRewardRecipientsTest:test_updatePartialRecipientsWithSameAddressAndWeight() (gas: 149872) RewardManagerUpdateRewardRecipientsTest:test_updatePartialRecipientsWithSameAddressAndWeight() (gas: 149872) +RewardManagerUpdateRewardRecipientsTest:test_updatePartialRecipientsWithSameAddressAndWeight() (gas: 149872) +RewardManagerUpdateRewardRecipientsTest:test_updatePartialRecipientsWithUnderWeightSet() (gas: 259337) RewardManagerUpdateRewardRecipientsTest:test_updatePartialRecipientsWithUnderWeightSet() (gas: 259337) +RewardManagerUpdateRewardRecipientsTest:test_updatePartialRecipientsWithUnderWeightSet() (gas: 259337) +RewardManagerUpdateRewardRecipientsTest:test_updateRecipientWeights() (gas: 371990) RewardManagerUpdateRewardRecipientsTest:test_updateRecipientWeights() (gas: 371990) +RewardManagerUpdateRewardRecipientsTest:test_updateRecipientWeights() (gas: 371990) +RewardManagerUpdateRewardRecipientsTest:test_updateRecipientWithNewZeroAddress() (gas: 270846) +RewardManagerUpdateRewardRecipientsTest:test_updateRecipientWithNewZeroAddress() (gas: 270846) RewardManagerUpdateRewardRecipientsTest:test_updateRecipientWithNewZeroAddress() (gas: 270846) RewardManagerUpdateRewardRecipientsTest:test_updateRecipientsContainsDuplicateRecipients() (gas: 288619) +RewardManagerUpdateRewardRecipientsTest:test_updateRecipientsContainsDuplicateRecipients() (gas: 288619) +RewardManagerUpdateRewardRecipientsTest:test_updateRecipientsContainsDuplicateRecipients() (gas: 288619) +RewardManagerUpdateRewardRecipientsTest:test_updateRecipientsToDifferentLargerSet() (gas: 407920) +RewardManagerUpdateRewardRecipientsTest:test_updateRecipientsToDifferentLargerSet() (gas: 407920) RewardManagerUpdateRewardRecipientsTest:test_updateRecipientsToDifferentLargerSet() (gas: 407920) RewardManagerUpdateRewardRecipientsTest:test_updateRecipientsToDifferentPartialSet() (gas: 318073) +RewardManagerUpdateRewardRecipientsTest:test_updateRecipientsToDifferentPartialSet() (gas: 318073) +RewardManagerUpdateRewardRecipientsTest:test_updateRecipientsToDifferentPartialSet() (gas: 318073) +RewardManagerUpdateRewardRecipientsTest:test_updateRecipientsToDifferentSet() (gas: 377828) RewardManagerUpdateRewardRecipientsTest:test_updateRecipientsToDifferentSet() (gas: 377828) +RewardManagerUpdateRewardRecipientsTest:test_updateRecipientsToDifferentSet() (gas: 377828) +RewardManagerUpdateRewardRecipientsTest:test_updateRecipientsToDifferentSetWithInvalidWeights() (gas: 312166) RewardManagerUpdateRewardRecipientsTest:test_updateRecipientsToDifferentSetWithInvalidWeights() (gas: 312166) +RewardManagerUpdateRewardRecipientsTest:test_updateRecipientsToDifferentSetWithInvalidWeights() (gas: 312166) +RewardManagerUpdateRewardRecipientsTest:test_updateRecipientsUpdateAndRemoveExistingForLargerSet() (gas: 399743) RewardManagerUpdateRewardRecipientsTest:test_updateRecipientsUpdateAndRemoveExistingForLargerSet() (gas: 399743) +RewardManagerUpdateRewardRecipientsTest:test_updateRecipientsUpdateAndRemoveExistingForLargerSet() (gas: 399743) +RewardManagerUpdateRewardRecipientsTest:test_updateRecipientsUpdateAndRemoveExistingForSmallerSet() (gas: 289557) +RewardManagerUpdateRewardRecipientsTest:test_updateRecipientsUpdateAndRemoveExistingForSmallerSet() (gas: 289557) RewardManagerUpdateRewardRecipientsTest:test_updateRecipientsUpdateAndRemoveExistingForSmallerSet() (gas: 289557) VerificationdeactivateConfigWhenThereAreMultipleDigestsTest:test_correctlyRemovesAMiddleDigest() (gas: 27017) VerificationdeactivateConfigWhenThereAreMultipleDigestsTest:test_correctlyRemovesTheFirstDigest() (gas: 27007) @@ -759,8 +969,11 @@ VerifierProxyAccessControlledVerificationTestV051:test_revertsIfNoAccess() (gas: VerifierProxyAccessControlledVerificationTestV05:test_proxiesToTheVerifierIfHasAccess() (gas: 205961) VerifierProxyAccessControlledVerificationTestV05:test_revertsIfNoAccess() (gas: 112257) VerifierProxyConstructorTest:test_correctlySetsTheCorrectAccessControllerInterface() (gas: 1485337) +VerifierProxyConstructorTest:test_correctlySetsTheCorrectAccessControllerInterface() (gas: 1485337) +VerifierProxyConstructorTest:test_correctlySetsTheOwner() (gas: 1465483) VerifierProxyConstructorTest:test_correctlySetsTheOwner() (gas: 1465483) VerifierProxyConstructorTest:test_correctlySetsVersion() (gas: 9767) +VerifierProxyConstructorTest:test_correctlySetsVersion() (gas: 9767) VerifierProxyConstructorTestV051:test_correctlySetsTheCorrectAccessControllerInterface() (gas: 1715654) VerifierProxyConstructorTestV051:test_correctlySetsTheOwner() (gas: 1695712) VerifierProxyConstructorTestV051:test_correctlySetsVersion() (gas: 9767) @@ -792,18 +1005,26 @@ VerifierProxyInitializeVerifierTestV05:test_setFeeManagerWhichDoesntHonourInterf VerifierProxyInitializeVerifierTestV05:test_setFeeManagerZeroAddress() (gas: 10911) VerifierProxyInitializeVerifierTestV05:test_updatesVerifierIfVerifier() (gas: 48356) VerifierProxySetAccessControllerTest:test_emitsTheCorrectEvent() (gas: 35348) +VerifierProxySetAccessControllerTest:test_emitsTheCorrectEvent() (gas: 35348) VerifierProxySetAccessControllerTest:test_revertsIfCalledByNonOwner() (gas: 15025) +VerifierProxySetAccessControllerTest:test_revertsIfCalledByNonOwner() (gas: 15025) +VerifierProxySetAccessControllerTest:test_successfullySetsNewAccessController() (gas: 34921) VerifierProxySetAccessControllerTest:test_successfullySetsNewAccessController() (gas: 34921) VerifierProxySetAccessControllerTest:test_successfullySetsNewAccessControllerIsEmpty() (gas: 15065) +VerifierProxySetAccessControllerTest:test_successfullySetsNewAccessControllerIsEmpty() (gas: 15065) VerifierProxySetAccessControllerTestV051:test_emitsTheCorrectEvent() (gas: 35348) VerifierProxySetAccessControllerTestV051:test_revertsIfCalledByNonOwner() (gas: 15025) VerifierProxySetAccessControllerTestV051:test_successfullySetsNewAccessController() (gas: 34943) VerifierProxySetAccessControllerTestV051:test_successfullySetsNewAccessControllerIsEmpty() (gas: 15087) VerifierProxyUnsetVerifierTest:test_revertsIfDigestDoesNotExist() (gas: 13149) +VerifierProxyUnsetVerifierTest:test_revertsIfDigestDoesNotExist() (gas: 13149) +VerifierProxyUnsetVerifierTest:test_revertsIfNotAdmin() (gas: 14973) VerifierProxyUnsetVerifierTest:test_revertsIfNotAdmin() (gas: 14973) VerifierProxyUnsetVerifierTestV051:test_revertsIfDigestDoesNotExist() (gas: 13171) VerifierProxyUnsetVerifierTestV051:test_revertsIfNotAdmin() (gas: 14995) VerifierProxyUnsetVerifierWithPreviouslySetVerifierTest:test_correctlyUnsetsVerifier() (gas: 15555) +VerifierProxyUnsetVerifierWithPreviouslySetVerifierTest:test_correctlyUnsetsVerifier() (gas: 15555) +VerifierProxyUnsetVerifierWithPreviouslySetVerifierTest:test_emitsAnEventAfterUnsettingVerifier() (gas: 17985) VerifierProxyUnsetVerifierWithPreviouslySetVerifierTest:test_emitsAnEventAfterUnsettingVerifier() (gas: 17985) VerifierProxyUnsetVerifierWithPreviouslySetVerifierTestV051:test_correctlyUnsetsVerifier() (gas: 15599) VerifierProxyUnsetVerifierWithPreviouslySetVerifierTestV051:test_emitsAnEventAfterUnsettingVerifier() (gas: 18007) @@ -857,6 +1078,8 @@ VerifierSetConfigWhenThereAreMultipleDigestsTestV051:test_correctlyUpdatesTheDig VerifierSetConfigWhenThereAreMultipleDigestsTestV051:test_incrementalConfigUpdates() (gas: 1424620) VerifierSetConfigWhenThereAreMultipleDigestsTestV051:test_revertsIfDuplicateConfigIsSet() (gas: 545746) VerifierSupportsInterfaceTest:test_falseIfIsNotCorrectInterface() (gas: 8421) +VerifierSupportsInterfaceTest:test_falseIfIsNotCorrectInterface() (gas: 8421) +VerifierSupportsInterfaceTest:test_trueIfIsCorrectInterface() (gas: 8464) VerifierSupportsInterfaceTest:test_trueIfIsCorrectInterface() (gas: 8464) VerifierSupportsInterfaceTestV051:test_falseIfIsNotCorrectInterface() (gas: 8421) VerifierSupportsInterfaceTestV051:test_trueIfIsCorrectInterface() (gas: 8464) @@ -968,4 +1191,4 @@ Verifier_verifyWithFeeV03:testVerifyProxyWithNativeFeeSuccess_gas() (gas: 257300 Verifier_verifyWithFeeV051:testVerifyProxyWithLinkFeeSuccess_gas() (gas: 238773) Verifier_verifyWithFeeV051:testVerifyProxyWithNativeFeeSuccess_gas() (gas: 257250) Verifier_verifyWithFeeV05:testVerifyProxyWithLinkFeeSuccess_gas() (gas: 238627) -Verifier_verifyWithFeeV05:testVerifyProxyWithNativeFeeSuccess_gas() (gas: 257104) +Verifier_verifyWithFeeV05:testVerifyProxyWithNativeFeeSuccess_gas() (gas: 257104) \ No newline at end of file From e972622cecd5fb26ffad40f31cf702bfb1569c68 Mon Sep 17 00:00:00 2001 From: Rens Rooimans Date: Fri, 21 Aug 2026 11:21:58 +0200 Subject: [PATCH 4/9] bump forge-std to 1.16.2 & snap --- .../gas-snapshots/data-feeds.gas-snapshot | 68 +- contracts/gas-snapshots/l2ep.gas-snapshot | 84 +- .../gas-snapshots/llo-feeds.gas-snapshot | 1312 ++++++++--------- .../operatorforwarder.gas-snapshot | 18 +- contracts/gas-snapshots/payments.gas-snapshot | 42 +- contracts/gas-snapshots/shared.gas-snapshot | 162 +- contracts/package.json | 2 +- contracts/pnpm-lock.yaml | 12 +- .../snapshots/DataFeedsCacheGasTest.json | 30 + 9 files changed, 880 insertions(+), 850 deletions(-) create mode 100644 contracts/snapshots/DataFeedsCacheGasTest.json diff --git a/contracts/gas-snapshots/data-feeds.gas-snapshot b/contracts/gas-snapshots/data-feeds.gas-snapshot index 9795caaeb9..d0990dd84d 100644 --- a/contracts/gas-snapshots/data-feeds.gas-snapshot +++ b/contracts/gas-snapshots/data-feeds.gas-snapshot @@ -1,12 +1,12 @@ -BundleAggregatorProxyTest:test_aggregator() (gas: 12620) -BundleAggregatorProxyTest:test_bundleDecimals() (gas: 19152) +BundleAggregatorProxyTest:test_aggregator() (gas: 9785) +BundleAggregatorProxyTest:test_bundleDecimals() (gas: 16300) BundleAggregatorProxyTest:test_confirmAggregatorRevertNotProposed() (gas: 13155) BundleAggregatorProxyTest:test_confirmAggregatorSuccess() (gas: 32435) BundleAggregatorProxyTest:test_description() (gas: 20305) -BundleAggregatorProxyTest:test_latestBundle() (gas: 19795) -BundleAggregatorProxyTest:test_latestBundleTimestamp() (gas: 18092) -BundleAggregatorProxyTest:test_proposeAggregator() (gas: 41274) -BundleAggregatorProxyTest:test_version() (gas: 13639) +BundleAggregatorProxyTest:test_latestBundle() (gas: 16946) +BundleAggregatorProxyTest:test_latestBundleTimestamp() (gas: 15240) +BundleAggregatorProxyTest:test_proposeAggregator() (gas: 40942) +BundleAggregatorProxyTest:test_version() (gas: 10787) DataFeedsCacheGasTest:test_bundleDecimals_proxy_gas() (gas: 22286) DataFeedsCacheGasTest:test_decimals_proxy_gas() (gas: 16912) DataFeedsCacheGasTest:test_description_proxy_gas() (gas: 20706) @@ -35,29 +35,29 @@ DataFeedsCacheGasTest:test_write_setDecimalFeedConfigs_1_gas() (gas: 219180) DataFeedsCacheGasTest:test_write_setDecimalFeedConfigs_5_gas() (gas: 980459) DataFeedsCacheGasTest:test_write_setDecimalFeedConfigs_with_delete_1_gas() (gas: 74514) DataFeedsCacheGasTest:test_write_setDecimalFeedConfigs_with_delete_5_gas() (gas: 297007) -DataFeedsCacheTest:testFuzzy_getDataType(bytes16,uint256) (runs: 256, μ: 9492, ~: 9492) +DataFeedsCacheTest:testFuzzy_getDataType(bytes16,uint256) (runs: 256, μ: 9146, ~: 9146) DataFeedsCacheTest:testFuzzy_getDataTypeRevertOutOfBound(bytes16,uint256) (runs: 256, μ: 9269, ~: 9269) -DataFeedsCacheTest:testFuzzy_recoverTokensERC20Success(uint256) (runs: 256, μ: 77076, ~: 77076) -DataFeedsCacheTest:testFuzzy_recoverTokensNativeSuccess(uint256) (runs: 256, μ: 49092, ~: 49092) -DataFeedsCacheTest:test_bundleDecimals() (gas: 282593) -DataFeedsCacheTest:test_decimals() (gas: 221706) +DataFeedsCacheTest:testFuzzy_recoverTokensERC20Success(uint256) (runs: 256, μ: 76409, ~: 76409) +DataFeedsCacheTest:testFuzzy_recoverTokensNativeSuccess(uint256) (runs: 256, μ: 48096, ~: 48096) +DataFeedsCacheTest:test_bundleDecimals() (gas: 281597) +DataFeedsCacheTest:test_decimals() (gas: 221374) DataFeedsCacheTest:test_description() (gas: 224355) -DataFeedsCacheTest:test_feedCanBeWrittenToByMultipleWorkflows() (gas: 219534) -DataFeedsCacheTest:test_getDataIdForProxy() (gas: 15208) -DataFeedsCacheTest:test_getDataType() (gas: 8885) -DataFeedsCacheTest:test_getFeedMetadata() (gas: 268408) +DataFeedsCacheTest:test_feedCanBeWrittenToByMultipleWorkflows() (gas: 216360) +DataFeedsCacheTest:test_getDataIdForProxy() (gas: 12359) +DataFeedsCacheTest:test_getDataType() (gas: 6039) +DataFeedsCacheTest:test_getFeedMetadata() (gas: 259937) DataFeedsCacheTest:test_getFeedMetadataRevertFeedNotConfigured() (gas: 13418) -DataFeedsCacheTest:test_getLatestAnswer1() (gas: 307893) -DataFeedsCacheTest:test_getLatestAnswer2() (gas: 578516) -DataFeedsCacheTest:test_getLatestBundle1() (gas: 410713) -DataFeedsCacheTest:test_getLatestBundle2() (gas: 781449) -DataFeedsCacheTest:test_getLatestByFeedId() (gas: 317993) -DataFeedsCacheTest:test_getWorkflowMetaData() (gas: 10183) -DataFeedsCacheTest:test_isFeedAdmin() (gas: 14294) -DataFeedsCacheTest:test_latestAnswer1() (gas: 314079) -DataFeedsCacheTest:test_latestAnswer2() (gas: 589227) -DataFeedsCacheTest:test_latestBundle1() (gas: 420308) -DataFeedsCacheTest:test_latestBundle2() (gas: 798325) +DataFeedsCacheTest:test_getLatestAnswer1() (gas: 307550) +DataFeedsCacheTest:test_getLatestAnswer2() (gas: 577830) +DataFeedsCacheTest:test_getLatestBundle1() (gas: 409053) +DataFeedsCacheTest:test_getLatestBundle2() (gas: 778129) +DataFeedsCacheTest:test_getLatestByFeedId() (gas: 315658) +DataFeedsCacheTest:test_getWorkflowMetaData() (gas: 7015) +DataFeedsCacheTest:test_isFeedAdmin() (gas: 11114) +DataFeedsCacheTest:test_latestAnswer1() (gas: 313736) +DataFeedsCacheTest:test_latestAnswer2() (gas: 588541) +DataFeedsCacheTest:test_latestBundle1() (gas: 418316) +DataFeedsCacheTest:test_latestBundle2() (gas: 795005) DataFeedsCacheTest:test_onReportInvalidPermission() (gas: 675249) DataFeedsCacheTest:test_onReportRevertInvalidWorkflowName() (gas: 252344) DataFeedsCacheTest:test_onReportRevertInvalidWorkflowOwner() (gas: 252374) @@ -65,11 +65,11 @@ DataFeedsCacheTest:test_onReportStaleBundleReport() (gas: 815321) DataFeedsCacheTest:test_onReportStaleDecimalReport() (gas: 635670) DataFeedsCacheTest:test_onReportSuccess_BundleReportLength1() (gas: 402709) DataFeedsCacheTest:test_onReportSuccess_BundleReportLength2() (gas: 765894) -DataFeedsCacheTest:test_onReportSuccess_DecimalReportLength1() (gas: 310079) +DataFeedsCacheTest:test_onReportSuccess_DecimalReportLength1() (gas: 309736) DataFeedsCacheTest:test_onReportSuccess_DecimalReportLength2() (gas: 579838) DataFeedsCacheTest:test_onReportSuccess_EmptyBundleReport() (gas: 251195) -DataFeedsCacheTest:test_onReportSuccess_EmptyDecimalReport() (gas: 241310) -DataFeedsCacheTest:test_onReportSuccess_EmptyReport() (gas: 221781) +DataFeedsCacheTest:test_onReportSuccess_EmptyDecimalReport() (gas: 239595) +DataFeedsCacheTest:test_onReportSuccess_EmptyReport() (gas: 221438) DataFeedsCacheTest:test_recoverTokensERC20RevertNoBalance() (gas: 19928) DataFeedsCacheTest:test_recoverTokensNativeRevertNoBalance() (gas: 11489) DataFeedsCacheTest:test_recoverTokensRevertUnauthorized() (gas: 13353) @@ -78,10 +78,10 @@ DataFeedsCacheTest:test_removeDataIdMappingsForProxiesSuccess_and_call_decimals( DataFeedsCacheTest:test_removeFeedAdminSuccess() (gas: 27000) DataFeedsCacheTest:test_removeFeedsRevertInvalidSender() (gas: 12166) DataFeedsCacheTest:test_removeFeedsRevertNotConfiguredFeed() (gas: 20120) -DataFeedsCacheTest:test_removeFeedsSuccess() (gas: 193844) +DataFeedsCacheTest:test_removeFeedsSuccess() (gas: 193040) DataFeedsCacheTest:test_setBundleFeedConfigsRevertInvalidConfigsLengthDecimals() (gas: 32379) -DataFeedsCacheTest:test_setBundleFeedConfigs_setAgainWithClear() (gas: 961624) -DataFeedsCacheTest:test_setDecimalFeedConfigs_setAgainWithClear() (gas: 744323) +DataFeedsCacheTest:test_setBundleFeedConfigs_setAgainWithClear() (gas: 949953) +DataFeedsCacheTest:test_setDecimalFeedConfigs_setAgainWithClear() (gas: 735308) DataFeedsCacheTest:test_setFeedAdminRevertZeroAddress() (gas: 11343) DataFeedsCacheTest:test_setFeedConfigsRevertEmptyConfig() (gas: 55621) DataFeedsCacheTest:test_setFeedConfigsRevertInvalidConfigsLengthDescriptions() (gas: 48286) @@ -89,9 +89,9 @@ DataFeedsCacheTest:test_setFeedConfigsRevertInvalidWorkflowMetadata() (gas: 9404 DataFeedsCacheTest:test_setFeedConfigsRevertUnauthorizedFeedAdmin() (gas: 43047) DataFeedsCacheTest:test_setFeedConfigsRevertZeroDataId() (gas: 43199) DataFeedsCacheTest:test_setFeedConfigsSuccess() (gas: 220704) -DataFeedsCacheTest:test_supportsInterface() (gas: 8637) +DataFeedsCacheTest:test_supportsInterface() (gas: 5794) DataFeedsCacheTest:test_updateDataIdMappingsForProxiesRevertInvalidLengths() (gas: 12232) DataFeedsCacheTest:test_updateDataIdMappingsForProxiesRevertUnauthorizedOwner() (gas: 13158) DataFeedsCacheTest:test_updateDataIdMappingsForProxiesSuccess() (gas: 21331) DataFeedsCacheTest:test_updateDataIdMappingsForProxies_and_RevertOnWrongCaller() (gas: 25804) -DataFeedsCacheTest:test_updateDataIdMappingsForProxies_and_call_decimals() (gas: 55086) \ No newline at end of file +DataFeedsCacheTest:test_updateDataIdMappingsForProxies_and_call_decimals() (gas: 53758) \ No newline at end of file diff --git a/contracts/gas-snapshots/l2ep.gas-snapshot b/contracts/gas-snapshots/l2ep.gas-snapshot index 6185dae847..0328a5afec 100644 --- a/contracts/gas-snapshots/l2ep.gas-snapshot +++ b/contracts/gas-snapshots/l2ep.gas-snapshot @@ -1,16 +1,16 @@ -ArbitrumCrossDomainForwarder_AcceptL1Ownership:test_CallableByPendingL1Owner() (gas: 37563) +ArbitrumCrossDomainForwarder_AcceptL1Ownership:test_CallableByPendingL1Owner() (gas: 37299) ArbitrumCrossDomainForwarder_AcceptL1Ownership:test_NotCallableByNonPendingOwners() (gas: 12954) -ArbitrumCrossDomainForwarder_Constructor:test_InitialState() (gas: 22111) +ArbitrumCrossDomainForwarder_Constructor:test_InitialState() (gas: 21137) ArbitrumCrossDomainForwarder_Forward:test_Forward() (gas: 47761) ArbitrumCrossDomainForwarder_Forward:test_ForwardRevert() (gas: 22090) ArbitrumCrossDomainForwarder_Forward:test_NotCallableByUnknownAddress() (gas: 16083) ArbitrumCrossDomainForwarder_TransferL1Ownership:test_CallableByL1Owner() (gas: 41434) ArbitrumCrossDomainForwarder_TransferL1Ownership:test_CallableByL1OwnerOrZeroAddress() (gas: 19269) -ArbitrumCrossDomainForwarder_TransferL1Ownership:test_NotCallableByL2Owner() (gas: 18644) +ArbitrumCrossDomainForwarder_TransferL1Ownership:test_NotCallableByL2Owner() (gas: 18320) ArbitrumCrossDomainForwarder_TransferL1Ownership:test_NotCallableByNonOwners() (gas: 13232) -ArbitrumCrossDomainGovernor_AcceptL1Ownership:test_CallableByPendingL1Owner() (gas: 37563) +ArbitrumCrossDomainGovernor_AcceptL1Ownership:test_CallableByPendingL1Owner() (gas: 37299) ArbitrumCrossDomainGovernor_AcceptL1Ownership:test_NotCallableByNonPendingOwners() (gas: 12954) -ArbitrumCrossDomainGovernor_Constructor:test_InitialState() (gas: 22134) +ArbitrumCrossDomainGovernor_Constructor:test_InitialState() (gas: 21160) ArbitrumCrossDomainGovernor_Forward:test_CallableByL2Owner() (gas: 49879) ArbitrumCrossDomainGovernor_Forward:test_Forward() (gas: 47795) ArbitrumCrossDomainGovernor_Forward:test_ForwardRevert() (gas: 24199) @@ -22,44 +22,44 @@ ArbitrumCrossDomainGovernor_ForwardDelegate:test_NotCallableByUnknownAddress() ( ArbitrumCrossDomainGovernor_ForwardDelegate:test_RevertsBatchWhenOneCallFails() (gas: 63919) ArbitrumCrossDomainGovernor_TransferL1Ownership:test_CallableByL1Owner() (gas: 41434) ArbitrumCrossDomainGovernor_TransferL1Ownership:test_CallableByL1OwnerOrZeroAddress() (gas: 19269) -ArbitrumCrossDomainGovernor_TransferL1Ownership:test_NotCallableByL2Owner() (gas: 18644) +ArbitrumCrossDomainGovernor_TransferL1Ownership:test_NotCallableByL2Owner() (gas: 18320) ArbitrumCrossDomainGovernor_TransferL1Ownership:test_NotCallableByNonOwners() (gas: 13232) -ArbitrumSequencerUptimeFeed_AggregatorV3Interface:test_AggregatorV3Interface() (gas: 104766) -ArbitrumSequencerUptimeFeed_AggregatorV3Interface:test_Return0WhenRoundDoesNotExistYet() (gas: 19945) -ArbitrumSequencerUptimeFeed_Constants:test_InitialState() (gas: 8492) -ArbitrumSequencerUptimeFeed_ProtectReadsOnAggregatorV2V3InterfaceFunctions:test_AggregatorV2V3InterfaceAllowReadsIfConsumingContractIsWhitelisted() (gas: 592246) -ArbitrumSequencerUptimeFeed_ProtectReadsOnAggregatorV2V3InterfaceFunctions:test_AggregatorV2V3InterfaceDisallowReadsIfConsumingContractIsNotWhitelisted() (gas: 562331) -ArbitrumSequencerUptimeFeed_UpdateStatus:test_IgnoreOutOfOrderUpdates() (gas: 99588) +ArbitrumSequencerUptimeFeed_AggregatorV3Interface:test_AggregatorV3Interface() (gas: 98747) +ArbitrumSequencerUptimeFeed_AggregatorV3Interface:test_Return0WhenRoundDoesNotExistYet() (gas: 18270) +ArbitrumSequencerUptimeFeed_Constants:test_InitialState() (gas: 5659) +ArbitrumSequencerUptimeFeed_ProtectReadsOnAggregatorV2V3InterfaceFunctions:test_AggregatorV2V3InterfaceAllowReadsIfConsumingContractIsWhitelisted() (gas: 590570) +ArbitrumSequencerUptimeFeed_ProtectReadsOnAggregatorV2V3InterfaceFunctions:test_AggregatorV2V3InterfaceDisallowReadsIfConsumingContractIsNotWhitelisted() (gas: 561681) +ArbitrumSequencerUptimeFeed_UpdateStatus:test_IgnoreOutOfOrderUpdates() (gas: 98915) ArbitrumSequencerUptimeFeed_UpdateStatus:test_RevertIfNotL2CrossDomainMessengerAddr() (gas: 15442) -ArbitrumSequencerUptimeFeed_UpdateStatus:test_UpdateStatusWhenStatusChangeAndNoTimeChange() (gas: 114517) -ArbitrumSequencerUptimeFeed_UpdateStatus:test_UpdateStatusWhenStatusChangeAndTimeChange() (gas: 114600) +ArbitrumSequencerUptimeFeed_UpdateStatus:test_UpdateStatusWhenStatusChangeAndNoTimeChange() (gas: 113165) +ArbitrumSequencerUptimeFeed_UpdateStatus:test_UpdateStatusWhenStatusChangeAndTimeChange() (gas: 113248) ArbitrumValidator_Validate:test_PostSequencerOffline() (gas: 73243) -BaseSequencerUptimeFeed_AggregatorV3Interface:test_AggregatorV3Interface_ReturnsValidData() (gas: 69197) -BaseSequencerUptimeFeed_AggregatorV3Interface:test_getAnswer_ReturnsValidAnswer() (gas: 57300) -BaseSequencerUptimeFeed_AggregatorV3Interface:test_getTimestamp_ReturnsValidTimestamp() (gas: 57151) -BaseSequencerUptimeFeed_Constructor:test_Constructor_InitialState() (gas: 22050) -BaseSequencerUptimeFeed_ProtectReadsOnAggregatorV2V3InterfaceFunctions:test_ProtectReads_AllowWhen_Whitelisted() (gas: 589517) -BaseSequencerUptimeFeed_ProtectReadsOnAggregatorV2V3InterfaceFunctions:test_ProtectReads_DisallowWhen_NotWhitelisted() (gas: 562342) -BaseSequencerUptimeFeed_UpdateStatus:test_updateStatus_IgnoreOutOfOrderUpdates() (gas: 69475) -BaseSequencerUptimeFeed_UpdateStatus:test_updateStatus_UpdateWhen_NoStatusChangeSameTimestamp() (gas: 77156) -BaseSequencerUptimeFeed_UpdateStatus:test_updateStatus_UpdateWhen_StatusChangeAndNoTimeChange() (gas: 96011) -BaseSequencerUptimeFeed_UpdateStatus:test_updateStatus_UpdateWhen_StatusChangeAndTimeChange() (gas: 96090) -BaseSequencerUptimeFeed_transferL1Sender:test_transferL1Sender_CorrectlyTransfersL1Sender() (gas: 1479295) +BaseSequencerUptimeFeed_AggregatorV3Interface:test_AggregatorV3Interface_ReturnsValidData() (gas: 63178) +BaseSequencerUptimeFeed_AggregatorV3Interface:test_getAnswer_ReturnsValidAnswer() (gas: 56955) +BaseSequencerUptimeFeed_AggregatorV3Interface:test_getTimestamp_ReturnsValidTimestamp() (gas: 56817) +BaseSequencerUptimeFeed_Constructor:test_Constructor_InitialState() (gas: 21032) +BaseSequencerUptimeFeed_ProtectReadsOnAggregatorV2V3InterfaceFunctions:test_ProtectReads_AllowWhen_Whitelisted() (gas: 585341) +BaseSequencerUptimeFeed_ProtectReadsOnAggregatorV2V3InterfaceFunctions:test_ProtectReads_DisallowWhen_NotWhitelisted() (gas: 561692) +BaseSequencerUptimeFeed_UpdateStatus:test_updateStatus_IgnoreOutOfOrderUpdates() (gas: 67768) +BaseSequencerUptimeFeed_UpdateStatus:test_updateStatus_UpdateWhen_NoStatusChangeSameTimestamp() (gas: 73417) +BaseSequencerUptimeFeed_UpdateStatus:test_updateStatus_UpdateWhen_StatusChangeAndNoTimeChange() (gas: 93972) +BaseSequencerUptimeFeed_UpdateStatus:test_updateStatus_UpdateWhen_StatusChangeAndTimeChange() (gas: 94051) +BaseSequencerUptimeFeed_transferL1Sender:test_transferL1Sender_CorrectlyTransfersL1Sender() (gas: 1478301) BaseValidator_Constructor:test_Constructor_EmitsWhen_ConstructorIsSuccessfull() (gas: 715556) -BaseValidator_GetAndSetGasLimit:test_GetAndSetGasLimit_CorrectlyHandlesGasLimit() (gas: 20114) -OptimismCrossDomainForwarder_AcceptL1Ownership:test_CallableByPendingL1Owner() (gas: 46952) +BaseValidator_GetAndSetGasLimit:test_GetAndSetGasLimit_CorrectlyHandlesGasLimit() (gas: 19448) +OptimismCrossDomainForwarder_AcceptL1Ownership:test_CallableByPendingL1Owner() (gas: 46693) OptimismCrossDomainForwarder_AcceptL1Ownership:test_NotCallableByNonPendingOwners() (gas: 22033) -OptimismCrossDomainForwarder_Constructor:test_InitialState() (gas: 21947) +OptimismCrossDomainForwarder_Constructor:test_InitialState() (gas: 20973) OptimismCrossDomainForwarder_Forward:test_Forward() (gas: 58095) OptimismCrossDomainForwarder_Forward:test_ForwardRevert() (gas: 32410) OptimismCrossDomainForwarder_Forward:test_NotCallableByUnknownAddress() (gas: 13895) OptimismCrossDomainForwarder_TransferL1Ownership:test_CallableByL1Owner() (gas: 48811) OptimismCrossDomainForwarder_TransferL1Ownership:test_CallableByL1OwnerOrZeroAddress() (gas: 28632) -OptimismCrossDomainForwarder_TransferL1Ownership:test_NotCallableByL2Owner() (gas: 16456) +OptimismCrossDomainForwarder_TransferL1Ownership:test_NotCallableByL2Owner() (gas: 16132) OptimismCrossDomainForwarder_TransferL1Ownership:test_NotCallableByNonOwners() (gas: 11044) -OptimismCrossDomainGovernor_AcceptL1Ownership:test_CallableByPendingL1Owner() (gas: 46952) +OptimismCrossDomainGovernor_AcceptL1Ownership:test_CallableByPendingL1Owner() (gas: 46693) OptimismCrossDomainGovernor_AcceptL1Ownership:test_NotCallableByNonPendingOwners() (gas: 22033) -OptimismCrossDomainGovernor_Constructor:test_InitialState() (gas: 21970) +OptimismCrossDomainGovernor_Constructor:test_InitialState() (gas: 20996) OptimismCrossDomainGovernor_Forward:test_CallableByL2Owner() (gas: 47723) OptimismCrossDomainGovernor_Forward:test_Forward() (gas: 58149) OptimismCrossDomainGovernor_Forward:test_ForwardRevert() (gas: 32434) @@ -71,25 +71,25 @@ OptimismCrossDomainGovernor_ForwardDelegate:test_NotCallableByUnknownAddress() ( OptimismCrossDomainGovernor_ForwardDelegate:test_RevertsBatchWhenOneCallFails() (gas: 75679) OptimismCrossDomainGovernor_TransferL1Ownership:test_CallableByL1Owner() (gas: 48811) OptimismCrossDomainGovernor_TransferL1Ownership:test_CallableByL1OwnerOrZeroAddress() (gas: 28632) -OptimismCrossDomainGovernor_TransferL1Ownership:test_NotCallableByL2Owner() (gas: 16456) +OptimismCrossDomainGovernor_TransferL1Ownership:test_NotCallableByL2Owner() (gas: 16132) OptimismCrossDomainGovernor_TransferL1Ownership:test_NotCallableByNonOwners() (gas: 11044) -OptimismSequencerUptimeFeed_Constructor:test_Constructor_InitialState() (gas: 1530881) +OptimismSequencerUptimeFeed_Constructor:test_Constructor_InitialState() (gas: 1529872) OptimismSequencerUptimeFeed_ValidateSender:test_ValidateSender_UpdateStatusWhen_StatusChangeAndNoTimeChange() (gas: 15374) OptimismValidator_Validate:test_Validate_PostSequencerOffline() (gas: 79034) OptimismValidator_Validate:test_Validate_PostSequencerStatus_NoStatusChange() (gas: 79040) -ScrollCrossDomainForwarder_AcceptL1Ownership:test_CallableByPendingL1Owner() (gas: 47039) +ScrollCrossDomainForwarder_AcceptL1Ownership:test_CallableByPendingL1Owner() (gas: 46780) ScrollCrossDomainForwarder_AcceptL1Ownership:test_NotCallableByNonPendingOwners() (gas: 22083) -ScrollCrossDomainForwarder_Constructor:test_InitialState() (gas: 21939) +ScrollCrossDomainForwarder_Constructor:test_InitialState() (gas: 20965) ScrollCrossDomainForwarder_Forward:test_Forward() (gas: 58159) ScrollCrossDomainForwarder_Forward:test_ForwardRevert() (gas: 32466) ScrollCrossDomainForwarder_Forward:test_NotCallableByUnknownAddress() (gas: 13895) ScrollCrossDomainForwarder_TransferL1Ownership:test_CallableByL1Owner() (gas: 48874) ScrollCrossDomainForwarder_TransferL1Ownership:test_CallableByL1OwnerOrZeroAddress() (gas: 28690) -ScrollCrossDomainForwarder_TransferL1Ownership:test_NotCallableByL2Owner() (gas: 16456) +ScrollCrossDomainForwarder_TransferL1Ownership:test_NotCallableByL2Owner() (gas: 16132) ScrollCrossDomainForwarder_TransferL1Ownership:test_NotCallableByNonOwners() (gas: 11044) -ScrollCrossDomainGovernor_AcceptL1Ownership:test_CallableByPendingL1Owner() (gas: 47039) +ScrollCrossDomainGovernor_AcceptL1Ownership:test_CallableByPendingL1Owner() (gas: 46780) ScrollCrossDomainGovernor_AcceptL1Ownership:test_NotCallableByNonPendingOwners() (gas: 22083) -ScrollCrossDomainGovernor_Constructor:test_InitialState() (gas: 21962) +ScrollCrossDomainGovernor_Constructor:test_InitialState() (gas: 20988) ScrollCrossDomainGovernor_Forward:test_CallableByL2Owner() (gas: 47718) ScrollCrossDomainGovernor_Forward:test_Forward() (gas: 58208) ScrollCrossDomainGovernor_Forward:test_ForwardRevert() (gas: 32487) @@ -101,14 +101,14 @@ ScrollCrossDomainGovernor_ForwardDelegate:test_NotCallableByUnknownAddress() (ga ScrollCrossDomainGovernor_ForwardDelegate:test_RevertsBatchWhenOneCallFails() (gas: 75744) ScrollCrossDomainGovernor_TransferL1Ownership:test_CallableByL1Owner() (gas: 48874) ScrollCrossDomainGovernor_TransferL1Ownership:test_CallableByL1OwnerOrZeroAddress() (gas: 28690) -ScrollCrossDomainGovernor_TransferL1Ownership:test_NotCallableByL2Owner() (gas: 16456) +ScrollCrossDomainGovernor_TransferL1Ownership:test_NotCallableByL2Owner() (gas: 16132) ScrollCrossDomainGovernor_TransferL1Ownership:test_NotCallableByNonOwners() (gas: 11044) -ScrollSequencerUptimeFeed_Constructor:test_Constructor_InitialState_WhenValidL2XDomainMessenger() (gas: 1511902) +ScrollSequencerUptimeFeed_Constructor:test_Constructor_InitialState_WhenValidL2XDomainMessenger() (gas: 1510893) ScrollSequencerUptimeFeed_ValidateSender:test_ValidateSender_UpdateStatusWhen_StatusChangeAndNoTimeChange() (gas: 15364) ScrollValidator_Validate:test_Validate_PostSequencerOffline() (gas: 82616) ScrollValidator_Validate:test_Validate_PostSequencerStatus_NoStatusChange() (gas: 82626) ZKSyncSequencerUptimeFeed_ValidateSender:test_ValidateSender_SuccessWhen_SenderIsValid() (gas: 12611) -ZKSyncValidator_GetChainId:test_GetChainId_CorrectlyGetsTheChainId() (gas: 8369) -ZKSyncValidator_GetSetL2GasPerPubdataByteLimit:test_GetSetL2GasPerPubdataByteLimit_CorrectlyHandlesGasPerPubdataByteLimit() (gas: 18918) +ZKSyncValidator_GetChainId:test_GetChainId_CorrectlyGetsTheChainId() (gas: 5530) +ZKSyncValidator_GetSetL2GasPerPubdataByteLimit:test_GetSetL2GasPerPubdataByteLimit_CorrectlyHandlesGasPerPubdataByteLimit() (gas: 15752) ZKSyncValidator_Validate:test_Validate_PostSequencerOffline() (gas: 56439) ZKSyncValidator_Validate:test_Validate_PostSequencerStatus_NoStatusChange() (gas: 56503) \ No newline at end of file diff --git a/contracts/gas-snapshots/llo-feeds.gas-snapshot b/contracts/gas-snapshots/llo-feeds.gas-snapshot index 85c89f329c..3d15813cbc 100644 --- a/contracts/gas-snapshots/llo-feeds.gas-snapshot +++ b/contracts/gas-snapshots/llo-feeds.gas-snapshot @@ -1,29 +1,29 @@ -ByteUtilTest:test_readAddress() (gas: 3366) -ByteUtilTest:test_readAddressMultiWord() (gas: 3386) +ByteUtilTest:test_readAddress() (gas: 520) +ByteUtilTest:test_readAddressMultiWord() (gas: 540) ByteUtilTest:test_readAddressWithEmptyArray() (gas: 3252) ByteUtilTest:test_readAddressWithNotEnoughBytes() (gas: 3314) -ByteUtilTest:test_readUint192Max() (gas: 3326) -ByteUtilTest:test_readUint192Min() (gas: 3327) -ByteUtilTest:test_readUint192MultiWord() (gas: 3392) +ByteUtilTest:test_readUint192Max() (gas: 485) +ByteUtilTest:test_readUint192Min() (gas: 486) +ByteUtilTest:test_readUint192MultiWord() (gas: 551) ByteUtilTest:test_readUint192WithEmptyArray() (gas: 3274) ByteUtilTest:test_readUint192WithNotEnoughBytes() (gas: 3314) -ByteUtilTest:test_readUint256Max() (gas: 3321) -ByteUtilTest:test_readUint256Min() (gas: 3365) -ByteUtilTest:test_readUint256MultiWord() (gas: 3341) +ByteUtilTest:test_readUint256Max() (gas: 480) +ByteUtilTest:test_readUint256Min() (gas: 524) +ByteUtilTest:test_readUint256MultiWord() (gas: 500) ByteUtilTest:test_readUint256WithEmptyArray() (gas: 3274) ByteUtilTest:test_readUint256WithNotEnoughBytes() (gas: 3271) -ByteUtilTest:test_readUint32Max() (gas: 3348) -ByteUtilTest:test_readUint32Min() (gas: 3328) -ByteUtilTest:test_readUint32MultiWord() (gas: 3371) +ByteUtilTest:test_readUint32Max() (gas: 507) +ByteUtilTest:test_readUint32Min() (gas: 487) +ByteUtilTest:test_readUint32MultiWord() (gas: 530) ByteUtilTest:test_readUint32WithEmptyArray() (gas: 3231) ByteUtilTest:test_readUint32WithNotEnoughBytes() (gas: 3272) -ByteUtilTest:test_readZeroAddress() (gas: 3343) +ByteUtilTest:test_readZeroAddress() (gas: 497) ChannelConfigStoreChannelAdderTest:testAddChannelDefinitions_AdderCanAddToMultipleDons() (gas: 183710) ChannelConfigStoreChannelAdderTest:testAddChannelDefinitions_AdderCanAddToMultipleDons() (gas: 183710) ChannelConfigStoreChannelAdderTest:testAddChannelDefinitions_MultipleAddersCanAddToDon() (gas: 186501) ChannelConfigStoreChannelAdderTest:testAddChannelDefinitions_MultipleAddersCanAddToDon() (gas: 186501) -ChannelConfigStoreChannelAdderTest:testAddChannelDefinitions_OneAddressCanControlMultipleChannelAdders() (gas: 195997) -ChannelConfigStoreChannelAdderTest:testAddChannelDefinitions_OneAddressCanControlMultipleChannelAdders() (gas: 195997) +ChannelConfigStoreChannelAdderTest:testAddChannelDefinitions_OneAddressCanControlMultipleChannelAdders() (gas: 195351) +ChannelConfigStoreChannelAdderTest:testAddChannelDefinitions_OneAddressCanControlMultipleChannelAdders() (gas: 195351) ChannelConfigStoreChannelAdderTest:testAddChannelDefinitions_RevertsWhenAdderNotAllowedForDon() (gas: 38489) ChannelConfigStoreChannelAdderTest:testAddChannelDefinitions_RevertsWhenAdderNotAllowedForDon() (gas: 38489) ChannelConfigStoreChannelAdderTest:testAddChannelDefinitions_RevertsWhenAdderRemovedFromDon() (gas: 88366) @@ -34,58 +34,58 @@ ChannelConfigStoreChannelAdderTest:testAddChannelDefinitions_RevertsWhenNoAddres ChannelConfigStoreChannelAdderTest:testAddChannelDefinitions_RevertsWhenNoAddressSetForChannelAdderId() (gas: 83374) ChannelConfigStoreChannelAdderTest:testAddChannelDefinitions_SucceedsWithAuthorizedAdder() (gas: 111897) ChannelConfigStoreChannelAdderTest:testAddChannelDefinitions_SucceedsWithAuthorizedAdder() (gas: 111897) -ChannelConfigStoreChannelAdderTest:testGetAllowedChannelAdders_ReturnsAllAllowedAdders() (gas: 131456) -ChannelConfigStoreChannelAdderTest:testGetAllowedChannelAdders_ReturnsAllAllowedAdders() (gas: 131456) -ChannelConfigStoreChannelAdderTest:testGetAllowedChannelAdders_ReturnsEmptyArrayWhenNone() (gas: 11649) -ChannelConfigStoreChannelAdderTest:testGetAllowedChannelAdders_ReturnsEmptyArrayWhenNone() (gas: 11649) -ChannelConfigStoreChannelAdderTest:testGetChannelAdderAddress_ReturnsZeroAddressForUnsetId() (gas: 10677) -ChannelConfigStoreChannelAdderTest:testGetChannelAdderAddress_ReturnsZeroAddressForUnsetId() (gas: 10677) -ChannelConfigStoreChannelAdderTest:testIsChannelAdderAllowed_ReturnsFalseForNonAllowedAdder() (gas: 10966) -ChannelConfigStoreChannelAdderTest:testIsChannelAdderAllowed_ReturnsFalseForNonAllowedAdder() (gas: 10966) -ChannelConfigStoreChannelAdderTest:testSetChannelAdderAddress() (gas: 37184) -ChannelConfigStoreChannelAdderTest:testSetChannelAdderAddress() (gas: 37184) -ChannelConfigStoreChannelAdderTest:testSetChannelAdderAddress_CanSetToZeroAddress() (gas: 27781) -ChannelConfigStoreChannelAdderTest:testSetChannelAdderAddress_CanSetToZeroAddress() (gas: 27781) +ChannelConfigStoreChannelAdderTest:testGetAllowedChannelAdders_ReturnsAllAllowedAdders() (gas: 128281) +ChannelConfigStoreChannelAdderTest:testGetAllowedChannelAdders_ReturnsAllAllowedAdders() (gas: 128281) +ChannelConfigStoreChannelAdderTest:testGetAllowedChannelAdders_ReturnsEmptyArrayWhenNone() (gas: 8797) +ChannelConfigStoreChannelAdderTest:testGetAllowedChannelAdders_ReturnsEmptyArrayWhenNone() (gas: 8797) +ChannelConfigStoreChannelAdderTest:testGetChannelAdderAddress_ReturnsZeroAddressForUnsetId() (gas: 7845) +ChannelConfigStoreChannelAdderTest:testGetChannelAdderAddress_ReturnsZeroAddressForUnsetId() (gas: 7845) +ChannelConfigStoreChannelAdderTest:testIsChannelAdderAllowed_ReturnsFalseForNonAllowedAdder() (gas: 8135) +ChannelConfigStoreChannelAdderTest:testIsChannelAdderAllowed_ReturnsFalseForNonAllowedAdder() (gas: 8135) +ChannelConfigStoreChannelAdderTest:testSetChannelAdderAddress() (gas: 36855) +ChannelConfigStoreChannelAdderTest:testSetChannelAdderAddress() (gas: 36855) +ChannelConfigStoreChannelAdderTest:testSetChannelAdderAddress_CanSetToZeroAddress() (gas: 27518) +ChannelConfigStoreChannelAdderTest:testSetChannelAdderAddress_CanSetToZeroAddress() (gas: 27518) ChannelConfigStoreChannelAdderTest:testSetChannelAdderAddress_RevertsForReservedChannelAdderId() (gas: 14099) ChannelConfigStoreChannelAdderTest:testSetChannelAdderAddress_RevertsForReservedChannelAdderId() (gas: 14099) ChannelConfigStoreChannelAdderTest:testSetChannelAdderAddress_RevertsWhenCalledByNonOwner() (gas: 11087) ChannelConfigStoreChannelAdderTest:testSetChannelAdderAddress_RevertsWhenCalledByNonOwner() (gas: 11087) -ChannelConfigStoreChannelAdderTest:testSetChannelAdderAddress_SucceedsAtMinimumAllowedId() (gas: 35411) -ChannelConfigStoreChannelAdderTest:testSetChannelAdderAddress_SucceedsAtMinimumAllowedId() (gas: 35411) -ChannelConfigStoreChannelAdderTest:testSetChannelAdderAddress_UpdatesExistingAddress() (gas: 41413) -ChannelConfigStoreChannelAdderTest:testSetChannelAdderAddress_UpdatesExistingAddress() (gas: 41413) -ChannelConfigStoreChannelAdderTest:testSetChannelAdder_AdderCanBeAllowedOnMultipleDons() (gas: 152500) -ChannelConfigStoreChannelAdderTest:testSetChannelAdder_AdderCanBeAllowedOnMultipleDons() (gas: 152500) -ChannelConfigStoreChannelAdderTest:testSetChannelAdder_AllowsChannelAdder() (gas: 82989) -ChannelConfigStoreChannelAdderTest:testSetChannelAdder_AllowsChannelAdder() (gas: 82989) -ChannelConfigStoreChannelAdderTest:testSetChannelAdder_AllowsMultipleAddersPerDon() (gas: 134891) -ChannelConfigStoreChannelAdderTest:testSetChannelAdder_AllowsMultipleAddersPerDon() (gas: 134891) -ChannelConfigStoreChannelAdderTest:testSetChannelAdder_RemovesChannelAdder() (gas: 67010) -ChannelConfigStoreChannelAdderTest:testSetChannelAdder_RemovesChannelAdder() (gas: 67010) +ChannelConfigStoreChannelAdderTest:testSetChannelAdderAddress_SucceedsAtMinimumAllowedId() (gas: 32582) +ChannelConfigStoreChannelAdderTest:testSetChannelAdderAddress_SucceedsAtMinimumAllowedId() (gas: 32582) +ChannelConfigStoreChannelAdderTest:testSetChannelAdderAddress_UpdatesExistingAddress() (gas: 40758) +ChannelConfigStoreChannelAdderTest:testSetChannelAdderAddress_UpdatesExistingAddress() (gas: 40758) +ChannelConfigStoreChannelAdderTest:testSetChannelAdder_AdderCanBeAllowedOnMultipleDons() (gas: 149354) +ChannelConfigStoreChannelAdderTest:testSetChannelAdder_AdderCanBeAllowedOnMultipleDons() (gas: 149354) +ChannelConfigStoreChannelAdderTest:testSetChannelAdder_AllowsChannelAdder() (gas: 82666) +ChannelConfigStoreChannelAdderTest:testSetChannelAdder_AllowsChannelAdder() (gas: 82666) +ChannelConfigStoreChannelAdderTest:testSetChannelAdder_AllowsMultipleAddersPerDon() (gas: 131070) +ChannelConfigStoreChannelAdderTest:testSetChannelAdder_AllowsMultipleAddersPerDon() (gas: 131070) +ChannelConfigStoreChannelAdderTest:testSetChannelAdder_RemovesChannelAdder() (gas: 66487) +ChannelConfigStoreChannelAdderTest:testSetChannelAdder_RemovesChannelAdder() (gas: 66487) ChannelConfigStoreChannelAdderTest:testSetChannelAdder_RevertsForReservedChannelAdderId() (gas: 17864) ChannelConfigStoreChannelAdderTest:testSetChannelAdder_RevertsForReservedChannelAdderId() (gas: 17864) ChannelConfigStoreChannelAdderTest:testSetChannelAdder_RevertsWhenCalledByNonOwner() (gas: 11181) ChannelConfigStoreChannelAdderTest:testSetChannelAdder_RevertsWhenCalledByNonOwner() (gas: 11181) -ChannelConfigStoreChannelAdderTest:testSetChannelAdder_SucceedsAtMinimumAllowedId() (gas: 80858) -ChannelConfigStoreChannelAdderTest:testSetChannelAdder_SucceedsAtMinimumAllowedId() (gas: 80858) -ChannelConfigStoreChannelAdderTest:testSetChannelDefinitions() (gas: 47277) -ChannelConfigStoreChannelAdderTest:testSetChannelDefinitions() (gas: 47277) -ChannelConfigStoreChannelAdderTest:testSupportsInterface() (gas: 8448) -ChannelConfigStoreChannelAdderTest:testSupportsInterface() (gas: 8448) -ChannelConfigStoreChannelAdderTest:testTypeAndVersion() (gas: 9744) -ChannelConfigStoreChannelAdderTest:testTypeAndVersion() (gas: 9744) +ChannelConfigStoreChannelAdderTest:testSetChannelAdder_SucceedsAtMinimumAllowedId() (gas: 78035) +ChannelConfigStoreChannelAdderTest:testSetChannelAdder_SucceedsAtMinimumAllowedId() (gas: 78035) +ChannelConfigStoreChannelAdderTest:testSetChannelDefinitions() (gas: 46934) +ChannelConfigStoreChannelAdderTest:testSetChannelDefinitions() (gas: 46934) +ChannelConfigStoreChannelAdderTest:testSupportsInterface() (gas: 5622) +ChannelConfigStoreChannelAdderTest:testSupportsInterface() (gas: 5622) +ChannelConfigStoreChannelAdderTest:testTypeAndVersion() (gas: 9745) +ChannelConfigStoreChannelAdderTest:testTypeAndVersion() (gas: 9745) ChannelConfigStoreChannelAdderTest:test_revertsIfCalledByNonOwner() (gas: 11426) ChannelConfigStoreChannelAdderTest:test_revertsIfCalledByNonOwner() (gas: 11426) -ChannelConfigStoreTest:testSetChannelDefinitions() (gas: 47233) -ChannelConfigStoreTest:testSetChannelDefinitions() (gas: 47233) -ChannelConfigStoreTest:testSupportsInterface() (gas: 8413) -ChannelConfigStoreTest:testSupportsInterface() (gas: 8413) +ChannelConfigStoreTest:testSetChannelDefinitions() (gas: 46890) +ChannelConfigStoreTest:testSetChannelDefinitions() (gas: 46890) +ChannelConfigStoreTest:testSupportsInterface() (gas: 5588) +ChannelConfigStoreTest:testSupportsInterface() (gas: 5588) ChannelConfigStoreTest:testTypeAndVersion() (gas: 9689) ChannelConfigStoreTest:testTypeAndVersion() (gas: 9689) ChannelConfigStoreTest:test_revertsIfCalledByNonOwner() (gas: 11360) ChannelConfigStoreTest:test_revertsIfCalledByNonOwner() (gas: 11360) -ConfiguratorPromoteStagingConfigTest:test_promotesStagingConfig() (gas: 99035) -ConfiguratorPromoteStagingConfigTest:test_promotesStagingConfig() (gas: 99035) +ConfiguratorPromoteStagingConfigTest:test_promotesStagingConfig() (gas: 98375) +ConfiguratorPromoteStagingConfigTest:test_promotesStagingConfig() (gas: 98375) ConfiguratorPromoteStagingConfigTest:test_revertsIfCalledByNonOwner() (gas: 10962) ConfiguratorPromoteStagingConfigTest:test_revertsIfCalledByNonOwner() (gas: 10962) ConfiguratorPromoteStagingConfigTest:test_revertsIfIsGreenProductionDoesNotMatchContractState() (gas: 13423) @@ -96,8 +96,8 @@ ConfiguratorPromoteStagingConfigTest:test_revertsIfProductionConfigDigestIsZero( ConfiguratorPromoteStagingConfigTest:test_revertsIfProductionConfigDigestIsZero() (gas: 68521) ConfiguratorPromoteStagingConfigTest:test_revertsIfStagingConfigDigestIsZero() (gas: 48258) ConfiguratorPromoteStagingConfigTest:test_revertsIfStagingConfigDigestIsZero() (gas: 48258) -ConfiguratorSetProductionConfigTest:test_correctlyUpdatesTheConfig() (gas: 259758) -ConfiguratorSetProductionConfigTest:test_correctlyUpdatesTheConfig() (gas: 259758) +ConfiguratorSetProductionConfigTest:test_correctlyUpdatesTheConfig() (gas: 254697) +ConfiguratorSetProductionConfigTest:test_correctlyUpdatesTheConfig() (gas: 254697) ConfiguratorSetProductionConfigTest:test_revertsIfCalledByNonOwner() (gas: 266559) ConfiguratorSetProductionConfigTest:test_revertsIfCalledByNonOwner() (gas: 266559) ConfiguratorSetProductionConfigTest:test_revertsIfFaultToleranceIsZero() (gas: 264173) @@ -110,8 +110,8 @@ ConfiguratorSetProductionConfigTest:test_revertsIfSetWithTooManySigners() (gas: ConfiguratorSetProductionConfigTest:test_revertsIfSetWithTooManySigners() (gas: 107412) ConfiguratorSetProductionConfigTest:test_supportsHigherVersionsIgnoringExcessOnchainConfig() (gas: 125093) ConfiguratorSetProductionConfigTest:test_supportsHigherVersionsIgnoringExcessOnchainConfig() (gas: 125093) -ConfiguratorSetStagingConfigTest:test_correctlyUpdatesTheConfig() (gas: 266023) -ConfiguratorSetStagingConfigTest:test_correctlyUpdatesTheConfig() (gas: 266023) +ConfiguratorSetStagingConfigTest:test_correctlyUpdatesTheConfig() (gas: 260962) +ConfiguratorSetStagingConfigTest:test_correctlyUpdatesTheConfig() (gas: 260962) ConfiguratorSetStagingConfigTest:test_revertsIfCalledByNonOwner() (gas: 266528) ConfiguratorSetStagingConfigTest:test_revertsIfCalledByNonOwner() (gas: 266528) ConfiguratorSetStagingConfigTest:test_revertsIfFaultToleranceIsZero() (gas: 264142) @@ -122,164 +122,164 @@ ConfiguratorSetStagingConfigTest:test_revertsIfOnchainConfigIsInvalid() (gas: 85 ConfiguratorSetStagingConfigTest:test_revertsIfOnchainConfigIsInvalid() (gas: 85217) ConfiguratorSetStagingConfigTest:test_revertsIfSetWithTooManySigners() (gas: 107392) ConfiguratorSetStagingConfigTest:test_revertsIfSetWithTooManySigners() (gas: 107392) -ConfiguratorTest:testSupportsInterface() (gas: 8367) -ConfiguratorTest:testSupportsInterface() (gas: 8367) +ConfiguratorTest:testSupportsInterface() (gas: 5542) +ConfiguratorTest:testSupportsInterface() (gas: 5542) ConfiguratorTest:testTypeAndVersion() (gas: 9683) ConfiguratorTest:testTypeAndVersion() (gas: 9683) -DestinationFeeManagerProcessFeeTest:test_DiscountIsAppliedForNative() (gas: 52717) -DestinationFeeManagerProcessFeeTest:test_DiscountIsReturnedForNative() (gas: 52645) -DestinationFeeManagerProcessFeeTest:test_DiscountIsReturnedForNativeWithSurcharge() (gas: 78879) +DestinationFeeManagerProcessFeeTest:test_DiscountIsAppliedForNative() (gas: 52385) +DestinationFeeManagerProcessFeeTest:test_DiscountIsReturnedForNative() (gas: 52313) +DestinationFeeManagerProcessFeeTest:test_DiscountIsReturnedForNativeWithSurcharge() (gas: 78547) DestinationFeeManagerProcessFeeTest:test_GlobalDiscountCantBeSetToMoreThanMaximum() (gas: 19544) -DestinationFeeManagerProcessFeeTest:test_GlobalDiscountIsOverridenByIndividualDiscountLink() (gas: 79509) -DestinationFeeManagerProcessFeeTest:test_GlobalDiscountIsOverridenByIndividualDiscountNative() (gas: 82523) -DestinationFeeManagerProcessFeeTest:test_GlobalDiscountIsUpdatedAfterBeingSetToZeroLink() (gas: 48409) -DestinationFeeManagerProcessFeeTest:test_GlobalDiscountIsUpdatedAfterBeingSetToZeroNative() (gas: 51589) -DestinationFeeManagerProcessFeeTest:test_GlobalDiscountWithLink() (gas: 51902) -DestinationFeeManagerProcessFeeTest:test_GlobalDiscountWithNative() (gas: 54892) -DestinationFeeManagerProcessFeeTest:test_GlobalDiscountWithNativeAndLink() (gas: 83739) +DestinationFeeManagerProcessFeeTest:test_GlobalDiscountIsOverridenByIndividualDiscountLink() (gas: 79177) +DestinationFeeManagerProcessFeeTest:test_GlobalDiscountIsOverridenByIndividualDiscountNative() (gas: 82191) +DestinationFeeManagerProcessFeeTest:test_GlobalDiscountIsUpdatedAfterBeingSetToZeroLink() (gas: 47878) +DestinationFeeManagerProcessFeeTest:test_GlobalDiscountIsUpdatedAfterBeingSetToZeroNative() (gas: 51058) +DestinationFeeManagerProcessFeeTest:test_GlobalDiscountWithLink() (gas: 51570) +DestinationFeeManagerProcessFeeTest:test_GlobalDiscountWithNative() (gas: 54560) +DestinationFeeManagerProcessFeeTest:test_GlobalDiscountWithNativeAndLink() (gas: 83407) DestinationFeeManagerProcessFeeTest:test_V1PayloadVerifies() (gas: 29358) -DestinationFeeManagerProcessFeeTest:test_V1PayloadVerifiesAndReturnsChange() (gas: 61221) -DestinationFeeManagerProcessFeeTest:test_V2PayloadVerifies() (gas: 123406) +DestinationFeeManagerProcessFeeTest:test_V1PayloadVerifiesAndReturnsChange() (gas: 60228) +DestinationFeeManagerProcessFeeTest:test_V2PayloadVerifies() (gas: 122744) DestinationFeeManagerProcessFeeTest:test_V2PayloadWithoutQuoteFails() (gas: 29697) DestinationFeeManagerProcessFeeTest:test_V2PayloadWithoutZeroFee() (gas: 77087) -DestinationFeeManagerProcessFeeTest:test_WithdrawERC20() (gas: 72742) +DestinationFeeManagerProcessFeeTest:test_WithdrawERC20() (gas: 71724) DestinationFeeManagerProcessFeeTest:test_WithdrawNonAdminAddr() (gas: 56357) -DestinationFeeManagerProcessFeeTest:test_WithdrawUnwrappedNative() (gas: 26434) +DestinationFeeManagerProcessFeeTest:test_WithdrawUnwrappedNative() (gas: 25416) DestinationFeeManagerProcessFeeTest:test_addVerifier() (gas: 128921) DestinationFeeManagerProcessFeeTest:test_addVerifierExistingAddress() (gas: 34192) -DestinationFeeManagerProcessFeeTest:test_baseFeeIsAppliedForLink() (gas: 19497) -DestinationFeeManagerProcessFeeTest:test_baseFeeIsAppliedForNative() (gas: 22502) -DestinationFeeManagerProcessFeeTest:test_correctDiscountIsAppliedWhenBothTokensAreDiscounted() (gas: 91133) -DestinationFeeManagerProcessFeeTest:test_discountAIsNotAppliedWhenSetForOtherUsers() (gas: 58864) -DestinationFeeManagerProcessFeeTest:test_discountFeeRoundsDownWhenUneven() (gas: 52919) -DestinationFeeManagerProcessFeeTest:test_discountIsAppliedForLink() (gas: 49730) -DestinationFeeManagerProcessFeeTest:test_discountIsAppliedWith100PercentSurcharge() (gas: 78908) -DestinationFeeManagerProcessFeeTest:test_discountIsNoLongerAppliedAfterRemoving() (gas: 48362) +DestinationFeeManagerProcessFeeTest:test_baseFeeIsAppliedForLink() (gas: 16665) +DestinationFeeManagerProcessFeeTest:test_baseFeeIsAppliedForNative() (gas: 19670) +DestinationFeeManagerProcessFeeTest:test_correctDiscountIsAppliedWhenBothTokensAreDiscounted() (gas: 90469) +DestinationFeeManagerProcessFeeTest:test_discountAIsNotAppliedWhenSetForOtherUsers() (gas: 58532) +DestinationFeeManagerProcessFeeTest:test_discountFeeRoundsDownWhenUneven() (gas: 52587) +DestinationFeeManagerProcessFeeTest:test_discountIsAppliedForLink() (gas: 49398) +DestinationFeeManagerProcessFeeTest:test_discountIsAppliedWith100PercentSurcharge() (gas: 78576) +DestinationFeeManagerProcessFeeTest:test_discountIsNoLongerAppliedAfterRemoving() (gas: 47831) DestinationFeeManagerProcessFeeTest:test_discountIsNotAppliedForInvalidTokenAddress() (gas: 17516) -DestinationFeeManagerProcessFeeTest:test_discountIsNotAppliedToOtherFeeds() (gas: 56912) -DestinationFeeManagerProcessFeeTest:test_discountIsReturnedForLink() (gas: 49702) +DestinationFeeManagerProcessFeeTest:test_discountIsNotAppliedToOtherFeeds() (gas: 56580) +DestinationFeeManagerProcessFeeTest:test_discountIsReturnedForLink() (gas: 49370) DestinationFeeManagerProcessFeeTest:test_emptyQuoteRevertsWithError() (gas: 12253) DestinationFeeManagerProcessFeeTest:test_eventIsEmittedAfterSurchargeIsSet() (gas: 41373) -DestinationFeeManagerProcessFeeTest:test_eventIsEmittedIfNotEnoughLink() (gas: 182633) +DestinationFeeManagerProcessFeeTest:test_eventIsEmittedIfNotEnoughLink() (gas: 181640) DestinationFeeManagerProcessFeeTest:test_eventIsEmittedUponWithdraw() (gas: 69085) -DestinationFeeManagerProcessFeeTest:test_feeIsUpdatedAfterDiscountIsRemoved() (gas: 51626) -DestinationFeeManagerProcessFeeTest:test_feeIsUpdatedAfterNewDiscountIsApplied() (gas: 67777) -DestinationFeeManagerProcessFeeTest:test_feeIsUpdatedAfterNewSurchargeIsApplied() (gas: 66960) -DestinationFeeManagerProcessFeeTest:test_feeIsZeroWith100PercentDiscount() (gas: 52073) -DestinationFeeManagerProcessFeeTest:test_getBaseRewardWithLinkQuote() (gas: 19495) -DestinationFeeManagerProcessFeeTest:test_getLinkFeeIsRoundedUp() (gas: 49857) -DestinationFeeManagerProcessFeeTest:test_getLinkRewardIsSameAsFee() (gas: 55762) -DestinationFeeManagerProcessFeeTest:test_getLinkRewardWithNativeQuoteAndSurchargeWithLinkDiscount() (gas: 85050) -DestinationFeeManagerProcessFeeTest:test_getRewardWithLinkDiscount() (gas: 49726) -DestinationFeeManagerProcessFeeTest:test_getRewardWithLinkQuoteAndLinkDiscount() (gas: 49685) -DestinationFeeManagerProcessFeeTest:test_getRewardWithNativeQuote() (gas: 22456) -DestinationFeeManagerProcessFeeTest:test_getRewardWithNativeQuoteAndSurcharge() (gas: 53190) -DestinationFeeManagerProcessFeeTest:test_linkAvailableForPaymentReturnsLinkBalance() (gas: 53128) -DestinationFeeManagerProcessFeeTest:test_nativeSurcharge0Percent() (gas: 33198) -DestinationFeeManagerProcessFeeTest:test_nativeSurcharge100Percent() (gas: 53170) +DestinationFeeManagerProcessFeeTest:test_feeIsUpdatedAfterDiscountIsRemoved() (gas: 51095) +DestinationFeeManagerProcessFeeTest:test_feeIsUpdatedAfterNewDiscountIsApplied() (gas: 67113) +DestinationFeeManagerProcessFeeTest:test_feeIsUpdatedAfterNewSurchargeIsApplied() (gas: 66296) +DestinationFeeManagerProcessFeeTest:test_feeIsZeroWith100PercentDiscount() (gas: 51741) +DestinationFeeManagerProcessFeeTest:test_getBaseRewardWithLinkQuote() (gas: 16663) +DestinationFeeManagerProcessFeeTest:test_getLinkFeeIsRoundedUp() (gas: 49525) +DestinationFeeManagerProcessFeeTest:test_getLinkRewardIsSameAsFee() (gas: 55093) +DestinationFeeManagerProcessFeeTest:test_getLinkRewardWithNativeQuoteAndSurchargeWithLinkDiscount() (gas: 84718) +DestinationFeeManagerProcessFeeTest:test_getRewardWithLinkDiscount() (gas: 49394) +DestinationFeeManagerProcessFeeTest:test_getRewardWithLinkQuoteAndLinkDiscount() (gas: 49353) +DestinationFeeManagerProcessFeeTest:test_getRewardWithNativeQuote() (gas: 19624) +DestinationFeeManagerProcessFeeTest:test_getRewardWithNativeQuoteAndSurcharge() (gas: 52858) +DestinationFeeManagerProcessFeeTest:test_linkAvailableForPaymentReturnsLinkBalance() (gas: 52453) +DestinationFeeManagerProcessFeeTest:test_nativeSurcharge0Percent() (gas: 32866) +DestinationFeeManagerProcessFeeTest:test_nativeSurcharge100Percent() (gas: 52838) DestinationFeeManagerProcessFeeTest:test_nativeSurchargeCannotExceed100Percent() (gas: 17152) DestinationFeeManagerProcessFeeTest:test_nativeSurchargeEventIsEmittedOnUpdate() (gas: 41351) -DestinationFeeManagerProcessFeeTest:test_noFeeIsAppliedWhenReportHasZeroFee() (gas: 51918) -DestinationFeeManagerProcessFeeTest:test_noFeeIsAppliedWhenReportHasZeroFeeAndDiscountAndSurchargeIsSet() (gas: 78108) +DestinationFeeManagerProcessFeeTest:test_noFeeIsAppliedWhenReportHasZeroFee() (gas: 51586) +DestinationFeeManagerProcessFeeTest:test_noFeeIsAppliedWhenReportHasZeroFeeAndDiscountAndSurchargeIsSet() (gas: 77776) DestinationFeeManagerProcessFeeTest:test_nonAdminProxyUserCannotProcessFee() (gas: 24207) DestinationFeeManagerProcessFeeTest:test_nonAdminUserCanNotSetDiscount() (gas: 19784) DestinationFeeManagerProcessFeeTest:test_onlyCallableByOwnerReverts() (gas: 15475) DestinationFeeManagerProcessFeeTest:test_onlyOwnerCanSetGlobalDiscount() (gas: 19929) -DestinationFeeManagerProcessFeeTest:test_payLinkDeficit() (gas: 199822) +DestinationFeeManagerProcessFeeTest:test_payLinkDeficit() (gas: 199273) DestinationFeeManagerProcessFeeTest:test_payLinkDeficitOnlyCallableByAdmin() (gas: 17348) -DestinationFeeManagerProcessFeeTest:test_payLinkDeficitPaysAllFeesProcessed() (gas: 221181) -DestinationFeeManagerProcessFeeTest:test_payLinkDeficitTwice() (gas: 204143) +DestinationFeeManagerProcessFeeTest:test_payLinkDeficitPaysAllFeesProcessed() (gas: 220152) +DestinationFeeManagerProcessFeeTest:test_payLinkDeficitTwice() (gas: 203594) DestinationFeeManagerProcessFeeTest:test_poolIdsCannotBeZeroAddress() (gas: 117941) -DestinationFeeManagerProcessFeeTest:test_processFeeAsProxy() (gas: 123744) +DestinationFeeManagerProcessFeeTest:test_processFeeAsProxy() (gas: 123082) DestinationFeeManagerProcessFeeTest:test_processFeeDefaultReportsStillVerifiesWithEmptyQuote() (gas: 29779) -DestinationFeeManagerProcessFeeTest:test_processFeeEmitsEventIfNotEnoughLink() (gas: 167639) +DestinationFeeManagerProcessFeeTest:test_processFeeEmitsEventIfNotEnoughLink() (gas: 166315) DestinationFeeManagerProcessFeeTest:test_processFeeIfSubscriberIsSelf() (gas: 30097) -DestinationFeeManagerProcessFeeTest:test_processFeeNative() (gas: 180449) -DestinationFeeManagerProcessFeeTest:test_processFeeUsesCorrectDigest() (gas: 125035) +DestinationFeeManagerProcessFeeTest:test_processFeeNative() (gas: 179125) +DestinationFeeManagerProcessFeeTest:test_processFeeUsesCorrectDigest() (gas: 124042) DestinationFeeManagerProcessFeeTest:test_processFeeWithDefaultReportPayloadAndQuoteStillVerifies() (gas: 31856) DestinationFeeManagerProcessFeeTest:test_processFeeWithDiscountEmitsEvent() (gas: 246015) DestinationFeeManagerProcessFeeTest:test_processFeeWithInvalidReportVersionFailsToDecode() (gas: 30798) -DestinationFeeManagerProcessFeeTest:test_processFeeWithNoDiscountDoesNotEmitEvent() (gas: 173392) -DestinationFeeManagerProcessFeeTest:test_processFeeWithUnwrappedNative() (gas: 188314) +DestinationFeeManagerProcessFeeTest:test_processFeeWithNoDiscountDoesNotEmitEvent() (gas: 173058) +DestinationFeeManagerProcessFeeTest:test_processFeeWithUnwrappedNative() (gas: 186659) DestinationFeeManagerProcessFeeTest:test_processFeeWithUnwrappedNativeLinkAddress() (gas: 138170) -DestinationFeeManagerProcessFeeTest:test_processFeeWithUnwrappedNativeLinkAddressExcessiveFee() (gas: 163728) +DestinationFeeManagerProcessFeeTest:test_processFeeWithUnwrappedNativeLinkAddressExcessiveFee() (gas: 162073) DestinationFeeManagerProcessFeeTest:test_processFeeWithUnwrappedNativeShortFunds() (gas: 97159) -DestinationFeeManagerProcessFeeTest:test_processFeeWithUnwrappedNativeWithExcessiveFee() (gas: 195277) +DestinationFeeManagerProcessFeeTest:test_processFeeWithUnwrappedNativeWithExcessiveFee() (gas: 193622) DestinationFeeManagerProcessFeeTest:test_processFeeWithWithCorruptQuotePayload() (gas: 77374) DestinationFeeManagerProcessFeeTest:test_processFeeWithWithEmptyQuotePayload() (gas: 30034) DestinationFeeManagerProcessFeeTest:test_processFeeWithWithZeroQuotePayload() (gas: 30090) DestinationFeeManagerProcessFeeTest:test_processFeeWithZeroLinkNonZeroNativeWithLinkQuote() (gas: 37638) -DestinationFeeManagerProcessFeeTest:test_processFeeWithZeroLinkNonZeroNativeWithNativeQuote() (gas: 160326) -DestinationFeeManagerProcessFeeTest:test_processFeeWithZeroNativeNonZeroLinkReturnsChange() (gas: 58377) -DestinationFeeManagerProcessFeeTest:test_processFeeWithZeroNativeNonZeroLinkWithLinkQuote() (gas: 123742) +DestinationFeeManagerProcessFeeTest:test_processFeeWithZeroLinkNonZeroNativeWithNativeQuote() (gas: 159002) +DestinationFeeManagerProcessFeeTest:test_processFeeWithZeroNativeNonZeroLinkReturnsChange() (gas: 58046) +DestinationFeeManagerProcessFeeTest:test_processFeeWithZeroNativeNonZeroLinkWithLinkQuote() (gas: 123080) DestinationFeeManagerProcessFeeTest:test_processFeeWithZeroNativeNonZeroLinkWithNativeQuote() (gas: 40342) -DestinationFeeManagerProcessFeeTest:test_processMultipleLinkReports() (gas: 233817) -DestinationFeeManagerProcessFeeTest:test_processMultipleUnwrappedNativeReports() (gas: 267604) -DestinationFeeManagerProcessFeeTest:test_processMultipleV1Reports() (gas: 81189) -DestinationFeeManagerProcessFeeTest:test_processMultipleWrappedNativeReports() (gas: 250453) +DestinationFeeManagerProcessFeeTest:test_processMultipleLinkReports() (gas: 232162) +DestinationFeeManagerProcessFeeTest:test_processMultipleUnwrappedNativeReports() (gas: 265949) +DestinationFeeManagerProcessFeeTest:test_processMultipleV1Reports() (gas: 80527) +DestinationFeeManagerProcessFeeTest:test_processMultipleWrappedNativeReports() (gas: 249129) DestinationFeeManagerProcessFeeTest:test_processPoolIdsPassedMismatched() (gas: 98827) -DestinationFeeManagerProcessFeeTest:test_processV1V2V3Reports() (gas: 218531) -DestinationFeeManagerProcessFeeTest:test_processV1V2V3ReportsWithUnwrapped() (gas: 260206) +DestinationFeeManagerProcessFeeTest:test_processV1V2V3Reports() (gas: 216876) +DestinationFeeManagerProcessFeeTest:test_processV1V2V3ReportsWithUnwrapped() (gas: 258551) DestinationFeeManagerProcessFeeTest:test_removeVerifierNonExistentAddress() (gas: 12822) DestinationFeeManagerProcessFeeTest:test_removeVerifierZeroAaddress() (gas: 10700) -DestinationFeeManagerProcessFeeTest:test_reportWithNoExpiryOrFeeReturnsZero() (gas: 13682) +DestinationFeeManagerProcessFeeTest:test_reportWithNoExpiryOrFeeReturnsZero() (gas: 10850) DestinationFeeManagerProcessFeeTest:test_revertOnSettingAnAddressZeroVerifier() (gas: 10636) -DestinationFeeManagerProcessFeeTest:test_rewardsAreCorrectlySentToEachAssociatedPoolWhenVerifyingInBulk() (gas: 266545) +DestinationFeeManagerProcessFeeTest:test_rewardsAreCorrectlySentToEachAssociatedPoolWhenVerifyingInBulk() (gas: 262573) DestinationFeeManagerProcessFeeTest:test_setDiscountOver100Percent() (gas: 19540) DestinationFeeManagerProcessFeeTest:test_setRewardManagerZeroAddress() (gas: 10626) DestinationFeeManagerProcessFeeTest:test_subscriberDiscountEventIsEmittedOnUpdate() (gas: 46279) -DestinationFeeManagerProcessFeeTest:test_surchargeFeeRoundsUpWhenUneven() (gas: 53501) -DestinationFeeManagerProcessFeeTest:test_surchargeIsApplied() (gas: 53426) -DestinationFeeManagerProcessFeeTest:test_surchargeIsAppliedForNativeFeeWithDiscount() (gas: 79315) -DestinationFeeManagerProcessFeeTest:test_surchargeIsNoLongerAppliedAfterRemoving() (gas: 49149) -DestinationFeeManagerProcessFeeTest:test_surchargeIsNotAppliedForLinkFee() (gas: 52223) -DestinationFeeManagerProcessFeeTest:test_surchargeIsNotAppliedWith100PercentDiscount() (gas: 78311) +DestinationFeeManagerProcessFeeTest:test_surchargeFeeRoundsUpWhenUneven() (gas: 53169) +DestinationFeeManagerProcessFeeTest:test_surchargeIsApplied() (gas: 53094) +DestinationFeeManagerProcessFeeTest:test_surchargeIsAppliedForNativeFeeWithDiscount() (gas: 78983) +DestinationFeeManagerProcessFeeTest:test_surchargeIsNoLongerAppliedAfterRemoving() (gas: 48618) +DestinationFeeManagerProcessFeeTest:test_surchargeIsNotAppliedForLinkFee() (gas: 51891) +DestinationFeeManagerProcessFeeTest:test_surchargeIsNotAppliedWith100PercentDiscount() (gas: 77979) DestinationFeeManagerProcessFeeTest:test_testRevertIfReportHasExpired() (gas: 14987) -DestinationRewardManagerClaimTest:test_claimAllRecipients() (gas: 277179) -DestinationRewardManagerClaimTest:test_claimMultipleRecipients() (gas: 154343) -DestinationRewardManagerClaimTest:test_claimRewardsWithDuplicatePoolIdsDoesNotPayoutTwice() (gas: 330169) -DestinationRewardManagerClaimTest:test_claimSingleRecipient() (gas: 89014) -DestinationRewardManagerClaimTest:test_claimUnevenAmountRoundsDown() (gas: 315372) -DestinationRewardManagerClaimTest:test_claimUnregisteredPoolId() (gas: 35102) -DestinationRewardManagerClaimTest:test_claimUnregisteredRecipient() (gas: 41161) +DestinationRewardManagerClaimTest:test_claimAllRecipients() (gas: 275855) +DestinationRewardManagerClaimTest:test_claimMultipleRecipients() (gas: 153343) +DestinationRewardManagerClaimTest:test_claimRewardsWithDuplicatePoolIdsDoesNotPayoutTwice() (gas: 328505) +DestinationRewardManagerClaimTest:test_claimSingleRecipient() (gas: 88352) +DestinationRewardManagerClaimTest:test_claimUnevenAmountRoundsDown() (gas: 313709) +DestinationRewardManagerClaimTest:test_claimUnregisteredPoolId() (gas: 34440) +DestinationRewardManagerClaimTest:test_claimUnregisteredRecipient() (gas: 40492) DestinationRewardManagerClaimTest:test_eventIsEmittedUponClaim() (gas: 86097) -DestinationRewardManagerClaimTest:test_eventIsNotEmittedUponUnsuccessfulClaim() (gas: 25042) -DestinationRewardManagerClaimTest:test_recipientsClaimMultipleDeposits() (gas: 386784) -DestinationRewardManagerClaimTest:test_singleRecipientClaimMultipleDeposits() (gas: 137700) -DestinationRewardManagerNoRecipientSet:test_claimAllRecipientsAfterRecipientsSet() (gas: 494328) +DestinationRewardManagerClaimTest:test_eventIsNotEmittedUponUnsuccessfulClaim() (gas: 24708) +DestinationRewardManagerClaimTest:test_recipientsClaimMultipleDeposits() (gas: 383463) +DestinationRewardManagerClaimTest:test_singleRecipientClaimMultipleDeposits() (gas: 136376) +DestinationRewardManagerNoRecipientSet:test_claimAllRecipientsAfterRecipientsSet() (gas: 491680) DestinationRewardManagerPayRecipientsTest:test_addFundsToPoolAsNonOwnerOrFeeManager() (gas: 11517) DestinationRewardManagerPayRecipientsTest:test_addFundsToPoolAsOwner() (gas: 53958) -DestinationRewardManagerPayRecipientsTest:test_payAllRecipients() (gas: 253038) +DestinationRewardManagerPayRecipientsTest:test_payAllRecipients() (gas: 251714) DestinationRewardManagerPayRecipientsTest:test_payAllRecipientsFromNonAdminUser() (gas: 20472) -DestinationRewardManagerPayRecipientsTest:test_payAllRecipientsFromRecipientInPool() (gas: 248898) -DestinationRewardManagerPayRecipientsTest:test_payAllRecipientsWithAdditionalInvalidRecipient() (gas: 264466) -DestinationRewardManagerPayRecipientsTest:test_payAllRecipientsWithAdditionalUnregisteredRecipient() (gas: 267929) -DestinationRewardManagerPayRecipientsTest:test_payRecipientWithInvalidPool() (gas: 31089) -DestinationRewardManagerPayRecipientsTest:test_payRecipientsEmptyRecipientList() (gas: 27555) -DestinationRewardManagerPayRecipientsTest:test_payRecipientsWithInvalidPoolId() (gas: 33617) -DestinationRewardManagerPayRecipientsTest:test_paySingleRecipient() (gas: 86971) -DestinationRewardManagerPayRecipientsTest:test_paySubsetOfRecipientsInPool() (gas: 200664) -DestinationRewardManagerRecipientClaimDifferentWeightsTest:test_allRecipientsClaimingReceiveExpectedAmount() (gas: 280775) -DestinationRewardManagerRecipientClaimMultiplePoolsTest:test_claimAllRecipientsMultiplePools() (gas: 512487) -DestinationRewardManagerRecipientClaimMultiplePoolsTest:test_claimAllRecipientsSinglePool() (gas: 283660) -DestinationRewardManagerRecipientClaimMultiplePoolsTest:test_claimEmptyPoolWhenSecondPoolContainsFunds() (gas: 293467) -DestinationRewardManagerRecipientClaimMultiplePoolsTest:test_claimMultipleRecipientsMultiplePools() (gas: 263063) -DestinationRewardManagerRecipientClaimMultiplePoolsTest:test_claimMultipleRecipientsSinglePool() (gas: 154487) -DestinationRewardManagerRecipientClaimMultiplePoolsTest:test_claimSingleRecipientMultiplePools() (gas: 132647) -DestinationRewardManagerRecipientClaimMultiplePoolsTest:test_claimSingleUniqueRecipient() (gas: 106035) -DestinationRewardManagerRecipientClaimMultiplePoolsTest:test_claimUnevenAmountRoundsDown() (gas: 579720) -DestinationRewardManagerRecipientClaimMultiplePoolsTest:test_claimUnregisteredRecipient() (gas: 64606) -DestinationRewardManagerRecipientClaimMultiplePoolsTest:test_getAvailableRewardsCursorAndTotalPoolsEqual() (gas: 13052) +DestinationRewardManagerPayRecipientsTest:test_payAllRecipientsFromRecipientInPool() (gas: 247574) +DestinationRewardManagerPayRecipientsTest:test_payAllRecipientsWithAdditionalInvalidRecipient() (gas: 263142) +DestinationRewardManagerPayRecipientsTest:test_payAllRecipientsWithAdditionalUnregisteredRecipient() (gas: 266267) +DestinationRewardManagerPayRecipientsTest:test_payRecipientWithInvalidPool() (gas: 30758) +DestinationRewardManagerPayRecipientsTest:test_payRecipientsEmptyRecipientList() (gas: 27224) +DestinationRewardManagerPayRecipientsTest:test_payRecipientsWithInvalidPoolId() (gas: 33286) +DestinationRewardManagerPayRecipientsTest:test_paySingleRecipient() (gas: 86640) +DestinationRewardManagerPayRecipientsTest:test_paySubsetOfRecipientsInPool() (gas: 199671) +DestinationRewardManagerRecipientClaimDifferentWeightsTest:test_allRecipientsClaimingReceiveExpectedAmount() (gas: 279451) +DestinationRewardManagerRecipientClaimMultiplePoolsTest:test_claimAllRecipientsMultiplePools() (gas: 510086) +DestinationRewardManagerRecipientClaimMultiplePoolsTest:test_claimAllRecipientsSinglePool() (gas: 281937) +DestinationRewardManagerRecipientClaimMultiplePoolsTest:test_claimEmptyPoolWhenSecondPoolContainsFunds() (gas: 291744) +DestinationRewardManagerRecipientClaimMultiplePoolsTest:test_claimMultipleRecipientsMultiplePools() (gas: 261683) +DestinationRewardManagerRecipientClaimMultiplePoolsTest:test_claimMultipleRecipientsSinglePool() (gas: 153451) +DestinationRewardManagerRecipientClaimMultiplePoolsTest:test_claimSingleRecipientMultiplePools() (gas: 131961) +DestinationRewardManagerRecipientClaimMultiplePoolsTest:test_claimSingleUniqueRecipient() (gas: 105349) +DestinationRewardManagerRecipientClaimMultiplePoolsTest:test_claimUnevenAmountRoundsDown() (gas: 576622) +DestinationRewardManagerRecipientClaimMultiplePoolsTest:test_claimUnregisteredRecipient() (gas: 63570) +DestinationRewardManagerRecipientClaimMultiplePoolsTest:test_getAvailableRewardsCursorAndTotalPoolsEqual() (gas: 10203) DestinationRewardManagerRecipientClaimMultiplePoolsTest:test_getAvailableRewardsCursorCannotBeGreaterThanTotalPools() (gas: 12747) -DestinationRewardManagerRecipientClaimMultiplePoolsTest:test_getAvailableRewardsCursorSingleResult() (gas: 22449) -DestinationRewardManagerRecipientClaimMultiplePoolsTest:test_getRewardsAvailableToRecipientInBothPools() (gas: 32248) -DestinationRewardManagerRecipientClaimMultiplePoolsTest:test_getRewardsAvailableToRecipientInBothPoolsWhereAlreadyClaimed() (gas: 148667) -DestinationRewardManagerRecipientClaimMultiplePoolsTest:test_getRewardsAvailableToRecipientInNoPools() (gas: 21706) -DestinationRewardManagerRecipientClaimMultiplePoolsTest:test_getRewardsAvailableToRecipientInSinglePool() (gas: 27765) -DestinationRewardManagerRecipientClaimMultiplePoolsTest:test_recipientsClaimMultipleDeposits() (gas: 391354) -DestinationRewardManagerRecipientClaimMultiplePoolsTest:test_singleRecipientClaimMultipleDeposits() (gas: 137785) -DestinationRewardManagerRecipientClaimUnevenWeightTest:test_allRecipientsClaimingReceiveExpectedAmount() (gas: 199513) -DestinationRewardManagerRecipientClaimUnevenWeightTest:test_allRecipientsClaimingReceiveExpectedAmountWithSmallDeposit() (gas: 219386) +DestinationRewardManagerRecipientClaimMultiplePoolsTest:test_getAvailableRewardsCursorSingleResult() (gas: 19607) +DestinationRewardManagerRecipientClaimMultiplePoolsTest:test_getRewardsAvailableToRecipientInBothPools() (gas: 29075) +DestinationRewardManagerRecipientClaimMultiplePoolsTest:test_getRewardsAvailableToRecipientInBothPoolsWhereAlreadyClaimed() (gas: 147332) +DestinationRewardManagerRecipientClaimMultiplePoolsTest:test_getRewardsAvailableToRecipientInNoPools() (gas: 18533) +DestinationRewardManagerRecipientClaimMultiplePoolsTest:test_getRewardsAvailableToRecipientInSinglePool() (gas: 24592) +DestinationRewardManagerRecipientClaimMultiplePoolsTest:test_recipientsClaimMultipleDeposits() (gas: 387913) +DestinationRewardManagerRecipientClaimMultiplePoolsTest:test_singleRecipientClaimMultipleDeposits() (gas: 136413) +DestinationRewardManagerRecipientClaimUnevenWeightTest:test_allRecipientsClaimingReceiveExpectedAmount() (gas: 198513) +DestinationRewardManagerRecipientClaimUnevenWeightTest:test_allRecipientsClaimingReceiveExpectedAmountWithSmallDeposit() (gas: 218386) DestinationRewardManagerSetRecipientsTest:test_eventIsEmittedUponSetRecipients() (gas: 193864) DestinationRewardManagerSetRecipientsTest:test_setRecipientContainsDuplicateRecipients() (gas: 128245) DestinationRewardManagerSetRecipientsTest:test_setRewardRecipientFromManagerAddress() (gas: 213998) @@ -293,22 +293,22 @@ DestinationRewardManagerSetRecipientsTest:test_setRewardRecipientsIsEmpty() (gas DestinationRewardManagerSetRecipientsTest:test_setSingleRewardRecipient() (gas: 112534) DestinationRewardManagerSetupTest:test_addFeeManagerExistingAddress() (gas: 35281) DestinationRewardManagerSetupTest:test_addFeeManagerZeroAddress() (gas: 10603) -DestinationRewardManagerSetupTest:test_addRemoveFeeManager() (gas: 48231) +DestinationRewardManagerSetupTest:test_addRemoveFeeManager() (gas: 45186) DestinationRewardManagerSetupTest:test_eventEmittedUponFeeManagerUpdate() (gas: 41553) DestinationRewardManagerSetupTest:test_eventEmittedUponFeePaid() (gas: 261346) DestinationRewardManagerSetupTest:test_rejectsZeroLinkAddressOnConstruction() (gas: 59481) DestinationRewardManagerSetupTest:test_removeFeeManagerNonExistentAddress() (gas: 12778) DestinationRewardManagerSetupTest:test_setFeeManagerZeroAddress() (gas: 17128) -DestinationRewardManagerUpdateRewardRecipientsMultiplePoolsTest:test_updatePrimaryRecipientWeights() (gas: 376623) -DestinationRewardManagerUpdateRewardRecipientsTest:test_eventIsEmittedUponUpdateRecipients() (gas: 280415) +DestinationRewardManagerUpdateRewardRecipientsMultiplePoolsTest:test_updatePrimaryRecipientWeights() (gas: 373641) +DestinationRewardManagerUpdateRewardRecipientsTest:test_eventIsEmittedUponUpdateRecipients() (gas: 279091) DestinationRewardManagerUpdateRewardRecipientsTest:test_onlyAdminCanUpdateRecipients() (gas: 19705) -DestinationRewardManagerUpdateRewardRecipientsTest:test_partialUpdateRecipientWeights() (gas: 220943) -DestinationRewardManagerUpdateRewardRecipientsTest:test_updateAllRecipientsWithSameAddressAndWeight() (gas: 274221) +DestinationRewardManagerUpdateRewardRecipientsTest:test_partialUpdateRecipientWeights() (gas: 218957) +DestinationRewardManagerUpdateRewardRecipientsTest:test_updateAllRecipientsWithSameAddressAndWeight() (gas: 272897) DestinationRewardManagerUpdateRewardRecipientsTest:test_updatePartialRecipientsToSubset() (gas: 254232) DestinationRewardManagerUpdateRewardRecipientsTest:test_updatePartialRecipientsWithExcessiveWeight() (gas: 259219) -DestinationRewardManagerUpdateRewardRecipientsTest:test_updatePartialRecipientsWithSameAddressAndWeight() (gas: 149828) +DestinationRewardManagerUpdateRewardRecipientsTest:test_updatePartialRecipientsWithSameAddressAndWeight() (gas: 148835) DestinationRewardManagerUpdateRewardRecipientsTest:test_updatePartialRecipientsWithUnderWeightSet() (gas: 259293) -DestinationRewardManagerUpdateRewardRecipientsTest:test_updateRecipientWeights() (gas: 372104) +DestinationRewardManagerUpdateRewardRecipientsTest:test_updateRecipientWeights() (gas: 369122) DestinationRewardManagerUpdateRewardRecipientsTest:test_updateRecipientWithNewZeroAddress() (gas: 270802) DestinationRewardManagerUpdateRewardRecipientsTest:test_updateRecipientsContainsDuplicateRecipients() (gas: 288575) DestinationRewardManagerUpdateRewardRecipientsTest:test_updateRecipientsToDifferentLargerSet() (gas: 407876) @@ -317,23 +317,23 @@ DestinationRewardManagerUpdateRewardRecipientsTest:test_updateRecipientsToDiffer DestinationRewardManagerUpdateRewardRecipientsTest:test_updateRecipientsToDifferentSetWithInvalidWeights() (gas: 312122) DestinationRewardManagerUpdateRewardRecipientsTest:test_updateRecipientsUpdateAndRemoveExistingForLargerSet() (gas: 399699) DestinationRewardManagerUpdateRewardRecipientsTest:test_updateRecipientsUpdateAndRemoveExistingForSmallerSet() (gas: 289513) -DestinationVerifierBulkVerifyBillingReport:test_verifyWithBulkLink() (gas: 642458) -DestinationVerifierBulkVerifyBillingReport:test_verifyWithBulkNative() (gas: 643592) -DestinationVerifierBulkVerifyBillingReport:test_verifyWithBulkNativeUnwrapped() (gas: 665150) -DestinationVerifierBulkVerifyBillingReport:test_verifyWithBulkNativeUnwrappedReturnsChange() (gas: 665105) -DestinationVerifierConstructorTest:test_falseIfIsNotCorrectInterface() (gas: 8481) +DestinationVerifierBulkVerifyBillingReport:test_verifyWithBulkLink() (gas: 641794) +DestinationVerifierBulkVerifyBillingReport:test_verifyWithBulkNative() (gas: 643260) +DestinationVerifierBulkVerifyBillingReport:test_verifyWithBulkNativeUnwrapped() (gas: 664486) +DestinationVerifierBulkVerifyBillingReport:test_verifyWithBulkNativeUnwrappedReturnsChange() (gas: 664441) +DestinationVerifierConstructorTest:test_falseIfIsNotCorrectInterface() (gas: 5649) DestinationVerifierConstructorTest:test_revertsIfInitializedWithEmptyVerifierProxy() (gas: 60885) -DestinationVerifierConstructorTest:test_trueIfIsCorrectInterface() (gas: 9361) -DestinationVerifierConstructorTest:test_typeAndVersion() (gas: 2624729) -DestinationVerifierProxyInitializeVerifierTest:test_correctlySetsTheOwner() (gas: 862226) -DestinationVerifierProxyInitializeVerifierTest:test_correctlySetsVersion() (gas: 9841) +DestinationVerifierConstructorTest:test_trueIfIsCorrectInterface() (gas: 6529) +DestinationVerifierConstructorTest:test_typeAndVersion() (gas: 2624392) +DestinationVerifierProxyInitializeVerifierTest:test_correctlySetsTheOwner() (gas: 859400) +DestinationVerifierProxyInitializeVerifierTest:test_correctlySetsVersion() (gas: 9842) DestinationVerifierProxyInitializeVerifierTest:test_setVerifierCalledByNoOwner() (gas: 17483) -DestinationVerifierProxyInitializeVerifierTest:test_setVerifierOk() (gas: 27685) +DestinationVerifierProxyInitializeVerifierTest:test_setVerifierOk() (gas: 24524) DestinationVerifierProxyInitializeVerifierTest:test_setVerifierWhichDoesntHonourInterface() (gas: 16535) DestinationVerifierSetAccessControllerTest:test_emitsTheCorrectEvent() (gas: 35391) DestinationVerifierSetAccessControllerTest:test_revertsIfCalledByNonOwner() (gas: 15089) -DestinationVerifierSetAccessControllerTest:test_successfullySetsNewAccessController() (gas: 34939) -DestinationVerifierSetAccessControllerTest:test_successfullySetsNewAccessControllerIsEmpty() (gas: 14995) +DestinationVerifierSetAccessControllerTest:test_successfullySetsNewAccessController() (gas: 32107) +DestinationVerifierSetAccessControllerTest:test_successfullySetsNewAccessControllerIsEmpty() (gas: 12163) DestinationVerifierSetConfigTest:test_NoDonConfigAlreadyExists() (gas: 2877761) DestinationVerifierSetConfigTest:test_addressesAndWeightsDoNotProduceSideEffectsInDonConfigIds() (gas: 1323263) DestinationVerifierSetConfigTest:test_donConfigIdIsSameForSignersInDifferentOrder() (gas: 1290458) @@ -350,455 +350,455 @@ DestinationVerifierSetConfigTest:test_setConfigWithActivationTime() (gas: 108813 DestinationVerifierSetConfigTest:test_setConfigWithActivationTimeEarlierThanLatestConfigShouldFail() (gas: 1963051) DestinationVerifierSetConfigTest:test_setConfigWithActivationTimeNoFutureTimeShouldFail() (gas: 259477) DestinationVerifierSetConfigTest:test_setConfigWithActivationTimeTheSameAsLatestConfigShouldFail() (gas: 1283835) -FeeManagerProcessFeeTest:test_DiscountIsAppliedForNative() (gas: 52645) -FeeManagerProcessFeeTest:test_DiscountIsReturnedForNative() (gas: 52595) -FeeManagerProcessFeeTest:test_DiscountIsReturnedForNativeWithSurcharge() (gas: 78830) +FeeManagerProcessFeeTest:test_DiscountIsAppliedForNative() (gas: 52313) +FeeManagerProcessFeeTest:test_DiscountIsReturnedForNative() (gas: 52263) +FeeManagerProcessFeeTest:test_DiscountIsReturnedForNativeWithSurcharge() (gas: 78498) FeeManagerProcessFeeTest:test_V1PayloadVerifies() (gas: 26980) -FeeManagerProcessFeeTest:test_V1PayloadVerifiesAndReturnsChange() (gas: 58910) -FeeManagerProcessFeeTest:test_V2PayloadVerifies() (gas: 116703) +FeeManagerProcessFeeTest:test_V1PayloadVerifiesAndReturnsChange() (gas: 57917) +FeeManagerProcessFeeTest:test_V2PayloadVerifies() (gas: 116041) FeeManagerProcessFeeTest:test_V2PayloadWithoutQuoteFails() (gas: 27389) FeeManagerProcessFeeTest:test_V2PayloadWithoutZeroFee() (gas: 70342) -FeeManagerProcessFeeTest:test_WithdrawERC20() (gas: 72605) +FeeManagerProcessFeeTest:test_WithdrawERC20() (gas: 71587) FeeManagerProcessFeeTest:test_WithdrawNonAdminAddr() (gas: 56286) -FeeManagerProcessFeeTest:test_WithdrawUnwrappedNative() (gas: 26387) -FeeManagerProcessFeeTest:test_baseFeeIsAppliedForLink() (gas: 17167) -FeeManagerProcessFeeTest:test_baseFeeIsAppliedForNative() (gas: 20150) -FeeManagerProcessFeeTest:test_correctDiscountIsAppliedWhenBothTokensAreDiscounted() (gas: 91033) -FeeManagerProcessFeeTest:test_discountAIsNotAppliedWhenSetForOtherUsers() (gas: 56556) -FeeManagerProcessFeeTest:test_discountFeeRoundsDownWhenUneven() (gas: 52847) -FeeManagerProcessFeeTest:test_discountIsAppliedForLink() (gas: 49658) -FeeManagerProcessFeeTest:test_discountIsAppliedWith100PercentSurcharge() (gas: 78903) -FeeManagerProcessFeeTest:test_discountIsNoLongerAppliedAfterRemoving() (gas: 46511) +FeeManagerProcessFeeTest:test_WithdrawUnwrappedNative() (gas: 25369) +FeeManagerProcessFeeTest:test_baseFeeIsAppliedForLink() (gas: 14335) +FeeManagerProcessFeeTest:test_baseFeeIsAppliedForNative() (gas: 17318) +FeeManagerProcessFeeTest:test_correctDiscountIsAppliedWhenBothTokensAreDiscounted() (gas: 90369) +FeeManagerProcessFeeTest:test_discountAIsNotAppliedWhenSetForOtherUsers() (gas: 56224) +FeeManagerProcessFeeTest:test_discountFeeRoundsDownWhenUneven() (gas: 52515) +FeeManagerProcessFeeTest:test_discountIsAppliedForLink() (gas: 49326) +FeeManagerProcessFeeTest:test_discountIsAppliedWith100PercentSurcharge() (gas: 78571) +FeeManagerProcessFeeTest:test_discountIsNoLongerAppliedAfterRemoving() (gas: 45980) FeeManagerProcessFeeTest:test_discountIsNotAppliedForInvalidTokenAddress() (gas: 17560) -FeeManagerProcessFeeTest:test_discountIsNotAppliedToOtherFeeds() (gas: 54604) -FeeManagerProcessFeeTest:test_discountIsReturnedForLink() (gas: 49608) +FeeManagerProcessFeeTest:test_discountIsNotAppliedToOtherFeeds() (gas: 54272) +FeeManagerProcessFeeTest:test_discountIsReturnedForLink() (gas: 49276) FeeManagerProcessFeeTest:test_emptyQuoteRevertsWithError() (gas: 12163) FeeManagerProcessFeeTest:test_eventIsEmittedAfterSurchargeIsSet() (gas: 41350) -FeeManagerProcessFeeTest:test_eventIsEmittedIfNotEnoughLink() (gas: 173712) +FeeManagerProcessFeeTest:test_eventIsEmittedIfNotEnoughLink() (gas: 172719) FeeManagerProcessFeeTest:test_eventIsEmittedUponWithdraw() (gas: 69014) -FeeManagerProcessFeeTest:test_feeIsUpdatedAfterDiscountIsRemoved() (gas: 49722) -FeeManagerProcessFeeTest:test_feeIsUpdatedAfterNewDiscountIsApplied() (gas: 67699) -FeeManagerProcessFeeTest:test_feeIsUpdatedAfterNewSurchargeIsApplied() (gas: 64324) -FeeManagerProcessFeeTest:test_feeIsZeroWith100PercentDiscount() (gas: 52045) -FeeManagerProcessFeeTest:test_getBaseRewardWithLinkQuote() (gas: 17165) -FeeManagerProcessFeeTest:test_getLinkFeeIsRoundedUp() (gas: 49829) -FeeManagerProcessFeeTest:test_getLinkRewardIsSameAsFee() (gas: 55618) -FeeManagerProcessFeeTest:test_getLinkRewardWithNativeQuoteAndSurchargeWithLinkDiscount() (gas: 82787) -FeeManagerProcessFeeTest:test_getRewardWithLinkDiscount() (gas: 49676) -FeeManagerProcessFeeTest:test_getRewardWithLinkQuoteAndLinkDiscount() (gas: 49657) -FeeManagerProcessFeeTest:test_getRewardWithNativeQuote() (gas: 20148) -FeeManagerProcessFeeTest:test_getRewardWithNativeQuoteAndSurcharge() (gas: 50838) -FeeManagerProcessFeeTest:test_linkAvailableForPaymentReturnsLinkBalance() (gas: 53126) -FeeManagerProcessFeeTest:test_nativeSurcharge0Percent() (gas: 30848) -FeeManagerProcessFeeTest:test_nativeSurcharge100Percent() (gas: 50863) +FeeManagerProcessFeeTest:test_feeIsUpdatedAfterDiscountIsRemoved() (gas: 49191) +FeeManagerProcessFeeTest:test_feeIsUpdatedAfterNewDiscountIsApplied() (gas: 67035) +FeeManagerProcessFeeTest:test_feeIsUpdatedAfterNewSurchargeIsApplied() (gas: 63660) +FeeManagerProcessFeeTest:test_feeIsZeroWith100PercentDiscount() (gas: 51713) +FeeManagerProcessFeeTest:test_getBaseRewardWithLinkQuote() (gas: 14333) +FeeManagerProcessFeeTest:test_getLinkFeeIsRoundedUp() (gas: 49497) +FeeManagerProcessFeeTest:test_getLinkRewardIsSameAsFee() (gas: 54949) +FeeManagerProcessFeeTest:test_getLinkRewardWithNativeQuoteAndSurchargeWithLinkDiscount() (gas: 82455) +FeeManagerProcessFeeTest:test_getRewardWithLinkDiscount() (gas: 49344) +FeeManagerProcessFeeTest:test_getRewardWithLinkQuoteAndLinkDiscount() (gas: 49325) +FeeManagerProcessFeeTest:test_getRewardWithNativeQuote() (gas: 17316) +FeeManagerProcessFeeTest:test_getRewardWithNativeQuoteAndSurcharge() (gas: 50506) +FeeManagerProcessFeeTest:test_linkAvailableForPaymentReturnsLinkBalance() (gas: 52451) +FeeManagerProcessFeeTest:test_nativeSurcharge0Percent() (gas: 30516) +FeeManagerProcessFeeTest:test_nativeSurcharge100Percent() (gas: 50531) FeeManagerProcessFeeTest:test_nativeSurchargeCannotExceed100Percent() (gas: 17175) FeeManagerProcessFeeTest:test_nativeSurchargeEventIsEmittedOnUpdate() (gas: 41396) -FeeManagerProcessFeeTest:test_noFeeIsAppliedWhenReportHasZeroFee() (gas: 51890) -FeeManagerProcessFeeTest:test_noFeeIsAppliedWhenReportHasZeroFeeAndDiscountAndSurchargeIsSet() (gas: 78081) +FeeManagerProcessFeeTest:test_noFeeIsAppliedWhenReportHasZeroFee() (gas: 51558) +FeeManagerProcessFeeTest:test_noFeeIsAppliedWhenReportHasZeroFeeAndDiscountAndSurchargeIsSet() (gas: 77749) FeeManagerProcessFeeTest:test_nonAdminProxyUserCannotProcessFee() (gas: 21895) FeeManagerProcessFeeTest:test_nonAdminUserCanNotSetDiscount() (gas: 19806) -FeeManagerProcessFeeTest:test_payLinkDeficit() (gas: 194363) +FeeManagerProcessFeeTest:test_payLinkDeficit() (gas: 193814) FeeManagerProcessFeeTest:test_payLinkDeficitOnlyCallableByAdmin() (gas: 17413) -FeeManagerProcessFeeTest:test_payLinkDeficitPaysAllFeesProcessed() (gas: 214680) -FeeManagerProcessFeeTest:test_payLinkDeficitTwice() (gas: 198736) -FeeManagerProcessFeeTest:test_processFeeAsProxy() (gas: 117041) +FeeManagerProcessFeeTest:test_payLinkDeficitPaysAllFeesProcessed() (gas: 213857) +FeeManagerProcessFeeTest:test_payLinkDeficitTwice() (gas: 198188) +FeeManagerProcessFeeTest:test_processFeeAsProxy() (gas: 116379) FeeManagerProcessFeeTest:test_processFeeDefaultReportsStillVerifiesWithEmptyQuote() (gas: 27468) -FeeManagerProcessFeeTest:test_processFeeEmitsEventIfNotEnoughLink() (gas: 163139) +FeeManagerProcessFeeTest:test_processFeeEmitsEventIfNotEnoughLink() (gas: 161815) FeeManagerProcessFeeTest:test_processFeeIfSubscriberIsSelf() (gas: 27833) -FeeManagerProcessFeeTest:test_processFeeNative() (gas: 173755) -FeeManagerProcessFeeTest:test_processFeeUsesCorrectDigest() (gas: 118332) +FeeManagerProcessFeeTest:test_processFeeNative() (gas: 172431) +FeeManagerProcessFeeTest:test_processFeeUsesCorrectDigest() (gas: 117339) FeeManagerProcessFeeTest:test_processFeeWithDefaultReportPayloadAndQuoteStillVerifies() (gas: 29542) FeeManagerProcessFeeTest:test_processFeeWithDiscountEmitsEvent() (gas: 241320) FeeManagerProcessFeeTest:test_processFeeWithInvalidReportVersionFailsToDecode() (gas: 28511) -FeeManagerProcessFeeTest:test_processFeeWithNoDiscountDoesNotEmitEvent() (gas: 166720) -FeeManagerProcessFeeTest:test_processFeeWithUnwrappedNative() (gas: 181620) +FeeManagerProcessFeeTest:test_processFeeWithNoDiscountDoesNotEmitEvent() (gas: 166386) +FeeManagerProcessFeeTest:test_processFeeWithUnwrappedNative() (gas: 179965) FeeManagerProcessFeeTest:test_processFeeWithUnwrappedNativeLinkAddress() (gas: 131450) -FeeManagerProcessFeeTest:test_processFeeWithUnwrappedNativeLinkAddressExcessiveFee() (gas: 157025) +FeeManagerProcessFeeTest:test_processFeeWithUnwrappedNativeLinkAddressExcessiveFee() (gas: 155370) FeeManagerProcessFeeTest:test_processFeeWithUnwrappedNativeShortFunds() (gas: 92641) -FeeManagerProcessFeeTest:test_processFeeWithUnwrappedNativeWithExcessiveFee() (gas: 188583) +FeeManagerProcessFeeTest:test_processFeeWithUnwrappedNativeWithExcessiveFee() (gas: 186928) FeeManagerProcessFeeTest:test_processFeeWithWithCorruptQuotePayload() (gas: 70653) FeeManagerProcessFeeTest:test_processFeeWithWithEmptyQuotePayload() (gas: 27727) FeeManagerProcessFeeTest:test_processFeeWithWithZeroQuotePayload() (gas: 27783) FeeManagerProcessFeeTest:test_processFeeWithZeroLinkNonZeroNativeWithLinkQuote() (gas: 32973) -FeeManagerProcessFeeTest:test_processFeeWithZeroLinkNonZeroNativeWithNativeQuote() (gas: 153654) -FeeManagerProcessFeeTest:test_processFeeWithZeroNativeNonZeroLinkReturnsChange() (gas: 53801) -FeeManagerProcessFeeTest:test_processFeeWithZeroNativeNonZeroLinkWithLinkQuote() (gas: 116952) +FeeManagerProcessFeeTest:test_processFeeWithZeroLinkNonZeroNativeWithNativeQuote() (gas: 152330) +FeeManagerProcessFeeTest:test_processFeeWithZeroNativeNonZeroLinkReturnsChange() (gas: 53470) +FeeManagerProcessFeeTest:test_processFeeWithZeroNativeNonZeroLinkWithLinkQuote() (gas: 116290) FeeManagerProcessFeeTest:test_processFeeWithZeroNativeNonZeroLinkWithNativeQuote() (gas: 35744) -FeeManagerProcessFeeTest:test_processMultipleLinkReports() (gas: 223064) -FeeManagerProcessFeeTest:test_processMultipleUnwrappedNativeReports() (gas: 256925) -FeeManagerProcessFeeTest:test_processMultipleV1Reports() (gas: 74799) -FeeManagerProcessFeeTest:test_processMultipleWrappedNativeReports() (gas: 239730) -FeeManagerProcessFeeTest:test_processV1V2V3Reports() (gas: 207855) -FeeManagerProcessFeeTest:test_processV1V2V3ReportsWithUnwrapped() (gas: 249509) -FeeManagerProcessFeeTest:test_reportWithNoExpiryOrFeeReturnsZero() (gas: 13613) +FeeManagerProcessFeeTest:test_processMultipleLinkReports() (gas: 221409) +FeeManagerProcessFeeTest:test_processMultipleUnwrappedNativeReports() (gas: 255270) +FeeManagerProcessFeeTest:test_processMultipleV1Reports() (gas: 74137) +FeeManagerProcessFeeTest:test_processMultipleWrappedNativeReports() (gas: 238406) +FeeManagerProcessFeeTest:test_processV1V2V3Reports() (gas: 206200) +FeeManagerProcessFeeTest:test_processV1V2V3ReportsWithUnwrapped() (gas: 247854) +FeeManagerProcessFeeTest:test_reportWithNoExpiryOrFeeReturnsZero() (gas: 10781) FeeManagerProcessFeeTest:test_setDiscountOver100Percent() (gas: 19562) FeeManagerProcessFeeTest:test_subscriberDiscountEventIsEmittedOnUpdate() (gas: 46255) -FeeManagerProcessFeeTest:test_surchargeFeeRoundsUpWhenUneven() (gas: 51215) -FeeManagerProcessFeeTest:test_surchargeIsApplied() (gas: 51096) -FeeManagerProcessFeeTest:test_surchargeIsAppliedForNativeFeeWithDiscount() (gas: 79265) -FeeManagerProcessFeeTest:test_surchargeIsNoLongerAppliedAfterRemoving() (gas: 47076) -FeeManagerProcessFeeTest:test_surchargeIsNotAppliedForLinkFee() (gas: 49938) -FeeManagerProcessFeeTest:test_surchargeIsNotAppliedWith100PercentDiscount() (gas: 78261) +FeeManagerProcessFeeTest:test_surchargeFeeRoundsUpWhenUneven() (gas: 50883) +FeeManagerProcessFeeTest:test_surchargeIsApplied() (gas: 50764) +FeeManagerProcessFeeTest:test_surchargeIsAppliedForNativeFeeWithDiscount() (gas: 78933) +FeeManagerProcessFeeTest:test_surchargeIsNoLongerAppliedAfterRemoving() (gas: 46544) +FeeManagerProcessFeeTest:test_surchargeIsNotAppliedForLinkFee() (gas: 49606) +FeeManagerProcessFeeTest:test_surchargeIsNotAppliedWith100PercentDiscount() (gas: 77929) FeeManagerProcessFeeTest:test_testRevertIfReportHasExpired() (gas: 14941) -FeeManagerProcessFeeTestV051:test_DiscountIsAppliedForNative() (gas: 52650) -FeeManagerProcessFeeTestV051:test_DiscountIsReturnedForNative() (gas: 52643) -FeeManagerProcessFeeTestV051:test_DiscountIsReturnedForNativeWithSurcharge() (gas: 78900) +FeeManagerProcessFeeTestV051:test_DiscountIsAppliedForNative() (gas: 52318) +FeeManagerProcessFeeTestV051:test_DiscountIsReturnedForNative() (gas: 52311) +FeeManagerProcessFeeTestV051:test_DiscountIsReturnedForNativeWithSurcharge() (gas: 78568) FeeManagerProcessFeeTestV051:test_GlobalDiscountCantBeSetToMoreThanMaximum() (gas: 19501) -FeeManagerProcessFeeTestV051:test_GlobalDiscountIsOverridenByIndividualDiscountLink() (gas: 79464) -FeeManagerProcessFeeTestV051:test_GlobalDiscountIsOverridenByIndividualDiscountNative() (gas: 82478) -FeeManagerProcessFeeTestV051:test_GlobalDiscountIsUpdatedAfterBeingSetToZeroLink() (gas: 48284) -FeeManagerProcessFeeTestV051:test_GlobalDiscountIsUpdatedAfterBeingSetToZeroNative() (gas: 51464) -FeeManagerProcessFeeTestV051:test_GlobalDiscountWithLink() (gas: 51813) -FeeManagerProcessFeeTestV051:test_GlobalDiscountWithNative() (gas: 54759) -FeeManagerProcessFeeTestV051:test_GlobalDiscountWithNativeAndLink() (gas: 83629) +FeeManagerProcessFeeTestV051:test_GlobalDiscountIsOverridenByIndividualDiscountLink() (gas: 79132) +FeeManagerProcessFeeTestV051:test_GlobalDiscountIsOverridenByIndividualDiscountNative() (gas: 82146) +FeeManagerProcessFeeTestV051:test_GlobalDiscountIsUpdatedAfterBeingSetToZeroLink() (gas: 47753) +FeeManagerProcessFeeTestV051:test_GlobalDiscountIsUpdatedAfterBeingSetToZeroNative() (gas: 50933) +FeeManagerProcessFeeTestV051:test_GlobalDiscountWithLink() (gas: 51481) +FeeManagerProcessFeeTestV051:test_GlobalDiscountWithNative() (gas: 54427) +FeeManagerProcessFeeTestV051:test_GlobalDiscountWithNativeAndLink() (gas: 83297) FeeManagerProcessFeeTestV051:test_V1PayloadVerifies() (gas: 26980) -FeeManagerProcessFeeTestV051:test_V1PayloadVerifiesAndReturnsChange() (gas: 58936) -FeeManagerProcessFeeTestV051:test_V2PayloadVerifies() (gas: 118987) +FeeManagerProcessFeeTestV051:test_V1PayloadVerifiesAndReturnsChange() (gas: 57943) +FeeManagerProcessFeeTestV051:test_V2PayloadVerifies() (gas: 118325) FeeManagerProcessFeeTestV051:test_V2PayloadWithoutQuoteFails() (gas: 27389) FeeManagerProcessFeeTestV051:test_V2PayloadWithoutZeroFee() (gas: 72626) -FeeManagerProcessFeeTestV051:test_WithdrawERC20() (gas: 72649) +FeeManagerProcessFeeTestV051:test_WithdrawERC20() (gas: 71631) FeeManagerProcessFeeTestV051:test_WithdrawNonAdminAddr() (gas: 56309) -FeeManagerProcessFeeTestV051:test_WithdrawUnwrappedNative() (gas: 26463) -FeeManagerProcessFeeTestV051:test_baseFeeIsAppliedForLink() (gas: 19451) -FeeManagerProcessFeeTestV051:test_baseFeeIsAppliedForNative() (gas: 22456) -FeeManagerProcessFeeTestV051:test_correctDiscountIsAppliedWhenBothTokensAreDiscounted() (gas: 91085) -FeeManagerProcessFeeTestV051:test_discountAIsNotAppliedWhenSetForOtherUsers() (gas: 58840) -FeeManagerProcessFeeTestV051:test_discountFeeRoundsDownWhenUneven() (gas: 52850) -FeeManagerProcessFeeTestV051:test_discountIsAppliedForLink() (gas: 49706) -FeeManagerProcessFeeTestV051:test_discountIsAppliedWith100PercentSurcharge() (gas: 78951) -FeeManagerProcessFeeTestV051:test_discountIsNoLongerAppliedAfterRemoving() (gas: 48341) +FeeManagerProcessFeeTestV051:test_WithdrawUnwrappedNative() (gas: 25445) +FeeManagerProcessFeeTestV051:test_baseFeeIsAppliedForLink() (gas: 16619) +FeeManagerProcessFeeTestV051:test_baseFeeIsAppliedForNative() (gas: 19624) +FeeManagerProcessFeeTestV051:test_correctDiscountIsAppliedWhenBothTokensAreDiscounted() (gas: 90421) +FeeManagerProcessFeeTestV051:test_discountAIsNotAppliedWhenSetForOtherUsers() (gas: 58508) +FeeManagerProcessFeeTestV051:test_discountFeeRoundsDownWhenUneven() (gas: 52518) +FeeManagerProcessFeeTestV051:test_discountIsAppliedForLink() (gas: 49374) +FeeManagerProcessFeeTestV051:test_discountIsAppliedWith100PercentSurcharge() (gas: 78619) +FeeManagerProcessFeeTestV051:test_discountIsNoLongerAppliedAfterRemoving() (gas: 47810) FeeManagerProcessFeeTestV051:test_discountIsNotAppliedForInvalidTokenAddress() (gas: 17538) -FeeManagerProcessFeeTestV051:test_discountIsNotAppliedToOtherFeeds() (gas: 56844) -FeeManagerProcessFeeTestV051:test_discountIsReturnedForLink() (gas: 49678) +FeeManagerProcessFeeTestV051:test_discountIsNotAppliedToOtherFeeds() (gas: 56512) +FeeManagerProcessFeeTestV051:test_discountIsReturnedForLink() (gas: 49346) FeeManagerProcessFeeTestV051:test_emptyQuoteRevertsWithError() (gas: 12162) FeeManagerProcessFeeTestV051:test_eventIsEmittedAfterSurchargeIsSet() (gas: 41372) -FeeManagerProcessFeeTestV051:test_eventIsEmittedIfNotEnoughLink() (gas: 177132) +FeeManagerProcessFeeTestV051:test_eventIsEmittedIfNotEnoughLink() (gas: 176139) FeeManagerProcessFeeTestV051:test_eventIsEmittedUponWithdraw() (gas: 69036) -FeeManagerProcessFeeTestV051:test_feeIsUpdatedAfterDiscountIsRemoved() (gas: 51588) -FeeManagerProcessFeeTestV051:test_feeIsUpdatedAfterNewDiscountIsApplied() (gas: 67751) -FeeManagerProcessFeeTestV051:test_feeIsUpdatedAfterNewSurchargeIsApplied() (gas: 66958) -FeeManagerProcessFeeTestV051:test_feeIsZeroWith100PercentDiscount() (gas: 52049) -FeeManagerProcessFeeTestV051:test_getBaseRewardWithLinkQuote() (gas: 19449) -FeeManagerProcessFeeTestV051:test_getLinkFeeIsRoundedUp() (gas: 49855) -FeeManagerProcessFeeTestV051:test_getLinkRewardIsSameAsFee() (gas: 55692) -FeeManagerProcessFeeTestV051:test_getLinkRewardWithNativeQuoteAndSurchargeWithLinkDiscount() (gas: 85071) -FeeManagerProcessFeeTestV051:test_getRewardWithLinkDiscount() (gas: 49702) -FeeManagerProcessFeeTestV051:test_getRewardWithLinkQuoteAndLinkDiscount() (gas: 49683) -FeeManagerProcessFeeTestV051:test_getRewardWithNativeQuote() (gas: 22432) -FeeManagerProcessFeeTestV051:test_getRewardWithNativeQuoteAndSurcharge() (gas: 53166) -FeeManagerProcessFeeTestV051:test_linkAvailableForPaymentReturnsLinkBalance() (gas: 53126) -FeeManagerProcessFeeTestV051:test_nativeSurcharge0Percent() (gas: 33154) -FeeManagerProcessFeeTestV051:test_nativeSurcharge100Percent() (gas: 53191) +FeeManagerProcessFeeTestV051:test_feeIsUpdatedAfterDiscountIsRemoved() (gas: 51056) +FeeManagerProcessFeeTestV051:test_feeIsUpdatedAfterNewDiscountIsApplied() (gas: 67087) +FeeManagerProcessFeeTestV051:test_feeIsUpdatedAfterNewSurchargeIsApplied() (gas: 66294) +FeeManagerProcessFeeTestV051:test_feeIsZeroWith100PercentDiscount() (gas: 51717) +FeeManagerProcessFeeTestV051:test_getBaseRewardWithLinkQuote() (gas: 16617) +FeeManagerProcessFeeTestV051:test_getLinkFeeIsRoundedUp() (gas: 49523) +FeeManagerProcessFeeTestV051:test_getLinkRewardIsSameAsFee() (gas: 55023) +FeeManagerProcessFeeTestV051:test_getLinkRewardWithNativeQuoteAndSurchargeWithLinkDiscount() (gas: 84739) +FeeManagerProcessFeeTestV051:test_getRewardWithLinkDiscount() (gas: 49370) +FeeManagerProcessFeeTestV051:test_getRewardWithLinkQuoteAndLinkDiscount() (gas: 49351) +FeeManagerProcessFeeTestV051:test_getRewardWithNativeQuote() (gas: 19600) +FeeManagerProcessFeeTestV051:test_getRewardWithNativeQuoteAndSurcharge() (gas: 52834) +FeeManagerProcessFeeTestV051:test_linkAvailableForPaymentReturnsLinkBalance() (gas: 52451) +FeeManagerProcessFeeTestV051:test_nativeSurcharge0Percent() (gas: 32822) +FeeManagerProcessFeeTestV051:test_nativeSurcharge100Percent() (gas: 52859) FeeManagerProcessFeeTestV051:test_nativeSurchargeCannotExceed100Percent() (gas: 17219) FeeManagerProcessFeeTestV051:test_nativeSurchargeEventIsEmittedOnUpdate() (gas: 41418) -FeeManagerProcessFeeTestV051:test_noFeeIsAppliedWhenReportHasZeroFee() (gas: 51894) -FeeManagerProcessFeeTestV051:test_noFeeIsAppliedWhenReportHasZeroFeeAndDiscountAndSurchargeIsSet() (gas: 78129) +FeeManagerProcessFeeTestV051:test_noFeeIsAppliedWhenReportHasZeroFee() (gas: 51562) +FeeManagerProcessFeeTestV051:test_noFeeIsAppliedWhenReportHasZeroFeeAndDiscountAndSurchargeIsSet() (gas: 77797) FeeManagerProcessFeeTestV051:test_nonAdminProxyUserCannotProcessFee() (gas: 21895) FeeManagerProcessFeeTestV051:test_nonAdminUserCanNotSetDiscount() (gas: 19806) FeeManagerProcessFeeTestV051:test_onlyOwnerCanSetGlobalDiscount() (gas: 19842) -FeeManagerProcessFeeTestV051:test_payLinkDeficit() (gas: 196208) +FeeManagerProcessFeeTestV051:test_payLinkDeficit() (gas: 195659) FeeManagerProcessFeeTestV051:test_payLinkDeficitOnlyCallableByAdmin() (gas: 17413) -FeeManagerProcessFeeTestV051:test_payLinkDeficitPaysAllFeesProcessed() (gas: 216752) -FeeManagerProcessFeeTestV051:test_payLinkDeficitTwice() (gas: 200564) -FeeManagerProcessFeeTestV051:test_processFeeAsProxy() (gas: 119325) +FeeManagerProcessFeeTestV051:test_payLinkDeficitPaysAllFeesProcessed() (gas: 215929) +FeeManagerProcessFeeTestV051:test_payLinkDeficitTwice() (gas: 200015) +FeeManagerProcessFeeTestV051:test_processFeeAsProxy() (gas: 118663) FeeManagerProcessFeeTestV051:test_processFeeDefaultReportsStillVerifiesWithEmptyQuote() (gas: 27468) -FeeManagerProcessFeeTestV051:test_processFeeEmitsEventIfNotEnoughLink() (gas: 165423) +FeeManagerProcessFeeTestV051:test_processFeeEmitsEventIfNotEnoughLink() (gas: 164099) FeeManagerProcessFeeTestV051:test_processFeeIfSubscriberIsSelf() (gas: 27833) -FeeManagerProcessFeeTestV051:test_processFeeNative() (gas: 176039) -FeeManagerProcessFeeTestV051:test_processFeeUsesCorrectDigest() (gas: 120616) +FeeManagerProcessFeeTestV051:test_processFeeNative() (gas: 174715) +FeeManagerProcessFeeTestV051:test_processFeeUsesCorrectDigest() (gas: 119623) FeeManagerProcessFeeTestV051:test_processFeeWithDefaultReportPayloadAndQuoteStillVerifies() (gas: 29542) FeeManagerProcessFeeTestV051:test_processFeeWithDiscountEmitsEvent() (gas: 241424) FeeManagerProcessFeeTestV051:test_processFeeWithInvalidReportVersionFailsToDecode() (gas: 28511) -FeeManagerProcessFeeTestV051:test_processFeeWithNoDiscountDoesNotEmitEvent() (gas: 169004) -FeeManagerProcessFeeTestV051:test_processFeeWithUnwrappedNative() (gas: 183904) +FeeManagerProcessFeeTestV051:test_processFeeWithNoDiscountDoesNotEmitEvent() (gas: 168670) +FeeManagerProcessFeeTestV051:test_processFeeWithUnwrappedNative() (gas: 182249) FeeManagerProcessFeeTestV051:test_processFeeWithUnwrappedNativeLinkAddress() (gas: 133734) -FeeManagerProcessFeeTestV051:test_processFeeWithUnwrappedNativeLinkAddressExcessiveFee() (gas: 159335) +FeeManagerProcessFeeTestV051:test_processFeeWithUnwrappedNativeLinkAddressExcessiveFee() (gas: 157680) FeeManagerProcessFeeTestV051:test_processFeeWithUnwrappedNativeShortFunds() (gas: 94925) -FeeManagerProcessFeeTestV051:test_processFeeWithUnwrappedNativeWithExcessiveFee() (gas: 190893) +FeeManagerProcessFeeTestV051:test_processFeeWithUnwrappedNativeWithExcessiveFee() (gas: 189238) FeeManagerProcessFeeTestV051:test_processFeeWithWithCorruptQuotePayload() (gas: 72937) FeeManagerProcessFeeTestV051:test_processFeeWithWithEmptyQuotePayload() (gas: 27727) FeeManagerProcessFeeTestV051:test_processFeeWithWithZeroQuotePayload() (gas: 27783) FeeManagerProcessFeeTestV051:test_processFeeWithZeroLinkNonZeroNativeWithLinkQuote() (gas: 35257) -FeeManagerProcessFeeTestV051:test_processFeeWithZeroLinkNonZeroNativeWithNativeQuote() (gas: 155938) -FeeManagerProcessFeeTestV051:test_processFeeWithZeroNativeNonZeroLinkReturnsChange() (gas: 56111) -FeeManagerProcessFeeTestV051:test_processFeeWithZeroNativeNonZeroLinkWithLinkQuote() (gas: 119236) +FeeManagerProcessFeeTestV051:test_processFeeWithZeroLinkNonZeroNativeWithNativeQuote() (gas: 154614) +FeeManagerProcessFeeTestV051:test_processFeeWithZeroNativeNonZeroLinkReturnsChange() (gas: 55780) +FeeManagerProcessFeeTestV051:test_processFeeWithZeroNativeNonZeroLinkWithLinkQuote() (gas: 118574) FeeManagerProcessFeeTestV051:test_processFeeWithZeroNativeNonZeroLinkWithNativeQuote() (gas: 38028) -FeeManagerProcessFeeTestV051:test_processMultipleLinkReports() (gas: 226510) -FeeManagerProcessFeeTestV051:test_processMultipleUnwrappedNativeReports() (gas: 260371) -FeeManagerProcessFeeTestV051:test_processMultipleV1Reports() (gas: 74825) -FeeManagerProcessFeeTestV051:test_processMultipleWrappedNativeReports() (gas: 243150) -FeeManagerProcessFeeTestV051:test_processV1V2V3Reports() (gas: 210991) -FeeManagerProcessFeeTestV051:test_processV1V2V3ReportsWithUnwrapped() (gas: 252645) -FeeManagerProcessFeeTestV051:test_reportWithNoExpiryOrFeeReturnsZero() (gas: 13591) +FeeManagerProcessFeeTestV051:test_processMultipleLinkReports() (gas: 224855) +FeeManagerProcessFeeTestV051:test_processMultipleUnwrappedNativeReports() (gas: 258716) +FeeManagerProcessFeeTestV051:test_processMultipleV1Reports() (gas: 74163) +FeeManagerProcessFeeTestV051:test_processMultipleWrappedNativeReports() (gas: 241826) +FeeManagerProcessFeeTestV051:test_processV1V2V3Reports() (gas: 209336) +FeeManagerProcessFeeTestV051:test_processV1V2V3ReportsWithUnwrapped() (gas: 250990) +FeeManagerProcessFeeTestV051:test_reportWithNoExpiryOrFeeReturnsZero() (gas: 10759) FeeManagerProcessFeeTestV051:test_setDiscountOver100Percent() (gas: 19584) FeeManagerProcessFeeTestV051:test_subscriberDiscountEventIsEmittedOnUpdate() (gas: 46255) -FeeManagerProcessFeeTestV051:test_surchargeFeeRoundsUpWhenUneven() (gas: 53500) -FeeManagerProcessFeeTestV051:test_surchargeIsApplied() (gas: 53447) -FeeManagerProcessFeeTestV051:test_surchargeIsAppliedForNativeFeeWithDiscount() (gas: 79313) -FeeManagerProcessFeeTestV051:test_surchargeIsNoLongerAppliedAfterRemoving() (gas: 49165) -FeeManagerProcessFeeTestV051:test_surchargeIsNotAppliedForLinkFee() (gas: 52244) -FeeManagerProcessFeeTestV051:test_surchargeIsNotAppliedWith100PercentDiscount() (gas: 78309) +FeeManagerProcessFeeTestV051:test_surchargeFeeRoundsUpWhenUneven() (gas: 53168) +FeeManagerProcessFeeTestV051:test_surchargeIsApplied() (gas: 53115) +FeeManagerProcessFeeTestV051:test_surchargeIsAppliedForNativeFeeWithDiscount() (gas: 78981) +FeeManagerProcessFeeTestV051:test_surchargeIsNoLongerAppliedAfterRemoving() (gas: 48634) +FeeManagerProcessFeeTestV051:test_surchargeIsNotAppliedForLinkFee() (gas: 51912) +FeeManagerProcessFeeTestV051:test_surchargeIsNotAppliedWith100PercentDiscount() (gas: 77977) FeeManagerProcessFeeTestV051:test_testRevertIfReportHasExpired() (gas: 14941) -FeeManagerProcessFeeTestV05:test_DiscountIsAppliedForNative() (gas: 52650) -FeeManagerProcessFeeTestV05:test_DiscountIsReturnedForNative() (gas: 52643) -FeeManagerProcessFeeTestV05:test_DiscountIsReturnedForNativeWithSurcharge() (gas: 78900) +FeeManagerProcessFeeTestV05:test_DiscountIsAppliedForNative() (gas: 52318) +FeeManagerProcessFeeTestV05:test_DiscountIsReturnedForNative() (gas: 52311) +FeeManagerProcessFeeTestV05:test_DiscountIsReturnedForNativeWithSurcharge() (gas: 78568) FeeManagerProcessFeeTestV05:test_GlobalDiscountCantBeSetToMoreThanMaximum() (gas: 19501) -FeeManagerProcessFeeTestV05:test_GlobalDiscountIsOverridenByIndividualDiscountLink() (gas: 79464) -FeeManagerProcessFeeTestV05:test_GlobalDiscountIsOverridenByIndividualDiscountNative() (gas: 82478) -FeeManagerProcessFeeTestV05:test_GlobalDiscountIsUpdatedAfterBeingSetToZeroLink() (gas: 48284) -FeeManagerProcessFeeTestV05:test_GlobalDiscountIsUpdatedAfterBeingSetToZeroNative() (gas: 51464) -FeeManagerProcessFeeTestV05:test_GlobalDiscountWithLink() (gas: 51813) -FeeManagerProcessFeeTestV05:test_GlobalDiscountWithNative() (gas: 54759) -FeeManagerProcessFeeTestV05:test_GlobalDiscountWithNativeAndLink() (gas: 83629) +FeeManagerProcessFeeTestV05:test_GlobalDiscountIsOverridenByIndividualDiscountLink() (gas: 79132) +FeeManagerProcessFeeTestV05:test_GlobalDiscountIsOverridenByIndividualDiscountNative() (gas: 82146) +FeeManagerProcessFeeTestV05:test_GlobalDiscountIsUpdatedAfterBeingSetToZeroLink() (gas: 47753) +FeeManagerProcessFeeTestV05:test_GlobalDiscountIsUpdatedAfterBeingSetToZeroNative() (gas: 50933) +FeeManagerProcessFeeTestV05:test_GlobalDiscountWithLink() (gas: 51481) +FeeManagerProcessFeeTestV05:test_GlobalDiscountWithNative() (gas: 54427) +FeeManagerProcessFeeTestV05:test_GlobalDiscountWithNativeAndLink() (gas: 83297) FeeManagerProcessFeeTestV05:test_V1PayloadVerifies() (gas: 26980) -FeeManagerProcessFeeTestV05:test_V1PayloadVerifiesAndReturnsChange() (gas: 58936) -FeeManagerProcessFeeTestV05:test_V2PayloadVerifies() (gas: 118987) +FeeManagerProcessFeeTestV05:test_V1PayloadVerifiesAndReturnsChange() (gas: 57943) +FeeManagerProcessFeeTestV05:test_V2PayloadVerifies() (gas: 118325) FeeManagerProcessFeeTestV05:test_V2PayloadWithoutQuoteFails() (gas: 27389) FeeManagerProcessFeeTestV05:test_V2PayloadWithoutZeroFee() (gas: 72626) -FeeManagerProcessFeeTestV05:test_WithdrawERC20() (gas: 72649) +FeeManagerProcessFeeTestV05:test_WithdrawERC20() (gas: 71631) FeeManagerProcessFeeTestV05:test_WithdrawNonAdminAddr() (gas: 56309) -FeeManagerProcessFeeTestV05:test_WithdrawUnwrappedNative() (gas: 26463) -FeeManagerProcessFeeTestV05:test_baseFeeIsAppliedForLink() (gas: 19451) -FeeManagerProcessFeeTestV05:test_baseFeeIsAppliedForNative() (gas: 22456) -FeeManagerProcessFeeTestV05:test_correctDiscountIsAppliedWhenBothTokensAreDiscounted() (gas: 91085) -FeeManagerProcessFeeTestV05:test_discountAIsNotAppliedWhenSetForOtherUsers() (gas: 58840) -FeeManagerProcessFeeTestV05:test_discountFeeRoundsDownWhenUneven() (gas: 52850) -FeeManagerProcessFeeTestV05:test_discountIsAppliedForLink() (gas: 49706) -FeeManagerProcessFeeTestV05:test_discountIsAppliedWith100PercentSurcharge() (gas: 78951) -FeeManagerProcessFeeTestV05:test_discountIsNoLongerAppliedAfterRemoving() (gas: 48341) +FeeManagerProcessFeeTestV05:test_WithdrawUnwrappedNative() (gas: 25445) +FeeManagerProcessFeeTestV05:test_baseFeeIsAppliedForLink() (gas: 16619) +FeeManagerProcessFeeTestV05:test_baseFeeIsAppliedForNative() (gas: 19624) +FeeManagerProcessFeeTestV05:test_correctDiscountIsAppliedWhenBothTokensAreDiscounted() (gas: 90421) +FeeManagerProcessFeeTestV05:test_discountAIsNotAppliedWhenSetForOtherUsers() (gas: 58508) +FeeManagerProcessFeeTestV05:test_discountFeeRoundsDownWhenUneven() (gas: 52518) +FeeManagerProcessFeeTestV05:test_discountIsAppliedForLink() (gas: 49374) +FeeManagerProcessFeeTestV05:test_discountIsAppliedWith100PercentSurcharge() (gas: 78619) +FeeManagerProcessFeeTestV05:test_discountIsNoLongerAppliedAfterRemoving() (gas: 47810) FeeManagerProcessFeeTestV05:test_discountIsNotAppliedForInvalidTokenAddress() (gas: 17538) -FeeManagerProcessFeeTestV05:test_discountIsNotAppliedToOtherFeeds() (gas: 56844) -FeeManagerProcessFeeTestV05:test_discountIsReturnedForLink() (gas: 49678) +FeeManagerProcessFeeTestV05:test_discountIsNotAppliedToOtherFeeds() (gas: 56512) +FeeManagerProcessFeeTestV05:test_discountIsReturnedForLink() (gas: 49346) FeeManagerProcessFeeTestV05:test_emptyQuoteRevertsWithError() (gas: 12162) FeeManagerProcessFeeTestV05:test_eventIsEmittedAfterSurchargeIsSet() (gas: 41372) -FeeManagerProcessFeeTestV05:test_eventIsEmittedIfNotEnoughLink() (gas: 177132) +FeeManagerProcessFeeTestV05:test_eventIsEmittedIfNotEnoughLink() (gas: 176139) FeeManagerProcessFeeTestV05:test_eventIsEmittedUponWithdraw() (gas: 69036) -FeeManagerProcessFeeTestV05:test_feeIsUpdatedAfterDiscountIsRemoved() (gas: 51588) -FeeManagerProcessFeeTestV05:test_feeIsUpdatedAfterNewDiscountIsApplied() (gas: 67751) -FeeManagerProcessFeeTestV05:test_feeIsUpdatedAfterNewSurchargeIsApplied() (gas: 66958) -FeeManagerProcessFeeTestV05:test_feeIsZeroWith100PercentDiscount() (gas: 52049) -FeeManagerProcessFeeTestV05:test_getBaseRewardWithLinkQuote() (gas: 19449) -FeeManagerProcessFeeTestV05:test_getLinkFeeIsRoundedUp() (gas: 49855) -FeeManagerProcessFeeTestV05:test_getLinkRewardIsSameAsFee() (gas: 55692) -FeeManagerProcessFeeTestV05:test_getLinkRewardWithNativeQuoteAndSurchargeWithLinkDiscount() (gas: 85071) -FeeManagerProcessFeeTestV05:test_getRewardWithLinkDiscount() (gas: 49702) -FeeManagerProcessFeeTestV05:test_getRewardWithLinkQuoteAndLinkDiscount() (gas: 49683) -FeeManagerProcessFeeTestV05:test_getRewardWithNativeQuote() (gas: 22432) -FeeManagerProcessFeeTestV05:test_getRewardWithNativeQuoteAndSurcharge() (gas: 53166) -FeeManagerProcessFeeTestV05:test_linkAvailableForPaymentReturnsLinkBalance() (gas: 53126) -FeeManagerProcessFeeTestV05:test_nativeSurcharge0Percent() (gas: 33154) -FeeManagerProcessFeeTestV05:test_nativeSurcharge100Percent() (gas: 53191) +FeeManagerProcessFeeTestV05:test_feeIsUpdatedAfterDiscountIsRemoved() (gas: 51056) +FeeManagerProcessFeeTestV05:test_feeIsUpdatedAfterNewDiscountIsApplied() (gas: 67087) +FeeManagerProcessFeeTestV05:test_feeIsUpdatedAfterNewSurchargeIsApplied() (gas: 66294) +FeeManagerProcessFeeTestV05:test_feeIsZeroWith100PercentDiscount() (gas: 51717) +FeeManagerProcessFeeTestV05:test_getBaseRewardWithLinkQuote() (gas: 16617) +FeeManagerProcessFeeTestV05:test_getLinkFeeIsRoundedUp() (gas: 49523) +FeeManagerProcessFeeTestV05:test_getLinkRewardIsSameAsFee() (gas: 55023) +FeeManagerProcessFeeTestV05:test_getLinkRewardWithNativeQuoteAndSurchargeWithLinkDiscount() (gas: 84739) +FeeManagerProcessFeeTestV05:test_getRewardWithLinkDiscount() (gas: 49370) +FeeManagerProcessFeeTestV05:test_getRewardWithLinkQuoteAndLinkDiscount() (gas: 49351) +FeeManagerProcessFeeTestV05:test_getRewardWithNativeQuote() (gas: 19600) +FeeManagerProcessFeeTestV05:test_getRewardWithNativeQuoteAndSurcharge() (gas: 52834) +FeeManagerProcessFeeTestV05:test_linkAvailableForPaymentReturnsLinkBalance() (gas: 52451) +FeeManagerProcessFeeTestV05:test_nativeSurcharge0Percent() (gas: 32822) +FeeManagerProcessFeeTestV05:test_nativeSurcharge100Percent() (gas: 52859) FeeManagerProcessFeeTestV05:test_nativeSurchargeCannotExceed100Percent() (gas: 17219) FeeManagerProcessFeeTestV05:test_nativeSurchargeEventIsEmittedOnUpdate() (gas: 41418) -FeeManagerProcessFeeTestV05:test_noFeeIsAppliedWhenReportHasZeroFee() (gas: 51894) -FeeManagerProcessFeeTestV05:test_noFeeIsAppliedWhenReportHasZeroFeeAndDiscountAndSurchargeIsSet() (gas: 78129) +FeeManagerProcessFeeTestV05:test_noFeeIsAppliedWhenReportHasZeroFee() (gas: 51562) +FeeManagerProcessFeeTestV05:test_noFeeIsAppliedWhenReportHasZeroFeeAndDiscountAndSurchargeIsSet() (gas: 77797) FeeManagerProcessFeeTestV05:test_nonAdminProxyUserCannotProcessFee() (gas: 21895) FeeManagerProcessFeeTestV05:test_nonAdminUserCanNotSetDiscount() (gas: 19806) FeeManagerProcessFeeTestV05:test_onlyOwnerCanSetGlobalDiscount() (gas: 19842) -FeeManagerProcessFeeTestV05:test_payLinkDeficit() (gas: 196208) +FeeManagerProcessFeeTestV05:test_payLinkDeficit() (gas: 195659) FeeManagerProcessFeeTestV05:test_payLinkDeficitOnlyCallableByAdmin() (gas: 17413) -FeeManagerProcessFeeTestV05:test_payLinkDeficitPaysAllFeesProcessed() (gas: 216752) -FeeManagerProcessFeeTestV05:test_payLinkDeficitTwice() (gas: 200564) -FeeManagerProcessFeeTestV05:test_processFeeAsProxy() (gas: 119325) +FeeManagerProcessFeeTestV05:test_payLinkDeficitPaysAllFeesProcessed() (gas: 215929) +FeeManagerProcessFeeTestV05:test_payLinkDeficitTwice() (gas: 200015) +FeeManagerProcessFeeTestV05:test_processFeeAsProxy() (gas: 118663) FeeManagerProcessFeeTestV05:test_processFeeDefaultReportsStillVerifiesWithEmptyQuote() (gas: 27468) -FeeManagerProcessFeeTestV05:test_processFeeEmitsEventIfNotEnoughLink() (gas: 165423) +FeeManagerProcessFeeTestV05:test_processFeeEmitsEventIfNotEnoughLink() (gas: 164099) FeeManagerProcessFeeTestV05:test_processFeeIfSubscriberIsSelf() (gas: 27833) -FeeManagerProcessFeeTestV05:test_processFeeNative() (gas: 176039) -FeeManagerProcessFeeTestV05:test_processFeeUsesCorrectDigest() (gas: 120616) +FeeManagerProcessFeeTestV05:test_processFeeNative() (gas: 174715) +FeeManagerProcessFeeTestV05:test_processFeeUsesCorrectDigest() (gas: 119623) FeeManagerProcessFeeTestV05:test_processFeeWithDefaultReportPayloadAndQuoteStillVerifies() (gas: 29542) FeeManagerProcessFeeTestV05:test_processFeeWithDiscountEmitsEvent() (gas: 241424) FeeManagerProcessFeeTestV05:test_processFeeWithInvalidReportVersionFailsToDecode() (gas: 28511) -FeeManagerProcessFeeTestV05:test_processFeeWithNoDiscountDoesNotEmitEvent() (gas: 169004) -FeeManagerProcessFeeTestV05:test_processFeeWithUnwrappedNative() (gas: 183904) +FeeManagerProcessFeeTestV05:test_processFeeWithNoDiscountDoesNotEmitEvent() (gas: 168670) +FeeManagerProcessFeeTestV05:test_processFeeWithUnwrappedNative() (gas: 182249) FeeManagerProcessFeeTestV05:test_processFeeWithUnwrappedNativeLinkAddress() (gas: 133734) -FeeManagerProcessFeeTestV05:test_processFeeWithUnwrappedNativeLinkAddressExcessiveFee() (gas: 159335) +FeeManagerProcessFeeTestV05:test_processFeeWithUnwrappedNativeLinkAddressExcessiveFee() (gas: 157680) FeeManagerProcessFeeTestV05:test_processFeeWithUnwrappedNativeShortFunds() (gas: 94925) -FeeManagerProcessFeeTestV05:test_processFeeWithUnwrappedNativeWithExcessiveFee() (gas: 190893) +FeeManagerProcessFeeTestV05:test_processFeeWithUnwrappedNativeWithExcessiveFee() (gas: 189238) FeeManagerProcessFeeTestV05:test_processFeeWithWithCorruptQuotePayload() (gas: 72937) FeeManagerProcessFeeTestV05:test_processFeeWithWithEmptyQuotePayload() (gas: 27727) FeeManagerProcessFeeTestV05:test_processFeeWithWithZeroQuotePayload() (gas: 27783) FeeManagerProcessFeeTestV05:test_processFeeWithZeroLinkNonZeroNativeWithLinkQuote() (gas: 35257) -FeeManagerProcessFeeTestV05:test_processFeeWithZeroLinkNonZeroNativeWithNativeQuote() (gas: 155938) -FeeManagerProcessFeeTestV05:test_processFeeWithZeroNativeNonZeroLinkReturnsChange() (gas: 56111) -FeeManagerProcessFeeTestV05:test_processFeeWithZeroNativeNonZeroLinkWithLinkQuote() (gas: 119236) +FeeManagerProcessFeeTestV05:test_processFeeWithZeroLinkNonZeroNativeWithNativeQuote() (gas: 154614) +FeeManagerProcessFeeTestV05:test_processFeeWithZeroNativeNonZeroLinkReturnsChange() (gas: 55780) +FeeManagerProcessFeeTestV05:test_processFeeWithZeroNativeNonZeroLinkWithLinkQuote() (gas: 118574) FeeManagerProcessFeeTestV05:test_processFeeWithZeroNativeNonZeroLinkWithNativeQuote() (gas: 38028) -FeeManagerProcessFeeTestV05:test_processMultipleLinkReports() (gas: 226510) -FeeManagerProcessFeeTestV05:test_processMultipleUnwrappedNativeReports() (gas: 260371) -FeeManagerProcessFeeTestV05:test_processMultipleV1Reports() (gas: 74825) -FeeManagerProcessFeeTestV05:test_processMultipleWrappedNativeReports() (gas: 243150) -FeeManagerProcessFeeTestV05:test_processV1V2V3Reports() (gas: 210991) -FeeManagerProcessFeeTestV05:test_processV1V2V3ReportsWithUnwrapped() (gas: 252645) -FeeManagerProcessFeeTestV05:test_reportWithNoExpiryOrFeeReturnsZero() (gas: 13591) +FeeManagerProcessFeeTestV05:test_processMultipleLinkReports() (gas: 224855) +FeeManagerProcessFeeTestV05:test_processMultipleUnwrappedNativeReports() (gas: 258716) +FeeManagerProcessFeeTestV05:test_processMultipleV1Reports() (gas: 74163) +FeeManagerProcessFeeTestV05:test_processMultipleWrappedNativeReports() (gas: 241826) +FeeManagerProcessFeeTestV05:test_processV1V2V3Reports() (gas: 209336) +FeeManagerProcessFeeTestV05:test_processV1V2V3ReportsWithUnwrapped() (gas: 250990) +FeeManagerProcessFeeTestV05:test_reportWithNoExpiryOrFeeReturnsZero() (gas: 10759) FeeManagerProcessFeeTestV05:test_setDiscountOver100Percent() (gas: 19584) FeeManagerProcessFeeTestV05:test_subscriberDiscountEventIsEmittedOnUpdate() (gas: 46255) -FeeManagerProcessFeeTestV05:test_surchargeFeeRoundsUpWhenUneven() (gas: 53500) -FeeManagerProcessFeeTestV05:test_surchargeIsApplied() (gas: 53447) -FeeManagerProcessFeeTestV05:test_surchargeIsAppliedForNativeFeeWithDiscount() (gas: 79313) -FeeManagerProcessFeeTestV05:test_surchargeIsNoLongerAppliedAfterRemoving() (gas: 49165) -FeeManagerProcessFeeTestV05:test_surchargeIsNotAppliedForLinkFee() (gas: 52244) -FeeManagerProcessFeeTestV05:test_surchargeIsNotAppliedWith100PercentDiscount() (gas: 78309) +FeeManagerProcessFeeTestV05:test_surchargeFeeRoundsUpWhenUneven() (gas: 53168) +FeeManagerProcessFeeTestV05:test_surchargeIsApplied() (gas: 53115) +FeeManagerProcessFeeTestV05:test_surchargeIsAppliedForNativeFeeWithDiscount() (gas: 78981) +FeeManagerProcessFeeTestV05:test_surchargeIsNoLongerAppliedAfterRemoving() (gas: 48634) +FeeManagerProcessFeeTestV05:test_surchargeIsNotAppliedForLinkFee() (gas: 51912) +FeeManagerProcessFeeTestV05:test_surchargeIsNotAppliedWith100PercentDiscount() (gas: 77977) FeeManagerProcessFeeTestV05:test_testRevertIfReportHasExpired() (gas: 14941) -MultiVerifierBillingTests:test_multipleFeeManagersAndVerifiers() (gas: 4598140) -NoOpFeeManagerIntegrationTestV051:test_verificationWorkflowCompatibility() (gas: 377733) +MultiVerifierBillingTests:test_multipleFeeManagersAndVerifiers() (gas: 4594820) +NoOpFeeManagerIntegrationTestV051:test_verificationWorkflowCompatibility() (gas: 369140) NoOpFeeManagerTest:test_adminFunctionsDoNotRevert() (gas: 12766) -NoOpFeeManagerTest:test_discountGettersMatchFeeManagerSignature() (gas: 24169) -NoOpFeeManagerTest:test_discountGettersReturn100Percent() (gas: 12229) -NoOpFeeManagerTest:test_getFeeAndReward() (gas: 13233) -NoOpFeeManagerTest:test_linkAvailableForPayment() (gas: 8366) -NoOpFeeManagerTest:test_processFeeBulkRefundsETH() (gas: 51685) -NoOpFeeManagerTest:test_processFeeRefundsETH() (gas: 50731) -NoOpFeeManagerTest:test_supportsInterface() (gas: 11003) +NoOpFeeManagerTest:test_discountGettersMatchFeeManagerSignature() (gas: 20341) +NoOpFeeManagerTest:test_discountGettersReturn100Percent() (gas: 9065) +NoOpFeeManagerTest:test_getFeeAndReward() (gas: 9728) +NoOpFeeManagerTest:test_linkAvailableForPayment() (gas: 5525) +NoOpFeeManagerTest:test_processFeeBulkRefundsETH() (gas: 51353) +NoOpFeeManagerTest:test_processFeeRefundsETH() (gas: 50399) +NoOpFeeManagerTest:test_supportsInterface() (gas: 7523) NoOpFeeManagerTest:test_typeAndVersion() (gas: 9688) NoOpFeeManagerTestV051:test_adminFunctionsDoNotRevert() (gas: 12789) -NoOpFeeManagerTestV051:test_constructorParameters() (gas: 17359) -NoOpFeeManagerTestV051:test_discountGettersMatchFeeManagerSignature() (gas: 24213) -NoOpFeeManagerTestV051:test_discountGettersReturn100Percent() (gas: 12206) -NoOpFeeManagerTestV051:test_getFeeAndReward() (gas: 13293) -NoOpFeeManagerTestV051:test_linkAvailableForPayment() (gas: 8410) -NoOpFeeManagerTestV051:test_nativeSurchargeReturnsZero() (gas: 8370) -NoOpFeeManagerTestV051:test_processFeeBulkRefundsETH() (gas: 51751) -NoOpFeeManagerTestV051:test_processFeeRefundsETH() (gas: 50776) -NoOpFeeManagerTestV051:test_supportsInterface_BackwardCompatibility() (gas: 9912) -NoOpFeeManagerTestV051:test_supportsInterface_ERC165() (gas: 8551) -NoOpFeeManagerTestV051:test_supportsInterface_IFeeManager() (gas: 8513) -NoOpFeeManagerTestV051:test_supportsInterface_IVerifierFeeManager() (gas: 8529) -NoOpFeeManagerTestV051:test_supportsInterface_UnsupportedInterface() (gas: 8607) +NoOpFeeManagerTestV051:test_constructorParameters() (gas: 13839) +NoOpFeeManagerTestV051:test_discountGettersMatchFeeManagerSignature() (gas: 20385) +NoOpFeeManagerTestV051:test_discountGettersReturn100Percent() (gas: 9042) +NoOpFeeManagerTestV051:test_getFeeAndReward() (gas: 9788) +NoOpFeeManagerTestV051:test_linkAvailableForPayment() (gas: 5569) +NoOpFeeManagerTestV051:test_nativeSurchargeReturnsZero() (gas: 5529) +NoOpFeeManagerTestV051:test_processFeeBulkRefundsETH() (gas: 51419) +NoOpFeeManagerTestV051:test_processFeeRefundsETH() (gas: 50444) +NoOpFeeManagerTestV051:test_supportsInterface_BackwardCompatibility() (gas: 6763) +NoOpFeeManagerTestV051:test_supportsInterface_ERC165() (gas: 5725) +NoOpFeeManagerTestV051:test_supportsInterface_IFeeManager() (gas: 5687) +NoOpFeeManagerTestV051:test_supportsInterface_IVerifierFeeManager() (gas: 5703) +NoOpFeeManagerTestV051:test_supportsInterface_UnsupportedInterface() (gas: 5773) NoOpFeeManagerTestV051:test_typeAndVersion() (gas: 9710) -RewardManagerClaimTest:test_claimAllRecipients() (gas: 277087) -RewardManagerClaimTest:test_claimAllRecipients() (gas: 277087) -RewardManagerClaimTest:test_claimAllRecipients() (gas: 277087) -RewardManagerClaimTest:test_claimMultipleRecipients() (gas: 154297) -RewardManagerClaimTest:test_claimMultipleRecipients() (gas: 154297) -RewardManagerClaimTest:test_claimMultipleRecipients() (gas: 154297) -RewardManagerClaimTest:test_claimRewardsWithDuplicatePoolIdsDoesNotPayoutTwice() (gas: 330011) -RewardManagerClaimTest:test_claimRewardsWithDuplicatePoolIdsDoesNotPayoutTwice() (gas: 330011) -RewardManagerClaimTest:test_claimRewardsWithDuplicatePoolIdsDoesNotPayoutTwice() (gas: 330011) -RewardManagerClaimTest:test_claimSingleRecipient() (gas: 88991) -RewardManagerClaimTest:test_claimSingleRecipient() (gas: 88991) -RewardManagerClaimTest:test_claimSingleRecipient() (gas: 88991) -RewardManagerClaimTest:test_claimUnevenAmountRoundsDown() (gas: 315214) -RewardManagerClaimTest:test_claimUnevenAmountRoundsDown() (gas: 315214) -RewardManagerClaimTest:test_claimUnevenAmountRoundsDown() (gas: 315214) -RewardManagerClaimTest:test_claimUnregisteredPoolId() (gas: 35079) -RewardManagerClaimTest:test_claimUnregisteredPoolId() (gas: 35079) -RewardManagerClaimTest:test_claimUnregisteredPoolId() (gas: 35079) -RewardManagerClaimTest:test_claimUnregisteredRecipient() (gas: 41138) -RewardManagerClaimTest:test_claimUnregisteredRecipient() (gas: 41138) -RewardManagerClaimTest:test_claimUnregisteredRecipient() (gas: 41138) +RewardManagerClaimTest:test_claimAllRecipients() (gas: 275763) +RewardManagerClaimTest:test_claimAllRecipients() (gas: 275763) +RewardManagerClaimTest:test_claimAllRecipients() (gas: 275763) +RewardManagerClaimTest:test_claimMultipleRecipients() (gas: 153297) +RewardManagerClaimTest:test_claimMultipleRecipients() (gas: 153297) +RewardManagerClaimTest:test_claimMultipleRecipients() (gas: 153297) +RewardManagerClaimTest:test_claimRewardsWithDuplicatePoolIdsDoesNotPayoutTwice() (gas: 328347) +RewardManagerClaimTest:test_claimRewardsWithDuplicatePoolIdsDoesNotPayoutTwice() (gas: 328347) +RewardManagerClaimTest:test_claimRewardsWithDuplicatePoolIdsDoesNotPayoutTwice() (gas: 328347) +RewardManagerClaimTest:test_claimSingleRecipient() (gas: 88329) +RewardManagerClaimTest:test_claimSingleRecipient() (gas: 88329) +RewardManagerClaimTest:test_claimSingleRecipient() (gas: 88329) +RewardManagerClaimTest:test_claimUnevenAmountRoundsDown() (gas: 313551) +RewardManagerClaimTest:test_claimUnevenAmountRoundsDown() (gas: 313551) +RewardManagerClaimTest:test_claimUnevenAmountRoundsDown() (gas: 313551) +RewardManagerClaimTest:test_claimUnregisteredPoolId() (gas: 34417) +RewardManagerClaimTest:test_claimUnregisteredPoolId() (gas: 34417) +RewardManagerClaimTest:test_claimUnregisteredPoolId() (gas: 34417) +RewardManagerClaimTest:test_claimUnregisteredRecipient() (gas: 40469) +RewardManagerClaimTest:test_claimUnregisteredRecipient() (gas: 40469) +RewardManagerClaimTest:test_claimUnregisteredRecipient() (gas: 40469) RewardManagerClaimTest:test_eventIsEmittedUponClaim() (gas: 86074) RewardManagerClaimTest:test_eventIsEmittedUponClaim() (gas: 86074) RewardManagerClaimTest:test_eventIsEmittedUponClaim() (gas: 86074) -RewardManagerClaimTest:test_eventIsNotEmittedUponUnsuccessfulClaim() (gas: 25019) -RewardManagerClaimTest:test_eventIsNotEmittedUponUnsuccessfulClaim() (gas: 25019) -RewardManagerClaimTest:test_eventIsNotEmittedUponUnsuccessfulClaim() (gas: 25019) -RewardManagerClaimTest:test_recipientsClaimMultipleDeposits() (gas: 386534) -RewardManagerClaimTest:test_recipientsClaimMultipleDeposits() (gas: 386534) -RewardManagerClaimTest:test_recipientsClaimMultipleDeposits() (gas: 386534) -RewardManagerClaimTest:test_singleRecipientClaimMultipleDeposits() (gas: 137588) -RewardManagerClaimTest:test_singleRecipientClaimMultipleDeposits() (gas: 137588) -RewardManagerClaimTest:test_singleRecipientClaimMultipleDeposits() (gas: 137588) -RewardManagerNoRecipientSet:test_claimAllRecipientsAfterRecipientsSet() (gas: 491981) -RewardManagerNoRecipientSet:test_claimAllRecipientsAfterRecipientsSet() (gas: 491981) -RewardManagerNoRecipientSet:test_claimAllRecipientsAfterRecipientsSet() (gas: 491981) +RewardManagerClaimTest:test_eventIsNotEmittedUponUnsuccessfulClaim() (gas: 24685) +RewardManagerClaimTest:test_eventIsNotEmittedUponUnsuccessfulClaim() (gas: 24685) +RewardManagerClaimTest:test_eventIsNotEmittedUponUnsuccessfulClaim() (gas: 24685) +RewardManagerClaimTest:test_recipientsClaimMultipleDeposits() (gas: 383213) +RewardManagerClaimTest:test_recipientsClaimMultipleDeposits() (gas: 383213) +RewardManagerClaimTest:test_recipientsClaimMultipleDeposits() (gas: 383213) +RewardManagerClaimTest:test_singleRecipientClaimMultipleDeposits() (gas: 136264) +RewardManagerClaimTest:test_singleRecipientClaimMultipleDeposits() (gas: 136264) +RewardManagerClaimTest:test_singleRecipientClaimMultipleDeposits() (gas: 136264) +RewardManagerNoRecipientSet:test_claimAllRecipientsAfterRecipientsSet() (gas: 489333) +RewardManagerNoRecipientSet:test_claimAllRecipientsAfterRecipientsSet() (gas: 489333) +RewardManagerNoRecipientSet:test_claimAllRecipientsAfterRecipientsSet() (gas: 489333) RewardManagerPayRecipientsTest:test_addFundsToPoolAsNonOwnerOrFeeManager() (gas: 11451) RewardManagerPayRecipientsTest:test_addFundsToPoolAsNonOwnerOrFeeManager() (gas: 11451) RewardManagerPayRecipientsTest:test_addFundsToPoolAsNonOwnerOrFeeManager() (gas: 11451) RewardManagerPayRecipientsTest:test_addFundsToPoolAsOwner() (gas: 53905) RewardManagerPayRecipientsTest:test_addFundsToPoolAsOwner() (gas: 53905) RewardManagerPayRecipientsTest:test_addFundsToPoolAsOwner() (gas: 53905) -RewardManagerPayRecipientsTest:test_payAllRecipients() (gas: 250796) -RewardManagerPayRecipientsTest:test_payAllRecipients() (gas: 250796) -RewardManagerPayRecipientsTest:test_payAllRecipients() (gas: 250796) +RewardManagerPayRecipientsTest:test_payAllRecipients() (gas: 249472) +RewardManagerPayRecipientsTest:test_payAllRecipients() (gas: 249472) +RewardManagerPayRecipientsTest:test_payAllRecipients() (gas: 249472) RewardManagerPayRecipientsTest:test_payAllRecipientsFromNonAdminUser() (gas: 20475) RewardManagerPayRecipientsTest:test_payAllRecipientsFromNonAdminUser() (gas: 20475) RewardManagerPayRecipientsTest:test_payAllRecipientsFromNonAdminUser() (gas: 20475) -RewardManagerPayRecipientsTest:test_payAllRecipientsFromRecipientInPool() (gas: 251020) -RewardManagerPayRecipientsTest:test_payAllRecipientsFromRecipientInPool() (gas: 251020) -RewardManagerPayRecipientsTest:test_payAllRecipientsFromRecipientInPool() (gas: 251020) -RewardManagerPayRecipientsTest:test_payAllRecipientsWithAdditionalInvalidRecipient() (gas: 262224) -RewardManagerPayRecipientsTest:test_payAllRecipientsWithAdditionalInvalidRecipient() (gas: 262224) -RewardManagerPayRecipientsTest:test_payAllRecipientsWithAdditionalInvalidRecipient() (gas: 262224) -RewardManagerPayRecipientsTest:test_payAllRecipientsWithAdditionalUnregisteredRecipient() (gas: 265687) -RewardManagerPayRecipientsTest:test_payAllRecipientsWithAdditionalUnregisteredRecipient() (gas: 265687) -RewardManagerPayRecipientsTest:test_payAllRecipientsWithAdditionalUnregisteredRecipient() (gas: 265687) -RewardManagerPayRecipientsTest:test_payRecipientWithInvalidPool() (gas: 28847) -RewardManagerPayRecipientsTest:test_payRecipientWithInvalidPool() (gas: 28847) -RewardManagerPayRecipientsTest:test_payRecipientWithInvalidPool() (gas: 28847) -RewardManagerPayRecipientsTest:test_payRecipientsEmptyRecipientList() (gas: 25313) -RewardManagerPayRecipientsTest:test_payRecipientsEmptyRecipientList() (gas: 25313) -RewardManagerPayRecipientsTest:test_payRecipientsEmptyRecipientList() (gas: 25313) -RewardManagerPayRecipientsTest:test_payRecipientsWithInvalidPoolId() (gas: 31375) -RewardManagerPayRecipientsTest:test_payRecipientsWithInvalidPoolId() (gas: 31375) -RewardManagerPayRecipientsTest:test_payRecipientsWithInvalidPoolId() (gas: 31375) -RewardManagerPayRecipientsTest:test_paySingleRecipient() (gas: 84729) -RewardManagerPayRecipientsTest:test_paySingleRecipient() (gas: 84729) -RewardManagerPayRecipientsTest:test_paySingleRecipient() (gas: 84729) -RewardManagerPayRecipientsTest:test_paySubsetOfRecipientsInPool() (gas: 198422) -RewardManagerPayRecipientsTest:test_paySubsetOfRecipientsInPool() (gas: 198422) -RewardManagerPayRecipientsTest:test_paySubsetOfRecipientsInPool() (gas: 198422) -RewardManagerRecipientClaimDifferentWeightsTest:test_allRecipientsClaimingReceiveExpectedAmount() (gas: 280683) -RewardManagerRecipientClaimDifferentWeightsTest:test_allRecipientsClaimingReceiveExpectedAmount() (gas: 280683) -RewardManagerRecipientClaimDifferentWeightsTest:test_allRecipientsClaimingReceiveExpectedAmount() (gas: 280683) -RewardManagerRecipientClaimMultiplePoolsTest:test_claimAllRecipientsMultiplePools() (gas: 512303) -RewardManagerRecipientClaimMultiplePoolsTest:test_claimAllRecipientsMultiplePools() (gas: 512303) -RewardManagerRecipientClaimMultiplePoolsTest:test_claimAllRecipientsMultiplePools() (gas: 512303) -RewardManagerRecipientClaimMultiplePoolsTest:test_claimAllRecipientsSinglePool() (gas: 283568) -RewardManagerRecipientClaimMultiplePoolsTest:test_claimAllRecipientsSinglePool() (gas: 283568) -RewardManagerRecipientClaimMultiplePoolsTest:test_claimAllRecipientsSinglePool() (gas: 283568) -RewardManagerRecipientClaimMultiplePoolsTest:test_claimEmptyPoolWhenSecondPoolContainsFunds() (gas: 293352) -RewardManagerRecipientClaimMultiplePoolsTest:test_claimEmptyPoolWhenSecondPoolContainsFunds() (gas: 293352) -RewardManagerRecipientClaimMultiplePoolsTest:test_claimEmptyPoolWhenSecondPoolContainsFunds() (gas: 293352) -RewardManagerRecipientClaimMultiplePoolsTest:test_claimMultipleRecipientsMultiplePools() (gas: 262971) -RewardManagerRecipientClaimMultiplePoolsTest:test_claimMultipleRecipientsMultiplePools() (gas: 262971) -RewardManagerRecipientClaimMultiplePoolsTest:test_claimMultipleRecipientsMultiplePools() (gas: 262971) -RewardManagerRecipientClaimMultiplePoolsTest:test_claimMultipleRecipientsSinglePool() (gas: 154441) -RewardManagerRecipientClaimMultiplePoolsTest:test_claimMultipleRecipientsSinglePool() (gas: 154441) -RewardManagerRecipientClaimMultiplePoolsTest:test_claimMultipleRecipientsSinglePool() (gas: 154441) -RewardManagerRecipientClaimMultiplePoolsTest:test_claimSingleRecipientMultiplePools() (gas: 132601) -RewardManagerRecipientClaimMultiplePoolsTest:test_claimSingleRecipientMultiplePools() (gas: 132601) -RewardManagerRecipientClaimMultiplePoolsTest:test_claimSingleRecipientMultiplePools() (gas: 132601) -RewardManagerRecipientClaimMultiplePoolsTest:test_claimSingleUniqueRecipient() (gas: 105989) -RewardManagerRecipientClaimMultiplePoolsTest:test_claimSingleUniqueRecipient() (gas: 105989) -RewardManagerRecipientClaimMultiplePoolsTest:test_claimSingleUniqueRecipient() (gas: 105989) -RewardManagerRecipientClaimMultiplePoolsTest:test_claimUnevenAmountRoundsDown() (gas: 579404) -RewardManagerRecipientClaimMultiplePoolsTest:test_claimUnevenAmountRoundsDown() (gas: 579404) -RewardManagerRecipientClaimMultiplePoolsTest:test_claimUnevenAmountRoundsDown() (gas: 579404) -RewardManagerRecipientClaimMultiplePoolsTest:test_claimUnregisteredRecipient() (gas: 64560) -RewardManagerRecipientClaimMultiplePoolsTest:test_claimUnregisteredRecipient() (gas: 64560) -RewardManagerRecipientClaimMultiplePoolsTest:test_claimUnregisteredRecipient() (gas: 64560) -RewardManagerRecipientClaimMultiplePoolsTest:test_getAvailableRewardsCursorAndTotalPoolsEqual() (gas: 13029) -RewardManagerRecipientClaimMultiplePoolsTest:test_getAvailableRewardsCursorAndTotalPoolsEqual() (gas: 13029) -RewardManagerRecipientClaimMultiplePoolsTest:test_getAvailableRewardsCursorAndTotalPoolsEqual() (gas: 13029) +RewardManagerPayRecipientsTest:test_payAllRecipientsFromRecipientInPool() (gas: 249696) +RewardManagerPayRecipientsTest:test_payAllRecipientsFromRecipientInPool() (gas: 249696) +RewardManagerPayRecipientsTest:test_payAllRecipientsFromRecipientInPool() (gas: 249696) +RewardManagerPayRecipientsTest:test_payAllRecipientsWithAdditionalInvalidRecipient() (gas: 260900) +RewardManagerPayRecipientsTest:test_payAllRecipientsWithAdditionalInvalidRecipient() (gas: 260900) +RewardManagerPayRecipientsTest:test_payAllRecipientsWithAdditionalInvalidRecipient() (gas: 260900) +RewardManagerPayRecipientsTest:test_payAllRecipientsWithAdditionalUnregisteredRecipient() (gas: 264025) +RewardManagerPayRecipientsTest:test_payAllRecipientsWithAdditionalUnregisteredRecipient() (gas: 264025) +RewardManagerPayRecipientsTest:test_payAllRecipientsWithAdditionalUnregisteredRecipient() (gas: 264025) +RewardManagerPayRecipientsTest:test_payRecipientWithInvalidPool() (gas: 28516) +RewardManagerPayRecipientsTest:test_payRecipientWithInvalidPool() (gas: 28516) +RewardManagerPayRecipientsTest:test_payRecipientWithInvalidPool() (gas: 28516) +RewardManagerPayRecipientsTest:test_payRecipientsEmptyRecipientList() (gas: 24982) +RewardManagerPayRecipientsTest:test_payRecipientsEmptyRecipientList() (gas: 24982) +RewardManagerPayRecipientsTest:test_payRecipientsEmptyRecipientList() (gas: 24982) +RewardManagerPayRecipientsTest:test_payRecipientsWithInvalidPoolId() (gas: 31044) +RewardManagerPayRecipientsTest:test_payRecipientsWithInvalidPoolId() (gas: 31044) +RewardManagerPayRecipientsTest:test_payRecipientsWithInvalidPoolId() (gas: 31044) +RewardManagerPayRecipientsTest:test_paySingleRecipient() (gas: 84398) +RewardManagerPayRecipientsTest:test_paySingleRecipient() (gas: 84398) +RewardManagerPayRecipientsTest:test_paySingleRecipient() (gas: 84398) +RewardManagerPayRecipientsTest:test_paySubsetOfRecipientsInPool() (gas: 197429) +RewardManagerPayRecipientsTest:test_paySubsetOfRecipientsInPool() (gas: 197429) +RewardManagerPayRecipientsTest:test_paySubsetOfRecipientsInPool() (gas: 197429) +RewardManagerRecipientClaimDifferentWeightsTest:test_allRecipientsClaimingReceiveExpectedAmount() (gas: 279359) +RewardManagerRecipientClaimDifferentWeightsTest:test_allRecipientsClaimingReceiveExpectedAmount() (gas: 279359) +RewardManagerRecipientClaimDifferentWeightsTest:test_allRecipientsClaimingReceiveExpectedAmount() (gas: 279359) +RewardManagerRecipientClaimMultiplePoolsTest:test_claimAllRecipientsMultiplePools() (gas: 509902) +RewardManagerRecipientClaimMultiplePoolsTest:test_claimAllRecipientsMultiplePools() (gas: 509902) +RewardManagerRecipientClaimMultiplePoolsTest:test_claimAllRecipientsMultiplePools() (gas: 509902) +RewardManagerRecipientClaimMultiplePoolsTest:test_claimAllRecipientsSinglePool() (gas: 281845) +RewardManagerRecipientClaimMultiplePoolsTest:test_claimAllRecipientsSinglePool() (gas: 281845) +RewardManagerRecipientClaimMultiplePoolsTest:test_claimAllRecipientsSinglePool() (gas: 281845) +RewardManagerRecipientClaimMultiplePoolsTest:test_claimEmptyPoolWhenSecondPoolContainsFunds() (gas: 291629) +RewardManagerRecipientClaimMultiplePoolsTest:test_claimEmptyPoolWhenSecondPoolContainsFunds() (gas: 291629) +RewardManagerRecipientClaimMultiplePoolsTest:test_claimEmptyPoolWhenSecondPoolContainsFunds() (gas: 291629) +RewardManagerRecipientClaimMultiplePoolsTest:test_claimMultipleRecipientsMultiplePools() (gas: 261591) +RewardManagerRecipientClaimMultiplePoolsTest:test_claimMultipleRecipientsMultiplePools() (gas: 261591) +RewardManagerRecipientClaimMultiplePoolsTest:test_claimMultipleRecipientsMultiplePools() (gas: 261591) +RewardManagerRecipientClaimMultiplePoolsTest:test_claimMultipleRecipientsSinglePool() (gas: 153405) +RewardManagerRecipientClaimMultiplePoolsTest:test_claimMultipleRecipientsSinglePool() (gas: 153405) +RewardManagerRecipientClaimMultiplePoolsTest:test_claimMultipleRecipientsSinglePool() (gas: 153405) +RewardManagerRecipientClaimMultiplePoolsTest:test_claimSingleRecipientMultiplePools() (gas: 131915) +RewardManagerRecipientClaimMultiplePoolsTest:test_claimSingleRecipientMultiplePools() (gas: 131915) +RewardManagerRecipientClaimMultiplePoolsTest:test_claimSingleRecipientMultiplePools() (gas: 131915) +RewardManagerRecipientClaimMultiplePoolsTest:test_claimSingleUniqueRecipient() (gas: 105303) +RewardManagerRecipientClaimMultiplePoolsTest:test_claimSingleUniqueRecipient() (gas: 105303) +RewardManagerRecipientClaimMultiplePoolsTest:test_claimSingleUniqueRecipient() (gas: 105303) +RewardManagerRecipientClaimMultiplePoolsTest:test_claimUnevenAmountRoundsDown() (gas: 576306) +RewardManagerRecipientClaimMultiplePoolsTest:test_claimUnevenAmountRoundsDown() (gas: 576306) +RewardManagerRecipientClaimMultiplePoolsTest:test_claimUnevenAmountRoundsDown() (gas: 576306) +RewardManagerRecipientClaimMultiplePoolsTest:test_claimUnregisteredRecipient() (gas: 63524) +RewardManagerRecipientClaimMultiplePoolsTest:test_claimUnregisteredRecipient() (gas: 63524) +RewardManagerRecipientClaimMultiplePoolsTest:test_claimUnregisteredRecipient() (gas: 63524) +RewardManagerRecipientClaimMultiplePoolsTest:test_getAvailableRewardsCursorAndTotalPoolsEqual() (gas: 10180) +RewardManagerRecipientClaimMultiplePoolsTest:test_getAvailableRewardsCursorAndTotalPoolsEqual() (gas: 10180) +RewardManagerRecipientClaimMultiplePoolsTest:test_getAvailableRewardsCursorAndTotalPoolsEqual() (gas: 10180) RewardManagerRecipientClaimMultiplePoolsTest:test_getAvailableRewardsCursorCannotBeGreaterThanTotalPools() (gas: 12724) RewardManagerRecipientClaimMultiplePoolsTest:test_getAvailableRewardsCursorCannotBeGreaterThanTotalPools() (gas: 12724) RewardManagerRecipientClaimMultiplePoolsTest:test_getAvailableRewardsCursorCannotBeGreaterThanTotalPools() (gas: 12724) -RewardManagerRecipientClaimMultiplePoolsTest:test_getAvailableRewardsCursorSingleResult() (gas: 22426) -RewardManagerRecipientClaimMultiplePoolsTest:test_getAvailableRewardsCursorSingleResult() (gas: 22426) -RewardManagerRecipientClaimMultiplePoolsTest:test_getAvailableRewardsCursorSingleResult() (gas: 22426) -RewardManagerRecipientClaimMultiplePoolsTest:test_getRewardsAvailableToRecipientInBothPools() (gas: 32225) -RewardManagerRecipientClaimMultiplePoolsTest:test_getRewardsAvailableToRecipientInBothPools() (gas: 32225) -RewardManagerRecipientClaimMultiplePoolsTest:test_getRewardsAvailableToRecipientInBothPools() (gas: 32225) -RewardManagerRecipientClaimMultiplePoolsTest:test_getRewardsAvailableToRecipientInBothPoolsWhereAlreadyClaimed() (gas: 148575) -RewardManagerRecipientClaimMultiplePoolsTest:test_getRewardsAvailableToRecipientInBothPoolsWhereAlreadyClaimed() (gas: 148575) -RewardManagerRecipientClaimMultiplePoolsTest:test_getRewardsAvailableToRecipientInBothPoolsWhereAlreadyClaimed() (gas: 148575) -RewardManagerRecipientClaimMultiplePoolsTest:test_getRewardsAvailableToRecipientInNoPools() (gas: 21683) -RewardManagerRecipientClaimMultiplePoolsTest:test_getRewardsAvailableToRecipientInNoPools() (gas: 21683) -RewardManagerRecipientClaimMultiplePoolsTest:test_getRewardsAvailableToRecipientInNoPools() (gas: 21683) -RewardManagerRecipientClaimMultiplePoolsTest:test_getRewardsAvailableToRecipientInSinglePool() (gas: 27742) -RewardManagerRecipientClaimMultiplePoolsTest:test_getRewardsAvailableToRecipientInSinglePool() (gas: 27742) -RewardManagerRecipientClaimMultiplePoolsTest:test_getRewardsAvailableToRecipientInSinglePool() (gas: 27742) -RewardManagerRecipientClaimMultiplePoolsTest:test_recipientsClaimMultipleDeposits() (gas: 391104) -RewardManagerRecipientClaimMultiplePoolsTest:test_recipientsClaimMultipleDeposits() (gas: 391104) -RewardManagerRecipientClaimMultiplePoolsTest:test_recipientsClaimMultipleDeposits() (gas: 391104) -RewardManagerRecipientClaimMultiplePoolsTest:test_singleRecipientClaimMultipleDeposits() (gas: 137673) -RewardManagerRecipientClaimMultiplePoolsTest:test_singleRecipientClaimMultipleDeposits() (gas: 137673) -RewardManagerRecipientClaimMultiplePoolsTest:test_singleRecipientClaimMultipleDeposits() (gas: 137673) -RewardManagerRecipientClaimUnevenWeightTest:test_allRecipientsClaimingReceiveExpectedAmount() (gas: 199401) -RewardManagerRecipientClaimUnevenWeightTest:test_allRecipientsClaimingReceiveExpectedAmount() (gas: 199401) -RewardManagerRecipientClaimUnevenWeightTest:test_allRecipientsClaimingReceiveExpectedAmount() (gas: 199401) -RewardManagerRecipientClaimUnevenWeightTest:test_allRecipientsClaimingReceiveExpectedAmountWithSmallDeposit() (gas: 219274) -RewardManagerRecipientClaimUnevenWeightTest:test_allRecipientsClaimingReceiveExpectedAmountWithSmallDeposit() (gas: 219274) -RewardManagerRecipientClaimUnevenWeightTest:test_allRecipientsClaimingReceiveExpectedAmountWithSmallDeposit() (gas: 219274) +RewardManagerRecipientClaimMultiplePoolsTest:test_getAvailableRewardsCursorSingleResult() (gas: 19584) +RewardManagerRecipientClaimMultiplePoolsTest:test_getAvailableRewardsCursorSingleResult() (gas: 19584) +RewardManagerRecipientClaimMultiplePoolsTest:test_getAvailableRewardsCursorSingleResult() (gas: 19584) +RewardManagerRecipientClaimMultiplePoolsTest:test_getRewardsAvailableToRecipientInBothPools() (gas: 29052) +RewardManagerRecipientClaimMultiplePoolsTest:test_getRewardsAvailableToRecipientInBothPools() (gas: 29052) +RewardManagerRecipientClaimMultiplePoolsTest:test_getRewardsAvailableToRecipientInBothPools() (gas: 29052) +RewardManagerRecipientClaimMultiplePoolsTest:test_getRewardsAvailableToRecipientInBothPoolsWhereAlreadyClaimed() (gas: 147240) +RewardManagerRecipientClaimMultiplePoolsTest:test_getRewardsAvailableToRecipientInBothPoolsWhereAlreadyClaimed() (gas: 147240) +RewardManagerRecipientClaimMultiplePoolsTest:test_getRewardsAvailableToRecipientInBothPoolsWhereAlreadyClaimed() (gas: 147240) +RewardManagerRecipientClaimMultiplePoolsTest:test_getRewardsAvailableToRecipientInNoPools() (gas: 18510) +RewardManagerRecipientClaimMultiplePoolsTest:test_getRewardsAvailableToRecipientInNoPools() (gas: 18510) +RewardManagerRecipientClaimMultiplePoolsTest:test_getRewardsAvailableToRecipientInNoPools() (gas: 18510) +RewardManagerRecipientClaimMultiplePoolsTest:test_getRewardsAvailableToRecipientInSinglePool() (gas: 24569) +RewardManagerRecipientClaimMultiplePoolsTest:test_getRewardsAvailableToRecipientInSinglePool() (gas: 24569) +RewardManagerRecipientClaimMultiplePoolsTest:test_getRewardsAvailableToRecipientInSinglePool() (gas: 24569) +RewardManagerRecipientClaimMultiplePoolsTest:test_recipientsClaimMultipleDeposits() (gas: 387663) +RewardManagerRecipientClaimMultiplePoolsTest:test_recipientsClaimMultipleDeposits() (gas: 387663) +RewardManagerRecipientClaimMultiplePoolsTest:test_recipientsClaimMultipleDeposits() (gas: 387663) +RewardManagerRecipientClaimMultiplePoolsTest:test_singleRecipientClaimMultipleDeposits() (gas: 136301) +RewardManagerRecipientClaimMultiplePoolsTest:test_singleRecipientClaimMultipleDeposits() (gas: 136301) +RewardManagerRecipientClaimMultiplePoolsTest:test_singleRecipientClaimMultipleDeposits() (gas: 136301) +RewardManagerRecipientClaimUnevenWeightTest:test_allRecipientsClaimingReceiveExpectedAmount() (gas: 198401) +RewardManagerRecipientClaimUnevenWeightTest:test_allRecipientsClaimingReceiveExpectedAmount() (gas: 198401) +RewardManagerRecipientClaimUnevenWeightTest:test_allRecipientsClaimingReceiveExpectedAmount() (gas: 198401) +RewardManagerRecipientClaimUnevenWeightTest:test_allRecipientsClaimingReceiveExpectedAmountWithSmallDeposit() (gas: 218274) +RewardManagerRecipientClaimUnevenWeightTest:test_allRecipientsClaimingReceiveExpectedAmountWithSmallDeposit() (gas: 218274) +RewardManagerRecipientClaimUnevenWeightTest:test_allRecipientsClaimingReceiveExpectedAmountWithSmallDeposit() (gas: 218274) RewardManagerSetRecipientsTest:test_eventIsEmittedUponSetRecipients() (gas: 191701) RewardManagerSetRecipientsTest:test_eventIsEmittedUponSetRecipients() (gas: 191701) RewardManagerSetRecipientsTest:test_eventIsEmittedUponSetRecipients() (gas: 191701) @@ -844,36 +844,36 @@ RewardManagerSetupTest:test_rejectsZeroLinkAddressOnConstruction() (gas: 59411) RewardManagerSetupTest:test_setFeeManagerZeroAddress() (gas: 17105) RewardManagerSetupTest:test_setFeeManagerZeroAddress() (gas: 17105) RewardManagerSetupTest:test_setFeeManagerZeroAddress() (gas: 17105) -RewardManagerUpdateRewardRecipientsMultiplePoolsTest:test_updatePrimaryRecipientWeights() (gas: 376509) -RewardManagerUpdateRewardRecipientsMultiplePoolsTest:test_updatePrimaryRecipientWeights() (gas: 376509) -RewardManagerUpdateRewardRecipientsMultiplePoolsTest:test_updatePrimaryRecipientWeights() (gas: 376509) -RewardManagerUpdateRewardRecipientsTest:test_eventIsEmittedUponUpdateRecipients() (gas: 280459) -RewardManagerUpdateRewardRecipientsTest:test_eventIsEmittedUponUpdateRecipients() (gas: 280459) -RewardManagerUpdateRewardRecipientsTest:test_eventIsEmittedUponUpdateRecipients() (gas: 280459) +RewardManagerUpdateRewardRecipientsMultiplePoolsTest:test_updatePrimaryRecipientWeights() (gas: 373527) +RewardManagerUpdateRewardRecipientsMultiplePoolsTest:test_updatePrimaryRecipientWeights() (gas: 373527) +RewardManagerUpdateRewardRecipientsMultiplePoolsTest:test_updatePrimaryRecipientWeights() (gas: 373527) +RewardManagerUpdateRewardRecipientsTest:test_eventIsEmittedUponUpdateRecipients() (gas: 279135) +RewardManagerUpdateRewardRecipientsTest:test_eventIsEmittedUponUpdateRecipients() (gas: 279135) +RewardManagerUpdateRewardRecipientsTest:test_eventIsEmittedUponUpdateRecipients() (gas: 279135) RewardManagerUpdateRewardRecipientsTest:test_onlyAdminCanUpdateRecipients() (gas: 19749) RewardManagerUpdateRewardRecipientsTest:test_onlyAdminCanUpdateRecipients() (gas: 19749) RewardManagerUpdateRewardRecipientsTest:test_onlyAdminCanUpdateRecipients() (gas: 19749) -RewardManagerUpdateRewardRecipientsTest:test_partialUpdateRecipientWeights() (gas: 220875) -RewardManagerUpdateRewardRecipientsTest:test_partialUpdateRecipientWeights() (gas: 220875) -RewardManagerUpdateRewardRecipientsTest:test_partialUpdateRecipientWeights() (gas: 220875) -RewardManagerUpdateRewardRecipientsTest:test_updateAllRecipientsWithSameAddressAndWeight() (gas: 274265) -RewardManagerUpdateRewardRecipientsTest:test_updateAllRecipientsWithSameAddressAndWeight() (gas: 274265) -RewardManagerUpdateRewardRecipientsTest:test_updateAllRecipientsWithSameAddressAndWeight() (gas: 274265) +RewardManagerUpdateRewardRecipientsTest:test_partialUpdateRecipientWeights() (gas: 218889) +RewardManagerUpdateRewardRecipientsTest:test_partialUpdateRecipientWeights() (gas: 218889) +RewardManagerUpdateRewardRecipientsTest:test_partialUpdateRecipientWeights() (gas: 218889) +RewardManagerUpdateRewardRecipientsTest:test_updateAllRecipientsWithSameAddressAndWeight() (gas: 272941) +RewardManagerUpdateRewardRecipientsTest:test_updateAllRecipientsWithSameAddressAndWeight() (gas: 272941) +RewardManagerUpdateRewardRecipientsTest:test_updateAllRecipientsWithSameAddressAndWeight() (gas: 272941) RewardManagerUpdateRewardRecipientsTest:test_updatePartialRecipientsToSubset() (gas: 254276) RewardManagerUpdateRewardRecipientsTest:test_updatePartialRecipientsToSubset() (gas: 254276) RewardManagerUpdateRewardRecipientsTest:test_updatePartialRecipientsToSubset() (gas: 254276) RewardManagerUpdateRewardRecipientsTest:test_updatePartialRecipientsWithExcessiveWeight() (gas: 259263) RewardManagerUpdateRewardRecipientsTest:test_updatePartialRecipientsWithExcessiveWeight() (gas: 259263) RewardManagerUpdateRewardRecipientsTest:test_updatePartialRecipientsWithExcessiveWeight() (gas: 259263) -RewardManagerUpdateRewardRecipientsTest:test_updatePartialRecipientsWithSameAddressAndWeight() (gas: 149872) -RewardManagerUpdateRewardRecipientsTest:test_updatePartialRecipientsWithSameAddressAndWeight() (gas: 149872) -RewardManagerUpdateRewardRecipientsTest:test_updatePartialRecipientsWithSameAddressAndWeight() (gas: 149872) +RewardManagerUpdateRewardRecipientsTest:test_updatePartialRecipientsWithSameAddressAndWeight() (gas: 148879) +RewardManagerUpdateRewardRecipientsTest:test_updatePartialRecipientsWithSameAddressAndWeight() (gas: 148879) +RewardManagerUpdateRewardRecipientsTest:test_updatePartialRecipientsWithSameAddressAndWeight() (gas: 148879) RewardManagerUpdateRewardRecipientsTest:test_updatePartialRecipientsWithUnderWeightSet() (gas: 259337) RewardManagerUpdateRewardRecipientsTest:test_updatePartialRecipientsWithUnderWeightSet() (gas: 259337) RewardManagerUpdateRewardRecipientsTest:test_updatePartialRecipientsWithUnderWeightSet() (gas: 259337) -RewardManagerUpdateRewardRecipientsTest:test_updateRecipientWeights() (gas: 371990) -RewardManagerUpdateRewardRecipientsTest:test_updateRecipientWeights() (gas: 371990) -RewardManagerUpdateRewardRecipientsTest:test_updateRecipientWeights() (gas: 371990) +RewardManagerUpdateRewardRecipientsTest:test_updateRecipientWeights() (gas: 369008) +RewardManagerUpdateRewardRecipientsTest:test_updateRecipientWeights() (gas: 369008) +RewardManagerUpdateRewardRecipientsTest:test_updateRecipientWeights() (gas: 369008) RewardManagerUpdateRewardRecipientsTest:test_updateRecipientWithNewZeroAddress() (gas: 270846) RewardManagerUpdateRewardRecipientsTest:test_updateRecipientWithNewZeroAddress() (gas: 270846) RewardManagerUpdateRewardRecipientsTest:test_updateRecipientWithNewZeroAddress() (gas: 270846) @@ -898,9 +898,9 @@ RewardManagerUpdateRewardRecipientsTest:test_updateRecipientsUpdateAndRemoveExis RewardManagerUpdateRewardRecipientsTest:test_updateRecipientsUpdateAndRemoveExistingForSmallerSet() (gas: 289557) RewardManagerUpdateRewardRecipientsTest:test_updateRecipientsUpdateAndRemoveExistingForSmallerSet() (gas: 289557) RewardManagerUpdateRewardRecipientsTest:test_updateRecipientsUpdateAndRemoveExistingForSmallerSet() (gas: 289557) -VerificationdeactivateConfigWhenThereAreMultipleDigestsTest:test_correctlyRemovesAMiddleDigest() (gas: 27017) -VerificationdeactivateConfigWhenThereAreMultipleDigestsTest:test_correctlyRemovesTheFirstDigest() (gas: 27007) -VerificationdeactivateConfigWhenThereAreMultipleDigestsTest:test_correctlyUnsetsDigestsInSequence() (gas: 45102) +VerificationdeactivateConfigWhenThereAreMultipleDigestsTest:test_correctlyRemovesAMiddleDigest() (gas: 24177) +VerificationdeactivateConfigWhenThereAreMultipleDigestsTest:test_correctlyRemovesTheFirstDigest() (gas: 24167) +VerificationdeactivateConfigWhenThereAreMultipleDigestsTest:test_correctlyUnsetsDigestsInSequence() (gas: 44109) VerificationdeactivateConfigWhenThereAreMultipleDigestsTest:test_revertsIfCalledByNonOwner() (gas: 15016) VerificationdeactivateConfigWhenThereAreMultipleDigestsTest:test_revertsIfRemovingAnEmptyDigest() (gas: 10907) VerificationdeactivateConfigWhenThereAreMultipleDigestsTest:test_revertsIfRemovingAnNonExistentDigest() (gas: 13381) @@ -926,56 +926,56 @@ VerifierActivateFeedTest:test_revertsIfNoFeedExistsActivate() (gas: 13179) VerifierActivateFeedTest:test_revertsIfNoFeedExistsDeactivate() (gas: 13202) VerifierActivateFeedTest:test_revertsIfNotOwnerActivateFeed() (gas: 17109) VerifierActivateFeedTest:test_revertsIfNotOwnerDeactivateFeed() (gas: 17164) -VerifierBillingTests:test_rewardsAreDistributedAccordingToWeights() (gas: 1735953) -VerifierBillingTests:test_rewardsAreDistributedAccordingToWeightsMultipleWeigths() (gas: 4467687) -VerifierBillingTests:test_rewardsAreDistributedAccordingToWeightsUsingHistoricalConfigs() (gas: 2106154) -VerifierBillingTests:test_verifyWithLinkV3Report() (gas: 1593401) -VerifierBillingTests:test_verifyWithNativeERC20() (gas: 1467420) -VerifierBillingTests:test_verifyWithNativeUnwrapped() (gas: 1378619) -VerifierBillingTests:test_verifyWithNativeUnwrappedReturnsChange() (gas: 1385643) -VerifierBulkVerifyBillingReport:test_verifyMultiVersions() (gas: 476410) +VerifierBillingTests:test_rewardsAreDistributedAccordingToWeights() (gas: 1733961) +VerifierBillingTests:test_rewardsAreDistributedAccordingToWeightsMultipleWeigths() (gas: 4466027) +VerifierBillingTests:test_rewardsAreDistributedAccordingToWeightsUsingHistoricalConfigs() (gas: 2102489) +VerifierBillingTests:test_verifyWithLinkV3Report() (gas: 1592103) +VerifierBillingTests:test_verifyWithNativeERC20() (gas: 1466756) +VerifierBillingTests:test_verifyWithNativeUnwrapped() (gas: 1377955) +VerifierBillingTests:test_verifyWithNativeUnwrappedReturnsChange() (gas: 1384979) +VerifierBulkVerifyBillingReport:test_verifyMultiVersions() (gas: 475414) VerifierBulkVerifyBillingReport:test_verifyMultiVersionsReturnsVerifiedReports() (gas: 474712) -VerifierBulkVerifyBillingReport:test_verifyWithBulkLink() (gas: 557422) -VerifierBulkVerifyBillingReport:test_verifyWithBulkNative() (gas: 560718) -VerifierBulkVerifyBillingReport:test_verifyWithBulkNativeUnwrapped() (gas: 568541) -VerifierBulkVerifyBillingReport:test_verifyWithBulkNativeUnwrappedReturnsChange() (gas: 575547) -VerifierBulkVerifyBillingReportV051:test_verifyMultiVersions() (gas: 474042) +VerifierBulkVerifyBillingReport:test_verifyWithBulkLink() (gas: 556758) +VerifierBulkVerifyBillingReport:test_verifyWithBulkNative() (gas: 560386) +VerifierBulkVerifyBillingReport:test_verifyWithBulkNativeUnwrapped() (gas: 567877) +VerifierBulkVerifyBillingReport:test_verifyWithBulkNativeUnwrappedReturnsChange() (gas: 574883) +VerifierBulkVerifyBillingReportV051:test_verifyMultiVersions() (gas: 473046) VerifierBulkVerifyBillingReportV051:test_verifyMultiVersionsReturnsVerifiedReports() (gas: 472344) -VerifierBulkVerifyBillingReportV051:test_verifyWithBulkLink() (gas: 557226) -VerifierBulkVerifyBillingReportV051:test_verifyWithBulkNative() (gas: 560522) -VerifierBulkVerifyBillingReportV051:test_verifyWithBulkNativeUnwrapped() (gas: 568345) -VerifierBulkVerifyBillingReportV051:test_verifyWithBulkNativeUnwrappedReturnsChange() (gas: 575447) -VerifierBulkVerifyBillingReportV05:test_verifyMultiVersions() (gas: 473554) +VerifierBulkVerifyBillingReportV051:test_verifyWithBulkLink() (gas: 556562) +VerifierBulkVerifyBillingReportV051:test_verifyWithBulkNative() (gas: 560190) +VerifierBulkVerifyBillingReportV051:test_verifyWithBulkNativeUnwrapped() (gas: 567681) +VerifierBulkVerifyBillingReportV051:test_verifyWithBulkNativeUnwrappedReturnsChange() (gas: 574783) +VerifierBulkVerifyBillingReportV05:test_verifyMultiVersions() (gas: 472558) VerifierBulkVerifyBillingReportV05:test_verifyMultiVersionsReturnsVerifiedReports() (gas: 471856) -VerifierBulkVerifyBillingReportV05:test_verifyWithBulkLink() (gas: 556446) -VerifierBulkVerifyBillingReportV05:test_verifyWithBulkNative() (gas: 559742) -VerifierBulkVerifyBillingReportV05:test_verifyWithBulkNativeUnwrapped() (gas: 567565) -VerifierBulkVerifyBillingReportV05:test_verifyWithBulkNativeUnwrappedReturnsChange() (gas: 574667) +VerifierBulkVerifyBillingReportV05:test_verifyWithBulkLink() (gas: 555782) +VerifierBulkVerifyBillingReportV05:test_verifyWithBulkNative() (gas: 559410) +VerifierBulkVerifyBillingReportV05:test_verifyWithBulkNativeUnwrapped() (gas: 566901) +VerifierBulkVerifyBillingReportV05:test_verifyWithBulkNativeUnwrappedReturnsChange() (gas: 574003) VerifierConstructorTest:test_revertsIfInitializedWithEmptyVerifierProxy() (gas: 59960) -VerifierConstructorTest:test_setsTheCorrectProperties() (gas: 1813269) +VerifierConstructorTest:test_setsTheCorrectProperties() (gas: 1810891) VerifierConstructorTestV051:test_revertsIfInitializedWithEmptyVerifierProxy() (gas: 59692) -VerifierConstructorTestV051:test_setsTheCorrectProperties() (gas: 1561892) +VerifierConstructorTestV051:test_setsTheCorrectProperties() (gas: 1561223) VerifierConstructorTestV05:test_revertsIfInitializedWithEmptyVerifierProxy() (gas: 59657) -VerifierConstructorTestV05:test_setsTheCorrectProperties() (gas: 1530840) +VerifierConstructorTestV05:test_setsTheCorrectProperties() (gas: 1530171) VerifierDeactivateFeedWithVerifyTest:test_currentReportAllowsVerification() (gas: 192007) VerifierDeactivateFeedWithVerifyTest:test_currentReportFailsVerification() (gas: 113322) VerifierDeactivateFeedWithVerifyTest:test_previousReportAllowsVerification() (gas: 99651) VerifierDeactivateFeedWithVerifyTest:test_previousReportFailsVerification() (gas: 69925) -VerifierInterfacesTest:test_DestinationContractInterfaces() (gas: 628097) -VerifierProxyAccessControlledVerificationTest:test_proxiesToTheVerifierIfHasAccess() (gas: 208441) +VerifierInterfacesTest:test_DestinationContractInterfaces() (gas: 627433) +VerifierProxyAccessControlledVerificationTest:test_proxiesToTheVerifierIfHasAccess() (gas: 205719) VerifierProxyAccessControlledVerificationTest:test_revertsIfNoAccess() (gas: 112257) -VerifierProxyAccessControlledVerificationTestV051:test_proxiesToTheVerifierIfHasAccess() (gas: 206107) +VerifierProxyAccessControlledVerificationTestV051:test_proxiesToTheVerifierIfHasAccess() (gas: 203385) VerifierProxyAccessControlledVerificationTestV051:test_revertsIfNoAccess() (gas: 112257) -VerifierProxyAccessControlledVerificationTestV05:test_proxiesToTheVerifierIfHasAccess() (gas: 205961) +VerifierProxyAccessControlledVerificationTestV05:test_proxiesToTheVerifierIfHasAccess() (gas: 203239) VerifierProxyAccessControlledVerificationTestV05:test_revertsIfNoAccess() (gas: 112257) -VerifierProxyConstructorTest:test_correctlySetsTheCorrectAccessControllerInterface() (gas: 1485337) -VerifierProxyConstructorTest:test_correctlySetsTheCorrectAccessControllerInterface() (gas: 1485337) -VerifierProxyConstructorTest:test_correctlySetsTheOwner() (gas: 1465483) -VerifierProxyConstructorTest:test_correctlySetsTheOwner() (gas: 1465483) +VerifierProxyConstructorTest:test_correctlySetsTheCorrectAccessControllerInterface() (gas: 1482500) +VerifierProxyConstructorTest:test_correctlySetsTheCorrectAccessControllerInterface() (gas: 1482500) +VerifierProxyConstructorTest:test_correctlySetsTheOwner() (gas: 1462646) +VerifierProxyConstructorTest:test_correctlySetsTheOwner() (gas: 1462646) VerifierProxyConstructorTest:test_correctlySetsVersion() (gas: 9767) VerifierProxyConstructorTest:test_correctlySetsVersion() (gas: 9767) -VerifierProxyConstructorTestV051:test_correctlySetsTheCorrectAccessControllerInterface() (gas: 1715654) -VerifierProxyConstructorTestV051:test_correctlySetsTheOwner() (gas: 1695712) +VerifierProxyConstructorTestV051:test_correctlySetsTheCorrectAccessControllerInterface() (gas: 1712817) +VerifierProxyConstructorTestV051:test_correctlySetsTheOwner() (gas: 1692875) VerifierProxyConstructorTestV051:test_correctlySetsVersion() (gas: 9767) VerifierProxyInitializeVerifierTest:test_revertsIfDigestAlreadySet() (gas: 54117) VerifierProxyInitializeVerifierTest:test_revertsIfNotCorrectVerifier() (gas: 13613) @@ -985,7 +985,7 @@ VerifierProxyInitializeVerifierTest:test_revertsIfZeroAddress() (gas: 10956) VerifierProxyInitializeVerifierTest:test_setFeeManagerWhichDoesntHonourIERC165Interface() (gas: 13884) VerifierProxyInitializeVerifierTest:test_setFeeManagerWhichDoesntHonourInterface() (gas: 16290) VerifierProxyInitializeVerifierTest:test_setFeeManagerZeroAddress() (gas: 10911) -VerifierProxyInitializeVerifierTest:test_updatesVerifierIfVerifier() (gas: 54086) +VerifierProxyInitializeVerifierTest:test_updatesVerifierIfVerifier() (gas: 53436) VerifierProxyInitializeVerifierTestV051:test_revertsIfDigestAlreadySet() (gas: 48428) VerifierProxyInitializeVerifierTestV051:test_revertsIfNotCorrectVerifier() (gas: 13635) VerifierProxyInitializeVerifierTestV051:test_revertsIfNotOwner() (gas: 17190) @@ -994,7 +994,7 @@ VerifierProxyInitializeVerifierTestV051:test_revertsIfZeroAddress() (gas: 10978) VerifierProxyInitializeVerifierTestV051:test_setFeeManagerWhichDoesntHonourIERC165Interface() (gas: 13884) VerifierProxyInitializeVerifierTestV051:test_setFeeManagerWhichDoesntHonourInterface() (gas: 16290) VerifierProxyInitializeVerifierTestV051:test_setFeeManagerZeroAddress() (gas: 10911) -VerifierProxyInitializeVerifierTestV051:test_updatesVerifierIfVerifier() (gas: 48422) +VerifierProxyInitializeVerifierTestV051:test_updatesVerifierIfVerifier() (gas: 47772) VerifierProxyInitializeVerifierTestV05:test_revertsIfDigestAlreadySet() (gas: 48384) VerifierProxyInitializeVerifierTestV05:test_revertsIfNotCorrectVerifier() (gas: 13613) VerifierProxyInitializeVerifierTestV05:test_revertsIfNotOwner() (gas: 17168) @@ -1003,133 +1003,133 @@ VerifierProxyInitializeVerifierTestV05:test_revertsIfZeroAddress() (gas: 10956) VerifierProxyInitializeVerifierTestV05:test_setFeeManagerWhichDoesntHonourIERC165Interface() (gas: 13884) VerifierProxyInitializeVerifierTestV05:test_setFeeManagerWhichDoesntHonourInterface() (gas: 16290) VerifierProxyInitializeVerifierTestV05:test_setFeeManagerZeroAddress() (gas: 10911) -VerifierProxyInitializeVerifierTestV05:test_updatesVerifierIfVerifier() (gas: 48356) +VerifierProxyInitializeVerifierTestV05:test_updatesVerifierIfVerifier() (gas: 47706) VerifierProxySetAccessControllerTest:test_emitsTheCorrectEvent() (gas: 35348) VerifierProxySetAccessControllerTest:test_emitsTheCorrectEvent() (gas: 35348) VerifierProxySetAccessControllerTest:test_revertsIfCalledByNonOwner() (gas: 15025) VerifierProxySetAccessControllerTest:test_revertsIfCalledByNonOwner() (gas: 15025) -VerifierProxySetAccessControllerTest:test_successfullySetsNewAccessController() (gas: 34921) -VerifierProxySetAccessControllerTest:test_successfullySetsNewAccessController() (gas: 34921) -VerifierProxySetAccessControllerTest:test_successfullySetsNewAccessControllerIsEmpty() (gas: 15065) -VerifierProxySetAccessControllerTest:test_successfullySetsNewAccessControllerIsEmpty() (gas: 15065) +VerifierProxySetAccessControllerTest:test_successfullySetsNewAccessController() (gas: 32090) +VerifierProxySetAccessControllerTest:test_successfullySetsNewAccessController() (gas: 32090) +VerifierProxySetAccessControllerTest:test_successfullySetsNewAccessControllerIsEmpty() (gas: 12234) +VerifierProxySetAccessControllerTest:test_successfullySetsNewAccessControllerIsEmpty() (gas: 12234) VerifierProxySetAccessControllerTestV051:test_emitsTheCorrectEvent() (gas: 35348) VerifierProxySetAccessControllerTestV051:test_revertsIfCalledByNonOwner() (gas: 15025) -VerifierProxySetAccessControllerTestV051:test_successfullySetsNewAccessController() (gas: 34943) -VerifierProxySetAccessControllerTestV051:test_successfullySetsNewAccessControllerIsEmpty() (gas: 15087) +VerifierProxySetAccessControllerTestV051:test_successfullySetsNewAccessController() (gas: 32112) +VerifierProxySetAccessControllerTestV051:test_successfullySetsNewAccessControllerIsEmpty() (gas: 12256) VerifierProxyUnsetVerifierTest:test_revertsIfDigestDoesNotExist() (gas: 13149) VerifierProxyUnsetVerifierTest:test_revertsIfDigestDoesNotExist() (gas: 13149) VerifierProxyUnsetVerifierTest:test_revertsIfNotAdmin() (gas: 14973) VerifierProxyUnsetVerifierTest:test_revertsIfNotAdmin() (gas: 14973) VerifierProxyUnsetVerifierTestV051:test_revertsIfDigestDoesNotExist() (gas: 13171) VerifierProxyUnsetVerifierTestV051:test_revertsIfNotAdmin() (gas: 14995) -VerifierProxyUnsetVerifierWithPreviouslySetVerifierTest:test_correctlyUnsetsVerifier() (gas: 15555) -VerifierProxyUnsetVerifierWithPreviouslySetVerifierTest:test_correctlyUnsetsVerifier() (gas: 15555) +VerifierProxyUnsetVerifierWithPreviouslySetVerifierTest:test_correctlyUnsetsVerifier() (gas: 12724) +VerifierProxyUnsetVerifierWithPreviouslySetVerifierTest:test_correctlyUnsetsVerifier() (gas: 12724) VerifierProxyUnsetVerifierWithPreviouslySetVerifierTest:test_emitsAnEventAfterUnsettingVerifier() (gas: 17985) VerifierProxyUnsetVerifierWithPreviouslySetVerifierTest:test_emitsAnEventAfterUnsettingVerifier() (gas: 17985) -VerifierProxyUnsetVerifierWithPreviouslySetVerifierTestV051:test_correctlyUnsetsVerifier() (gas: 15599) +VerifierProxyUnsetVerifierWithPreviouslySetVerifierTestV051:test_correctlyUnsetsVerifier() (gas: 12768) VerifierProxyUnsetVerifierWithPreviouslySetVerifierTestV051:test_emitsAnEventAfterUnsettingVerifier() (gas: 18007) -VerifierProxyVerifyTest:test_proxiesToTheCorrectVerifier() (gas: 204276) +VerifierProxyVerifyTest:test_proxiesToTheCorrectVerifier() (gas: 201554) VerifierProxyVerifyTest:test_revertsIfNoVerifierConfigured() (gas: 117265) -VerifierProxyVerifyTestV051:test_proxiesToTheCorrectVerifier() (gas: 201942) +VerifierProxyVerifyTestV051:test_proxiesToTheCorrectVerifier() (gas: 199220) VerifierProxyVerifyTestV051:test_revertsIfNoVerifierConfigured() (gas: 117265) -VerifierProxyVerifyTestV05:test_proxiesToTheCorrectVerifier() (gas: 201796) +VerifierProxyVerifyTestV05:test_proxiesToTheCorrectVerifier() (gas: 199074) VerifierProxyVerifyTestV05:test_revertsIfNoVerifierConfigured() (gas: 117265) VerifierSetAccessControllerTest:test_revertsIfCalledByNonOwner() (gas: 17152) VerifierSetAccessControllerTest:test_setFeeManagerWhichDoesntHonourInterface() (gas: 16272) -VerifierSetAccessControllerTest:test_successfullySetsNewFeeManager() (gas: 42214) -VerifierSetConfigFromSourceMultipleDigestsTest:test_correctlySetsConfigWhenDigestsAreRemoved() (gas: 542280) -VerifierSetConfigFromSourceMultipleDigestsTest:test_correctlyUpdatesDigestsOnMultipleVerifiersInTheProxy() (gas: 967835) -VerifierSetConfigFromSourceMultipleDigestsTest:test_correctlyUpdatesTheDigestInTheProxy() (gas: 523229) +VerifierSetAccessControllerTest:test_successfullySetsNewFeeManager() (gas: 41888) +VerifierSetConfigFromSourceMultipleDigestsTest:test_correctlySetsConfigWhenDigestsAreRemoved() (gas: 538740) +VerifierSetConfigFromSourceMultipleDigestsTest:test_correctlyUpdatesDigestsOnMultipleVerifiersInTheProxy() (gas: 964683) +VerifierSetConfigFromSourceMultipleDigestsTest:test_correctlyUpdatesTheDigestInTheProxy() (gas: 520403) VerifierSetConfigFromSourceTest:test_revertsIfCalledByNonOwner() (gas: 183217) -VerifierSetConfigTest:test_correctlyUpdatesTheConfig() (gas: 1062416) +VerifierSetConfigTest:test_correctlyUpdatesTheConfig() (gas: 1057885) VerifierSetConfigTest:test_revertsIfCalledByNonOwner() (gas: 182986) VerifierSetConfigTest:test_revertsIfDuplicateSigners() (gas: 251595) VerifierSetConfigTest:test_revertsIfFaultToleranceIsZero() (gas: 176543) VerifierSetConfigTest:test_revertsIfNotEnoughSigners() (gas: 15842) VerifierSetConfigTest:test_revertsIfSetWithTooManySigners() (gas: 22182) VerifierSetConfigTest:test_revertsIfSignerContainsZeroAddress() (gas: 228025) -VerifierSetConfigTestV051:test_correctlyUpdatesTheConfig() (gas: 1022317) +VerifierSetConfigTestV051:test_correctlyUpdatesTheConfig() (gas: 1019486) VerifierSetConfigTestV051:test_revertsIfCalledByNonOwner() (gas: 213876) VerifierSetConfigTestV051:test_revertsIfDuplicateSigners() (gas: 243775) VerifierSetConfigTestV051:test_revertsIfFaultToleranceIsZero() (gas: 207433) VerifierSetConfigTestV051:test_revertsIfNotEnoughSigners() (gas: 16385) VerifierSetConfigTestV051:test_revertsIfSetWithTooManySigners() (gas: 41439) VerifierSetConfigTestV051:test_revertsIfSignerContainsZeroAddress() (gas: 220290) -VerifierSetConfigTestV05:test_correctlyUpdatesTheConfig() (gas: 1022171) +VerifierSetConfigTestV05:test_correctlyUpdatesTheConfig() (gas: 1019340) VerifierSetConfigTestV05:test_revertsIfCalledByNonOwner() (gas: 213898) VerifierSetConfigTestV05:test_revertsIfDuplicateSigners() (gas: 243789) VerifierSetConfigTestV05:test_revertsIfFaultToleranceIsZero() (gas: 207455) VerifierSetConfigTestV05:test_revertsIfNotEnoughSigners() (gas: 16407) VerifierSetConfigTestV05:test_revertsIfSetWithTooManySigners() (gas: 41461) VerifierSetConfigTestV05:test_revertsIfSignerContainsZeroAddress() (gas: 220308) -VerifierSetConfigWhenThereAreMultipleDigestsTest05:test_configDigestMatchesConfiguratorDigest() (gas: 584372) -VerifierSetConfigWhenThereAreMultipleDigestsTest05:test_correctlySetsConfigWhenDigestsAreRemoved() (gas: 527267) -VerifierSetConfigWhenThereAreMultipleDigestsTest05:test_correctlyUpdatesDigestsOnMultipleVerifiersInTheProxy() (gas: 961409) -VerifierSetConfigWhenThereAreMultipleDigestsTest05:test_correctlyUpdatesTheDigestInTheProxy() (gas: 519967) +VerifierSetConfigWhenThereAreMultipleDigestsTest05:test_configDigestMatchesConfiguratorDigest() (gas: 581521) +VerifierSetConfigWhenThereAreMultipleDigestsTest05:test_correctlySetsConfigWhenDigestsAreRemoved() (gas: 524424) +VerifierSetConfigWhenThereAreMultipleDigestsTest05:test_correctlyUpdatesDigestsOnMultipleVerifiersInTheProxy() (gas: 958257) +VerifierSetConfigWhenThereAreMultipleDigestsTest05:test_correctlyUpdatesTheDigestInTheProxy() (gas: 517141) VerifierSetConfigWhenThereAreMultipleDigestsTest05:test_incrementalConfigUpdates() (gas: 1424440) VerifierSetConfigWhenThereAreMultipleDigestsTest05:test_revertsIfDuplicateConfigIsSet() (gas: 545708) -VerifierSetConfigWhenThereAreMultipleDigestsTest:test_correctlySetsConfigWhenDigestsAreRemoved() (gas: 542029) -VerifierSetConfigWhenThereAreMultipleDigestsTest:test_correctlyUpdatesDigestsOnMultipleVerifiersInTheProxy() (gas: 967324) -VerifierSetConfigWhenThereAreMultipleDigestsTest:test_correctlyUpdatesTheDigestInTheProxy() (gas: 522969) -VerifierSetConfigWhenThereAreMultipleDigestsTestV051:test_configDigestMatchesConfiguratorDigest() (gas: 584372) -VerifierSetConfigWhenThereAreMultipleDigestsTestV051:test_correctlySetsConfigWhenDigestsAreRemoved() (gas: 527305) -VerifierSetConfigWhenThereAreMultipleDigestsTestV051:test_correctlyUpdatesDigestsOnMultipleVerifiersInTheProxy() (gas: 961573) -VerifierSetConfigWhenThereAreMultipleDigestsTestV051:test_correctlyUpdatesTheDigestInTheProxy() (gas: 520049) +VerifierSetConfigWhenThereAreMultipleDigestsTest:test_correctlySetsConfigWhenDigestsAreRemoved() (gas: 538489) +VerifierSetConfigWhenThereAreMultipleDigestsTest:test_correctlyUpdatesDigestsOnMultipleVerifiersInTheProxy() (gas: 964172) +VerifierSetConfigWhenThereAreMultipleDigestsTest:test_correctlyUpdatesTheDigestInTheProxy() (gas: 520143) +VerifierSetConfigWhenThereAreMultipleDigestsTestV051:test_configDigestMatchesConfiguratorDigest() (gas: 581521) +VerifierSetConfigWhenThereAreMultipleDigestsTestV051:test_correctlySetsConfigWhenDigestsAreRemoved() (gas: 524462) +VerifierSetConfigWhenThereAreMultipleDigestsTestV051:test_correctlyUpdatesDigestsOnMultipleVerifiersInTheProxy() (gas: 958421) +VerifierSetConfigWhenThereAreMultipleDigestsTestV051:test_correctlyUpdatesTheDigestInTheProxy() (gas: 517223) VerifierSetConfigWhenThereAreMultipleDigestsTestV051:test_incrementalConfigUpdates() (gas: 1424620) VerifierSetConfigWhenThereAreMultipleDigestsTestV051:test_revertsIfDuplicateConfigIsSet() (gas: 545746) -VerifierSupportsInterfaceTest:test_falseIfIsNotCorrectInterface() (gas: 8421) -VerifierSupportsInterfaceTest:test_falseIfIsNotCorrectInterface() (gas: 8421) -VerifierSupportsInterfaceTest:test_trueIfIsCorrectInterface() (gas: 8464) -VerifierSupportsInterfaceTest:test_trueIfIsCorrectInterface() (gas: 8464) -VerifierSupportsInterfaceTestV051:test_falseIfIsNotCorrectInterface() (gas: 8421) -VerifierSupportsInterfaceTestV051:test_trueIfIsCorrectInterface() (gas: 8464) -VerifierTestBillingReport:test_verifyWithLink() (gas: 275196) -VerifierTestBillingReport:test_verifyWithNative() (gas: 316205) -VerifierTestBillingReport:test_verifyWithNativeUnwrapped() (gas: 318520) -VerifierTestBillingReport:test_verifyWithNativeUnwrappedReturnsChange() (gas: 325543) -VerifierTestBillingReportV051:test_verifyWithLink() (gas: 275146) -VerifierTestBillingReportV051:test_verifyWithNative() (gas: 316155) -VerifierTestBillingReportV051:test_verifyWithNativeUnwrapped() (gas: 318470) -VerifierTestBillingReportV051:test_verifyWithNativeUnwrappedReturnsChange() (gas: 325589) -VerifierTestBillingReportV05:test_verifyWithLink() (gas: 275000) -VerifierTestBillingReportV05:test_verifyWithNative() (gas: 316009) -VerifierTestBillingReportV05:test_verifyWithNativeUnwrapped() (gas: 318324) -VerifierTestBillingReportV05:test_verifyWithNativeUnwrappedReturnsChange() (gas: 325443) +VerifierSupportsInterfaceTest:test_falseIfIsNotCorrectInterface() (gas: 5590) +VerifierSupportsInterfaceTest:test_falseIfIsNotCorrectInterface() (gas: 5590) +VerifierSupportsInterfaceTest:test_trueIfIsCorrectInterface() (gas: 5633) +VerifierSupportsInterfaceTest:test_trueIfIsCorrectInterface() (gas: 5633) +VerifierSupportsInterfaceTestV051:test_falseIfIsNotCorrectInterface() (gas: 5590) +VerifierSupportsInterfaceTestV051:test_trueIfIsCorrectInterface() (gas: 5633) +VerifierTestBillingReport:test_verifyWithLink() (gas: 274865) +VerifierTestBillingReport:test_verifyWithNative() (gas: 315543) +VerifierTestBillingReport:test_verifyWithNativeUnwrapped() (gas: 317858) +VerifierTestBillingReport:test_verifyWithNativeUnwrappedReturnsChange() (gas: 324881) +VerifierTestBillingReportV051:test_verifyWithLink() (gas: 274815) +VerifierTestBillingReportV051:test_verifyWithNative() (gas: 315493) +VerifierTestBillingReportV051:test_verifyWithNativeUnwrapped() (gas: 317808) +VerifierTestBillingReportV051:test_verifyWithNativeUnwrappedReturnsChange() (gas: 324927) +VerifierTestBillingReportV05:test_verifyWithLink() (gas: 274669) +VerifierTestBillingReportV05:test_verifyWithNative() (gas: 315347) +VerifierTestBillingReportV05:test_verifyWithNativeUnwrapped() (gas: 317662) +VerifierTestBillingReportV05:test_verifyWithNativeUnwrappedReturnsChange() (gas: 324781) VerifierUpdateConfigTest:test_updateConfig() (gas: 673580) VerifierUpdateConfigTest:test_updateConfigRevertsIfCalledByNonOwner() (gas: 505312) VerifierUpdateConfigTest:test_updateConfigRevertsIfDigestNotSet() (gas: 92340) VerifierUpdateConfigTest:test_updateConfigRevertsIfFIsZero() (gas: 500500) VerifierUpdateConfigTest:test_updateConfigRevertsIfFTooHigh() (gas: 501433) VerifierUpdateConfigTest:test_updateConfigRevertsIfPrevSignersLengthMismatch() (gas: 526466) -VerifierUpdateConfigTest:test_updateConfigWithDifferentSigners() (gas: 803519) +VerifierUpdateConfigTest:test_updateConfigWithDifferentSigners() (gas: 801254) VerifierUpdateConfigTestV051:test_updateConfig() (gas: 673808) VerifierUpdateConfigTestV051:test_updateConfigRevertsIfCalledByNonOwner() (gas: 505417) VerifierUpdateConfigTestV051:test_updateConfigRevertsIfDigestNotSet() (gas: 92385) VerifierUpdateConfigTestV051:test_updateConfigRevertsIfFIsZero() (gas: 500605) VerifierUpdateConfigTestV051:test_updateConfigRevertsIfFTooHigh() (gas: 501538) VerifierUpdateConfigTestV051:test_updateConfigRevertsIfPrevSignersLengthMismatch() (gas: 526571) -VerifierUpdateConfigTestV051:test_updateConfigWithDifferentSigners() (gas: 803763) +VerifierUpdateConfigTestV051:test_updateConfigWithDifferentSigners() (gas: 801498) VerifierVerifyBulkTest:test_revertsVerifyBulkIfNoAccess() (gas: 112799) -VerifierVerifyBulkTest:test_verifyBulkSingleCaseWithSingleConfig() (gas: 745046) +VerifierVerifyBulkTest:test_verifyBulkSingleCaseWithSingleConfig() (gas: 714286) VerifierVerifyBulkTest:test_verifyBulkWithSingleConfigOneVerifyFails() (gas: 698191) -VerifierVerifyMultipleConfigDigestTest:test_canVerifyNewerReportsWithNewerConfigs() (gas: 133925) -VerifierVerifyMultipleConfigDigestTest:test_canVerifyOlderReportsWithOlderConfigs() (gas: 189777) +VerifierVerifyMultipleConfigDigestTest:test_canVerifyNewerReportsWithNewerConfigs() (gas: 131203) +VerifierVerifyMultipleConfigDigestTest:test_canVerifyOlderReportsWithOlderConfigs() (gas: 187055) VerifierVerifyMultipleConfigDigestTest:test_revertsIfAReportIsVerifiedWithAnExistingButIncorrectDigest() (gas: 88180) VerifierVerifyMultipleConfigDigestTest:test_revertsIfVerifyingWithAnUnsetDigest() (gas: 128007) -VerifierVerifyMultipleConfigDigestTestV051:test_canVerifyNewerReportsWithNewerConfigs() (gas: 131614) -VerifierVerifyMultipleConfigDigestTestV051:test_canVerifyOlderReportsWithOlderConfigs() (gas: 187443) +VerifierVerifyMultipleConfigDigestTestV051:test_canVerifyNewerReportsWithNewerConfigs() (gas: 128892) +VerifierVerifyMultipleConfigDigestTestV051:test_canVerifyOlderReportsWithOlderConfigs() (gas: 184721) VerifierVerifyMultipleConfigDigestTestV051:test_revertsIfAReportIsVerifiedWithAnExistingButIncorrectDigest() (gas: 85978) VerifierVerifyMultipleConfigDigestTestV051:test_revertsIfVerifyingWithAnUnsetDigest() (gas: 123104) -VerifierVerifyMultipleConfigDigestTestV051:test_verifyAfterConfigUpdate() (gas: 906538) -VerifierVerifyMultipleConfigDigestTestV051:test_verifyAfterConfigUpdateWithExistingSigners() (gas: 745956) -VerifierVerifyMultipleConfigDigestTestV05:test_canVerifyNewerReportsWithNewerConfigs() (gas: 131468) -VerifierVerifyMultipleConfigDigestTestV05:test_canVerifyOlderReportsWithOlderConfigs() (gas: 187297) +VerifierVerifyMultipleConfigDigestTestV051:test_verifyAfterConfigUpdate() (gas: 904360) +VerifierVerifyMultipleConfigDigestTestV051:test_verifyAfterConfigUpdateWithExistingSigners() (gas: 743779) +VerifierVerifyMultipleConfigDigestTestV05:test_canVerifyNewerReportsWithNewerConfigs() (gas: 128746) +VerifierVerifyMultipleConfigDigestTestV05:test_canVerifyOlderReportsWithOlderConfigs() (gas: 184575) VerifierVerifyMultipleConfigDigestTestV05:test_revertsIfAReportIsVerifiedWithAnExistingButIncorrectDigest() (gas: 85862) VerifierVerifyMultipleConfigDigestTestV05:test_revertsIfVerifyingWithAnUnsetDigest() (gas: 123010) -VerifierVerifyMultipleConfigDigestTestV05:test_verifyAfterConfigUpdate() (gas: 906084) -VerifierVerifyMultipleConfigDigestTestV05:test_verifyAfterConfigUpdateWithExistingSigners() (gas: 745612) +VerifierVerifyMultipleConfigDigestTestV05:test_verifyAfterConfigUpdate() (gas: 903907) +VerifierVerifyMultipleConfigDigestTestV05:test_verifyAfterConfigUpdateWithExistingSigners() (gas: 743434) VerifierVerifySingleConfigDigestTest:test_emitsAnEventIfReportVerified() (gas: 186868) -VerifierVerifySingleConfigDigestTest:test_returnsThePriceAndBlockNumIfReportVerified() (gas: 189759) +VerifierVerifySingleConfigDigestTest:test_returnsThePriceAndBlockNumIfReportVerified() (gas: 187037) VerifierVerifySingleConfigDigestTest:test_revertsIfConfigDigestNotSet() (gas: 116096) VerifierVerifySingleConfigDigestTest:test_revertsIfDuplicateSignersHaveSigned() (gas: 182305) VerifierVerifySingleConfigDigestTest:test_revertsIfMismatchedSignatureLengthV03() (gas: 53108) @@ -1137,9 +1137,9 @@ VerifierVerifySingleConfigDigestTest:test_revertsIfReportHasUnconfiguredFeedID() VerifierVerifySingleConfigDigestTest:test_revertsIfVerifiedByNonProxy() (gas: 100926) VerifierVerifySingleConfigDigestTest:test_revertsIfVerifiedWithIncorrectAddresses() (gas: 184034) VerifierVerifySingleConfigDigestTest:test_revertsIfWrongNumberOfSigners() (gas: 109982) -VerifierVerifySingleConfigDigestTest:test_setsTheCorrectEpoch() (gas: 194549) +VerifierVerifySingleConfigDigestTest:test_setsTheCorrectEpoch() (gas: 194206) VerifierVerifySingleConfigDigestTestV051:test_emitsAnEventIfReportVerified() (gas: 184567) -VerifierVerifySingleConfigDigestTestV051:test_returnsThePriceAndBlockNumIfReportVerified() (gas: 187458) +VerifierVerifySingleConfigDigestTestV051:test_returnsThePriceAndBlockNumIfReportVerified() (gas: 184736) VerifierVerifySingleConfigDigestTestV051:test_revertsIfConfigDigestNotSet() (gas: 113750) VerifierVerifySingleConfigDigestTestV051:test_revertsIfDuplicateSignersHaveSigned() (gas: 179830) VerifierVerifySingleConfigDigestTestV051:test_revertsIfMismatchedSignatureLength() (gas: 50894) @@ -1148,7 +1148,7 @@ VerifierVerifySingleConfigDigestTestV051:test_revertsIfVerifiedByNonProxy() (gas VerifierVerifySingleConfigDigestTestV051:test_revertsIfVerifiedWithIncorrectAddresses() (gas: 181559) VerifierVerifySingleConfigDigestTestV051:test_revertsIfWrongNumberOfSigners() (gas: 107768) VerifierVerifySingleConfigDigestTestV05:test_emitsAnEventIfReportVerified() (gas: 184421) -VerifierVerifySingleConfigDigestTestV05:test_returnsThePriceAndBlockNumIfReportVerified() (gas: 187312) +VerifierVerifySingleConfigDigestTestV05:test_returnsThePriceAndBlockNumIfReportVerified() (gas: 184590) VerifierVerifySingleConfigDigestTestV05:test_revertsIfConfigDigestNotSet() (gas: 113634) VerifierVerifySingleConfigDigestTestV05:test_revertsIfDuplicateSignersHaveSigned() (gas: 179714) VerifierVerifySingleConfigDigestTestV05:test_revertsIfMismatchedSignatureLength() (gas: 50778) @@ -1157,7 +1157,7 @@ VerifierVerifySingleConfigDigestTestV05:test_revertsIfVerifiedByNonProxy() (gas: VerifierVerifySingleConfigDigestTestV05:test_revertsIfVerifiedWithIncorrectAddresses() (gas: 181443) VerifierVerifySingleConfigDigestTestV05:test_revertsIfWrongNumberOfSigners() (gas: 107652) VerifierVerifyTest:test_canVerifyNewerReportsWithNewerConfigs() (gas: 862929) -VerifierVerifyTest:test_canVerifyOlderV3ReportsWithOlderConfigs() (gas: 815824) +VerifierVerifyTest:test_canVerifyOlderV3ReportsWithOlderConfigs() (gas: 809672) VerifierVerifyTest:test_failToVerifyReportIfDupSigners() (gas: 450716) VerifierVerifyTest:test_failToVerifyReportIfNoSigners() (gas: 426452) VerifierVerifyTest:test_failToVerifyReportIfNotEnoughSigners() (gas: 434768) @@ -1166,8 +1166,8 @@ VerifierVerifyTest:test_revertsVerifyIfNoAccess() (gas: 109387) VerifierVerifyTest:test_rollingOutConfiguration() (gas: 1496956) VerifierVerifyTest:test_scenarioRollingNewChainWithHistoricConfigs() (gas: 975976) VerifierVerifyTest:test_verifyFailsWhenReportIsOlderThanConfig() (gas: 2303123) -VerifierVerifyTest:test_verifyReport() (gas: 1434593) -VerifierVerifyTest:test_verifyTooglingActiveFlagsDonConfigs() (gas: 1918572) +VerifierVerifyTest:test_verifyReport() (gas: 1431517) +VerifierVerifyTest:test_verifyTooglingActiveFlagsDonConfigs() (gas: 1912420) Verifier_accessControlledVerifyV03:testVerifyWithAccessControl_gas() (gas: 212077) Verifier_accessControlledVerifyV051:testVerifyWithAccessControl_gas() (gas: 209743) Verifier_accessControlledVerifyV05:testVerifyWithAccessControl_gas() (gas: 209597) diff --git a/contracts/gas-snapshots/operatorforwarder.gas-snapshot b/contracts/gas-snapshots/operatorforwarder.gas-snapshot index 3c9bb6fae5..18b9dd0e07 100644 --- a/contracts/gas-snapshots/operatorforwarder.gas-snapshot +++ b/contracts/gas-snapshots/operatorforwarder.gas-snapshot @@ -1,11 +1,11 @@ -FactoryTest:test_DeployNewForwarderAndTransferOwnership_Success() (gas: 1059722) -FactoryTest:test_DeployNewForwarder_Success() (gas: 1048209) -FactoryTest:test_DeployNewOperatorAndForwarder_Success() (gas: 4069305) -FactoryTest:test_DeployNewOperator_Success() (gas: 3020509) +FactoryTest:test_DeployNewForwarderAndTransferOwnership_Success() (gas: 1059400) +FactoryTest:test_DeployNewForwarder_Success() (gas: 1045384) +FactoryTest:test_DeployNewOperatorAndForwarder_Success() (gas: 4068661) +FactoryTest:test_DeployNewOperator_Success() (gas: 3017684) ForwarderTest:test_OwnerForward_Success() (gas: 30112) -ForwarderTest:test_SetAuthorizedSenders_Success() (gas: 160524) +ForwarderTest:test_SetAuthorizedSenders_Success() (gas: 159219) ForwarderTest:test_TransferOwnershipWithMessage_Success() (gas: 35159) -OperatorTest:test_CancelOracleRequest_Success() (gas: 274465) -OperatorTest:test_FulfillOracleRequest_Success() (gas: 330649) -OperatorTest:test_NotAuthorizedSender_Revert() (gas: 246781) -OperatorTest:test_OracleRequest_Success() (gas: 250043) \ No newline at end of file +OperatorTest:test_CancelOracleRequest_Success() (gas: 273009) +OperatorTest:test_FulfillOracleRequest_Success() (gas: 329828) +OperatorTest:test_NotAuthorizedSender_Revert() (gas: 247065) +OperatorTest:test_OracleRequest_Success() (gas: 249277) \ No newline at end of file diff --git a/contracts/gas-snapshots/payments.gas-snapshot b/contracts/gas-snapshots/payments.gas-snapshot index b7425c0bf8..7167b77bbf 100644 --- a/contracts/gas-snapshots/payments.gas-snapshot +++ b/contracts/gas-snapshots/payments.gas-snapshot @@ -1,47 +1,47 @@ BaseTest:test_baseTest() (gas: 166) EmergencyPauseUnitTest:test_baseTest() (gas: 188) EmergencyPauseUnitTest:test_baseUnitTest() (gas: 186) -EmergencyPauseUnitTest:test_emergencyPause() (gas: 44378) +EmergencyPauseUnitTest:test_emergencyPause() (gas: 44053) EmergencyUnpauseUnitTest:test_baseTest() (gas: 188) EmergencyUnpauseUnitTest:test_baseUnitTest() (gas: 164) -EmergencyUnpauseUnitTest:test_emergencyUnpause() (gas: 36148) +EmergencyUnpauseUnitTest:test_emergencyUnpause() (gas: 35890) EmergencyWithdrawer_EmergencyWithdrawIntegrationTest:test_baseTest() (gas: 166) EmergencyWithdrawer_EmergencyWithdrawIntegrationTest:test_baseUnitTest() (gas: 186) -EmergencyWithdrawer_EmergencyWithdrawIntegrationTest:test_emergencyWithdraw_MultipleAssets() (gas: 421395) -EmergencyWithdrawer_EmergencyWithdrawIntegrationTest:test_emergencyWithdraw_SingleAsset() (gas: 223172) +EmergencyWithdrawer_EmergencyWithdrawIntegrationTest:test_emergencyWithdraw_MultipleAssets() (gas: 420921) +EmergencyWithdrawer_EmergencyWithdrawIntegrationTest:test_emergencyWithdraw_SingleAsset() (gas: 222935) EmergencyWithdrawer_EmergencyWithdrawNativeIntegrationTest:test_baseTest() (gas: 164) EmergencyWithdrawer_EmergencyWithdrawNativeIntegrationTest:test_baseUnitTest() (gas: 184) -EmergencyWithdrawer_EmergencyWithdrawNativeIntegrationTest:test_emergencyWithdrawNative() (gas: 33199) +EmergencyWithdrawer_EmergencyWithdrawNativeIntegrationTest:test_emergencyWithdrawNative() (gas: 32537) GrantRoleUnitTests:test_baseTest() (gas: 188) GrantRoleUnitTests:test_baseUnitTest() (gas: 186) -GrantRoleUnitTests:test_grantRole_ShouldEnumerateRoleAfterGranting() (gas: 122501) +GrantRoleUnitTests:test_grantRole_ShouldEnumerateRoleAfterGranting() (gas: 121500) PaymentTokenOnRamp_constructor:test_baseTest() (gas: 166) PaymentTokenOnRamp_constructor:test_baseUnitTest() (gas: 186) -PaymentTokenOnRamp_constructor:test_constructor() (gas: 2723170) -PaymentTokenOnRamp_constructor:test_supportsInterface() (gas: 8488) +PaymentTokenOnRamp_constructor:test_constructor() (gas: 2722522) +PaymentTokenOnRamp_constructor:test_supportsInterface() (gas: 5663) PaymentTokenOnRamp_getSubmittedPaymentRequestsUnitTest:test_baseTest() (gas: 166) PaymentTokenOnRamp_getSubmittedPaymentRequestsUnitTest:test_baseUnitTest() (gas: 164) -PaymentTokenOnRamp_getSubmittedPaymentRequestsUnitTest:test_getSubmittedPaymentRequests_LimitEqZero() (gas: 11447) -PaymentTokenOnRamp_getSubmittedPaymentRequestsUnitTest:test_getSubmittedPaymentRequests_StartGeLimit() (gas: 11164) +PaymentTokenOnRamp_getSubmittedPaymentRequestsUnitTest:test_getSubmittedPaymentRequests_LimitEqZero() (gas: 8606) +PaymentTokenOnRamp_getSubmittedPaymentRequestsUnitTest:test_getSubmittedPaymentRequests_StartGeLimit() (gas: 8323) PaymentTokenOnRamp_getSubmittedPaymentRequestsUnitTest:test_getSubmittedPaymentRequests_StartPlusLimitEqTotalRequests() (gas: 26401) -PaymentTokenOnRamp_getSubmittedPaymentRequestsUnitTest:test_getSubmittedPaymentRequests_StartPlusLimitGtTotalRequests() (gas: 24738) -PaymentTokenOnRamp_getSubmittedPaymentRequestsUnitTest:test_getSubmittedPaymentRequests_StartPlusLimitLteTotalRequests() (gas: 30305) +PaymentTokenOnRamp_getSubmittedPaymentRequestsUnitTest:test_getSubmittedPaymentRequests_StartPlusLimitGtTotalRequests() (gas: 21211) +PaymentTokenOnRamp_getSubmittedPaymentRequestsUnitTest:test_getSubmittedPaymentRequests_StartPlusLimitLteTotalRequests() (gas: 26435) PaymentTokenOnRamp_setFeeAggregatorUnitTest:test_baseTest() (gas: 166) PaymentTokenOnRamp_setFeeAggregatorUnitTest:test_baseUnitTest() (gas: 186) -PaymentTokenOnRamp_setFeeAggregatorUnitTest:test_setFeeAggregator_UpdatesFeeAggregator() (gas: 19473) +PaymentTokenOnRamp_setFeeAggregatorUnitTest:test_setFeeAggregator_UpdatesFeeAggregator() (gas: 19142) PaymentTokenOnRamp_submitPaymentRequestsUnitTest:test_baseTest() (gas: 188) PaymentTokenOnRamp_submitPaymentRequestsUnitTest:test_baseUnitTest() (gas: 186) -PaymentTokenOnRamp_submitPaymentRequestsUnitTest:test_submitPaymentRequests_MultipleRequests() (gas: 228703) -PaymentTokenOnRamp_submitPaymentRequestsUnitTest:test_submitPaymentRequests_SingleRequestWithMultipleTokens() (gas: 168185) -PaymentTokenOnRamp_submitPaymentRequestsUnitTest:test_submitPaymentRequests_SingleRequestWithSingleToken() (gas: 133848) +PaymentTokenOnRamp_submitPaymentRequestsUnitTest:test_submitPaymentRequests_MultipleRequests() (gas: 228059) +PaymentTokenOnRamp_submitPaymentRequestsUnitTest:test_submitPaymentRequests_SingleRequestWithMultipleTokens() (gas: 167863) +PaymentTokenOnRamp_submitPaymentRequestsUnitTest:test_submitPaymentRequests_SingleRequestWithSingleToken() (gas: 133526) PaymentTokenOnRamp_withdrawFeeTokensTest:test_baseTest() (gas: 188) PaymentTokenOnRamp_withdrawFeeTokensTest:test_baseUnitTest() (gas: 186) -PaymentTokenOnRamp_withdrawFeeTokensTest:test_withdrawFeeTokens_MultipleTokens() (gas: 95592) -PaymentTokenOnRamp_withdrawFeeTokensTest:test_withdrawFeeTokens_SingleToken() (gas: 57556) -PaymentTokenOnRamp_withdrawFeeTokensTest:test_withdrawFeeTokens_ZeroAmount() (gas: 37635) +PaymentTokenOnRamp_withdrawFeeTokensTest:test_withdrawFeeTokens_MultipleTokens() (gas: 94262) +PaymentTokenOnRamp_withdrawFeeTokensTest:test_withdrawFeeTokens_SingleToken() (gas: 56891) +PaymentTokenOnRamp_withdrawFeeTokensTest:test_withdrawFeeTokens_ZeroAmount() (gas: 36633) RevokeRoleUnitTests:test_baseTest() (gas: 188) RevokeRoleUnitTests:test_baseUnitTest() (gas: 164) -RevokeRoleUnitTests:test_revokeRole_ShouldEnumerateRoleAfterRevoking() (gas: 97635) +RevokeRoleUnitTests:test_revokeRole_ShouldEnumerateRoleAfterRevoking() (gas: 96834) SupportsInterfaceUnitTests:test_baseTest() (gas: 166) SupportsInterfaceUnitTests:test_baseUnitTest() (gas: 186) -SupportsInterfaceUnitTests:test_supportsInterface() (gas: 20912) \ No newline at end of file +SupportsInterfaceUnitTests:test_supportsInterface() (gas: 17121) \ No newline at end of file diff --git a/contracts/gas-snapshots/shared.gas-snapshot b/contracts/gas-snapshots/shared.gas-snapshot index f4ec4da70a..710af9afa3 100644 --- a/contracts/gas-snapshots/shared.gas-snapshot +++ b/contracts/gas-snapshots/shared.gas-snapshot @@ -8,114 +8,114 @@ AuthorizedCallers_applyAuthorizedCallerUpdates:test_OnlyRemove_Success() (gas: 4 AuthorizedCallers_applyAuthorizedCallerUpdates:test_OnlyRemove_Success() (gas: 44947) AuthorizedCallers_applyAuthorizedCallerUpdates:test_RemoveThenAdd_Success() (gas: 57043) AuthorizedCallers_applyAuthorizedCallerUpdates:test_RemoveThenAdd_Success() (gas: 57043) -AuthorizedCallers_applyAuthorizedCallerUpdates:test_SkipRemove_Success() (gas: 31986) -AuthorizedCallers_applyAuthorizedCallerUpdates:test_SkipRemove_Success() (gas: 31986) +AuthorizedCallers_applyAuthorizedCallerUpdates:test_SkipRemove_Success() (gas: 31640) +AuthorizedCallers_applyAuthorizedCallerUpdates:test_SkipRemove_Success() (gas: 31640) AuthorizedCallers_applyAuthorizedCallerUpdates:test_ZeroAddressNotAllowed_Revert() (gas: 64406) AuthorizedCallers_applyAuthorizedCallerUpdates:test_ZeroAddressNotAllowed_Revert() (gas: 64406) AuthorizedCallers_constructor:test_ZeroAddressNotAllowed_Revert() (gas: 64383) AuthorizedCallers_constructor:test_ZeroAddressNotAllowed_Revert() (gas: 64383) AuthorizedCallers_constructor:test_constructor_Success() (gas: 683090) AuthorizedCallers_constructor:test_constructor_Success() (gas: 683090) -BurnMintERC20PausableFreezableTransparentTest:test_Freeze() (gas: 46647) -BurnMintERC20PausableFreezableTransparentTest:test_Freeze_EvenWhenImplementationIsPaused() (gas: 77916) -BurnMintERC20PausableFreezableTransparentTest:test_Unfreeze() (gas: 176325) -BurnMintERC20PausableFreezableTransparentTest:test_Unfreeze_EvenWhenImplementationIsPaused() (gas: 63330) -BurnMintERC20PausableFreezableUUPSTest:test_Freeze() (gas: 46606) -BurnMintERC20PausableFreezableUUPSTest:test_Freeze_EvenWhenImplementationIsPaused() (gas: 77811) -BurnMintERC20PausableFreezableUUPSTest:test_Unfreeze() (gas: 176106) -BurnMintERC20PausableFreezableUUPSTest:test_Unfreeze_EvenWhenImplementationIsPaused() (gas: 63161) -BurnMintERC20PausableTransparentTest:test_Pause() (gas: 47026) -BurnMintERC20PausableTransparentTest:test_Unpause() (gas: 121304) -BurnMintERC20PausableUUPSTest:test_Pause() (gas: 46940) -BurnMintERC20PausableUUPSTest:test_Unpause() (gas: 121017) -BurnMintERC20PausableUUPS_upgrade:test_Upgrade() (gas: 3328800) -BurnMintERC20TransparentTest:test_Approve() (gas: 100501) -BurnMintERC20TransparentTest:test_Burn() (gas: 92971) -BurnMintERC20TransparentTest:test_BurnFrom() (gas: 93665) -BurnMintERC20TransparentTest:test_BurnFrom_alias() (gas: 93689) -BurnMintERC20TransparentTest:test_GetCCIPAdmin() (gas: 15492) -BurnMintERC20TransparentTest:test_GrantMintAndBurnRoles() (gas: 88384) -BurnMintERC20TransparentTest:test_Initialize() (gas: 38479) -BurnMintERC20TransparentTest:test_Initialize_WithPreMint() (gas: 3262502) -BurnMintERC20TransparentTest:test_Mint() (gas: 75675) -BurnMintERC20TransparentTest:test_SetCCIPAdmin() (gas: 29936) -BurnMintERC20TransparentTest:test_SupportsInterface() (gas: 20305) -BurnMintERC20UUPSTest:test_Approve() (gas: 100233) -BurnMintERC20UUPSTest:test_Burn() (gas: 92661) -BurnMintERC20UUPSTest:test_BurnFrom() (gas: 93245) -BurnMintERC20UUPSTest:test_BurnFrom_alias() (gas: 93247) -BurnMintERC20UUPSTest:test_GetCCIPAdmin() (gas: 15495) -BurnMintERC20UUPSTest:test_GrantMintAndBurnRoles() (gas: 87961) -BurnMintERC20UUPSTest:test_Initialize() (gas: 43227) -BurnMintERC20UUPSTest:test_Initialize_WithPreMint() (gas: 3145420) -BurnMintERC20UUPSTest:test_Mint() (gas: 75473) -BurnMintERC20UUPSTest:test_ProxiableUUID() (gas: 2820627) -BurnMintERC20UUPSTest:test_SetCCIPAdmin() (gas: 29807) -BurnMintERC20UUPSTest:test_SupportsInterface() (gas: 22038) -BurnMintERC20_approve:test_approve() (gas: 57656) -BurnMintERC20_burn:test_BasicBurn() (gas: 153602) -BurnMintERC20_burnFrom:test_BurnFrom() (gas: 57995) -BurnMintERC20_burnFromAlias:test_burn() (gas: 58039) -BurnMintERC20_constructor:test_Constructor() (gas: 1694947) -BurnMintERC20_getCCIPAdmin:test_getCCIPAdmin() (gas: 10548) -BurnMintERC20_getCCIPAdmin:test_setCCIPAdmin() (gas: 21584) -BurnMintERC20_grantMintAndBurnRoles:test_GrantMintAndBurnRoles() (gas: 79130) -BurnMintERC20_mint:test_mint() (gas: 101843) -BurnMintERC20_supportsInterface:test_SupportsInterface() (gas: 11218) -BurnMintERC20_transfer:test_transfer() (gas: 42338) -BurnMintERC677_approve:testApproveSuccess() (gas: 55516) +BurnMintERC20PausableFreezableTransparentTest:test_Freeze() (gas: 46324) +BurnMintERC20PausableFreezableTransparentTest:test_Freeze_EvenWhenImplementationIsPaused() (gas: 77270) +BurnMintERC20PausableFreezableTransparentTest:test_Unfreeze() (gas: 175663) +BurnMintERC20PausableFreezableTransparentTest:test_Unfreeze_EvenWhenImplementationIsPaused() (gas: 62353) +BurnMintERC20PausableFreezableUUPSTest:test_Freeze() (gas: 46283) +BurnMintERC20PausableFreezableUUPSTest:test_Freeze_EvenWhenImplementationIsPaused() (gas: 77165) +BurnMintERC20PausableFreezableUUPSTest:test_Unfreeze() (gas: 175444) +BurnMintERC20PausableFreezableUUPSTest:test_Unfreeze_EvenWhenImplementationIsPaused() (gas: 62184) +BurnMintERC20PausableTransparentTest:test_Pause() (gas: 46703) +BurnMintERC20PausableTransparentTest:test_Unpause() (gas: 120642) +BurnMintERC20PausableUUPSTest:test_Pause() (gas: 46617) +BurnMintERC20PausableUUPSTest:test_Unpause() (gas: 120355) +BurnMintERC20PausableUUPS_upgrade:test_Upgrade() (gas: 3327476) +BurnMintERC20TransparentTest:test_Approve() (gas: 100169) +BurnMintERC20TransparentTest:test_Burn() (gas: 92304) +BurnMintERC20TransparentTest:test_BurnFrom() (gas: 93001) +BurnMintERC20TransparentTest:test_BurnFrom_alias() (gas: 93025) +BurnMintERC20TransparentTest:test_GetCCIPAdmin() (gas: 12646) +BurnMintERC20TransparentTest:test_GrantMintAndBurnRoles() (gas: 87076) +BurnMintERC20TransparentTest:test_Initialize() (gas: 37149) +BurnMintERC20TransparentTest:test_Initialize_WithPreMint() (gas: 3259338) +BurnMintERC20TransparentTest:test_Mint() (gas: 75011) +BurnMintERC20TransparentTest:test_SetCCIPAdmin() (gas: 29599) +BurnMintERC20TransparentTest:test_SupportsInterface() (gas: 16132) +BurnMintERC20UUPSTest:test_Approve() (gas: 99901) +BurnMintERC20UUPSTest:test_Burn() (gas: 91994) +BurnMintERC20UUPSTest:test_BurnFrom() (gas: 92581) +BurnMintERC20UUPSTest:test_BurnFrom_alias() (gas: 92583) +BurnMintERC20UUPSTest:test_GetCCIPAdmin() (gas: 12649) +BurnMintERC20UUPSTest:test_GrantMintAndBurnRoles() (gas: 86653) +BurnMintERC20UUPSTest:test_Initialize() (gas: 41585) +BurnMintERC20UUPSTest:test_Initialize_WithPreMint() (gas: 3142256) +BurnMintERC20UUPSTest:test_Mint() (gas: 74809) +BurnMintERC20UUPSTest:test_ProxiableUUID() (gas: 2817784) +BurnMintERC20UUPSTest:test_SetCCIPAdmin() (gas: 29470) +BurnMintERC20UUPSTest:test_SupportsInterface() (gas: 17597) +BurnMintERC20_approve:test_approve() (gas: 57126) +BurnMintERC20_burn:test_BasicBurn() (gas: 153397) +BurnMintERC20_burnFrom:test_BurnFrom() (gas: 57730) +BurnMintERC20_burnFromAlias:test_burn() (gas: 57774) +BurnMintERC20_constructor:test_Constructor() (gas: 1693253) +BurnMintERC20_getCCIPAdmin:test_getCCIPAdmin() (gas: 7714) +BurnMintERC20_getCCIPAdmin:test_setCCIPAdmin() (gas: 21259) +BurnMintERC20_grantMintAndBurnRoles:test_GrantMintAndBurnRoles() (gas: 77822) +BurnMintERC20_mint:test_mint() (gas: 101509) +BurnMintERC20_supportsInterface:test_SupportsInterface() (gas: 7749) +BurnMintERC20_transfer:test_transfer() (gas: 39501) +BurnMintERC677_approve:testApproveSuccess() (gas: 55251) BurnMintERC677_approve:testInvalidAddressReverts() (gas: 10657) -BurnMintERC677_burn:testBasicBurnSuccess() (gas: 172096) +BurnMintERC677_burn:testBasicBurnSuccess() (gas: 171892) BurnMintERC677_burn:testBurnFromZeroAddressReverts() (gas: 47201) BurnMintERC677_burn:testExceedsBalanceReverts() (gas: 21841) BurnMintERC677_burn:testSenderNotBurnerReverts() (gas: 13359) -BurnMintERC677_burnFrom:testBurnFromSuccess() (gas: 57959) +BurnMintERC677_burnFrom:testBurnFromSuccess() (gas: 57694) BurnMintERC677_burnFrom:testExceedsBalanceReverts() (gas: 35864) BurnMintERC677_burnFrom:testInsufficientAllowanceReverts() (gas: 21849) BurnMintERC677_burnFrom:testSenderNotBurnerReverts() (gas: 13359) -BurnMintERC677_burnFromAlias:testBurnFromSuccess() (gas: 57985) +BurnMintERC677_burnFromAlias:testBurnFromSuccess() (gas: 57720) BurnMintERC677_burnFromAlias:testExceedsBalanceReverts() (gas: 35880) BurnMintERC677_burnFromAlias:testInsufficientAllowanceReverts() (gas: 21869) BurnMintERC677_burnFromAlias:testSenderNotBurnerReverts() (gas: 13379) -BurnMintERC677_constructor:testConstructorSuccess() (gas: 1680541) -BurnMintERC677_decreaseApproval:testDecreaseApprovalSuccess() (gas: 31069) -BurnMintERC677_grantMintAndBurnRoles:testGrantMintAndBurnRolesSuccess() (gas: 121312) -BurnMintERC677_grantRole:testGrantBurnAccessSuccess() (gas: 53432) +BurnMintERC677_constructor:testConstructorSuccess() (gas: 1679855) +BurnMintERC677_decreaseApproval:testDecreaseApprovalSuccess() (gas: 28537) +BurnMintERC677_grantMintAndBurnRoles:testGrantMintAndBurnRolesSuccess() (gas: 120001) +BurnMintERC677_grantRole:testGrantBurnAccessSuccess() (gas: 52651) BurnMintERC677_grantRole:testGrantManySuccess() (gas: 937883) -BurnMintERC677_grantRole:testGrantMintAccessSuccess() (gas: 94313) -BurnMintERC677_increaseApproval:testIncreaseApprovalSuccess() (gas: 44076) -BurnMintERC677_mint:testBasicMintSuccess() (gas: 149693) +BurnMintERC677_grantRole:testGrantMintAccessSuccess() (gas: 93532) +BurnMintERC677_increaseApproval:testIncreaseApprovalSuccess() (gas: 40911) +BurnMintERC677_mint:testBasicMintSuccess() (gas: 149359) BurnMintERC677_mint:testMaxSupplyExceededReverts() (gas: 50363) BurnMintERC677_mint:testSenderNotMinterReverts() (gas: 11195) -BurnMintERC677_supportsInterface:testConstructorSuccess() (gas: 12476) +BurnMintERC677_supportsInterface:testConstructorSuccess() (gas: 8685) BurnMintERC677_transfer:testInvalidAddressReverts() (gas: 10633) -BurnMintERC677_transfer:testTransferSuccess() (gas: 42299) -CallWithExactGasZKSync__callWithExactGasSafeReturnData:test__callWithExactGasSafeReturnData_FailsWhen_NotEnoughGasForCall() (gas: 18504) -CallWithExactGasZKSync__callWithExactGasSafeReturnData:test__callWithExactGasSafeReturnData_Success() (gas: 27820) -CallWithExactGasZKSync__callWithExactGasSafeReturnData:test__callWithExactGasSafeReturnData_TruncatesData() (gas: 75368) -CallWithExactGas__callWithExactGas:test_CallWithExactGasReceiverErrorSuccess() (gas: 65903) -CallWithExactGas__callWithExactGas:test_CallWithExactGasSafeReturnDataExactGas() (gas: 18307) +BurnMintERC677_transfer:testTransferSuccess() (gas: 39462) +CallWithExactGasZKSync__callWithExactGasSafeReturnData:test__callWithExactGasSafeReturnData_FailsWhen_NotEnoughGasForCall() (gas: 13412) +CallWithExactGasZKSync__callWithExactGasSafeReturnData:test__callWithExactGasSafeReturnData_Success() (gas: 25244) +CallWithExactGasZKSync__callWithExactGasSafeReturnData:test__callWithExactGasSafeReturnData_TruncatesData() (gas: 70852) +CallWithExactGas__callWithExactGas:test_CallWithExactGasReceiverErrorSuccess() (gas: 65583) +CallWithExactGas__callWithExactGas:test_CallWithExactGasSafeReturnDataExactGas() (gas: 17973) CallWithExactGas__callWithExactGas:test_NoContractReverts() (gas: 11542) -CallWithExactGas__callWithExactGas:test_NoGasForCallExactCheckReverts() (gas: 15766) -CallWithExactGas__callWithExactGas:test_NotEnoughGasForCallReverts() (gas: 16224) -CallWithExactGas__callWithExactGasEvenIfTargetIsNoContract:test_CallWithExactGasEvenIfTargetIsNoContractExactGasSuccess() (gas: 20056) -CallWithExactGas__callWithExactGasEvenIfTargetIsNoContract:test_CallWithExactGasEvenIfTargetIsNoContractReceiverErrorSuccess() (gas: 66415) -CallWithExactGas__callWithExactGasEvenIfTargetIsNoContract:test_NoContractSuccess() (gas: 12945) -CallWithExactGas__callWithExactGasEvenIfTargetIsNoContract:test_NoGasForCallExactCheckReturnFalseSuccess() (gas: 12983) -CallWithExactGas__callWithExactGasEvenIfTargetIsNoContract:test_NotEnoughGasForCallReturnsFalseSuccess() (gas: 13300) -CallWithExactGas__callWithExactGasSafeReturnData:test_CallWithExactGasSafeReturnDataExactGas() (gas: 20314) +CallWithExactGas__callWithExactGas:test_NoGasForCallExactCheckReverts() (gas: 15114) +CallWithExactGas__callWithExactGas:test_NotEnoughGasForCallReverts() (gas: 15572) +CallWithExactGas__callWithExactGasEvenIfTargetIsNoContract:test_CallWithExactGasEvenIfTargetIsNoContractExactGasSuccess() (gas: 19087) +CallWithExactGas__callWithExactGasEvenIfTargetIsNoContract:test_CallWithExactGasEvenIfTargetIsNoContractReceiverErrorSuccess() (gas: 65761) +CallWithExactGas__callWithExactGasEvenIfTargetIsNoContract:test_NoContractSuccess() (gas: 9799) +CallWithExactGas__callWithExactGasEvenIfTargetIsNoContract:test_NoGasForCallExactCheckReturnFalseSuccess() (gas: 9498) +CallWithExactGas__callWithExactGasEvenIfTargetIsNoContract:test_NotEnoughGasForCallReturnsFalseSuccess() (gas: 9815) +CallWithExactGas__callWithExactGasSafeReturnData:test_CallWithExactGasSafeReturnDataExactGas() (gas: 18968) CallWithExactGas__callWithExactGasSafeReturnData:test_NoContractReverts() (gas: 13927) -CallWithExactGas__callWithExactGasSafeReturnData:test_NoGasForCallExactCheckReverts() (gas: 16117) -CallWithExactGas__callWithExactGasSafeReturnData:test_NotEnoughGasForCallReverts() (gas: 16530) -CallWithExactGas__callWithExactGasSafeReturnData:test_callWithExactGasSafeReturnData_ThrowOOGError_Revert() (gas: 36738) +CallWithExactGas__callWithExactGasSafeReturnData:test_NoGasForCallExactCheckReverts() (gas: 15465) +CallWithExactGas__callWithExactGasSafeReturnData:test_NotEnoughGasForCallReverts() (gas: 15878) +CallWithExactGas__callWithExactGasSafeReturnData:test_callWithExactGasSafeReturnData_ThrowOOGError_Revert() (gas: 36017) Ownable2Step_acceptOwnership:test_acceptOwnership_MustBeProposedOwner_reverts() (gas: 10360) -Ownable2Step_acceptOwnership:test_acceptOwnership_success() (gas: 31084) +Ownable2Step_acceptOwnership:test_acceptOwnership_success() (gas: 30561) Ownable2Step_constructor:test_constructor_OwnerCannotBeZero_reverts() (gas: 35858) -Ownable2Step_constructor:test_constructor_success() (gas: 10428) +Ownable2Step_constructor:test_constructor_success() (gas: 7594) Ownable2Step_onlyOwner:test_onlyOwner_OnlyCallableByOwner_reverts() (gas: 10748) Ownable2Step_onlyOwner:test_onlyOwner_success() (gas: 7506) Ownable2Step_transferOwnership:test_transferOwnership_CannotTransferToSelf_reverts() (gas: 10501) -Ownable2Step_transferOwnership:test_transferOwnership_success() (gas: 30136) +Ownable2Step_transferOwnership:test_transferOwnership_success() (gas: 29878) SortedSetValidationUtil_CheckIsValidUniqueSubsetTest:test__checkIsValidUniqueSubset_EmptySubset_Reverts() (gas: 5208) SortedSetValidationUtil_CheckIsValidUniqueSubsetTest:test__checkIsValidUniqueSubset_EmptySuperset_Reverts() (gas: 4535) SortedSetValidationUtil_CheckIsValidUniqueSubsetTest:test__checkIsValidUniqueSubset_HasDuplicates_Reverts() (gas: 7769) diff --git a/contracts/package.json b/contracts/package.json index 7585c9584c..cdcfb8e99a 100644 --- a/contracts/package.json +++ b/contracts/package.json @@ -53,7 +53,7 @@ "solhint": "^6.2.4", "solhint-plugin-chainlink-solidity": "github:smartcontractkit/chainlink-solhint-rules#v1.2.1", "tsx": "^4.23.12", - "forge-std": "github:foundry-rs/forge-std#v1.9.7" + "forge-std": "github:foundry-rs/forge-std#v1.16.2" }, "dependencies": { "@arbitrum/nitro-contracts": "3.0.0", diff --git a/contracts/pnpm-lock.yaml b/contracts/pnpm-lock.yaml index 5e8f97302d..1dc3f72bf0 100644 --- a/contracts/pnpm-lock.yaml +++ b/contracts/pnpm-lock.yaml @@ -60,8 +60,8 @@ importers: specifier: ^1.0.0 version: 1.0.0 forge-std: - specifier: github:foundry-rs/forge-std#v1.9.7 - version: https://codeload.github.com/foundry-rs/forge-std/tar.gz/77041d2ce690e692d6e03cc812b57d1ddaa4d505 + specifier: github:foundry-rs/forge-std#v1.16.2 + version: https://codeload.github.com/foundry-rs/forge-std/tar.gz/bf647bd6046f2f7da30d0c2bf435e5c76a780c1b hardhat: specifier: ^3.13.0 version: 3.13.0 @@ -849,9 +849,9 @@ packages: find-yarn-workspace-root@2.0.0: resolution: {integrity: sha512-1IMnbjt4KzsQfnhnzNd8wUEgXZ44IzZaZmnLYx7D5FZlaHt2gW20Cri8Q+E/t5tIj4+epTBub+2Zxu/vNILzqQ==} - forge-std@https://codeload.github.com/foundry-rs/forge-std/tar.gz/77041d2ce690e692d6e03cc812b57d1ddaa4d505: - resolution: {gitHosted: true, integrity: sha512-AGU8gagr4jpMjZH/XWQlHyX0RdsErn86kGy34EpQYo07olNUIzPlOvo+wVzoR1RqaI3HmXsrXNQJd2QQD5PtjQ==, tarball: https://codeload.github.com/foundry-rs/forge-std/tar.gz/77041d2ce690e692d6e03cc812b57d1ddaa4d505} - version: 1.9.7 + forge-std@https://codeload.github.com/foundry-rs/forge-std/tar.gz/bf647bd6046f2f7da30d0c2bf435e5c76a780c1b: + resolution: {gitHosted: true, integrity: sha512-oHf+awjQrrLSzWgSdQv6exE1+0cmCHIxGGmzQJ9pX5F/pEQq1yHGwfkd++cC1lF7z9edarEX8GgHL5nq3MaF8A==, tarball: https://codeload.github.com/foundry-rs/forge-std/tar.gz/bf647bd6046f2f7da30d0c2bf435e5c76a780c1b} + version: 1.16.2 form-data-encoder@2.1.4: resolution: {integrity: sha512-yDYSgNMraqvnxiEXO4hi88+YZxaHC6QKzb5N84iRCTDeRO7ZALpir/lVmf/uXUhnwUr2O4HU8s/n6x+yNjQkHw==, tarball: https://registry.npmjs.org/form-data-encoder/-/form-data-encoder-2.1.4.tgz} @@ -2498,7 +2498,7 @@ snapshots: dependencies: micromatch: 4.0.8 - forge-std@https://codeload.github.com/foundry-rs/forge-std/tar.gz/77041d2ce690e692d6e03cc812b57d1ddaa4d505: {} + forge-std@https://codeload.github.com/foundry-rs/forge-std/tar.gz/bf647bd6046f2f7da30d0c2bf435e5c76a780c1b: {} form-data-encoder@2.1.4: {} diff --git a/contracts/snapshots/DataFeedsCacheGasTest.json b/contracts/snapshots/DataFeedsCacheGasTest.json new file mode 100644 index 0000000000..7f0ce61933 --- /dev/null +++ b/contracts/snapshots/DataFeedsCacheGasTest.json @@ -0,0 +1,30 @@ +{ + "test_bundleDecimals_proxy_gas": "18742", + "test_decimals_proxy_gas": "13389", + "test_description_proxy_gas": "17161", + "test_getAnswer_proxy_gas": "15650", + "test_getRoundData_proxy_gas": "16427", + "test_getTimestamp_proxy_gas": "15653", + "test_latestAnswer_proxy_gas": "15005", + "test_latestBundleTimestamp_proxy_gas": "14942", + "test_latestBundle_proxy_gas": "16631", + "test_latestRoundData_proxy_gas": "18360", + "test_latestRound_proxy_gas": "15105", + "test_latestTimestamp_proxy_gas": "15081", + "test_removeDataIdMappingsForProxies1feed_gas": "19152", + "test_removeDataIdMappingsForProxies5feeds_gas": "55726", + "test_updateDataIdMappingsForProxies1feed_gas": "41733", + "test_updateDataIdMappingsForProxies5feeds_gas": "94263", + "test_write_onReport_prices_1_gas": "71259", + "test_write_onReport_prices_5_gas": "332760", + "test_write_removeFeedConfigs_1_gas": "67494", + "test_write_removeFeedConfigs_5_gas": "292926", + "test_write_setBundleFeedConfigs_1_gas": "280503", + "test_write_setBundleFeedConfigs_5_gas": "1292298", + "test_write_setBundleFeedConfigs_with_delete_1_gas": "115794", + "test_write_setBundleFeedConfigs_with_delete_5_gas": "468786", + "test_write_setDecimalFeedConfigs_1_gas": "215660", + "test_write_setDecimalFeedConfigs_5_gas": "976917", + "test_write_setDecimalFeedConfigs_with_delete_1_gas": "94866", + "test_write_setDecimalFeedConfigs_with_delete_5_gas": "372982" +} \ No newline at end of file From b733ccab5c6e2d2a6e76b4aa76ddcfd9a2d9b10b Mon Sep 17 00:00:00 2001 From: Rens Rooimans Date: Fri, 21 Aug 2026 11:23:55 +0200 Subject: [PATCH 5/9] use `--isolate` in gas snap --- contracts/GNUmakefile | 4 +- .../gas-snapshots/automation-cre.gas-snapshot | 68 +- .../gas-snapshots/data-feeds.gas-snapshot | 168 +- contracts/gas-snapshots/l2ep.gas-snapshot | 220 +- .../gas-snapshots/llo-feeds.gas-snapshot | 2164 ++++++++--------- .../operatorforwarder.gas-snapshot | 22 +- contracts/gas-snapshots/payments.gas-snapshot | 32 +- 7 files changed, 1339 insertions(+), 1339 deletions(-) diff --git a/contracts/GNUmakefile b/contracts/GNUmakefile index 66aa18ac35..76a162465d 100644 --- a/contracts/GNUmakefile +++ b/contracts/GNUmakefile @@ -16,11 +16,11 @@ ALL_FOUNDRY_PRODUCTS = automation-cre l2ep llo-feeds operatorforwarder payments # a static fuzz seed by default, flaky gas results per platform are still observed. .PHONY: snapshot snapshot: ## Make a snapshot for a specific product. - export FOUNDRY_PROFILE=$(FOUNDRY_PROFILE) && forge snapshot --nmt "test?(Fuzz|Fork|.*_RevertWhen)_.*" --snap gas-snapshots/$(FOUNDRY_PROFILE).gas-snapshot + export FOUNDRY_PROFILE=$(FOUNDRY_PROFILE) && forge snapshot --isolate --nmt "test?(Fuzz|Fork|.*_RevertWhen)_.*" --snap gas-snapshots/$(FOUNDRY_PROFILE).gas-snapshot .PHONY: snapshot-diff snapshot-diff: ## Make a snapshot for a specific product. - export FOUNDRY_PROFILE=$(FOUNDRY_PROFILE) && forge snapshot --nmt "test?(Fuzz|Fork|.*_RevertWhen)_.*" --diff gas-snapshots/$(FOUNDRY_PROFILE).gas-snapshot + export FOUNDRY_PROFILE=$(FOUNDRY_PROFILE) && forge snapshot --isolate --nmt "test?(Fuzz|Fork|.*_RevertWhen)_.*" --diff gas-snapshots/$(FOUNDRY_PROFILE).gas-snapshot .PHONY: snapshot-all diff --git a/contracts/gas-snapshots/automation-cre.gas-snapshot b/contracts/gas-snapshots/automation-cre.gas-snapshot index df4276677d..e2646339d9 100644 --- a/contracts/gas-snapshots/automation-cre.gas-snapshot +++ b/contracts/gas-snapshots/automation-cre.gas-snapshot @@ -1,37 +1,37 @@ -AutomationReceiverTest:test_getBlockNumberCheck_ReflectsState() (gas: 129124) -AutomationReceiverTest:test_getters_ReflectState() (gas: 13447) -AutomationReceiverTest:test_isCallAllowed_ReflectsState() (gas: 39661) -AutomationReceiverTest:test_onReport_AllowedCallExecutes() (gas: 111919) -AutomationReceiverTest:test_onReport_BlockNumberCheckDisabledAllowsOutOfOrder() (gas: 121378) -AutomationReceiverTest:test_onReport_BlockNumberCheckEqualBlockAccepted() (gas: 168525) -AutomationReceiverTest:test_onReport_BlockNumberCheckSnapshotUsesCurrentBlock() (gas: 168522) -AutomationReceiverTest:test_onReport_BlockNumberCheckWithExplicitFloor() (gas: 189978) -AutomationReceiverTest:test_onReport_CombinedIdentityAccepted() (gas: 2067844) -AutomationReceiverTest:test_onReport_EIP150TermEnsuresFullGasForwardedAtHighLimit() (gas: 108954) -AutomationReceiverTest:test_onReport_FailingCallDoesNotRevert() (gas: 89328) -AutomationReceiverTest:test_onReport_GasLimitZeroPreservesUnboundedBehavior() (gas: 89331) -AutomationReceiverTest:test_onReport_GasOverheadCorrectlyCoversNoOpConsumer() (gas: 109410) -AutomationReceiverTest:test_onReport_GasOverheadCoversWorstCaseGasBurningConsumer() (gas: 284043) -AutomationReceiverTest:test_onReport_InsufficientGasDoesNotAdvanceBlockNumber() (gas: 200202) -AutomationReceiverTest:test_onReport_OwnerAndNameSufficeWithoutWorkflowId() (gas: 2045714) -AutomationReceiverTest:test_onReport_PausedNonRetryableConsumesReport() (gas: 81333) -AutomationReceiverTest:test_onReport_RequiredIncludesEIP150Buffer() (gas: 83228) -AutomationReceiverTest:test_onReport_SufficientGasWithLimitSucceeds() (gas: 108896) -AutomationReceiverTest:test_onReport_WorkflowIdAloneSuffices() (gas: 2013124) -AutomationReceiverTest:test_paused_ReflectsState() (gas: 42352) -AutomationReceiverTest:test_retryableWhilePaused_ReflectsMode() (gas: 59677) -AutomationReceiverTest:test_setBlockNumberCheck_IsPerPair() (gas: 66426) -AutomationReceiverTest:test_setCallAllowed_RevocationSkipsCodeCheck() (gas: 13506) -AutomationReceiverTest:test_setConsumerGasLimit_IsPerPair() (gas: 44538) -AutomationReceiverTest:test_setConsumerGasLimit_SetAndGet() (gas: 29629) +AutomationReceiverTest:test_getBlockNumberCheck_ReflectsState() (gas: 301247) +AutomationReceiverTest:test_getters_ReflectState() (gas: 22447) +AutomationReceiverTest:test_isCallAllowed_ReflectsState() (gas: 71909) +AutomationReceiverTest:test_onReport_AllowedCallExecutes() (gas: 169979) +AutomationReceiverTest:test_onReport_BlockNumberCheckDisabledAllowsOutOfOrder() (gas: 221502) +AutomationReceiverTest:test_onReport_BlockNumberCheckEqualBlockAccepted() (gas: 298537) +AutomationReceiverTest:test_onReport_BlockNumberCheckSnapshotUsesCurrentBlock() (gas: 311746) +AutomationReceiverTest:test_onReport_BlockNumberCheckWithExplicitFloor() (gas: 437866) +AutomationReceiverTest:test_onReport_CombinedIdentityAccepted() (gas: 2395622) +AutomationReceiverTest:test_onReport_EIP150TermEnsuresFullGasForwardedAtHighLimit() (gas: 186098) +AutomationReceiverTest:test_onReport_FailingCallDoesNotRevert() (gas: 162056) +AutomationReceiverTest:test_onReport_GasLimitZeroPreservesUnboundedBehavior() (gas: 162059) +AutomationReceiverTest:test_onReport_GasOverheadCorrectlyCoversNoOpConsumer() (gas: 186542) +AutomationReceiverTest:test_onReport_GasOverheadCoversWorstCaseGasBurningConsumer() (gas: 378375) +AutomationReceiverTest:test_onReport_InsufficientGasDoesNotAdvanceBlockNumber() (gas: 369186) +AutomationReceiverTest:test_onReport_OwnerAndNameSufficeWithoutWorkflowId() (gas: 2348276) +AutomationReceiverTest:test_onReport_PausedNonRetryableConsumesReport() (gas: 153549) +AutomationReceiverTest:test_onReport_RequiredIncludesEIP150Buffer() (gas: 155872) +AutomationReceiverTest:test_onReport_SufficientGasWithLimitSucceeds() (gas: 186028) +AutomationReceiverTest:test_onReport_WorkflowIdAloneSuffices() (gas: 2278162) +AutomationReceiverTest:test_paused_ReflectsState() (gas: 112674) +AutomationReceiverTest:test_retryableWhilePaused_ReflectsMode() (gas: 148222) +AutomationReceiverTest:test_setBlockNumberCheck_IsPerPair() (gas: 96826) +AutomationReceiverTest:test_setCallAllowed_RevocationSkipsCodeCheck() (gas: 37014) +AutomationReceiverTest:test_setConsumerGasLimit_IsPerPair() (gas: 79310) +AutomationReceiverTest:test_setConsumerGasLimit_SetAndGet() (gas: 102010) AutomationReceiverTest:test_supportsInterface_ERC165() (gas: 5779) AutomationReceiverTest:test_supportsInterface_IReceiver() (gas: 5708) AutomationReceiverTest:test_supportsInterface_ReturnsFalseForUnknown() (gas: 5736) -AutomationReceiverTest:test_unpause_ResumesDelivery() (gas: 148714) -ReceiverTemplateTest:test_getters_ReflectState() (gas: 1083915) -ReceiverTemplateTest:test_onReport_AcceptsWhenMetadataMatches() (gas: 1156615) -ReceiverTemplateTest:test_setExpectedAuthor_ClearingAuthorWhileNameSetDoesNotRevert() (gas: 1059738) -ReceiverTemplateTest:test_setExpectedWorkflowName_CanBeSetWithoutAuthor() (gas: 1054619) -ReceiverTemplateTest:test_setExpectedWorkflowName_ClearWithEmptyString() (gas: 1038444) -ReceiverTemplateTest:test_setForwarderAddress_ZeroSucceedsAtTemplateLevel() (gas: 986324) -ReceiverTemplateTest:test_supportsInterface() (gas: 1002479) \ No newline at end of file +AutomationReceiverTest:test_unpause_ResumesDelivery() (gas: 290882) +ReceiverTemplateTest:test_getters_ReflectState() (gas: 1290731) +ReceiverTemplateTest:test_onReport_AcceptsWhenMetadataMatches() (gas: 1390055) +ReceiverTemplateTest:test_setExpectedAuthor_ClearingAuthorWhileNameSetDoesNotRevert() (gas: 1260330) +ReceiverTemplateTest:test_setExpectedWorkflowName_CanBeSetWithoutAuthor() (gas: 1199215) +ReceiverTemplateTest:test_setExpectedWorkflowName_ClearWithEmptyString() (gas: 1223472) +ReceiverTemplateTest:test_setForwarderAddress_ZeroSucceedsAtTemplateLevel() (gas: 1145560) +ReceiverTemplateTest:test_supportsInterface() (gas: 1123423) \ No newline at end of file diff --git a/contracts/gas-snapshots/data-feeds.gas-snapshot b/contracts/gas-snapshots/data-feeds.gas-snapshot index d0990dd84d..16e1b3d7ec 100644 --- a/contracts/gas-snapshots/data-feeds.gas-snapshot +++ b/contracts/gas-snapshots/data-feeds.gas-snapshot @@ -1,97 +1,97 @@ BundleAggregatorProxyTest:test_aggregator() (gas: 9785) BundleAggregatorProxyTest:test_bundleDecimals() (gas: 16300) -BundleAggregatorProxyTest:test_confirmAggregatorRevertNotProposed() (gas: 13155) -BundleAggregatorProxyTest:test_confirmAggregatorSuccess() (gas: 32435) +BundleAggregatorProxyTest:test_confirmAggregatorRevertNotProposed() (gas: 34359) +BundleAggregatorProxyTest:test_confirmAggregatorSuccess() (gas: 87417) BundleAggregatorProxyTest:test_description() (gas: 20305) BundleAggregatorProxyTest:test_latestBundle() (gas: 16946) BundleAggregatorProxyTest:test_latestBundleTimestamp() (gas: 15240) -BundleAggregatorProxyTest:test_proposeAggregator() (gas: 40942) +BundleAggregatorProxyTest:test_proposeAggregator() (gas: 64146) BundleAggregatorProxyTest:test_version() (gas: 10787) -DataFeedsCacheGasTest:test_bundleDecimals_proxy_gas() (gas: 22286) -DataFeedsCacheGasTest:test_decimals_proxy_gas() (gas: 16912) -DataFeedsCacheGasTest:test_description_proxy_gas() (gas: 20706) -DataFeedsCacheGasTest:test_getAnswer_proxy_gas() (gas: 19151) -DataFeedsCacheGasTest:test_getRoundData_proxy_gas() (gas: 19973) -DataFeedsCacheGasTest:test_getTimestamp_proxy_gas() (gas: 19156) -DataFeedsCacheGasTest:test_latestAnswer_proxy_gas() (gas: 18507) -DataFeedsCacheGasTest:test_latestBundleTimestamp_proxy_gas() (gas: 18484) -DataFeedsCacheGasTest:test_latestBundle_proxy_gas() (gas: 20135) -DataFeedsCacheGasTest:test_latestRoundData_proxy_gas() (gas: 21906) -DataFeedsCacheGasTest:test_latestRound_proxy_gas() (gas: 18628) -DataFeedsCacheGasTest:test_latestTimestamp_proxy_gas() (gas: 18627) -DataFeedsCacheGasTest:test_removeDataIdMappingsForProxies1feed_gas() (gas: 17873) -DataFeedsCacheGasTest:test_removeDataIdMappingsForProxies5feeds_gas() (gas: 43203) -DataFeedsCacheGasTest:test_updateDataIdMappingsForProxies1feed_gas() (gas: 45277) -DataFeedsCacheGasTest:test_updateDataIdMappingsForProxies5feeds_gas() (gas: 97781) -DataFeedsCacheGasTest:test_write_onReport_prices_1_gas() (gas: 74765) -DataFeedsCacheGasTest:test_write_onReport_prices_5_gas() (gas: 336286) -DataFeedsCacheGasTest:test_write_removeFeedConfigs_1_gas() (gas: 52598) -DataFeedsCacheGasTest:test_write_removeFeedConfigs_5_gas() (gas: 232944) -DataFeedsCacheGasTest:test_write_setBundleFeedConfigs_1_gas() (gas: 284044) -DataFeedsCacheGasTest:test_write_setBundleFeedConfigs_5_gas() (gas: 1295817) -DataFeedsCacheGasTest:test_write_setBundleFeedConfigs_with_delete_1_gas() (gas: 91336) -DataFeedsCacheGasTest:test_write_setBundleFeedConfigs_with_delete_5_gas() (gas: 373668) -DataFeedsCacheGasTest:test_write_setDecimalFeedConfigs_1_gas() (gas: 219180) -DataFeedsCacheGasTest:test_write_setDecimalFeedConfigs_5_gas() (gas: 980459) -DataFeedsCacheGasTest:test_write_setDecimalFeedConfigs_with_delete_1_gas() (gas: 74514) -DataFeedsCacheGasTest:test_write_setDecimalFeedConfigs_with_delete_5_gas() (gas: 297007) +DataFeedsCacheGasTest:test_bundleDecimals_proxy_gas() (gas: 24786) +DataFeedsCacheGasTest:test_decimals_proxy_gas() (gas: 19412) +DataFeedsCacheGasTest:test_description_proxy_gas() (gas: 23206) +DataFeedsCacheGasTest:test_getAnswer_proxy_gas() (gas: 21651) +DataFeedsCacheGasTest:test_getRoundData_proxy_gas() (gas: 22473) +DataFeedsCacheGasTest:test_getTimestamp_proxy_gas() (gas: 21656) +DataFeedsCacheGasTest:test_latestAnswer_proxy_gas() (gas: 21007) +DataFeedsCacheGasTest:test_latestBundleTimestamp_proxy_gas() (gas: 20984) +DataFeedsCacheGasTest:test_latestBundle_proxy_gas() (gas: 22635) +DataFeedsCacheGasTest:test_latestRoundData_proxy_gas() (gas: 24406) +DataFeedsCacheGasTest:test_latestRound_proxy_gas() (gas: 21128) +DataFeedsCacheGasTest:test_latestTimestamp_proxy_gas() (gas: 21127) +DataFeedsCacheGasTest:test_removeDataIdMappingsForProxies1feed_gas() (gas: 34569) +DataFeedsCacheGasTest:test_removeDataIdMappingsForProxies5feeds_gas() (gas: 57805) +DataFeedsCacheGasTest:test_updateDataIdMappingsForProxies1feed_gas() (gas: 67253) +DataFeedsCacheGasTest:test_updateDataIdMappingsForProxies5feeds_gas() (gas: 121189) +DataFeedsCacheGasTest:test_write_onReport_prices_1_gas() (gas: 97537) +DataFeedsCacheGasTest:test_write_onReport_prices_5_gas() (gas: 361062) +DataFeedsCacheGasTest:test_write_removeFeedConfigs_1_gas() (gas: 60735) +DataFeedsCacheGasTest:test_write_removeFeedConfigs_5_gas() (gas: 202622) +DataFeedsCacheGasTest:test_write_setBundleFeedConfigs_1_gas() (gas: 308360) +DataFeedsCacheGasTest:test_write_setBundleFeedConfigs_5_gas() (gas: 1325301) +DataFeedsCacheGasTest:test_write_setBundleFeedConfigs_with_delete_1_gas() (gas: 100792) +DataFeedsCacheGasTest:test_write_setBundleFeedConfigs_with_delete_5_gas() (gas: 330049) +DataFeedsCacheGasTest:test_write_setDecimalFeedConfigs_1_gas() (gas: 242784) +DataFeedsCacheGasTest:test_write_setDecimalFeedConfigs_5_gas() (gas: 1007119) +DataFeedsCacheGasTest:test_write_setDecimalFeedConfigs_with_delete_1_gas() (gas: 84774) +DataFeedsCacheGasTest:test_write_setDecimalFeedConfigs_with_delete_5_gas() (gas: 260776) DataFeedsCacheTest:testFuzzy_getDataType(bytes16,uint256) (runs: 256, μ: 9146, ~: 9146) DataFeedsCacheTest:testFuzzy_getDataTypeRevertOutOfBound(bytes16,uint256) (runs: 256, μ: 9269, ~: 9269) -DataFeedsCacheTest:testFuzzy_recoverTokensERC20Success(uint256) (runs: 256, μ: 76409, ~: 76409) -DataFeedsCacheTest:testFuzzy_recoverTokensNativeSuccess(uint256) (runs: 256, μ: 48096, ~: 48096) -DataFeedsCacheTest:test_bundleDecimals() (gas: 281597) -DataFeedsCacheTest:test_decimals() (gas: 221374) -DataFeedsCacheTest:test_description() (gas: 224355) -DataFeedsCacheTest:test_feedCanBeWrittenToByMultipleWorkflows() (gas: 216360) +DataFeedsCacheTest:testFuzzy_recoverTokensERC20Success(uint256) (runs: 256, μ: 148031, ~: 147925) +DataFeedsCacheTest:testFuzzy_recoverTokensNativeSuccess(uint256) (runs: 256, μ: 69693, ~: 69640) +DataFeedsCacheTest:test_bundleDecimals() (gas: 310041) +DataFeedsCacheTest:test_decimals() (gas: 244966) +DataFeedsCacheTest:test_description() (gas: 256447) +DataFeedsCacheTest:test_feedCanBeWrittenToByMultipleWorkflows() (gas: 252452) DataFeedsCacheTest:test_getDataIdForProxy() (gas: 12359) DataFeedsCacheTest:test_getDataType() (gas: 6039) -DataFeedsCacheTest:test_getFeedMetadata() (gas: 259937) +DataFeedsCacheTest:test_getFeedMetadata() (gas: 375969) DataFeedsCacheTest:test_getFeedMetadataRevertFeedNotConfigured() (gas: 13418) -DataFeedsCacheTest:test_getLatestAnswer1() (gas: 307550) -DataFeedsCacheTest:test_getLatestAnswer2() (gas: 577830) -DataFeedsCacheTest:test_getLatestBundle1() (gas: 409053) -DataFeedsCacheTest:test_getLatestBundle2() (gas: 778129) -DataFeedsCacheTest:test_getLatestByFeedId() (gas: 315658) +DataFeedsCacheTest:test_getLatestAnswer1() (gas: 357938) +DataFeedsCacheTest:test_getLatestAnswer2() (gas: 637986) +DataFeedsCacheTest:test_getLatestBundle1() (gas: 488249) +DataFeedsCacheTest:test_getLatestBundle2() (gas: 895585) +DataFeedsCacheTest:test_getLatestByFeedId() (gas: 392046) DataFeedsCacheTest:test_getWorkflowMetaData() (gas: 7015) -DataFeedsCacheTest:test_isFeedAdmin() (gas: 11114) -DataFeedsCacheTest:test_latestAnswer1() (gas: 313736) -DataFeedsCacheTest:test_latestAnswer2() (gas: 588541) -DataFeedsCacheTest:test_latestBundle1() (gas: 418316) -DataFeedsCacheTest:test_latestBundle2() (gas: 795005) -DataFeedsCacheTest:test_onReportInvalidPermission() (gas: 675249) -DataFeedsCacheTest:test_onReportRevertInvalidWorkflowName() (gas: 252344) -DataFeedsCacheTest:test_onReportRevertInvalidWorkflowOwner() (gas: 252374) -DataFeedsCacheTest:test_onReportStaleBundleReport() (gas: 815321) -DataFeedsCacheTest:test_onReportStaleDecimalReport() (gas: 635670) -DataFeedsCacheTest:test_onReportSuccess_BundleReportLength1() (gas: 402709) -DataFeedsCacheTest:test_onReportSuccess_BundleReportLength2() (gas: 765894) -DataFeedsCacheTest:test_onReportSuccess_DecimalReportLength1() (gas: 309736) -DataFeedsCacheTest:test_onReportSuccess_DecimalReportLength2() (gas: 579838) -DataFeedsCacheTest:test_onReportSuccess_EmptyBundleReport() (gas: 251195) -DataFeedsCacheTest:test_onReportSuccess_EmptyDecimalReport() (gas: 239595) -DataFeedsCacheTest:test_onReportSuccess_EmptyReport() (gas: 221438) -DataFeedsCacheTest:test_recoverTokensERC20RevertNoBalance() (gas: 19928) -DataFeedsCacheTest:test_recoverTokensNativeRevertNoBalance() (gas: 11489) -DataFeedsCacheTest:test_recoverTokensRevertUnauthorized() (gas: 13353) -DataFeedsCacheTest:test_removeDataIdMappingsForProxiesSuccess() (gas: 22186) -DataFeedsCacheTest:test_removeDataIdMappingsForProxiesSuccess_and_call_decimals() (gas: 24856) -DataFeedsCacheTest:test_removeFeedAdminSuccess() (gas: 27000) -DataFeedsCacheTest:test_removeFeedsRevertInvalidSender() (gas: 12166) -DataFeedsCacheTest:test_removeFeedsRevertNotConfiguredFeed() (gas: 20120) -DataFeedsCacheTest:test_removeFeedsSuccess() (gas: 193040) -DataFeedsCacheTest:test_setBundleFeedConfigsRevertInvalidConfigsLengthDecimals() (gas: 32379) -DataFeedsCacheTest:test_setBundleFeedConfigs_setAgainWithClear() (gas: 949953) -DataFeedsCacheTest:test_setDecimalFeedConfigs_setAgainWithClear() (gas: 735308) -DataFeedsCacheTest:test_setFeedAdminRevertZeroAddress() (gas: 11343) -DataFeedsCacheTest:test_setFeedConfigsRevertEmptyConfig() (gas: 55621) -DataFeedsCacheTest:test_setFeedConfigsRevertInvalidConfigsLengthDescriptions() (gas: 48286) -DataFeedsCacheTest:test_setFeedConfigsRevertInvalidWorkflowMetadata() (gas: 94046) -DataFeedsCacheTest:test_setFeedConfigsRevertUnauthorizedFeedAdmin() (gas: 43047) -DataFeedsCacheTest:test_setFeedConfigsRevertZeroDataId() (gas: 43199) -DataFeedsCacheTest:test_setFeedConfigsSuccess() (gas: 220704) +DataFeedsCacheTest:test_isFeedAdmin() (gas: 15614) +DataFeedsCacheTest:test_latestAnswer1() (gas: 364124) +DataFeedsCacheTest:test_latestAnswer2() (gas: 653197) +DataFeedsCacheTest:test_latestBundle1() (gas: 508012) +DataFeedsCacheTest:test_latestBundle2() (gas: 935461) +DataFeedsCacheTest:test_onReportInvalidPermission() (gas: 776625) +DataFeedsCacheTest:test_onReportRevertInvalidWorkflowName() (gas: 299248) +DataFeedsCacheTest:test_onReportRevertInvalidWorkflowOwner() (gas: 299278) +DataFeedsCacheTest:test_onReportStaleBundleReport() (gas: 916357) +DataFeedsCacheTest:test_onReportStaleDecimalReport() (gas: 726238) +DataFeedsCacheTest:test_onReportSuccess_BundleReportLength1() (gas: 452405) +DataFeedsCacheTest:test_onReportSuccess_BundleReportLength2() (gas: 819850) +DataFeedsCacheTest:test_onReportSuccess_DecimalReportLength1() (gas: 360124) +DataFeedsCacheTest:test_onReportSuccess_DecimalReportLength2() (gas: 631494) +DataFeedsCacheTest:test_onReportSuccess_EmptyBundleReport() (gas: 329695) +DataFeedsCacheTest:test_onReportSuccess_EmptyDecimalReport() (gas: 305467) +DataFeedsCacheTest:test_onReportSuccess_EmptyReport() (gas: 267030) +DataFeedsCacheTest:test_recoverTokensERC20RevertNoBalance() (gas: 41652) +DataFeedsCacheTest:test_recoverTokensNativeRevertNoBalance() (gas: 33033) +DataFeedsCacheTest:test_recoverTokensRevertUnauthorized() (gas: 35137) +DataFeedsCacheTest:test_removeDataIdMappingsForProxiesSuccess() (gas: 67778) +DataFeedsCacheTest:test_removeDataIdMappingsForProxiesSuccess_and_call_decimals() (gas: 72448) +DataFeedsCacheTest:test_removeFeedAdminSuccess() (gas: 78916) +DataFeedsCacheTest:test_removeFeedsRevertInvalidSender() (gas: 33698) +DataFeedsCacheTest:test_removeFeedsRevertNotConfiguredFeed() (gas: 65224) +DataFeedsCacheTest:test_removeFeedsSuccess() (gas: 356499) +DataFeedsCacheTest:test_setBundleFeedConfigsRevertInvalidConfigsLengthDecimals() (gas: 56747) +DataFeedsCacheTest:test_setBundleFeedConfigs_setAgainWithClear() (gas: 1019128) +DataFeedsCacheTest:test_setDecimalFeedConfigs_setAgainWithClear() (gas: 756093) +DataFeedsCacheTest:test_setFeedAdminRevertZeroAddress() (gas: 32675) +DataFeedsCacheTest:test_setFeedConfigsRevertEmptyConfig() (gas: 148937) +DataFeedsCacheTest:test_setFeedConfigsRevertInvalidConfigsLengthDescriptions() (gas: 96762) +DataFeedsCacheTest:test_setFeedConfigsRevertInvalidWorkflowMetadata() (gas: 234398) +DataFeedsCacheTest:test_setFeedConfigsRevertUnauthorizedFeedAdmin() (gas: 90823) +DataFeedsCacheTest:test_setFeedConfigsRevertZeroDataId() (gas: 90951) +DataFeedsCacheTest:test_setFeedConfigsSuccess() (gas: 244236) DataFeedsCacheTest:test_supportsInterface() (gas: 5794) -DataFeedsCacheTest:test_updateDataIdMappingsForProxiesRevertInvalidLengths() (gas: 12232) -DataFeedsCacheTest:test_updateDataIdMappingsForProxiesRevertUnauthorizedOwner() (gas: 13158) -DataFeedsCacheTest:test_updateDataIdMappingsForProxiesSuccess() (gas: 21331) -DataFeedsCacheTest:test_updateDataIdMappingsForProxies_and_RevertOnWrongCaller() (gas: 25804) -DataFeedsCacheTest:test_updateDataIdMappingsForProxies_and_call_decimals() (gas: 53758) \ No newline at end of file +DataFeedsCacheTest:test_updateDataIdMappingsForProxiesRevertInvalidLengths() (gas: 34636) +DataFeedsCacheTest:test_updateDataIdMappingsForProxiesRevertUnauthorizedOwner() (gas: 35254) +DataFeedsCacheTest:test_updateDataIdMappingsForProxiesSuccess() (gas: 43427) +DataFeedsCacheTest:test_updateDataIdMappingsForProxies_and_RevertOnWrongCaller() (gas: 47900) +DataFeedsCacheTest:test_updateDataIdMappingsForProxies_and_call_decimals() (gas: 117086) \ No newline at end of file diff --git a/contracts/gas-snapshots/l2ep.gas-snapshot b/contracts/gas-snapshots/l2ep.gas-snapshot index 0328a5afec..9702d1d399 100644 --- a/contracts/gas-snapshots/l2ep.gas-snapshot +++ b/contracts/gas-snapshots/l2ep.gas-snapshot @@ -1,114 +1,114 @@ -ArbitrumCrossDomainForwarder_AcceptL1Ownership:test_CallableByPendingL1Owner() (gas: 37299) -ArbitrumCrossDomainForwarder_AcceptL1Ownership:test_NotCallableByNonPendingOwners() (gas: 12954) -ArbitrumCrossDomainForwarder_Constructor:test_InitialState() (gas: 21137) -ArbitrumCrossDomainForwarder_Forward:test_Forward() (gas: 47761) -ArbitrumCrossDomainForwarder_Forward:test_ForwardRevert() (gas: 22090) -ArbitrumCrossDomainForwarder_Forward:test_NotCallableByUnknownAddress() (gas: 16083) -ArbitrumCrossDomainForwarder_TransferL1Ownership:test_CallableByL1Owner() (gas: 41434) -ArbitrumCrossDomainForwarder_TransferL1Ownership:test_CallableByL1OwnerOrZeroAddress() (gas: 19269) -ArbitrumCrossDomainForwarder_TransferL1Ownership:test_NotCallableByL2Owner() (gas: 18320) -ArbitrumCrossDomainForwarder_TransferL1Ownership:test_NotCallableByNonOwners() (gas: 13232) -ArbitrumCrossDomainGovernor_AcceptL1Ownership:test_CallableByPendingL1Owner() (gas: 37299) -ArbitrumCrossDomainGovernor_AcceptL1Ownership:test_NotCallableByNonPendingOwners() (gas: 12954) -ArbitrumCrossDomainGovernor_Constructor:test_InitialState() (gas: 21160) -ArbitrumCrossDomainGovernor_Forward:test_CallableByL2Owner() (gas: 49879) -ArbitrumCrossDomainGovernor_Forward:test_Forward() (gas: 47795) -ArbitrumCrossDomainGovernor_Forward:test_ForwardRevert() (gas: 24199) -ArbitrumCrossDomainGovernor_Forward:test_NotCallableByUnknownAddress() (gas: 18216) -ArbitrumCrossDomainGovernor_ForwardDelegate:test_BubbleUpRevert() (gas: 19272) -ArbitrumCrossDomainGovernor_ForwardDelegate:test_CallableByCrossDomainMessengerAddressOrL1Owner() (gas: 60718) -ArbitrumCrossDomainGovernor_ForwardDelegate:test_CallableByL2Owner() (gas: 62846) -ArbitrumCrossDomainGovernor_ForwardDelegate:test_NotCallableByUnknownAddress() (gas: 18271) -ArbitrumCrossDomainGovernor_ForwardDelegate:test_RevertsBatchWhenOneCallFails() (gas: 63919) -ArbitrumCrossDomainGovernor_TransferL1Ownership:test_CallableByL1Owner() (gas: 41434) -ArbitrumCrossDomainGovernor_TransferL1Ownership:test_CallableByL1OwnerOrZeroAddress() (gas: 19269) -ArbitrumCrossDomainGovernor_TransferL1Ownership:test_NotCallableByL2Owner() (gas: 18320) -ArbitrumCrossDomainGovernor_TransferL1Ownership:test_NotCallableByNonOwners() (gas: 13232) -ArbitrumSequencerUptimeFeed_AggregatorV3Interface:test_AggregatorV3Interface() (gas: 98747) +ArbitrumCrossDomainForwarder_AcceptL1Ownership:test_CallableByPendingL1Owner() (gas: 95585) +ArbitrumCrossDomainForwarder_AcceptL1Ownership:test_NotCallableByNonPendingOwners() (gas: 34018) +ArbitrumCrossDomainForwarder_Constructor:test_InitialState() (gas: 38637) +ArbitrumCrossDomainForwarder_Forward:test_Forward() (gas: 74617) +ArbitrumCrossDomainForwarder_Forward:test_ForwardRevert() (gas: 44246) +ArbitrumCrossDomainForwarder_Forward:test_NotCallableByUnknownAddress() (gas: 38063) +ArbitrumCrossDomainForwarder_TransferL1Ownership:test_CallableByL1Owner() (gas: 71366) +ArbitrumCrossDomainForwarder_TransferL1Ownership:test_CallableByL1OwnerOrZeroAddress() (gas: 46961) +ArbitrumCrossDomainForwarder_TransferL1Ownership:test_NotCallableByL2Owner() (gas: 48752) +ArbitrumCrossDomainForwarder_TransferL1Ownership:test_NotCallableByNonOwners() (gas: 34664) +ArbitrumCrossDomainGovernor_AcceptL1Ownership:test_CallableByPendingL1Owner() (gas: 95585) +ArbitrumCrossDomainGovernor_AcceptL1Ownership:test_NotCallableByNonPendingOwners() (gas: 34018) +ArbitrumCrossDomainGovernor_Constructor:test_InitialState() (gas: 38660) +ArbitrumCrossDomainGovernor_Forward:test_CallableByL2Owner() (gas: 76735) +ArbitrumCrossDomainGovernor_Forward:test_Forward() (gas: 74651) +ArbitrumCrossDomainGovernor_Forward:test_ForwardRevert() (gas: 46355) +ArbitrumCrossDomainGovernor_Forward:test_NotCallableByUnknownAddress() (gas: 40196) +ArbitrumCrossDomainGovernor_ForwardDelegate:test_BubbleUpRevert() (gas: 41160) +ArbitrumCrossDomainGovernor_ForwardDelegate:test_CallableByCrossDomainMessengerAddressOrL1Owner() (gas: 89666) +ArbitrumCrossDomainGovernor_ForwardDelegate:test_CallableByL2Owner() (gas: 91794) +ArbitrumCrossDomainGovernor_ForwardDelegate:test_NotCallableByUnknownAddress() (gas: 40251) +ArbitrumCrossDomainGovernor_ForwardDelegate:test_RevertsBatchWhenOneCallFails() (gas: 90691) +ArbitrumCrossDomainGovernor_TransferL1Ownership:test_CallableByL1Owner() (gas: 71366) +ArbitrumCrossDomainGovernor_TransferL1Ownership:test_CallableByL1OwnerOrZeroAddress() (gas: 46961) +ArbitrumCrossDomainGovernor_TransferL1Ownership:test_NotCallableByL2Owner() (gas: 48752) +ArbitrumCrossDomainGovernor_TransferL1Ownership:test_NotCallableByNonOwners() (gas: 34664) +ArbitrumSequencerUptimeFeed_AggregatorV3Interface:test_AggregatorV3Interface() (gas: 155627) ArbitrumSequencerUptimeFeed_AggregatorV3Interface:test_Return0WhenRoundDoesNotExistYet() (gas: 18270) ArbitrumSequencerUptimeFeed_Constants:test_InitialState() (gas: 5659) -ArbitrumSequencerUptimeFeed_ProtectReadsOnAggregatorV2V3InterfaceFunctions:test_AggregatorV2V3InterfaceAllowReadsIfConsumingContractIsWhitelisted() (gas: 590570) -ArbitrumSequencerUptimeFeed_ProtectReadsOnAggregatorV2V3InterfaceFunctions:test_AggregatorV2V3InterfaceDisallowReadsIfConsumingContractIsNotWhitelisted() (gas: 561681) -ArbitrumSequencerUptimeFeed_UpdateStatus:test_IgnoreOutOfOrderUpdates() (gas: 98915) -ArbitrumSequencerUptimeFeed_UpdateStatus:test_RevertIfNotL2CrossDomainMessengerAddr() (gas: 15442) -ArbitrumSequencerUptimeFeed_UpdateStatus:test_UpdateStatusWhenStatusChangeAndNoTimeChange() (gas: 113165) -ArbitrumSequencerUptimeFeed_UpdateStatus:test_UpdateStatusWhenStatusChangeAndTimeChange() (gas: 113248) -ArbitrumValidator_Validate:test_PostSequencerOffline() (gas: 73243) -BaseSequencerUptimeFeed_AggregatorV3Interface:test_AggregatorV3Interface_ReturnsValidData() (gas: 63178) -BaseSequencerUptimeFeed_AggregatorV3Interface:test_getAnswer_ReturnsValidAnswer() (gas: 56955) -BaseSequencerUptimeFeed_AggregatorV3Interface:test_getTimestamp_ReturnsValidTimestamp() (gas: 56817) -BaseSequencerUptimeFeed_Constructor:test_Constructor_InitialState() (gas: 21032) -BaseSequencerUptimeFeed_ProtectReadsOnAggregatorV2V3InterfaceFunctions:test_ProtectReads_AllowWhen_Whitelisted() (gas: 585341) -BaseSequencerUptimeFeed_ProtectReadsOnAggregatorV2V3InterfaceFunctions:test_ProtectReads_DisallowWhen_NotWhitelisted() (gas: 561692) -BaseSequencerUptimeFeed_UpdateStatus:test_updateStatus_IgnoreOutOfOrderUpdates() (gas: 67768) -BaseSequencerUptimeFeed_UpdateStatus:test_updateStatus_UpdateWhen_NoStatusChangeSameTimestamp() (gas: 73417) -BaseSequencerUptimeFeed_UpdateStatus:test_updateStatus_UpdateWhen_StatusChangeAndNoTimeChange() (gas: 93972) -BaseSequencerUptimeFeed_UpdateStatus:test_updateStatus_UpdateWhen_StatusChangeAndTimeChange() (gas: 94051) -BaseSequencerUptimeFeed_transferL1Sender:test_transferL1Sender_CorrectlyTransfersL1Sender() (gas: 1478301) -BaseValidator_Constructor:test_Constructor_EmitsWhen_ConstructorIsSuccessfull() (gas: 715556) -BaseValidator_GetAndSetGasLimit:test_GetAndSetGasLimit_CorrectlyHandlesGasLimit() (gas: 19448) -OptimismCrossDomainForwarder_AcceptL1Ownership:test_CallableByPendingL1Owner() (gas: 46693) -OptimismCrossDomainForwarder_AcceptL1Ownership:test_NotCallableByNonPendingOwners() (gas: 22033) -OptimismCrossDomainForwarder_Constructor:test_InitialState() (gas: 20973) -OptimismCrossDomainForwarder_Forward:test_Forward() (gas: 58095) -OptimismCrossDomainForwarder_Forward:test_ForwardRevert() (gas: 32410) -OptimismCrossDomainForwarder_Forward:test_NotCallableByUnknownAddress() (gas: 13895) -OptimismCrossDomainForwarder_TransferL1Ownership:test_CallableByL1Owner() (gas: 48811) -OptimismCrossDomainForwarder_TransferL1Ownership:test_CallableByL1OwnerOrZeroAddress() (gas: 28632) -OptimismCrossDomainForwarder_TransferL1Ownership:test_NotCallableByL2Owner() (gas: 16132) -OptimismCrossDomainForwarder_TransferL1Ownership:test_NotCallableByNonOwners() (gas: 11044) -OptimismCrossDomainGovernor_AcceptL1Ownership:test_CallableByPendingL1Owner() (gas: 46693) -OptimismCrossDomainGovernor_AcceptL1Ownership:test_NotCallableByNonPendingOwners() (gas: 22033) -OptimismCrossDomainGovernor_Constructor:test_InitialState() (gas: 20996) -OptimismCrossDomainGovernor_Forward:test_CallableByL2Owner() (gas: 47723) -OptimismCrossDomainGovernor_Forward:test_Forward() (gas: 58149) -OptimismCrossDomainGovernor_Forward:test_ForwardRevert() (gas: 32434) -OptimismCrossDomainGovernor_Forward:test_NotCallableByUnknownAddress() (gas: 16031) -OptimismCrossDomainGovernor_ForwardDelegate:test_BubbleUpRevert() (gas: 28984) -OptimismCrossDomainGovernor_ForwardDelegate:test_CallableByCrossDomainMessengerAddressOrL1Owner() (gas: 72772) -OptimismCrossDomainGovernor_ForwardDelegate:test_CallableByL2Owner() (gas: 72777) -OptimismCrossDomainGovernor_ForwardDelegate:test_NotCallableByUnknownAddress() (gas: 16086) -OptimismCrossDomainGovernor_ForwardDelegate:test_RevertsBatchWhenOneCallFails() (gas: 75679) -OptimismCrossDomainGovernor_TransferL1Ownership:test_CallableByL1Owner() (gas: 48811) -OptimismCrossDomainGovernor_TransferL1Ownership:test_CallableByL1OwnerOrZeroAddress() (gas: 28632) -OptimismCrossDomainGovernor_TransferL1Ownership:test_NotCallableByL2Owner() (gas: 16132) -OptimismCrossDomainGovernor_TransferL1Ownership:test_NotCallableByNonOwners() (gas: 11044) -OptimismSequencerUptimeFeed_Constructor:test_Constructor_InitialState() (gas: 1529872) -OptimismSequencerUptimeFeed_ValidateSender:test_ValidateSender_UpdateStatusWhen_StatusChangeAndNoTimeChange() (gas: 15374) -OptimismValidator_Validate:test_Validate_PostSequencerOffline() (gas: 79034) -OptimismValidator_Validate:test_Validate_PostSequencerStatus_NoStatusChange() (gas: 79040) -ScrollCrossDomainForwarder_AcceptL1Ownership:test_CallableByPendingL1Owner() (gas: 46780) -ScrollCrossDomainForwarder_AcceptL1Ownership:test_NotCallableByNonPendingOwners() (gas: 22083) -ScrollCrossDomainForwarder_Constructor:test_InitialState() (gas: 20965) -ScrollCrossDomainForwarder_Forward:test_Forward() (gas: 58159) -ScrollCrossDomainForwarder_Forward:test_ForwardRevert() (gas: 32466) -ScrollCrossDomainForwarder_Forward:test_NotCallableByUnknownAddress() (gas: 13895) -ScrollCrossDomainForwarder_TransferL1Ownership:test_CallableByL1Owner() (gas: 48874) -ScrollCrossDomainForwarder_TransferL1Ownership:test_CallableByL1OwnerOrZeroAddress() (gas: 28690) -ScrollCrossDomainForwarder_TransferL1Ownership:test_NotCallableByL2Owner() (gas: 16132) -ScrollCrossDomainForwarder_TransferL1Ownership:test_NotCallableByNonOwners() (gas: 11044) -ScrollCrossDomainGovernor_AcceptL1Ownership:test_CallableByPendingL1Owner() (gas: 46780) -ScrollCrossDomainGovernor_AcceptL1Ownership:test_NotCallableByNonPendingOwners() (gas: 22083) -ScrollCrossDomainGovernor_Constructor:test_InitialState() (gas: 20988) -ScrollCrossDomainGovernor_Forward:test_CallableByL2Owner() (gas: 47718) -ScrollCrossDomainGovernor_Forward:test_Forward() (gas: 58208) -ScrollCrossDomainGovernor_Forward:test_ForwardRevert() (gas: 32487) -ScrollCrossDomainGovernor_Forward:test_NotCallableByUnknownAddress() (gas: 16028) -ScrollCrossDomainGovernor_ForwardDelegate:test_BubbleUpRevert() (gas: 29042) -ScrollCrossDomainGovernor_ForwardDelegate:test_CallableByCrossDomainMessengerAddressOrL1Owner() (gas: 72836) -ScrollCrossDomainGovernor_ForwardDelegate:test_CallableByL2Owner() (gas: 72841) -ScrollCrossDomainGovernor_ForwardDelegate:test_NotCallableByUnknownAddress() (gas: 16083) -ScrollCrossDomainGovernor_ForwardDelegate:test_RevertsBatchWhenOneCallFails() (gas: 75744) -ScrollCrossDomainGovernor_TransferL1Ownership:test_CallableByL1Owner() (gas: 48874) -ScrollCrossDomainGovernor_TransferL1Ownership:test_CallableByL1OwnerOrZeroAddress() (gas: 28690) -ScrollCrossDomainGovernor_TransferL1Ownership:test_NotCallableByL2Owner() (gas: 16132) -ScrollCrossDomainGovernor_TransferL1Ownership:test_NotCallableByNonOwners() (gas: 11044) -ScrollSequencerUptimeFeed_Constructor:test_Constructor_InitialState_WhenValidL2XDomainMessenger() (gas: 1510893) -ScrollSequencerUptimeFeed_ValidateSender:test_ValidateSender_UpdateStatusWhen_StatusChangeAndNoTimeChange() (gas: 15364) -ScrollValidator_Validate:test_Validate_PostSequencerOffline() (gas: 82616) -ScrollValidator_Validate:test_Validate_PostSequencerStatus_NoStatusChange() (gas: 82626) +ArbitrumSequencerUptimeFeed_ProtectReadsOnAggregatorV2V3InterfaceFunctions:test_AggregatorV2V3InterfaceAllowReadsIfConsumingContractIsWhitelisted() (gas: 726044) +ArbitrumSequencerUptimeFeed_ProtectReadsOnAggregatorV2V3InterfaceFunctions:test_AggregatorV2V3InterfaceDisallowReadsIfConsumingContractIsNotWhitelisted() (gas: 680223) +ArbitrumSequencerUptimeFeed_UpdateStatus:test_IgnoreOutOfOrderUpdates() (gas: 178163) +ArbitrumSequencerUptimeFeed_UpdateStatus:test_RevertIfNotL2CrossDomainMessengerAddr() (gas: 36786) +ArbitrumSequencerUptimeFeed_UpdateStatus:test_UpdateStatusWhenStatusChangeAndNoTimeChange() (gas: 235813) +ArbitrumSequencerUptimeFeed_UpdateStatus:test_UpdateStatusWhenStatusChangeAndTimeChange() (gas: 235896) +ArbitrumValidator_Validate:test_PostSequencerOffline() (gas: 118263) +BaseSequencerUptimeFeed_AggregatorV3Interface:test_AggregatorV3Interface_ReturnsValidData() (gas: 120058) +BaseSequencerUptimeFeed_AggregatorV3Interface:test_getAnswer_ReturnsValidAnswer() (gas: 90835) +BaseSequencerUptimeFeed_AggregatorV3Interface:test_getTimestamp_ReturnsValidTimestamp() (gas: 90697) +BaseSequencerUptimeFeed_Constructor:test_Constructor_InitialState() (gas: 27532) +BaseSequencerUptimeFeed_ProtectReadsOnAggregatorV2V3InterfaceFunctions:test_ProtectReads_AllowWhen_Whitelisted() (gas: 720815) +BaseSequencerUptimeFeed_ProtectReadsOnAggregatorV2V3InterfaceFunctions:test_ProtectReads_DisallowWhen_NotWhitelisted() (gas: 680234) +BaseSequencerUptimeFeed_UpdateStatus:test_updateStatus_IgnoreOutOfOrderUpdates() (gas: 159516) +BaseSequencerUptimeFeed_UpdateStatus:test_updateStatus_UpdateWhen_NoStatusChangeSameTimestamp() (gas: 215177) +BaseSequencerUptimeFeed_UpdateStatus:test_updateStatus_UpdateWhen_StatusChangeAndNoTimeChange() (gas: 215520) +BaseSequencerUptimeFeed_UpdateStatus:test_updateStatus_UpdateWhen_StatusChangeAndTimeChange() (gas: 215599) +BaseSequencerUptimeFeed_transferL1Sender:test_transferL1Sender_CorrectlyTransfersL1Sender() (gas: 1702935) +BaseValidator_Constructor:test_Constructor_EmitsWhen_ConstructorIsSuccessfull() (gas: 824310) +BaseValidator_GetAndSetGasLimit:test_GetAndSetGasLimit_CorrectlyHandlesGasLimit() (gas: 49176) +OptimismCrossDomainForwarder_AcceptL1Ownership:test_CallableByPendingL1Owner() (gas: 137532) +OptimismCrossDomainForwarder_AcceptL1Ownership:test_NotCallableByNonPendingOwners() (gas: 44049) +OptimismCrossDomainForwarder_Constructor:test_InitialState() (gas: 36473) +OptimismCrossDomainForwarder_Forward:test_Forward() (gas: 85903) +OptimismCrossDomainForwarder_Forward:test_ForwardRevert() (gas: 55518) +OptimismCrossDomainForwarder_Forward:test_NotCallableByUnknownAddress() (gas: 35875) +OptimismCrossDomainForwarder_TransferL1Ownership:test_CallableByL1Owner() (gas: 79695) +OptimismCrossDomainForwarder_TransferL1Ownership:test_CallableByL1OwnerOrZeroAddress() (gas: 57276) +OptimismCrossDomainForwarder_TransferL1Ownership:test_NotCallableByL2Owner() (gas: 46564) +OptimismCrossDomainForwarder_TransferL1Ownership:test_NotCallableByNonOwners() (gas: 32476) +OptimismCrossDomainGovernor_AcceptL1Ownership:test_CallableByPendingL1Owner() (gas: 137532) +OptimismCrossDomainGovernor_AcceptL1Ownership:test_NotCallableByNonPendingOwners() (gas: 44049) +OptimismCrossDomainGovernor_Constructor:test_InitialState() (gas: 36496) +OptimismCrossDomainGovernor_Forward:test_CallableByL2Owner() (gas: 74579) +OptimismCrossDomainGovernor_Forward:test_Forward() (gas: 85957) +OptimismCrossDomainGovernor_Forward:test_ForwardRevert() (gas: 55542) +OptimismCrossDomainGovernor_Forward:test_NotCallableByUnknownAddress() (gas: 38011) +OptimismCrossDomainGovernor_ForwardDelegate:test_BubbleUpRevert() (gas: 51824) +OptimismCrossDomainGovernor_ForwardDelegate:test_CallableByCrossDomainMessengerAddressOrL1Owner() (gas: 102684) +OptimismCrossDomainGovernor_ForwardDelegate:test_CallableByL2Owner() (gas: 102689) +OptimismCrossDomainGovernor_ForwardDelegate:test_NotCallableByUnknownAddress() (gas: 38066) +OptimismCrossDomainGovernor_ForwardDelegate:test_RevertsBatchWhenOneCallFails() (gas: 103415) +OptimismCrossDomainGovernor_TransferL1Ownership:test_CallableByL1Owner() (gas: 79695) +OptimismCrossDomainGovernor_TransferL1Ownership:test_CallableByL1OwnerOrZeroAddress() (gas: 57276) +OptimismCrossDomainGovernor_TransferL1Ownership:test_NotCallableByL2Owner() (gas: 46564) +OptimismCrossDomainGovernor_TransferL1Ownership:test_NotCallableByNonOwners() (gas: 32476) +OptimismSequencerUptimeFeed_Constructor:test_Constructor_InitialState() (gas: 1701316) +OptimismSequencerUptimeFeed_ValidateSender:test_ValidateSender_UpdateStatusWhen_StatusChangeAndNoTimeChange() (gas: 17874) +OptimismValidator_Validate:test_Validate_PostSequencerOffline() (gas: 124054) +OptimismValidator_Validate:test_Validate_PostSequencerStatus_NoStatusChange() (gas: 124036) +ScrollCrossDomainForwarder_AcceptL1Ownership:test_CallableByPendingL1Owner() (gas: 137896) +ScrollCrossDomainForwarder_AcceptL1Ownership:test_NotCallableByNonPendingOwners() (gas: 44227) +ScrollCrossDomainForwarder_Constructor:test_InitialState() (gas: 36465) +ScrollCrossDomainForwarder_Forward:test_Forward() (gas: 86095) +ScrollCrossDomainForwarder_Forward:test_ForwardRevert() (gas: 55702) +ScrollCrossDomainForwarder_Forward:test_NotCallableByUnknownAddress() (gas: 35875) +ScrollCrossDomainForwarder_TransferL1Ownership:test_CallableByL1Owner() (gas: 79886) +ScrollCrossDomainForwarder_TransferL1Ownership:test_CallableByL1OwnerOrZeroAddress() (gas: 57462) +ScrollCrossDomainForwarder_TransferL1Ownership:test_NotCallableByL2Owner() (gas: 46564) +ScrollCrossDomainForwarder_TransferL1Ownership:test_NotCallableByNonOwners() (gas: 32476) +ScrollCrossDomainGovernor_AcceptL1Ownership:test_CallableByPendingL1Owner() (gas: 137896) +ScrollCrossDomainGovernor_AcceptL1Ownership:test_NotCallableByNonPendingOwners() (gas: 44227) +ScrollCrossDomainGovernor_Constructor:test_InitialState() (gas: 36488) +ScrollCrossDomainGovernor_Forward:test_CallableByL2Owner() (gas: 74574) +ScrollCrossDomainGovernor_Forward:test_Forward() (gas: 86144) +ScrollCrossDomainGovernor_Forward:test_ForwardRevert() (gas: 55723) +ScrollCrossDomainGovernor_Forward:test_NotCallableByUnknownAddress() (gas: 38008) +ScrollCrossDomainGovernor_ForwardDelegate:test_BubbleUpRevert() (gas: 52010) +ScrollCrossDomainGovernor_ForwardDelegate:test_CallableByCrossDomainMessengerAddressOrL1Owner() (gas: 102876) +ScrollCrossDomainGovernor_ForwardDelegate:test_CallableByL2Owner() (gas: 102881) +ScrollCrossDomainGovernor_ForwardDelegate:test_NotCallableByUnknownAddress() (gas: 38063) +ScrollCrossDomainGovernor_ForwardDelegate:test_RevertsBatchWhenOneCallFails() (gas: 103608) +ScrollCrossDomainGovernor_TransferL1Ownership:test_CallableByL1Owner() (gas: 79886) +ScrollCrossDomainGovernor_TransferL1Ownership:test_CallableByL1OwnerOrZeroAddress() (gas: 57462) +ScrollCrossDomainGovernor_TransferL1Ownership:test_NotCallableByL2Owner() (gas: 46564) +ScrollCrossDomainGovernor_TransferL1Ownership:test_NotCallableByNonOwners() (gas: 32476) +ScrollSequencerUptimeFeed_Constructor:test_Constructor_InitialState_WhenValidL2XDomainMessenger() (gas: 1686185) +ScrollSequencerUptimeFeed_ValidateSender:test_ValidateSender_UpdateStatusWhen_StatusChangeAndNoTimeChange() (gas: 17864) +ScrollValidator_Validate:test_Validate_PostSequencerOffline() (gas: 127636) +ScrollValidator_Validate:test_Validate_PostSequencerStatus_NoStatusChange() (gas: 127622) ZKSyncSequencerUptimeFeed_ValidateSender:test_ValidateSender_SuccessWhen_SenderIsValid() (gas: 12611) ZKSyncValidator_GetChainId:test_GetChainId_CorrectlyGetsTheChainId() (gas: 5530) -ZKSyncValidator_GetSetL2GasPerPubdataByteLimit:test_GetSetL2GasPerPubdataByteLimit_CorrectlyHandlesGasPerPubdataByteLimit() (gas: 15752) -ZKSyncValidator_Validate:test_Validate_PostSequencerOffline() (gas: 56439) -ZKSyncValidator_Validate:test_Validate_PostSequencerStatus_NoStatusChange() (gas: 56503) \ No newline at end of file +ZKSyncValidator_GetSetL2GasPerPubdataByteLimit:test_GetSetL2GasPerPubdataByteLimit_CorrectlyHandlesGasPerPubdataByteLimit() (gas: 45480) +ZKSyncValidator_Validate:test_Validate_PostSequencerOffline() (gas: 101459) +ZKSyncValidator_Validate:test_Validate_PostSequencerStatus_NoStatusChange() (gas: 101499) \ No newline at end of file diff --git a/contracts/gas-snapshots/llo-feeds.gas-snapshot b/contracts/gas-snapshots/llo-feeds.gas-snapshot index 3d15813cbc..edbeb5cbb1 100644 --- a/contracts/gas-snapshots/llo-feeds.gas-snapshot +++ b/contracts/gas-snapshots/llo-feeds.gas-snapshot @@ -18,754 +18,754 @@ ByteUtilTest:test_readUint32MultiWord() (gas: 530) ByteUtilTest:test_readUint32WithEmptyArray() (gas: 3231) ByteUtilTest:test_readUint32WithNotEnoughBytes() (gas: 3272) ByteUtilTest:test_readZeroAddress() (gas: 497) -ChannelConfigStoreChannelAdderTest:testAddChannelDefinitions_AdderCanAddToMultipleDons() (gas: 183710) -ChannelConfigStoreChannelAdderTest:testAddChannelDefinitions_AdderCanAddToMultipleDons() (gas: 183710) -ChannelConfigStoreChannelAdderTest:testAddChannelDefinitions_MultipleAddersCanAddToDon() (gas: 186501) -ChannelConfigStoreChannelAdderTest:testAddChannelDefinitions_MultipleAddersCanAddToDon() (gas: 186501) -ChannelConfigStoreChannelAdderTest:testAddChannelDefinitions_OneAddressCanControlMultipleChannelAdders() (gas: 195351) -ChannelConfigStoreChannelAdderTest:testAddChannelDefinitions_OneAddressCanControlMultipleChannelAdders() (gas: 195351) -ChannelConfigStoreChannelAdderTest:testAddChannelDefinitions_RevertsWhenAdderNotAllowedForDon() (gas: 38489) -ChannelConfigStoreChannelAdderTest:testAddChannelDefinitions_RevertsWhenAdderNotAllowedForDon() (gas: 38489) -ChannelConfigStoreChannelAdderTest:testAddChannelDefinitions_RevertsWhenAdderRemovedFromDon() (gas: 88366) -ChannelConfigStoreChannelAdderTest:testAddChannelDefinitions_RevertsWhenAdderRemovedFromDon() (gas: 88366) -ChannelConfigStoreChannelAdderTest:testAddChannelDefinitions_RevertsWhenCallerNotMatchingChannelAdderId() (gas: 106035) -ChannelConfigStoreChannelAdderTest:testAddChannelDefinitions_RevertsWhenCallerNotMatchingChannelAdderId() (gas: 106035) -ChannelConfigStoreChannelAdderTest:testAddChannelDefinitions_RevertsWhenNoAddressSetForChannelAdderId() (gas: 83374) -ChannelConfigStoreChannelAdderTest:testAddChannelDefinitions_RevertsWhenNoAddressSetForChannelAdderId() (gas: 83374) -ChannelConfigStoreChannelAdderTest:testAddChannelDefinitions_SucceedsWithAuthorizedAdder() (gas: 111897) -ChannelConfigStoreChannelAdderTest:testAddChannelDefinitions_SucceedsWithAuthorizedAdder() (gas: 111897) -ChannelConfigStoreChannelAdderTest:testGetAllowedChannelAdders_ReturnsAllAllowedAdders() (gas: 128281) -ChannelConfigStoreChannelAdderTest:testGetAllowedChannelAdders_ReturnsAllAllowedAdders() (gas: 128281) +ChannelConfigStoreChannelAdderTest:testAddChannelDefinitions_AdderCanAddToMultipleDons() (gas: 304718) +ChannelConfigStoreChannelAdderTest:testAddChannelDefinitions_AdderCanAddToMultipleDons() (gas: 304718) +ChannelConfigStoreChannelAdderTest:testAddChannelDefinitions_MultipleAddersCanAddToDon() (gas: 335677) +ChannelConfigStoreChannelAdderTest:testAddChannelDefinitions_MultipleAddersCanAddToDon() (gas: 335677) +ChannelConfigStoreChannelAdderTest:testAddChannelDefinitions_OneAddressCanControlMultipleChannelAdders() (gas: 353027) +ChannelConfigStoreChannelAdderTest:testAddChannelDefinitions_OneAddressCanControlMultipleChannelAdders() (gas: 353027) +ChannelConfigStoreChannelAdderTest:testAddChannelDefinitions_RevertsWhenAdderNotAllowedForDon() (gas: 84169) +ChannelConfigStoreChannelAdderTest:testAddChannelDefinitions_RevertsWhenAdderNotAllowedForDon() (gas: 84169) +ChannelConfigStoreChannelAdderTest:testAddChannelDefinitions_RevertsWhenAdderRemovedFromDon() (gas: 234475) +ChannelConfigStoreChannelAdderTest:testAddChannelDefinitions_RevertsWhenAdderRemovedFromDon() (gas: 234475) +ChannelConfigStoreChannelAdderTest:testAddChannelDefinitions_RevertsWhenCallerNotMatchingChannelAdderId() (gas: 175211) +ChannelConfigStoreChannelAdderTest:testAddChannelDefinitions_RevertsWhenCallerNotMatchingChannelAdderId() (gas: 175211) +ChannelConfigStoreChannelAdderTest:testAddChannelDefinitions_RevertsWhenNoAddressSetForChannelAdderId() (gas: 127182) +ChannelConfigStoreChannelAdderTest:testAddChannelDefinitions_RevertsWhenNoAddressSetForChannelAdderId() (gas: 127182) +ChannelConfigStoreChannelAdderTest:testAddChannelDefinitions_SucceedsWithAuthorizedAdder() (gas: 183073) +ChannelConfigStoreChannelAdderTest:testAddChannelDefinitions_SucceedsWithAuthorizedAdder() (gas: 183073) +ChannelConfigStoreChannelAdderTest:testGetAllowedChannelAdders_ReturnsAllAllowedAdders() (gas: 184073) +ChannelConfigStoreChannelAdderTest:testGetAllowedChannelAdders_ReturnsAllAllowedAdders() (gas: 184073) ChannelConfigStoreChannelAdderTest:testGetAllowedChannelAdders_ReturnsEmptyArrayWhenNone() (gas: 8797) ChannelConfigStoreChannelAdderTest:testGetAllowedChannelAdders_ReturnsEmptyArrayWhenNone() (gas: 8797) ChannelConfigStoreChannelAdderTest:testGetChannelAdderAddress_ReturnsZeroAddressForUnsetId() (gas: 7845) ChannelConfigStoreChannelAdderTest:testGetChannelAdderAddress_ReturnsZeroAddressForUnsetId() (gas: 7845) ChannelConfigStoreChannelAdderTest:testIsChannelAdderAllowed_ReturnsFalseForNonAllowedAdder() (gas: 8135) ChannelConfigStoreChannelAdderTest:testIsChannelAdderAllowed_ReturnsFalseForNonAllowedAdder() (gas: 8135) -ChannelConfigStoreChannelAdderTest:testSetChannelAdderAddress() (gas: 36855) -ChannelConfigStoreChannelAdderTest:testSetChannelAdderAddress() (gas: 36855) -ChannelConfigStoreChannelAdderTest:testSetChannelAdderAddress_CanSetToZeroAddress() (gas: 27518) -ChannelConfigStoreChannelAdderTest:testSetChannelAdderAddress_CanSetToZeroAddress() (gas: 27518) -ChannelConfigStoreChannelAdderTest:testSetChannelAdderAddress_RevertsForReservedChannelAdderId() (gas: 14099) -ChannelConfigStoreChannelAdderTest:testSetChannelAdderAddress_RevertsForReservedChannelAdderId() (gas: 14099) -ChannelConfigStoreChannelAdderTest:testSetChannelAdderAddress_RevertsWhenCalledByNonOwner() (gas: 11087) -ChannelConfigStoreChannelAdderTest:testSetChannelAdderAddress_RevertsWhenCalledByNonOwner() (gas: 11087) -ChannelConfigStoreChannelAdderTest:testSetChannelAdderAddress_SucceedsAtMinimumAllowedId() (gas: 32582) -ChannelConfigStoreChannelAdderTest:testSetChannelAdderAddress_SucceedsAtMinimumAllowedId() (gas: 32582) -ChannelConfigStoreChannelAdderTest:testSetChannelAdderAddress_UpdatesExistingAddress() (gas: 40758) -ChannelConfigStoreChannelAdderTest:testSetChannelAdderAddress_UpdatesExistingAddress() (gas: 40758) -ChannelConfigStoreChannelAdderTest:testSetChannelAdder_AdderCanBeAllowedOnMultipleDons() (gas: 149354) -ChannelConfigStoreChannelAdderTest:testSetChannelAdder_AdderCanBeAllowedOnMultipleDons() (gas: 149354) -ChannelConfigStoreChannelAdderTest:testSetChannelAdder_AllowsChannelAdder() (gas: 82666) -ChannelConfigStoreChannelAdderTest:testSetChannelAdder_AllowsChannelAdder() (gas: 82666) -ChannelConfigStoreChannelAdderTest:testSetChannelAdder_AllowsMultipleAddersPerDon() (gas: 131070) -ChannelConfigStoreChannelAdderTest:testSetChannelAdder_AllowsMultipleAddersPerDon() (gas: 131070) -ChannelConfigStoreChannelAdderTest:testSetChannelAdder_RemovesChannelAdder() (gas: 66487) -ChannelConfigStoreChannelAdderTest:testSetChannelAdder_RemovesChannelAdder() (gas: 66487) -ChannelConfigStoreChannelAdderTest:testSetChannelAdder_RevertsForReservedChannelAdderId() (gas: 17864) -ChannelConfigStoreChannelAdderTest:testSetChannelAdder_RevertsForReservedChannelAdderId() (gas: 17864) -ChannelConfigStoreChannelAdderTest:testSetChannelAdder_RevertsWhenCalledByNonOwner() (gas: 11181) -ChannelConfigStoreChannelAdderTest:testSetChannelAdder_RevertsWhenCalledByNonOwner() (gas: 11181) -ChannelConfigStoreChannelAdderTest:testSetChannelAdder_SucceedsAtMinimumAllowedId() (gas: 78035) -ChannelConfigStoreChannelAdderTest:testSetChannelAdder_SucceedsAtMinimumAllowedId() (gas: 78035) -ChannelConfigStoreChannelAdderTest:testSetChannelDefinitions() (gas: 46934) -ChannelConfigStoreChannelAdderTest:testSetChannelDefinitions() (gas: 46934) +ChannelConfigStoreChannelAdderTest:testSetChannelAdderAddress() (gas: 60223) +ChannelConfigStoreChannelAdderTest:testSetChannelAdderAddress() (gas: 60223) +ChannelConfigStoreChannelAdderTest:testSetChannelAdderAddress_CanSetToZeroAddress() (gas: 81575) +ChannelConfigStoreChannelAdderTest:testSetChannelAdderAddress_CanSetToZeroAddress() (gas: 81575) +ChannelConfigStoreChannelAdderTest:testSetChannelAdderAddress_RevertsForReservedChannelAdderId() (gas: 56811) +ChannelConfigStoreChannelAdderTest:testSetChannelAdderAddress_RevertsForReservedChannelAdderId() (gas: 56811) +ChannelConfigStoreChannelAdderTest:testSetChannelAdderAddress_RevertsWhenCalledByNonOwner() (gas: 32455) +ChannelConfigStoreChannelAdderTest:testSetChannelAdderAddress_RevertsWhenCalledByNonOwner() (gas: 32455) +ChannelConfigStoreChannelAdderTest:testSetChannelAdderAddress_SucceedsAtMinimumAllowedId() (gas: 55950) +ChannelConfigStoreChannelAdderTest:testSetChannelAdderAddress_SucceedsAtMinimumAllowedId() (gas: 55950) +ChannelConfigStoreChannelAdderTest:testSetChannelAdderAddress_UpdatesExistingAddress() (gas: 98794) +ChannelConfigStoreChannelAdderTest:testSetChannelAdderAddress_UpdatesExistingAddress() (gas: 98794) +ChannelConfigStoreChannelAdderTest:testSetChannelAdder_AdderCanBeAllowedOnMultipleDons() (gas: 202846) +ChannelConfigStoreChannelAdderTest:testSetChannelAdder_AdderCanBeAllowedOnMultipleDons() (gas: 202846) +ChannelConfigStoreChannelAdderTest:testSetChannelAdder_AllowsChannelAdder() (gas: 106162) +ChannelConfigStoreChannelAdderTest:testSetChannelAdder_AllowsChannelAdder() (gas: 106162) +ChannelConfigStoreChannelAdderTest:testSetChannelAdder_AllowsMultipleAddersPerDon() (gas: 199862) +ChannelConfigStoreChannelAdderTest:testSetChannelAdder_AllowsMultipleAddersPerDon() (gas: 199862) +ChannelConfigStoreChannelAdderTest:testSetChannelAdder_RemovesChannelAdder() (gas: 139622) +ChannelConfigStoreChannelAdderTest:testSetChannelAdder_RemovesChannelAdder() (gas: 139622) +ChannelConfigStoreChannelAdderTest:testSetChannelAdder_RevertsForReservedChannelAdderId() (gas: 82316) +ChannelConfigStoreChannelAdderTest:testSetChannelAdder_RevertsForReservedChannelAdderId() (gas: 82316) +ChannelConfigStoreChannelAdderTest:testSetChannelAdder_RevertsWhenCalledByNonOwner() (gas: 32677) +ChannelConfigStoreChannelAdderTest:testSetChannelAdder_RevertsWhenCalledByNonOwner() (gas: 32677) +ChannelConfigStoreChannelAdderTest:testSetChannelAdder_SucceedsAtMinimumAllowedId() (gas: 101531) +ChannelConfigStoreChannelAdderTest:testSetChannelAdder_SucceedsAtMinimumAllowedId() (gas: 101531) +ChannelConfigStoreChannelAdderTest:testSetChannelDefinitions() (gas: 100066) +ChannelConfigStoreChannelAdderTest:testSetChannelDefinitions() (gas: 100066) ChannelConfigStoreChannelAdderTest:testSupportsInterface() (gas: 5622) ChannelConfigStoreChannelAdderTest:testSupportsInterface() (gas: 5622) ChannelConfigStoreChannelAdderTest:testTypeAndVersion() (gas: 9745) ChannelConfigStoreChannelAdderTest:testTypeAndVersion() (gas: 9745) -ChannelConfigStoreChannelAdderTest:test_revertsIfCalledByNonOwner() (gas: 11426) -ChannelConfigStoreChannelAdderTest:test_revertsIfCalledByNonOwner() (gas: 11426) -ChannelConfigStoreTest:testSetChannelDefinitions() (gas: 46890) -ChannelConfigStoreTest:testSetChannelDefinitions() (gas: 46890) +ChannelConfigStoreChannelAdderTest:test_revertsIfCalledByNonOwner() (gas: 33586) +ChannelConfigStoreChannelAdderTest:test_revertsIfCalledByNonOwner() (gas: 33586) +ChannelConfigStoreTest:testSetChannelDefinitions() (gas: 100022) +ChannelConfigStoreTest:testSetChannelDefinitions() (gas: 100022) ChannelConfigStoreTest:testSupportsInterface() (gas: 5588) ChannelConfigStoreTest:testSupportsInterface() (gas: 5588) ChannelConfigStoreTest:testTypeAndVersion() (gas: 9689) ChannelConfigStoreTest:testTypeAndVersion() (gas: 9689) -ChannelConfigStoreTest:test_revertsIfCalledByNonOwner() (gas: 11360) -ChannelConfigStoreTest:test_revertsIfCalledByNonOwner() (gas: 11360) -ConfiguratorPromoteStagingConfigTest:test_promotesStagingConfig() (gas: 98375) -ConfiguratorPromoteStagingConfigTest:test_promotesStagingConfig() (gas: 98375) -ConfiguratorPromoteStagingConfigTest:test_revertsIfCalledByNonOwner() (gas: 10962) -ConfiguratorPromoteStagingConfigTest:test_revertsIfCalledByNonOwner() (gas: 10962) -ConfiguratorPromoteStagingConfigTest:test_revertsIfIsGreenProductionDoesNotMatchContractState() (gas: 13423) -ConfiguratorPromoteStagingConfigTest:test_revertsIfIsGreenProductionDoesNotMatchContractState() (gas: 13423) -ConfiguratorPromoteStagingConfigTest:test_revertsIfNoConfigHasEverBeenSetWithThisConfigId() (gas: 13419) -ConfiguratorPromoteStagingConfigTest:test_revertsIfNoConfigHasEverBeenSetWithThisConfigId() (gas: 13419) -ConfiguratorPromoteStagingConfigTest:test_revertsIfProductionConfigDigestIsZero() (gas: 68521) -ConfiguratorPromoteStagingConfigTest:test_revertsIfProductionConfigDigestIsZero() (gas: 68521) -ConfiguratorPromoteStagingConfigTest:test_revertsIfStagingConfigDigestIsZero() (gas: 48258) -ConfiguratorPromoteStagingConfigTest:test_revertsIfStagingConfigDigestIsZero() (gas: 48258) -ConfiguratorSetProductionConfigTest:test_correctlyUpdatesTheConfig() (gas: 254697) -ConfiguratorSetProductionConfigTest:test_correctlyUpdatesTheConfig() (gas: 254697) -ConfiguratorSetProductionConfigTest:test_revertsIfCalledByNonOwner() (gas: 266559) -ConfiguratorSetProductionConfigTest:test_revertsIfCalledByNonOwner() (gas: 266559) -ConfiguratorSetProductionConfigTest:test_revertsIfFaultToleranceIsZero() (gas: 264173) -ConfiguratorSetProductionConfigTest:test_revertsIfFaultToleranceIsZero() (gas: 264173) -ConfiguratorSetProductionConfigTest:test_revertsIfNotEnoughSigners() (gas: 95951) -ConfiguratorSetProductionConfigTest:test_revertsIfNotEnoughSigners() (gas: 95951) -ConfiguratorSetProductionConfigTest:test_revertsIfOnchainConfigIsInvalid() (gas: 60885) -ConfiguratorSetProductionConfigTest:test_revertsIfOnchainConfigIsInvalid() (gas: 60885) -ConfiguratorSetProductionConfigTest:test_revertsIfSetWithTooManySigners() (gas: 107412) -ConfiguratorSetProductionConfigTest:test_revertsIfSetWithTooManySigners() (gas: 107412) -ConfiguratorSetProductionConfigTest:test_supportsHigherVersionsIgnoringExcessOnchainConfig() (gas: 125093) -ConfiguratorSetProductionConfigTest:test_supportsHigherVersionsIgnoringExcessOnchainConfig() (gas: 125093) -ConfiguratorSetStagingConfigTest:test_correctlyUpdatesTheConfig() (gas: 260962) -ConfiguratorSetStagingConfigTest:test_correctlyUpdatesTheConfig() (gas: 260962) -ConfiguratorSetStagingConfigTest:test_revertsIfCalledByNonOwner() (gas: 266528) -ConfiguratorSetStagingConfigTest:test_revertsIfCalledByNonOwner() (gas: 266528) -ConfiguratorSetStagingConfigTest:test_revertsIfFaultToleranceIsZero() (gas: 264142) -ConfiguratorSetStagingConfigTest:test_revertsIfFaultToleranceIsZero() (gas: 264142) -ConfiguratorSetStagingConfigTest:test_revertsIfNotEnoughSigners() (gas: 95920) -ConfiguratorSetStagingConfigTest:test_revertsIfNotEnoughSigners() (gas: 95920) -ConfiguratorSetStagingConfigTest:test_revertsIfOnchainConfigIsInvalid() (gas: 85217) -ConfiguratorSetStagingConfigTest:test_revertsIfOnchainConfigIsInvalid() (gas: 85217) -ConfiguratorSetStagingConfigTest:test_revertsIfSetWithTooManySigners() (gas: 107392) -ConfiguratorSetStagingConfigTest:test_revertsIfSetWithTooManySigners() (gas: 107392) +ChannelConfigStoreTest:test_revertsIfCalledByNonOwner() (gas: 33520) +ChannelConfigStoreTest:test_revertsIfCalledByNonOwner() (gas: 33520) +ConfiguratorPromoteStagingConfigTest:test_promotesStagingConfig() (gas: 238199) +ConfiguratorPromoteStagingConfigTest:test_promotesStagingConfig() (gas: 238199) +ConfiguratorPromoteStagingConfigTest:test_revertsIfCalledByNonOwner() (gas: 32666) +ConfiguratorPromoteStagingConfigTest:test_revertsIfCalledByNonOwner() (gas: 32666) +ConfiguratorPromoteStagingConfigTest:test_revertsIfIsGreenProductionDoesNotMatchContractState() (gas: 35139) +ConfiguratorPromoteStagingConfigTest:test_revertsIfIsGreenProductionDoesNotMatchContractState() (gas: 35139) +ConfiguratorPromoteStagingConfigTest:test_revertsIfNoConfigHasEverBeenSetWithThisConfigId() (gas: 35123) +ConfiguratorPromoteStagingConfigTest:test_revertsIfNoConfigHasEverBeenSetWithThisConfigId() (gas: 35123) +ConfiguratorPromoteStagingConfigTest:test_revertsIfProductionConfigDigestIsZero() (gas: 191301) +ConfiguratorPromoteStagingConfigTest:test_revertsIfProductionConfigDigestIsZero() (gas: 191301) +ConfiguratorPromoteStagingConfigTest:test_revertsIfStagingConfigDigestIsZero() (gas: 153194) +ConfiguratorPromoteStagingConfigTest:test_revertsIfStagingConfigDigestIsZero() (gas: 153194) +ConfiguratorSetProductionConfigTest:test_correctlyUpdatesTheConfig() (gas: 430945) +ConfiguratorSetProductionConfigTest:test_correctlyUpdatesTheConfig() (gas: 430945) +ConfiguratorSetProductionConfigTest:test_revertsIfCalledByNonOwner() (gas: 307279) +ConfiguratorSetProductionConfigTest:test_revertsIfCalledByNonOwner() (gas: 307279) +ConfiguratorSetProductionConfigTest:test_revertsIfFaultToleranceIsZero() (gas: 304881) +ConfiguratorSetProductionConfigTest:test_revertsIfFaultToleranceIsZero() (gas: 304881) +ConfiguratorSetProductionConfigTest:test_revertsIfNotEnoughSigners() (gas: 124119) +ConfiguratorSetProductionConfigTest:test_revertsIfNotEnoughSigners() (gas: 124119) +ConfiguratorSetProductionConfigTest:test_revertsIfOnchainConfigIsInvalid() (gas: 139109) +ConfiguratorSetProductionConfigTest:test_revertsIfOnchainConfigIsInvalid() (gas: 139109) +ConfiguratorSetProductionConfigTest:test_revertsIfSetWithTooManySigners() (gas: 143628) +ConfiguratorSetProductionConfigTest:test_revertsIfSetWithTooManySigners() (gas: 143628) +ConfiguratorSetProductionConfigTest:test_supportsHigherVersionsIgnoringExcessOnchainConfig() (gas: 158649) +ConfiguratorSetProductionConfigTest:test_supportsHigherVersionsIgnoringExcessOnchainConfig() (gas: 158649) +ConfiguratorSetStagingConfigTest:test_correctlyUpdatesTheConfig() (gas: 478338) +ConfiguratorSetStagingConfigTest:test_correctlyUpdatesTheConfig() (gas: 478338) +ConfiguratorSetStagingConfigTest:test_revertsIfCalledByNonOwner() (gas: 307248) +ConfiguratorSetStagingConfigTest:test_revertsIfCalledByNonOwner() (gas: 307248) +ConfiguratorSetStagingConfigTest:test_revertsIfFaultToleranceIsZero() (gas: 304850) +ConfiguratorSetStagingConfigTest:test_revertsIfFaultToleranceIsZero() (gas: 304850) +ConfiguratorSetStagingConfigTest:test_revertsIfNotEnoughSigners() (gas: 124088) +ConfiguratorSetStagingConfigTest:test_revertsIfNotEnoughSigners() (gas: 124088) +ConfiguratorSetStagingConfigTest:test_revertsIfOnchainConfigIsInvalid() (gas: 189869) +ConfiguratorSetStagingConfigTest:test_revertsIfOnchainConfigIsInvalid() (gas: 189869) +ConfiguratorSetStagingConfigTest:test_revertsIfSetWithTooManySigners() (gas: 143608) +ConfiguratorSetStagingConfigTest:test_revertsIfSetWithTooManySigners() (gas: 143608) ConfiguratorTest:testSupportsInterface() (gas: 5542) ConfiguratorTest:testSupportsInterface() (gas: 5542) ConfiguratorTest:testTypeAndVersion() (gas: 9683) ConfiguratorTest:testTypeAndVersion() (gas: 9683) -DestinationFeeManagerProcessFeeTest:test_DiscountIsAppliedForNative() (gas: 52385) -DestinationFeeManagerProcessFeeTest:test_DiscountIsReturnedForNative() (gas: 52313) -DestinationFeeManagerProcessFeeTest:test_DiscountIsReturnedForNativeWithSurcharge() (gas: 78547) -DestinationFeeManagerProcessFeeTest:test_GlobalDiscountCantBeSetToMoreThanMaximum() (gas: 19544) -DestinationFeeManagerProcessFeeTest:test_GlobalDiscountIsOverridenByIndividualDiscountLink() (gas: 79177) -DestinationFeeManagerProcessFeeTest:test_GlobalDiscountIsOverridenByIndividualDiscountNative() (gas: 82191) -DestinationFeeManagerProcessFeeTest:test_GlobalDiscountIsUpdatedAfterBeingSetToZeroLink() (gas: 47878) -DestinationFeeManagerProcessFeeTest:test_GlobalDiscountIsUpdatedAfterBeingSetToZeroNative() (gas: 51058) -DestinationFeeManagerProcessFeeTest:test_GlobalDiscountWithLink() (gas: 51570) -DestinationFeeManagerProcessFeeTest:test_GlobalDiscountWithNative() (gas: 54560) -DestinationFeeManagerProcessFeeTest:test_GlobalDiscountWithNativeAndLink() (gas: 83407) -DestinationFeeManagerProcessFeeTest:test_V1PayloadVerifies() (gas: 29358) -DestinationFeeManagerProcessFeeTest:test_V1PayloadVerifiesAndReturnsChange() (gas: 60228) -DestinationFeeManagerProcessFeeTest:test_V2PayloadVerifies() (gas: 122744) -DestinationFeeManagerProcessFeeTest:test_V2PayloadWithoutQuoteFails() (gas: 29697) -DestinationFeeManagerProcessFeeTest:test_V2PayloadWithoutZeroFee() (gas: 77087) -DestinationFeeManagerProcessFeeTest:test_WithdrawERC20() (gas: 71724) -DestinationFeeManagerProcessFeeTest:test_WithdrawNonAdminAddr() (gas: 56357) -DestinationFeeManagerProcessFeeTest:test_WithdrawUnwrappedNative() (gas: 25416) -DestinationFeeManagerProcessFeeTest:test_addVerifier() (gas: 128921) -DestinationFeeManagerProcessFeeTest:test_addVerifierExistingAddress() (gas: 34192) +DestinationFeeManagerProcessFeeTest:test_DiscountIsAppliedForNative() (gas: 88385) +DestinationFeeManagerProcessFeeTest:test_DiscountIsReturnedForNative() (gas: 88313) +DestinationFeeManagerProcessFeeTest:test_DiscountIsReturnedForNativeWithSurcharge() (gas: 154311) +DestinationFeeManagerProcessFeeTest:test_GlobalDiscountCantBeSetToMoreThanMaximum() (gas: 49056) +DestinationFeeManagerProcessFeeTest:test_GlobalDiscountIsOverridenByIndividualDiscountLink() (gas: 155677) +DestinationFeeManagerProcessFeeTest:test_GlobalDiscountIsOverridenByIndividualDiscountNative() (gas: 158691) +DestinationFeeManagerProcessFeeTest:test_GlobalDiscountIsUpdatedAfterBeingSetToZeroLink() (gas: 146841) +DestinationFeeManagerProcessFeeTest:test_GlobalDiscountIsUpdatedAfterBeingSetToZeroNative() (gas: 152816) +DestinationFeeManagerProcessFeeTest:test_GlobalDiscountWithLink() (gas: 87070) +DestinationFeeManagerProcessFeeTest:test_GlobalDiscountWithNative() (gas: 90060) +DestinationFeeManagerProcessFeeTest:test_GlobalDiscountWithNativeAndLink() (gas: 157407) +DestinationFeeManagerProcessFeeTest:test_V1PayloadVerifies() (gas: 60074) +DestinationFeeManagerProcessFeeTest:test_V1PayloadVerifiesAndReturnsChange() (gas: 96068) +DestinationFeeManagerProcessFeeTest:test_V2PayloadVerifies() (gas: 219908) +DestinationFeeManagerProcessFeeTest:test_V2PayloadWithoutQuoteFails() (gas: 62913) +DestinationFeeManagerProcessFeeTest:test_V2PayloadWithoutZeroFee() (gas: 110543) +DestinationFeeManagerProcessFeeTest:test_WithdrawERC20() (gas: 171680) +DestinationFeeManagerProcessFeeTest:test_WithdrawNonAdminAddr() (gas: 119013) +DestinationFeeManagerProcessFeeTest:test_WithdrawUnwrappedNative() (gas: 66188) +DestinationFeeManagerProcessFeeTest:test_addVerifier() (gas: 288061) +DestinationFeeManagerProcessFeeTest:test_addVerifierExistingAddress() (gas: 80600) DestinationFeeManagerProcessFeeTest:test_baseFeeIsAppliedForLink() (gas: 16665) DestinationFeeManagerProcessFeeTest:test_baseFeeIsAppliedForNative() (gas: 19670) -DestinationFeeManagerProcessFeeTest:test_correctDiscountIsAppliedWhenBothTokensAreDiscounted() (gas: 90469) -DestinationFeeManagerProcessFeeTest:test_discountAIsNotAppliedWhenSetForOtherUsers() (gas: 58532) -DestinationFeeManagerProcessFeeTest:test_discountFeeRoundsDownWhenUneven() (gas: 52587) -DestinationFeeManagerProcessFeeTest:test_discountIsAppliedForLink() (gas: 49398) -DestinationFeeManagerProcessFeeTest:test_discountIsAppliedWith100PercentSurcharge() (gas: 78576) -DestinationFeeManagerProcessFeeTest:test_discountIsNoLongerAppliedAfterRemoving() (gas: 47831) -DestinationFeeManagerProcessFeeTest:test_discountIsNotAppliedForInvalidTokenAddress() (gas: 17516) -DestinationFeeManagerProcessFeeTest:test_discountIsNotAppliedToOtherFeeds() (gas: 56580) -DestinationFeeManagerProcessFeeTest:test_discountIsReturnedForLink() (gas: 49370) +DestinationFeeManagerProcessFeeTest:test_correctDiscountIsAppliedWhenBothTokensAreDiscounted() (gas: 173969) +DestinationFeeManagerProcessFeeTest:test_discountAIsNotAppliedWhenSetForOtherUsers() (gas: 90532) +DestinationFeeManagerProcessFeeTest:test_discountFeeRoundsDownWhenUneven() (gas: 88611) +DestinationFeeManagerProcessFeeTest:test_discountIsAppliedForLink() (gas: 85398) +DestinationFeeManagerProcessFeeTest:test_discountIsAppliedWith100PercentSurcharge() (gas: 154340) +DestinationFeeManagerProcessFeeTest:test_discountIsNoLongerAppliedAfterRemoving() (gas: 145782) +DestinationFeeManagerProcessFeeTest:test_discountIsNotAppliedForInvalidTokenAddress() (gas: 47276) +DestinationFeeManagerProcessFeeTest:test_discountIsNotAppliedToOtherFeeds() (gas: 90580) +DestinationFeeManagerProcessFeeTest:test_discountIsReturnedForLink() (gas: 85370) DestinationFeeManagerProcessFeeTest:test_emptyQuoteRevertsWithError() (gas: 12253) -DestinationFeeManagerProcessFeeTest:test_eventIsEmittedAfterSurchargeIsSet() (gas: 41373) -DestinationFeeManagerProcessFeeTest:test_eventIsEmittedIfNotEnoughLink() (gas: 181640) -DestinationFeeManagerProcessFeeTest:test_eventIsEmittedUponWithdraw() (gas: 69085) -DestinationFeeManagerProcessFeeTest:test_feeIsUpdatedAfterDiscountIsRemoved() (gas: 51095) -DestinationFeeManagerProcessFeeTest:test_feeIsUpdatedAfterNewDiscountIsApplied() (gas: 67113) -DestinationFeeManagerProcessFeeTest:test_feeIsUpdatedAfterNewSurchargeIsApplied() (gas: 66296) -DestinationFeeManagerProcessFeeTest:test_feeIsZeroWith100PercentDiscount() (gas: 51741) +DestinationFeeManagerProcessFeeTest:test_eventIsEmittedAfterSurchargeIsSet() (gas: 70137) +DestinationFeeManagerProcessFeeTest:test_eventIsEmittedIfNotEnoughLink() (gas: 300204) +DestinationFeeManagerProcessFeeTest:test_eventIsEmittedUponWithdraw() (gas: 138969) +DestinationFeeManagerProcessFeeTest:test_feeIsUpdatedAfterDiscountIsRemoved() (gas: 151862) +DestinationFeeManagerProcessFeeTest:test_feeIsUpdatedAfterNewDiscountIsApplied() (gas: 159513) +DestinationFeeManagerProcessFeeTest:test_feeIsUpdatedAfterNewSurchargeIsApplied() (gas: 151424) +DestinationFeeManagerProcessFeeTest:test_feeIsZeroWith100PercentDiscount() (gas: 87741) DestinationFeeManagerProcessFeeTest:test_getBaseRewardWithLinkQuote() (gas: 16663) -DestinationFeeManagerProcessFeeTest:test_getLinkFeeIsRoundedUp() (gas: 49525) -DestinationFeeManagerProcessFeeTest:test_getLinkRewardIsSameAsFee() (gas: 55093) -DestinationFeeManagerProcessFeeTest:test_getLinkRewardWithNativeQuoteAndSurchargeWithLinkDiscount() (gas: 84718) -DestinationFeeManagerProcessFeeTest:test_getRewardWithLinkDiscount() (gas: 49394) -DestinationFeeManagerProcessFeeTest:test_getRewardWithLinkQuoteAndLinkDiscount() (gas: 49353) +DestinationFeeManagerProcessFeeTest:test_getLinkFeeIsRoundedUp() (gas: 85549) +DestinationFeeManagerProcessFeeTest:test_getLinkRewardIsSameAsFee() (gas: 101617) +DestinationFeeManagerProcessFeeTest:test_getLinkRewardWithNativeQuoteAndSurchargeWithLinkDiscount() (gas: 156506) +DestinationFeeManagerProcessFeeTest:test_getRewardWithLinkDiscount() (gas: 85394) +DestinationFeeManagerProcessFeeTest:test_getRewardWithLinkQuoteAndLinkDiscount() (gas: 85353) DestinationFeeManagerProcessFeeTest:test_getRewardWithNativeQuote() (gas: 19624) -DestinationFeeManagerProcessFeeTest:test_getRewardWithNativeQuoteAndSurcharge() (gas: 52858) -DestinationFeeManagerProcessFeeTest:test_linkAvailableForPaymentReturnsLinkBalance() (gas: 52453) -DestinationFeeManagerProcessFeeTest:test_nativeSurcharge0Percent() (gas: 32866) -DestinationFeeManagerProcessFeeTest:test_nativeSurcharge100Percent() (gas: 52838) -DestinationFeeManagerProcessFeeTest:test_nativeSurchargeCannotExceed100Percent() (gas: 17152) -DestinationFeeManagerProcessFeeTest:test_nativeSurchargeEventIsEmittedOnUpdate() (gas: 41351) -DestinationFeeManagerProcessFeeTest:test_noFeeIsAppliedWhenReportHasZeroFee() (gas: 51586) -DestinationFeeManagerProcessFeeTest:test_noFeeIsAppliedWhenReportHasZeroFeeAndDiscountAndSurchargeIsSet() (gas: 77776) -DestinationFeeManagerProcessFeeTest:test_nonAdminProxyUserCannotProcessFee() (gas: 24207) -DestinationFeeManagerProcessFeeTest:test_nonAdminUserCanNotSetDiscount() (gas: 19784) -DestinationFeeManagerProcessFeeTest:test_onlyCallableByOwnerReverts() (gas: 15475) -DestinationFeeManagerProcessFeeTest:test_onlyOwnerCanSetGlobalDiscount() (gas: 19929) -DestinationFeeManagerProcessFeeTest:test_payLinkDeficit() (gas: 199273) -DestinationFeeManagerProcessFeeTest:test_payLinkDeficitOnlyCallableByAdmin() (gas: 17348) -DestinationFeeManagerProcessFeeTest:test_payLinkDeficitPaysAllFeesProcessed() (gas: 220152) -DestinationFeeManagerProcessFeeTest:test_payLinkDeficitTwice() (gas: 203594) -DestinationFeeManagerProcessFeeTest:test_poolIdsCannotBeZeroAddress() (gas: 117941) -DestinationFeeManagerProcessFeeTest:test_processFeeAsProxy() (gas: 123082) -DestinationFeeManagerProcessFeeTest:test_processFeeDefaultReportsStillVerifiesWithEmptyQuote() (gas: 29779) -DestinationFeeManagerProcessFeeTest:test_processFeeEmitsEventIfNotEnoughLink() (gas: 166315) -DestinationFeeManagerProcessFeeTest:test_processFeeIfSubscriberIsSelf() (gas: 30097) -DestinationFeeManagerProcessFeeTest:test_processFeeNative() (gas: 179125) -DestinationFeeManagerProcessFeeTest:test_processFeeUsesCorrectDigest() (gas: 124042) -DestinationFeeManagerProcessFeeTest:test_processFeeWithDefaultReportPayloadAndQuoteStillVerifies() (gas: 31856) -DestinationFeeManagerProcessFeeTest:test_processFeeWithDiscountEmitsEvent() (gas: 246015) -DestinationFeeManagerProcessFeeTest:test_processFeeWithInvalidReportVersionFailsToDecode() (gas: 30798) -DestinationFeeManagerProcessFeeTest:test_processFeeWithNoDiscountDoesNotEmitEvent() (gas: 173058) -DestinationFeeManagerProcessFeeTest:test_processFeeWithUnwrappedNative() (gas: 186659) -DestinationFeeManagerProcessFeeTest:test_processFeeWithUnwrappedNativeLinkAddress() (gas: 138170) -DestinationFeeManagerProcessFeeTest:test_processFeeWithUnwrappedNativeLinkAddressExcessiveFee() (gas: 162073) -DestinationFeeManagerProcessFeeTest:test_processFeeWithUnwrappedNativeShortFunds() (gas: 97159) -DestinationFeeManagerProcessFeeTest:test_processFeeWithUnwrappedNativeWithExcessiveFee() (gas: 193622) -DestinationFeeManagerProcessFeeTest:test_processFeeWithWithCorruptQuotePayload() (gas: 77374) -DestinationFeeManagerProcessFeeTest:test_processFeeWithWithEmptyQuotePayload() (gas: 30034) -DestinationFeeManagerProcessFeeTest:test_processFeeWithWithZeroQuotePayload() (gas: 30090) -DestinationFeeManagerProcessFeeTest:test_processFeeWithZeroLinkNonZeroNativeWithLinkQuote() (gas: 37638) -DestinationFeeManagerProcessFeeTest:test_processFeeWithZeroLinkNonZeroNativeWithNativeQuote() (gas: 159002) -DestinationFeeManagerProcessFeeTest:test_processFeeWithZeroNativeNonZeroLinkReturnsChange() (gas: 58046) -DestinationFeeManagerProcessFeeTest:test_processFeeWithZeroNativeNonZeroLinkWithLinkQuote() (gas: 123080) -DestinationFeeManagerProcessFeeTest:test_processFeeWithZeroNativeNonZeroLinkWithNativeQuote() (gas: 40342) -DestinationFeeManagerProcessFeeTest:test_processMultipleLinkReports() (gas: 232162) -DestinationFeeManagerProcessFeeTest:test_processMultipleUnwrappedNativeReports() (gas: 265949) -DestinationFeeManagerProcessFeeTest:test_processMultipleV1Reports() (gas: 80527) -DestinationFeeManagerProcessFeeTest:test_processMultipleWrappedNativeReports() (gas: 249129) -DestinationFeeManagerProcessFeeTest:test_processPoolIdsPassedMismatched() (gas: 98827) -DestinationFeeManagerProcessFeeTest:test_processV1V2V3Reports() (gas: 216876) -DestinationFeeManagerProcessFeeTest:test_processV1V2V3ReportsWithUnwrapped() (gas: 258551) -DestinationFeeManagerProcessFeeTest:test_removeVerifierNonExistentAddress() (gas: 12822) -DestinationFeeManagerProcessFeeTest:test_removeVerifierZeroAaddress() (gas: 10700) +DestinationFeeManagerProcessFeeTest:test_getRewardWithNativeQuoteAndSurcharge() (gas: 85622) +DestinationFeeManagerProcessFeeTest:test_linkAvailableForPaymentReturnsLinkBalance() (gas: 100061) +DestinationFeeManagerProcessFeeTest:test_nativeSurcharge0Percent() (gas: 65558) +DestinationFeeManagerProcessFeeTest:test_nativeSurcharge100Percent() (gas: 85602) +DestinationFeeManagerProcessFeeTest:test_nativeSurchargeCannotExceed100Percent() (gas: 45928) +DestinationFeeManagerProcessFeeTest:test_nativeSurchargeEventIsEmittedOnUpdate() (gas: 70139) +DestinationFeeManagerProcessFeeTest:test_noFeeIsAppliedWhenReportHasZeroFee() (gas: 87586) +DestinationFeeManagerProcessFeeTest:test_noFeeIsAppliedWhenReportHasZeroFeeAndDiscountAndSurchargeIsSet() (gas: 153540) +DestinationFeeManagerProcessFeeTest:test_nonAdminProxyUserCannotProcessFee() (gas: 58299) +DestinationFeeManagerProcessFeeTest:test_nonAdminUserCanNotSetDiscount() (gas: 49784) +DestinationFeeManagerProcessFeeTest:test_onlyCallableByOwnerReverts() (gas: 36655) +DestinationFeeManagerProcessFeeTest:test_onlyOwnerCanSetGlobalDiscount() (gas: 49429) +DestinationFeeManagerProcessFeeTest:test_payLinkDeficit() (gas: 398705) +DestinationFeeManagerProcessFeeTest:test_payLinkDeficitOnlyCallableByAdmin() (gas: 46424) +DestinationFeeManagerProcessFeeTest:test_payLinkDeficitPaysAllFeesProcessed() (gas: 511868) +DestinationFeeManagerProcessFeeTest:test_payLinkDeficitTwice() (gas: 446682) +DestinationFeeManagerProcessFeeTest:test_poolIdsCannotBeZeroAddress() (gas: 199021) +DestinationFeeManagerProcessFeeTest:test_processFeeAsProxy() (gas: 220514) +DestinationFeeManagerProcessFeeTest:test_processFeeDefaultReportsStillVerifiesWithEmptyQuote() (gas: 60619) +DestinationFeeManagerProcessFeeTest:test_processFeeEmitsEventIfNotEnoughLink() (gas: 314855) +DestinationFeeManagerProcessFeeTest:test_processFeeIfSubscriberIsSelf() (gas: 63821) +DestinationFeeManagerProcessFeeTest:test_processFeeNative() (gas: 342765) +DestinationFeeManagerProcessFeeTest:test_processFeeUsesCorrectDigest() (gas: 227974) +DestinationFeeManagerProcessFeeTest:test_processFeeWithDefaultReportPayloadAndQuoteStillVerifies() (gas: 62936) +DestinationFeeManagerProcessFeeTest:test_processFeeWithDiscountEmitsEvent() (gas: 444355) +DestinationFeeManagerProcessFeeTest:test_processFeeWithInvalidReportVersionFailsToDecode() (gas: 62982) +DestinationFeeManagerProcessFeeTest:test_processFeeWithNoDiscountDoesNotEmitEvent() (gas: 306698) +DestinationFeeManagerProcessFeeTest:test_processFeeWithUnwrappedNative() (gas: 297591) +DestinationFeeManagerProcessFeeTest:test_processFeeWithUnwrappedNativeLinkAddress() (gas: 205502) +DestinationFeeManagerProcessFeeTest:test_processFeeWithUnwrappedNativeLinkAddressExcessiveFee() (gas: 271005) +DestinationFeeManagerProcessFeeTest:test_processFeeWithUnwrappedNativeShortFunds() (gas: 159991) +DestinationFeeManagerProcessFeeTest:test_processFeeWithUnwrappedNativeWithExcessiveFee() (gas: 304554) +DestinationFeeManagerProcessFeeTest:test_processFeeWithWithCorruptQuotePayload() (gas: 111098) +DestinationFeeManagerProcessFeeTest:test_processFeeWithWithEmptyQuotePayload() (gas: 63518) +DestinationFeeManagerProcessFeeTest:test_processFeeWithWithZeroQuotePayload() (gas: 63574) +DestinationFeeManagerProcessFeeTest:test_processFeeWithZeroLinkNonZeroNativeWithLinkQuote() (gas: 68814) +DestinationFeeManagerProcessFeeTest:test_processFeeWithZeroLinkNonZeroNativeWithNativeQuote() (gas: 309494) +DestinationFeeManagerProcessFeeTest:test_processFeeWithZeroNativeNonZeroLinkReturnsChange() (gas: 91722) +DestinationFeeManagerProcessFeeTest:test_processFeeWithZeroNativeNonZeroLinkWithLinkQuote() (gas: 220464) +DestinationFeeManagerProcessFeeTest:test_processFeeWithZeroNativeNonZeroLinkWithNativeQuote() (gas: 71518) +DestinationFeeManagerProcessFeeTest:test_processMultipleLinkReports() (gas: 330214) +DestinationFeeManagerProcessFeeTest:test_processMultipleUnwrappedNativeReports() (gas: 380713) +DestinationFeeManagerProcessFeeTest:test_processMultipleV1Reports() (gas: 132151) +DestinationFeeManagerProcessFeeTest:test_processMultipleWrappedNativeReports() (gas: 421113) +DestinationFeeManagerProcessFeeTest:test_processPoolIdsPassedMismatched() (gas: 179767) +DestinationFeeManagerProcessFeeTest:test_processV1V2V3Reports() (gas: 383320) +DestinationFeeManagerProcessFeeTest:test_processV1V2V3ReportsWithUnwrapped() (gas: 372635) +DestinationFeeManagerProcessFeeTest:test_removeVerifierNonExistentAddress() (gas: 34038) +DestinationFeeManagerProcessFeeTest:test_removeVerifierZeroAaddress() (gas: 31892) DestinationFeeManagerProcessFeeTest:test_reportWithNoExpiryOrFeeReturnsZero() (gas: 10850) -DestinationFeeManagerProcessFeeTest:test_revertOnSettingAnAddressZeroVerifier() (gas: 10636) -DestinationFeeManagerProcessFeeTest:test_rewardsAreCorrectlySentToEachAssociatedPoolWhenVerifyingInBulk() (gas: 262573) -DestinationFeeManagerProcessFeeTest:test_setDiscountOver100Percent() (gas: 19540) -DestinationFeeManagerProcessFeeTest:test_setRewardManagerZeroAddress() (gas: 10626) -DestinationFeeManagerProcessFeeTest:test_subscriberDiscountEventIsEmittedOnUpdate() (gas: 46279) -DestinationFeeManagerProcessFeeTest:test_surchargeFeeRoundsUpWhenUneven() (gas: 53169) -DestinationFeeManagerProcessFeeTest:test_surchargeIsApplied() (gas: 53094) -DestinationFeeManagerProcessFeeTest:test_surchargeIsAppliedForNativeFeeWithDiscount() (gas: 78983) -DestinationFeeManagerProcessFeeTest:test_surchargeIsNoLongerAppliedAfterRemoving() (gas: 48618) -DestinationFeeManagerProcessFeeTest:test_surchargeIsNotAppliedForLinkFee() (gas: 51891) -DestinationFeeManagerProcessFeeTest:test_surchargeIsNotAppliedWith100PercentDiscount() (gas: 77979) +DestinationFeeManagerProcessFeeTest:test_revertOnSettingAnAddressZeroVerifier() (gas: 31816) +DestinationFeeManagerProcessFeeTest:test_rewardsAreCorrectlySentToEachAssociatedPoolWhenVerifyingInBulk() (gas: 406125) +DestinationFeeManagerProcessFeeTest:test_setDiscountOver100Percent() (gas: 49552) +DestinationFeeManagerProcessFeeTest:test_setRewardManagerZeroAddress() (gas: 31818) +DestinationFeeManagerProcessFeeTest:test_subscriberDiscountEventIsEmittedOnUpdate() (gas: 76303) +DestinationFeeManagerProcessFeeTest:test_surchargeFeeRoundsUpWhenUneven() (gas: 85957) +DestinationFeeManagerProcessFeeTest:test_surchargeIsApplied() (gas: 85858) +DestinationFeeManagerProcessFeeTest:test_surchargeIsAppliedForNativeFeeWithDiscount() (gas: 154747) +DestinationFeeManagerProcessFeeTest:test_surchargeIsNoLongerAppliedAfterRemoving() (gas: 144294) +DestinationFeeManagerProcessFeeTest:test_surchargeIsNotAppliedForLinkFee() (gas: 82655) +DestinationFeeManagerProcessFeeTest:test_surchargeIsNotAppliedWith100PercentDiscount() (gas: 153743) DestinationFeeManagerProcessFeeTest:test_testRevertIfReportHasExpired() (gas: 14987) -DestinationRewardManagerClaimTest:test_claimAllRecipients() (gas: 275855) -DestinationRewardManagerClaimTest:test_claimMultipleRecipients() (gas: 153343) -DestinationRewardManagerClaimTest:test_claimRewardsWithDuplicatePoolIdsDoesNotPayoutTwice() (gas: 328505) -DestinationRewardManagerClaimTest:test_claimSingleRecipient() (gas: 88352) -DestinationRewardManagerClaimTest:test_claimUnevenAmountRoundsDown() (gas: 313709) -DestinationRewardManagerClaimTest:test_claimUnregisteredPoolId() (gas: 34440) -DestinationRewardManagerClaimTest:test_claimUnregisteredRecipient() (gas: 40492) -DestinationRewardManagerClaimTest:test_eventIsEmittedUponClaim() (gas: 86097) -DestinationRewardManagerClaimTest:test_eventIsNotEmittedUponUnsuccessfulClaim() (gas: 24708) -DestinationRewardManagerClaimTest:test_recipientsClaimMultipleDeposits() (gas: 383463) -DestinationRewardManagerClaimTest:test_singleRecipientClaimMultipleDeposits() (gas: 136376) -DestinationRewardManagerNoRecipientSet:test_claimAllRecipientsAfterRecipientsSet() (gas: 491680) -DestinationRewardManagerPayRecipientsTest:test_addFundsToPoolAsNonOwnerOrFeeManager() (gas: 11517) -DestinationRewardManagerPayRecipientsTest:test_addFundsToPoolAsOwner() (gas: 53958) -DestinationRewardManagerPayRecipientsTest:test_payAllRecipients() (gas: 251714) -DestinationRewardManagerPayRecipientsTest:test_payAllRecipientsFromNonAdminUser() (gas: 20472) -DestinationRewardManagerPayRecipientsTest:test_payAllRecipientsFromRecipientInPool() (gas: 247574) -DestinationRewardManagerPayRecipientsTest:test_payAllRecipientsWithAdditionalInvalidRecipient() (gas: 263142) -DestinationRewardManagerPayRecipientsTest:test_payAllRecipientsWithAdditionalUnregisteredRecipient() (gas: 266267) -DestinationRewardManagerPayRecipientsTest:test_payRecipientWithInvalidPool() (gas: 30758) -DestinationRewardManagerPayRecipientsTest:test_payRecipientsEmptyRecipientList() (gas: 27224) -DestinationRewardManagerPayRecipientsTest:test_payRecipientsWithInvalidPoolId() (gas: 33286) -DestinationRewardManagerPayRecipientsTest:test_paySingleRecipient() (gas: 86640) -DestinationRewardManagerPayRecipientsTest:test_paySubsetOfRecipientsInPool() (gas: 199671) -DestinationRewardManagerRecipientClaimDifferentWeightsTest:test_allRecipientsClaimingReceiveExpectedAmount() (gas: 279451) -DestinationRewardManagerRecipientClaimMultiplePoolsTest:test_claimAllRecipientsMultiplePools() (gas: 510086) -DestinationRewardManagerRecipientClaimMultiplePoolsTest:test_claimAllRecipientsSinglePool() (gas: 281937) -DestinationRewardManagerRecipientClaimMultiplePoolsTest:test_claimEmptyPoolWhenSecondPoolContainsFunds() (gas: 291744) -DestinationRewardManagerRecipientClaimMultiplePoolsTest:test_claimMultipleRecipientsMultiplePools() (gas: 261683) -DestinationRewardManagerRecipientClaimMultiplePoolsTest:test_claimMultipleRecipientsSinglePool() (gas: 153451) -DestinationRewardManagerRecipientClaimMultiplePoolsTest:test_claimSingleRecipientMultiplePools() (gas: 131961) -DestinationRewardManagerRecipientClaimMultiplePoolsTest:test_claimSingleUniqueRecipient() (gas: 105349) -DestinationRewardManagerRecipientClaimMultiplePoolsTest:test_claimUnevenAmountRoundsDown() (gas: 576622) -DestinationRewardManagerRecipientClaimMultiplePoolsTest:test_claimUnregisteredRecipient() (gas: 63570) +DestinationRewardManagerClaimTest:test_claimAllRecipients() (gas: 470831) +DestinationRewardManagerClaimTest:test_claimMultipleRecipients() (gas: 249331) +DestinationRewardManagerClaimTest:test_claimRewardsWithDuplicatePoolIdsDoesNotPayoutTwice() (gas: 617025) +DestinationRewardManagerClaimTest:test_claimSingleRecipient() (gas: 128196) +DestinationRewardManagerClaimTest:test_claimUnevenAmountRoundsDown() (gas: 611309) +DestinationRewardManagerClaimTest:test_claimUnregisteredPoolId() (gas: 67784) +DestinationRewardManagerClaimTest:test_claimUnregisteredRecipient() (gas: 73836) +DestinationRewardManagerClaimTest:test_eventIsEmittedUponClaim() (gas: 115441) +DestinationRewardManagerClaimTest:test_eventIsNotEmittedUponUnsuccessfulClaim() (gas: 54052) +DestinationRewardManagerClaimTest:test_recipientsClaimMultipleDeposits() (gas: 963359) +DestinationRewardManagerClaimTest:test_singleRecipientClaimMultipleDeposits() (gas: 341908) +DestinationRewardManagerNoRecipientSet:test_claimAllRecipientsAfterRecipientsSet() (gas: 945048) +DestinationRewardManagerPayRecipientsTest:test_addFundsToPoolAsNonOwnerOrFeeManager() (gas: 33929) +DestinationRewardManagerPayRecipientsTest:test_addFundsToPoolAsOwner() (gas: 121457) +DestinationRewardManagerPayRecipientsTest:test_payAllRecipients() (gas: 299230) +DestinationRewardManagerPayRecipientsTest:test_payAllRecipientsFromNonAdminUser() (gas: 51288) +DestinationRewardManagerPayRecipientsTest:test_payAllRecipientsFromRecipientInPool() (gas: 295090) +DestinationRewardManagerPayRecipientsTest:test_payAllRecipientsWithAdditionalInvalidRecipient() (gas: 310786) +DestinationRewardManagerPayRecipientsTest:test_payAllRecipientsWithAdditionalUnregisteredRecipient() (gas: 318651) +DestinationRewardManagerPayRecipientsTest:test_payRecipientWithInvalidPool() (gas: 57970) +DestinationRewardManagerPayRecipientsTest:test_payRecipientsEmptyRecipientList() (gas: 56056) +DestinationRewardManagerPayRecipientsTest:test_payRecipientsWithInvalidPoolId() (gas: 63614) +DestinationRewardManagerPayRecipientsTest:test_paySingleRecipient() (gas: 118352) +DestinationRewardManagerPayRecipientsTest:test_paySubsetOfRecipientsInPool() (gas: 247119) +DestinationRewardManagerRecipientClaimDifferentWeightsTest:test_allRecipientsClaimingReceiveExpectedAmount() (gas: 474427) +DestinationRewardManagerRecipientClaimMultiplePoolsTest:test_claimAllRecipientsMultiplePools() (gas: 921938) +DestinationRewardManagerRecipientClaimMultiplePoolsTest:test_claimAllRecipientsSinglePool() (gas: 490213) +DestinationRewardManagerRecipientClaimMultiplePoolsTest:test_claimEmptyPoolWhenSecondPoolContainsFunds() (gas: 544364) +DestinationRewardManagerRecipientClaimMultiplePoolsTest:test_claimMultipleRecipientsMultiplePools() (gas: 462259) +DestinationRewardManagerRecipientClaimMultiplePoolsTest:test_claimMultipleRecipientsSinglePool() (gas: 249439) +DestinationRewardManagerRecipientClaimMultiplePoolsTest:test_claimSingleRecipientMultiplePools() (gas: 220249) +DestinationRewardManagerRecipientClaimMultiplePoolsTest:test_claimSingleUniqueRecipient() (gas: 181537) +DestinationRewardManagerRecipientClaimMultiplePoolsTest:test_claimUnevenAmountRoundsDown() (gas: 1195822) +DestinationRewardManagerRecipientClaimMultiplePoolsTest:test_claimUnregisteredRecipient() (gas: 137758) DestinationRewardManagerRecipientClaimMultiplePoolsTest:test_getAvailableRewardsCursorAndTotalPoolsEqual() (gas: 10203) DestinationRewardManagerRecipientClaimMultiplePoolsTest:test_getAvailableRewardsCursorCannotBeGreaterThanTotalPools() (gas: 12747) DestinationRewardManagerRecipientClaimMultiplePoolsTest:test_getAvailableRewardsCursorSingleResult() (gas: 19607) DestinationRewardManagerRecipientClaimMultiplePoolsTest:test_getRewardsAvailableToRecipientInBothPools() (gas: 29075) -DestinationRewardManagerRecipientClaimMultiplePoolsTest:test_getRewardsAvailableToRecipientInBothPoolsWhereAlreadyClaimed() (gas: 147332) +DestinationRewardManagerRecipientClaimMultiplePoolsTest:test_getRewardsAvailableToRecipientInBothPoolsWhereAlreadyClaimed() (gas: 261620) DestinationRewardManagerRecipientClaimMultiplePoolsTest:test_getRewardsAvailableToRecipientInNoPools() (gas: 18533) DestinationRewardManagerRecipientClaimMultiplePoolsTest:test_getRewardsAvailableToRecipientInSinglePool() (gas: 24592) -DestinationRewardManagerRecipientClaimMultiplePoolsTest:test_recipientsClaimMultipleDeposits() (gas: 387913) -DestinationRewardManagerRecipientClaimMultiplePoolsTest:test_singleRecipientClaimMultipleDeposits() (gas: 136413) -DestinationRewardManagerRecipientClaimUnevenWeightTest:test_allRecipientsClaimingReceiveExpectedAmount() (gas: 198513) -DestinationRewardManagerRecipientClaimUnevenWeightTest:test_allRecipientsClaimingReceiveExpectedAmountWithSmallDeposit() (gas: 218386) -DestinationRewardManagerSetRecipientsTest:test_eventIsEmittedUponSetRecipients() (gas: 193864) -DestinationRewardManagerSetRecipientsTest:test_setRecipientContainsDuplicateRecipients() (gas: 128245) -DestinationRewardManagerSetRecipientsTest:test_setRewardRecipientFromManagerAddress() (gas: 213998) -DestinationRewardManagerSetRecipientsTest:test_setRewardRecipientFromNonOwnerOrFeeManagerAddress() (gas: 21496) -DestinationRewardManagerSetRecipientsTest:test_setRewardRecipientTwice() (gas: 195694) -DestinationRewardManagerSetRecipientsTest:test_setRewardRecipientWeights() (gas: 182793) -DestinationRewardManagerSetRecipientsTest:test_setRewardRecipientWithZeroAddress() (gas: 92387) -DestinationRewardManagerSetRecipientsTest:test_setRewardRecipientWithZeroWeight() (gas: 193497) -DestinationRewardManagerSetRecipientsTest:test_setRewardRecipients() (gas: 187752) -DestinationRewardManagerSetRecipientsTest:test_setRewardRecipientsIsEmpty() (gas: 89299) -DestinationRewardManagerSetRecipientsTest:test_setSingleRewardRecipient() (gas: 112534) -DestinationRewardManagerSetupTest:test_addFeeManagerExistingAddress() (gas: 35281) -DestinationRewardManagerSetupTest:test_addFeeManagerZeroAddress() (gas: 10603) -DestinationRewardManagerSetupTest:test_addRemoveFeeManager() (gas: 45186) -DestinationRewardManagerSetupTest:test_eventEmittedUponFeeManagerUpdate() (gas: 41553) -DestinationRewardManagerSetupTest:test_eventEmittedUponFeePaid() (gas: 261346) -DestinationRewardManagerSetupTest:test_rejectsZeroLinkAddressOnConstruction() (gas: 59481) -DestinationRewardManagerSetupTest:test_removeFeeManagerNonExistentAddress() (gas: 12778) -DestinationRewardManagerSetupTest:test_setFeeManagerZeroAddress() (gas: 17128) -DestinationRewardManagerUpdateRewardRecipientsMultiplePoolsTest:test_updatePrimaryRecipientWeights() (gas: 373641) -DestinationRewardManagerUpdateRewardRecipientsTest:test_eventIsEmittedUponUpdateRecipients() (gas: 279091) -DestinationRewardManagerUpdateRewardRecipientsTest:test_onlyAdminCanUpdateRecipients() (gas: 19705) -DestinationRewardManagerUpdateRewardRecipientsTest:test_partialUpdateRecipientWeights() (gas: 218957) -DestinationRewardManagerUpdateRewardRecipientsTest:test_updateAllRecipientsWithSameAddressAndWeight() (gas: 272897) -DestinationRewardManagerUpdateRewardRecipientsTest:test_updatePartialRecipientsToSubset() (gas: 254232) -DestinationRewardManagerUpdateRewardRecipientsTest:test_updatePartialRecipientsWithExcessiveWeight() (gas: 259219) -DestinationRewardManagerUpdateRewardRecipientsTest:test_updatePartialRecipientsWithSameAddressAndWeight() (gas: 148835) -DestinationRewardManagerUpdateRewardRecipientsTest:test_updatePartialRecipientsWithUnderWeightSet() (gas: 259293) -DestinationRewardManagerUpdateRewardRecipientsTest:test_updateRecipientWeights() (gas: 369122) -DestinationRewardManagerUpdateRewardRecipientsTest:test_updateRecipientWithNewZeroAddress() (gas: 270802) -DestinationRewardManagerUpdateRewardRecipientsTest:test_updateRecipientsContainsDuplicateRecipients() (gas: 288575) -DestinationRewardManagerUpdateRewardRecipientsTest:test_updateRecipientsToDifferentLargerSet() (gas: 407876) -DestinationRewardManagerUpdateRewardRecipientsTest:test_updateRecipientsToDifferentPartialSet() (gas: 318029) -DestinationRewardManagerUpdateRewardRecipientsTest:test_updateRecipientsToDifferentSet() (gas: 377784) -DestinationRewardManagerUpdateRewardRecipientsTest:test_updateRecipientsToDifferentSetWithInvalidWeights() (gas: 312122) -DestinationRewardManagerUpdateRewardRecipientsTest:test_updateRecipientsUpdateAndRemoveExistingForLargerSet() (gas: 399699) -DestinationRewardManagerUpdateRewardRecipientsTest:test_updateRecipientsUpdateAndRemoveExistingForSmallerSet() (gas: 289513) -DestinationVerifierBulkVerifyBillingReport:test_verifyWithBulkLink() (gas: 641794) -DestinationVerifierBulkVerifyBillingReport:test_verifyWithBulkNative() (gas: 643260) -DestinationVerifierBulkVerifyBillingReport:test_verifyWithBulkNativeUnwrapped() (gas: 664486) -DestinationVerifierBulkVerifyBillingReport:test_verifyWithBulkNativeUnwrappedReturnsChange() (gas: 664441) +DestinationRewardManagerRecipientClaimMultiplePoolsTest:test_recipientsClaimMultipleDeposits() (gas: 965109) +DestinationRewardManagerRecipientClaimMultiplePoolsTest:test_singleRecipientClaimMultipleDeposits() (gas: 341945) +DestinationRewardManagerRecipientClaimUnevenWeightTest:test_allRecipientsClaimingReceiveExpectedAmount() (gas: 394245) +DestinationRewardManagerRecipientClaimUnevenWeightTest:test_allRecipientsClaimingReceiveExpectedAmountWithSmallDeposit() (gas: 403746) +DestinationRewardManagerSetRecipientsTest:test_eventIsEmittedUponSetRecipients() (gas: 225480) +DestinationRewardManagerSetRecipientsTest:test_setRecipientContainsDuplicateRecipients() (gas: 162133) +DestinationRewardManagerSetRecipientsTest:test_setRewardRecipientFromManagerAddress() (gas: 281046) +DestinationRewardManagerSetRecipientsTest:test_setRewardRecipientFromNonOwnerOrFeeManagerAddress() (gas: 53112) +DestinationRewardManagerSetRecipientsTest:test_setRewardRecipientTwice() (gas: 269426) +DestinationRewardManagerSetRecipientsTest:test_setRewardRecipientWeights() (gas: 214169) +DestinationRewardManagerSetRecipientsTest:test_setRewardRecipientWithZeroAddress() (gas: 123763) +DestinationRewardManagerSetRecipientsTest:test_setRewardRecipientWithZeroWeight() (gas: 223109) +DestinationRewardManagerSetRecipientsTest:test_setRewardRecipients() (gas: 216868) +DestinationRewardManagerSetRecipientsTest:test_setRewardRecipientsIsEmpty() (gas: 119667) +DestinationRewardManagerSetRecipientsTest:test_setSingleRewardRecipient() (gas: 139946) +DestinationRewardManagerSetupTest:test_addFeeManagerExistingAddress() (gas: 81713) +DestinationRewardManagerSetupTest:test_addFeeManagerZeroAddress() (gas: 31795) +DestinationRewardManagerSetupTest:test_addRemoveFeeManager() (gas: 146060) +DestinationRewardManagerSetupTest:test_eventEmittedUponFeeManagerUpdate() (gas: 70485) +DestinationRewardManagerSetupTest:test_eventEmittedUponFeePaid() (gas: 351606) +DestinationRewardManagerSetupTest:test_rejectsZeroLinkAddressOnConstruction() (gas: 236941) +DestinationRewardManagerSetupTest:test_removeFeeManagerNonExistentAddress() (gas: 33994) +DestinationRewardManagerSetupTest:test_setFeeManagerZeroAddress() (gas: 45820) +DestinationRewardManagerUpdateRewardRecipientsMultiplePoolsTest:test_updatePrimaryRecipientWeights() (gas: 791677) +DestinationRewardManagerUpdateRewardRecipientsTest:test_eventIsEmittedUponUpdateRecipients() (gas: 329907) +DestinationRewardManagerUpdateRewardRecipientsTest:test_onlyAdminCanUpdateRecipients() (gas: 51321) +DestinationRewardManagerUpdateRewardRecipientsTest:test_partialUpdateRecipientWeights() (gas: 498669) +DestinationRewardManagerUpdateRewardRecipientsTest:test_updateAllRecipientsWithSameAddressAndWeight() (gas: 321213) +DestinationRewardManagerUpdateRewardRecipientsTest:test_updatePartialRecipientsToSubset() (gas: 268804) +DestinationRewardManagerUpdateRewardRecipientsTest:test_updatePartialRecipientsWithExcessiveWeight() (gas: 295635) +DestinationRewardManagerUpdateRewardRecipientsTest:test_updatePartialRecipientsWithSameAddressAndWeight() (gas: 196315) +DestinationRewardManagerUpdateRewardRecipientsTest:test_updatePartialRecipientsWithUnderWeightSet() (gas: 295709) +DestinationRewardManagerUpdateRewardRecipientsTest:test_updateRecipientWeights() (gas: 789858) +DestinationRewardManagerUpdateRewardRecipientsTest:test_updateRecipientWithNewZeroAddress() (gas: 307474) +DestinationRewardManagerUpdateRewardRecipientsTest:test_updateRecipientsContainsDuplicateRecipients() (gas: 327263) +DestinationRewardManagerUpdateRewardRecipientsTest:test_updateRecipientsToDifferentLargerSet() (gas: 415544) +DestinationRewardManagerUpdateRewardRecipientsTest:test_updateRecipientsToDifferentPartialSet() (gas: 323993) +DestinationRewardManagerUpdateRewardRecipientsTest:test_updateRecipientsToDifferentSet() (gas: 384884) +DestinationRewardManagerUpdateRewardRecipientsTest:test_updateRecipientsToDifferentSetWithInvalidWeights() (gas: 368586) +DestinationRewardManagerUpdateRewardRecipientsTest:test_updateRecipientsUpdateAndRemoveExistingForLargerSet() (gas: 448411) +DestinationRewardManagerUpdateRewardRecipientsTest:test_updateRecipientsUpdateAndRemoveExistingForSmallerSet() (gas: 304653) +DestinationVerifierBulkVerifyBillingReport:test_verifyWithBulkLink() (gas: 812222) +DestinationVerifierBulkVerifyBillingReport:test_verifyWithBulkNative() (gas: 805212) +DestinationVerifierBulkVerifyBillingReport:test_verifyWithBulkNativeUnwrapped() (gas: 771218) +DestinationVerifierBulkVerifyBillingReport:test_verifyWithBulkNativeUnwrappedReturnsChange() (gas: 771173) DestinationVerifierConstructorTest:test_falseIfIsNotCorrectInterface() (gas: 5649) -DestinationVerifierConstructorTest:test_revertsIfInitializedWithEmptyVerifierProxy() (gas: 60885) -DestinationVerifierConstructorTest:test_trueIfIsCorrectInterface() (gas: 6529) -DestinationVerifierConstructorTest:test_typeAndVersion() (gas: 2624392) -DestinationVerifierProxyInitializeVerifierTest:test_correctlySetsTheOwner() (gas: 859400) +DestinationVerifierConstructorTest:test_revertsIfInitializedWithEmptyVerifierProxy() (gas: 298825) +DestinationVerifierConstructorTest:test_trueIfIsCorrectInterface() (gas: 11029) +DestinationVerifierConstructorTest:test_typeAndVersion() (gas: 2864572) +DestinationVerifierProxyInitializeVerifierTest:test_correctlySetsTheOwner() (gas: 976712) DestinationVerifierProxyInitializeVerifierTest:test_correctlySetsVersion() (gas: 9842) -DestinationVerifierProxyInitializeVerifierTest:test_setVerifierCalledByNoOwner() (gas: 17483) -DestinationVerifierProxyInitializeVerifierTest:test_setVerifierOk() (gas: 24524) -DestinationVerifierProxyInitializeVerifierTest:test_setVerifierWhichDoesntHonourInterface() (gas: 16535) -DestinationVerifierSetAccessControllerTest:test_emitsTheCorrectEvent() (gas: 35391) -DestinationVerifierSetAccessControllerTest:test_revertsIfCalledByNonOwner() (gas: 15089) -DestinationVerifierSetAccessControllerTest:test_successfullySetsNewAccessController() (gas: 32107) -DestinationVerifierSetAccessControllerTest:test_successfullySetsNewAccessControllerIsEmpty() (gas: 12163) -DestinationVerifierSetConfigTest:test_NoDonConfigAlreadyExists() (gas: 2877761) -DestinationVerifierSetConfigTest:test_addressesAndWeightsDoNotProduceSideEffectsInDonConfigIds() (gas: 1323263) -DestinationVerifierSetConfigTest:test_donConfigIdIsSameForSignersInDifferentOrder() (gas: 1290458) -DestinationVerifierSetConfigTest:test_removeLatestConfig() (gas: 786103) -DestinationVerifierSetConfigTest:test_removeLatestConfigWhenNoConfigShouldFail() (gas: 12870) -DestinationVerifierSetConfigTest:test_revertsIfCalledByNonOwner() (gas: 174936) -DestinationVerifierSetConfigTest:test_revertsIfDuplicateSigners() (gas: 171284) -DestinationVerifierSetConfigTest:test_revertsIfFaultToleranceIsZero() (gas: 168506) -DestinationVerifierSetConfigTest:test_revertsIfNotEnoughSigners() (gas: 11578) -DestinationVerifierSetConfigTest:test_revertsIfSetWithTooManySigners() (gas: 17928) -DestinationVerifierSetConfigTest:test_revertsIfSignerContainsZeroAddress() (gas: 324013) -DestinationVerifierSetConfigTest:test_setConfigActiveUnknownDonConfigId() (gas: 13102) -DestinationVerifierSetConfigTest:test_setConfigWithActivationTime() (gas: 1088137) -DestinationVerifierSetConfigTest:test_setConfigWithActivationTimeEarlierThanLatestConfigShouldFail() (gas: 1963051) -DestinationVerifierSetConfigTest:test_setConfigWithActivationTimeNoFutureTimeShouldFail() (gas: 259477) -DestinationVerifierSetConfigTest:test_setConfigWithActivationTimeTheSameAsLatestConfigShouldFail() (gas: 1283835) -FeeManagerProcessFeeTest:test_DiscountIsAppliedForNative() (gas: 52313) -FeeManagerProcessFeeTest:test_DiscountIsReturnedForNative() (gas: 52263) -FeeManagerProcessFeeTest:test_DiscountIsReturnedForNativeWithSurcharge() (gas: 78498) -FeeManagerProcessFeeTest:test_V1PayloadVerifies() (gas: 26980) -FeeManagerProcessFeeTest:test_V1PayloadVerifiesAndReturnsChange() (gas: 57917) -FeeManagerProcessFeeTest:test_V2PayloadVerifies() (gas: 116041) -FeeManagerProcessFeeTest:test_V2PayloadWithoutQuoteFails() (gas: 27389) -FeeManagerProcessFeeTest:test_V2PayloadWithoutZeroFee() (gas: 70342) -FeeManagerProcessFeeTest:test_WithdrawERC20() (gas: 71587) -FeeManagerProcessFeeTest:test_WithdrawNonAdminAddr() (gas: 56286) -FeeManagerProcessFeeTest:test_WithdrawUnwrappedNative() (gas: 25369) +DestinationVerifierProxyInitializeVerifierTest:test_setVerifierCalledByNoOwner() (gas: 38915) +DestinationVerifierProxyInitializeVerifierTest:test_setVerifierOk() (gas: 67456) +DestinationVerifierProxyInitializeVerifierTest:test_setVerifierWhichDoesntHonourInterface() (gas: 37955) +DestinationVerifierSetAccessControllerTest:test_emitsTheCorrectEvent() (gas: 56607) +DestinationVerifierSetAccessControllerTest:test_revertsIfCalledByNonOwner() (gas: 38805) +DestinationVerifierSetAccessControllerTest:test_successfullySetsNewAccessController() (gas: 55323) +DestinationVerifierSetAccessControllerTest:test_successfullySetsNewAccessControllerIsEmpty() (gas: 35355) +DestinationVerifierSetConfigTest:test_NoDonConfigAlreadyExists() (gas: 2994401) +DestinationVerifierSetConfigTest:test_addressesAndWeightsDoNotProduceSideEffectsInDonConfigIds() (gas: 1458055) +DestinationVerifierSetConfigTest:test_donConfigIdIsSameForSignersInDifferentOrder() (gas: 1424730) +DestinationVerifierSetConfigTest:test_removeLatestConfig() (gas: 1311745) +DestinationVerifierSetConfigTest:test_removeLatestConfigWhenNoConfigShouldFail() (gas: 33934) +DestinationVerifierSetConfigTest:test_revertsIfCalledByNonOwner() (gas: 210572) +DestinationVerifierSetConfigTest:test_revertsIfDuplicateSigners() (gas: 204420) +DestinationVerifierSetConfigTest:test_revertsIfFaultToleranceIsZero() (gas: 201630) +DestinationVerifierSetConfigTest:test_revertsIfNotEnoughSigners() (gas: 33634) +DestinationVerifierSetConfigTest:test_revertsIfSetWithTooManySigners() (gas: 43788) +DestinationVerifierSetConfigTest:test_revertsIfSignerContainsZeroAddress() (gas: 356909) +DestinationVerifierSetConfigTest:test_setConfigActiveUnknownDonConfigId() (gas: 34446) +DestinationVerifierSetConfigTest:test_setConfigWithActivationTime() (gas: 1121413) +DestinationVerifierSetConfigTest:test_setConfigWithActivationTimeEarlierThanLatestConfigShouldFail() (gas: 2035499) +DestinationVerifierSetConfigTest:test_setConfigWithActivationTimeNoFutureTimeShouldFail() (gas: 292789) +DestinationVerifierSetConfigTest:test_setConfigWithActivationTimeTheSameAsLatestConfigShouldFail() (gas: 1418107) +FeeManagerProcessFeeTest:test_DiscountIsAppliedForNative() (gas: 88313) +FeeManagerProcessFeeTest:test_DiscountIsReturnedForNative() (gas: 88263) +FeeManagerProcessFeeTest:test_DiscountIsReturnedForNativeWithSurcharge() (gas: 154262) +FeeManagerProcessFeeTest:test_V1PayloadVerifies() (gas: 57184) +FeeManagerProcessFeeTest:test_V1PayloadVerifiesAndReturnsChange() (gas: 93233) +FeeManagerProcessFeeTest:test_V2PayloadVerifies() (gas: 212693) +FeeManagerProcessFeeTest:test_V2PayloadWithoutQuoteFails() (gas: 60093) +FeeManagerProcessFeeTest:test_V2PayloadWithoutZeroFee() (gas: 103286) +FeeManagerProcessFeeTest:test_WithdrawERC20() (gas: 171543) +FeeManagerProcessFeeTest:test_WithdrawNonAdminAddr() (gas: 118942) +FeeManagerProcessFeeTest:test_WithdrawUnwrappedNative() (gas: 66141) FeeManagerProcessFeeTest:test_baseFeeIsAppliedForLink() (gas: 14335) FeeManagerProcessFeeTest:test_baseFeeIsAppliedForNative() (gas: 17318) -FeeManagerProcessFeeTest:test_correctDiscountIsAppliedWhenBothTokensAreDiscounted() (gas: 90369) -FeeManagerProcessFeeTest:test_discountAIsNotAppliedWhenSetForOtherUsers() (gas: 56224) -FeeManagerProcessFeeTest:test_discountFeeRoundsDownWhenUneven() (gas: 52515) -FeeManagerProcessFeeTest:test_discountIsAppliedForLink() (gas: 49326) -FeeManagerProcessFeeTest:test_discountIsAppliedWith100PercentSurcharge() (gas: 78571) -FeeManagerProcessFeeTest:test_discountIsNoLongerAppliedAfterRemoving() (gas: 45980) -FeeManagerProcessFeeTest:test_discountIsNotAppliedForInvalidTokenAddress() (gas: 17560) -FeeManagerProcessFeeTest:test_discountIsNotAppliedToOtherFeeds() (gas: 54272) -FeeManagerProcessFeeTest:test_discountIsReturnedForLink() (gas: 49276) +FeeManagerProcessFeeTest:test_correctDiscountIsAppliedWhenBothTokensAreDiscounted() (gas: 173869) +FeeManagerProcessFeeTest:test_discountAIsNotAppliedWhenSetForOtherUsers() (gas: 88224) +FeeManagerProcessFeeTest:test_discountFeeRoundsDownWhenUneven() (gas: 88539) +FeeManagerProcessFeeTest:test_discountIsAppliedForLink() (gas: 85326) +FeeManagerProcessFeeTest:test_discountIsAppliedWith100PercentSurcharge() (gas: 154335) +FeeManagerProcessFeeTest:test_discountIsNoLongerAppliedAfterRemoving() (gas: 143468) +FeeManagerProcessFeeTest:test_discountIsNotAppliedForInvalidTokenAddress() (gas: 47320) +FeeManagerProcessFeeTest:test_discountIsNotAppliedToOtherFeeds() (gas: 88272) +FeeManagerProcessFeeTest:test_discountIsReturnedForLink() (gas: 85276) FeeManagerProcessFeeTest:test_emptyQuoteRevertsWithError() (gas: 12163) -FeeManagerProcessFeeTest:test_eventIsEmittedAfterSurchargeIsSet() (gas: 41350) -FeeManagerProcessFeeTest:test_eventIsEmittedIfNotEnoughLink() (gas: 172719) -FeeManagerProcessFeeTest:test_eventIsEmittedUponWithdraw() (gas: 69014) -FeeManagerProcessFeeTest:test_feeIsUpdatedAfterDiscountIsRemoved() (gas: 49191) -FeeManagerProcessFeeTest:test_feeIsUpdatedAfterNewDiscountIsApplied() (gas: 67035) -FeeManagerProcessFeeTest:test_feeIsUpdatedAfterNewSurchargeIsApplied() (gas: 63660) -FeeManagerProcessFeeTest:test_feeIsZeroWith100PercentDiscount() (gas: 51713) +FeeManagerProcessFeeTest:test_eventIsEmittedAfterSurchargeIsSet() (gas: 70114) +FeeManagerProcessFeeTest:test_eventIsEmittedIfNotEnoughLink() (gas: 288431) +FeeManagerProcessFeeTest:test_eventIsEmittedUponWithdraw() (gas: 138898) +FeeManagerProcessFeeTest:test_feeIsUpdatedAfterDiscountIsRemoved() (gas: 149482) +FeeManagerProcessFeeTest:test_feeIsUpdatedAfterNewDiscountIsApplied() (gas: 159435) +FeeManagerProcessFeeTest:test_feeIsUpdatedAfterNewSurchargeIsApplied() (gas: 146788) +FeeManagerProcessFeeTest:test_feeIsZeroWith100PercentDiscount() (gas: 87713) FeeManagerProcessFeeTest:test_getBaseRewardWithLinkQuote() (gas: 14333) -FeeManagerProcessFeeTest:test_getLinkFeeIsRoundedUp() (gas: 49497) -FeeManagerProcessFeeTest:test_getLinkRewardIsSameAsFee() (gas: 54949) -FeeManagerProcessFeeTest:test_getLinkRewardWithNativeQuoteAndSurchargeWithLinkDiscount() (gas: 82455) -FeeManagerProcessFeeTest:test_getRewardWithLinkDiscount() (gas: 49344) -FeeManagerProcessFeeTest:test_getRewardWithLinkQuoteAndLinkDiscount() (gas: 49325) +FeeManagerProcessFeeTest:test_getLinkFeeIsRoundedUp() (gas: 85521) +FeeManagerProcessFeeTest:test_getLinkRewardIsSameAsFee() (gas: 101473) +FeeManagerProcessFeeTest:test_getLinkRewardWithNativeQuoteAndSurchargeWithLinkDiscount() (gas: 154243) +FeeManagerProcessFeeTest:test_getRewardWithLinkDiscount() (gas: 85344) +FeeManagerProcessFeeTest:test_getRewardWithLinkQuoteAndLinkDiscount() (gas: 85325) FeeManagerProcessFeeTest:test_getRewardWithNativeQuote() (gas: 17316) -FeeManagerProcessFeeTest:test_getRewardWithNativeQuoteAndSurcharge() (gas: 50506) -FeeManagerProcessFeeTest:test_linkAvailableForPaymentReturnsLinkBalance() (gas: 52451) -FeeManagerProcessFeeTest:test_nativeSurcharge0Percent() (gas: 30516) -FeeManagerProcessFeeTest:test_nativeSurcharge100Percent() (gas: 50531) -FeeManagerProcessFeeTest:test_nativeSurchargeCannotExceed100Percent() (gas: 17175) -FeeManagerProcessFeeTest:test_nativeSurchargeEventIsEmittedOnUpdate() (gas: 41396) -FeeManagerProcessFeeTest:test_noFeeIsAppliedWhenReportHasZeroFee() (gas: 51558) -FeeManagerProcessFeeTest:test_noFeeIsAppliedWhenReportHasZeroFeeAndDiscountAndSurchargeIsSet() (gas: 77749) -FeeManagerProcessFeeTest:test_nonAdminProxyUserCannotProcessFee() (gas: 21895) -FeeManagerProcessFeeTest:test_nonAdminUserCanNotSetDiscount() (gas: 19806) -FeeManagerProcessFeeTest:test_payLinkDeficit() (gas: 193814) -FeeManagerProcessFeeTest:test_payLinkDeficitOnlyCallableByAdmin() (gas: 17413) -FeeManagerProcessFeeTest:test_payLinkDeficitPaysAllFeesProcessed() (gas: 213857) -FeeManagerProcessFeeTest:test_payLinkDeficitTwice() (gas: 198188) -FeeManagerProcessFeeTest:test_processFeeAsProxy() (gas: 116379) -FeeManagerProcessFeeTest:test_processFeeDefaultReportsStillVerifiesWithEmptyQuote() (gas: 27468) -FeeManagerProcessFeeTest:test_processFeeEmitsEventIfNotEnoughLink() (gas: 161815) -FeeManagerProcessFeeTest:test_processFeeIfSubscriberIsSelf() (gas: 27833) -FeeManagerProcessFeeTest:test_processFeeNative() (gas: 172431) -FeeManagerProcessFeeTest:test_processFeeUsesCorrectDigest() (gas: 117339) -FeeManagerProcessFeeTest:test_processFeeWithDefaultReportPayloadAndQuoteStillVerifies() (gas: 29542) -FeeManagerProcessFeeTest:test_processFeeWithDiscountEmitsEvent() (gas: 241320) -FeeManagerProcessFeeTest:test_processFeeWithInvalidReportVersionFailsToDecode() (gas: 28511) -FeeManagerProcessFeeTest:test_processFeeWithNoDiscountDoesNotEmitEvent() (gas: 166386) -FeeManagerProcessFeeTest:test_processFeeWithUnwrappedNative() (gas: 179965) -FeeManagerProcessFeeTest:test_processFeeWithUnwrappedNativeLinkAddress() (gas: 131450) -FeeManagerProcessFeeTest:test_processFeeWithUnwrappedNativeLinkAddressExcessiveFee() (gas: 155370) -FeeManagerProcessFeeTest:test_processFeeWithUnwrappedNativeShortFunds() (gas: 92641) -FeeManagerProcessFeeTest:test_processFeeWithUnwrappedNativeWithExcessiveFee() (gas: 186928) -FeeManagerProcessFeeTest:test_processFeeWithWithCorruptQuotePayload() (gas: 70653) -FeeManagerProcessFeeTest:test_processFeeWithWithEmptyQuotePayload() (gas: 27727) -FeeManagerProcessFeeTest:test_processFeeWithWithZeroQuotePayload() (gas: 27783) -FeeManagerProcessFeeTest:test_processFeeWithZeroLinkNonZeroNativeWithLinkQuote() (gas: 32973) -FeeManagerProcessFeeTest:test_processFeeWithZeroLinkNonZeroNativeWithNativeQuote() (gas: 152330) -FeeManagerProcessFeeTest:test_processFeeWithZeroNativeNonZeroLinkReturnsChange() (gas: 53470) -FeeManagerProcessFeeTest:test_processFeeWithZeroNativeNonZeroLinkWithLinkQuote() (gas: 116290) -FeeManagerProcessFeeTest:test_processFeeWithZeroNativeNonZeroLinkWithNativeQuote() (gas: 35744) -FeeManagerProcessFeeTest:test_processMultipleLinkReports() (gas: 221409) -FeeManagerProcessFeeTest:test_processMultipleUnwrappedNativeReports() (gas: 255270) -FeeManagerProcessFeeTest:test_processMultipleV1Reports() (gas: 74137) -FeeManagerProcessFeeTest:test_processMultipleWrappedNativeReports() (gas: 238406) -FeeManagerProcessFeeTest:test_processV1V2V3Reports() (gas: 206200) -FeeManagerProcessFeeTest:test_processV1V2V3ReportsWithUnwrapped() (gas: 247854) +FeeManagerProcessFeeTest:test_getRewardWithNativeQuoteAndSurcharge() (gas: 83270) +FeeManagerProcessFeeTest:test_linkAvailableForPaymentReturnsLinkBalance() (gas: 100059) +FeeManagerProcessFeeTest:test_nativeSurcharge0Percent() (gas: 63208) +FeeManagerProcessFeeTest:test_nativeSurcharge100Percent() (gas: 83295) +FeeManagerProcessFeeTest:test_nativeSurchargeCannotExceed100Percent() (gas: 45951) +FeeManagerProcessFeeTest:test_nativeSurchargeEventIsEmittedOnUpdate() (gas: 70184) +FeeManagerProcessFeeTest:test_noFeeIsAppliedWhenReportHasZeroFee() (gas: 87558) +FeeManagerProcessFeeTest:test_noFeeIsAppliedWhenReportHasZeroFeeAndDiscountAndSurchargeIsSet() (gas: 153513) +FeeManagerProcessFeeTest:test_nonAdminProxyUserCannotProcessFee() (gas: 55475) +FeeManagerProcessFeeTest:test_nonAdminUserCanNotSetDiscount() (gas: 49806) +FeeManagerProcessFeeTest:test_payLinkDeficit() (gas: 391369) +FeeManagerProcessFeeTest:test_payLinkDeficitOnlyCallableByAdmin() (gas: 46489) +FeeManagerProcessFeeTest:test_payLinkDeficitPaysAllFeesProcessed() (gas: 499579) +FeeManagerProcessFeeTest:test_payLinkDeficitTwice() (gas: 439412) +FeeManagerProcessFeeTest:test_processFeeAsProxy() (gas: 213287) +FeeManagerProcessFeeTest:test_processFeeDefaultReportsStillVerifiesWithEmptyQuote() (gas: 57784) +FeeManagerProcessFeeTest:test_processFeeEmitsEventIfNotEnoughLink() (gas: 309831) +FeeManagerProcessFeeTest:test_processFeeIfSubscriberIsSelf() (gas: 61033) +FeeManagerProcessFeeTest:test_processFeeNative() (gas: 335547) +FeeManagerProcessFeeTest:test_processFeeUsesCorrectDigest() (gas: 220747) +FeeManagerProcessFeeTest:test_processFeeWithDefaultReportPayloadAndQuoteStillVerifies() (gas: 60098) +FeeManagerProcessFeeTest:test_processFeeWithDiscountEmitsEvent() (gas: 439136) +FeeManagerProcessFeeTest:test_processFeeWithInvalidReportVersionFailsToDecode() (gas: 60171) +FeeManagerProcessFeeTest:test_processFeeWithNoDiscountDoesNotEmitEvent() (gas: 299502) +FeeManagerProcessFeeTest:test_processFeeWithUnwrappedNative() (gas: 290373) +FeeManagerProcessFeeTest:test_processFeeWithUnwrappedNativeLinkAddress() (gas: 198258) +FeeManagerProcessFeeTest:test_processFeeWithUnwrappedNativeLinkAddressExcessiveFee() (gas: 263778) +FeeManagerProcessFeeTest:test_processFeeWithUnwrappedNativeShortFunds() (gas: 154949) +FeeManagerProcessFeeTest:test_processFeeWithUnwrappedNativeWithExcessiveFee() (gas: 297336) +FeeManagerProcessFeeTest:test_processFeeWithWithCorruptQuotePayload() (gas: 103853) +FeeManagerProcessFeeTest:test_processFeeWithWithEmptyQuotePayload() (gas: 60687) +FeeManagerProcessFeeTest:test_processFeeWithWithZeroQuotePayload() (gas: 60743) +FeeManagerProcessFeeTest:test_processFeeWithZeroLinkNonZeroNativeWithLinkQuote() (gas: 63625) +FeeManagerProcessFeeTest:test_processFeeWithZeroLinkNonZeroNativeWithNativeQuote() (gas: 302298) +FeeManagerProcessFeeTest:test_processFeeWithZeroNativeNonZeroLinkReturnsChange() (gas: 86622) +FeeManagerProcessFeeTest:test_processFeeWithZeroNativeNonZeroLinkWithLinkQuote() (gas: 213150) +FeeManagerProcessFeeTest:test_processFeeWithZeroNativeNonZeroLinkWithNativeQuote() (gas: 66396) +FeeManagerProcessFeeTest:test_processMultipleLinkReports() (gas: 316609) +FeeManagerProcessFeeTest:test_processMultipleUnwrappedNativeReports() (gas: 367182) +FeeManagerProcessFeeTest:test_processMultipleV1Reports() (gas: 122909) +FeeManagerProcessFeeTest:test_processMultipleWrappedNativeReports() (gas: 407538) +FeeManagerProcessFeeTest:test_processV1V2V3Reports() (gas: 369792) +FeeManagerProcessFeeTest:test_processV1V2V3ReportsWithUnwrapped() (gas: 359086) FeeManagerProcessFeeTest:test_reportWithNoExpiryOrFeeReturnsZero() (gas: 10781) -FeeManagerProcessFeeTest:test_setDiscountOver100Percent() (gas: 19562) -FeeManagerProcessFeeTest:test_subscriberDiscountEventIsEmittedOnUpdate() (gas: 46255) -FeeManagerProcessFeeTest:test_surchargeFeeRoundsUpWhenUneven() (gas: 50883) -FeeManagerProcessFeeTest:test_surchargeIsApplied() (gas: 50764) -FeeManagerProcessFeeTest:test_surchargeIsAppliedForNativeFeeWithDiscount() (gas: 78933) -FeeManagerProcessFeeTest:test_surchargeIsNoLongerAppliedAfterRemoving() (gas: 46544) -FeeManagerProcessFeeTest:test_surchargeIsNotAppliedForLinkFee() (gas: 49606) -FeeManagerProcessFeeTest:test_surchargeIsNotAppliedWith100PercentDiscount() (gas: 77929) +FeeManagerProcessFeeTest:test_setDiscountOver100Percent() (gas: 49574) +FeeManagerProcessFeeTest:test_subscriberDiscountEventIsEmittedOnUpdate() (gas: 76279) +FeeManagerProcessFeeTest:test_surchargeFeeRoundsUpWhenUneven() (gas: 83671) +FeeManagerProcessFeeTest:test_surchargeIsApplied() (gas: 83528) +FeeManagerProcessFeeTest:test_surchargeIsAppliedForNativeFeeWithDiscount() (gas: 154697) +FeeManagerProcessFeeTest:test_surchargeIsNoLongerAppliedAfterRemoving() (gas: 139702) +FeeManagerProcessFeeTest:test_surchargeIsNotAppliedForLinkFee() (gas: 80370) +FeeManagerProcessFeeTest:test_surchargeIsNotAppliedWith100PercentDiscount() (gas: 153693) FeeManagerProcessFeeTest:test_testRevertIfReportHasExpired() (gas: 14941) -FeeManagerProcessFeeTestV051:test_DiscountIsAppliedForNative() (gas: 52318) -FeeManagerProcessFeeTestV051:test_DiscountIsReturnedForNative() (gas: 52311) -FeeManagerProcessFeeTestV051:test_DiscountIsReturnedForNativeWithSurcharge() (gas: 78568) -FeeManagerProcessFeeTestV051:test_GlobalDiscountCantBeSetToMoreThanMaximum() (gas: 19501) -FeeManagerProcessFeeTestV051:test_GlobalDiscountIsOverridenByIndividualDiscountLink() (gas: 79132) -FeeManagerProcessFeeTestV051:test_GlobalDiscountIsOverridenByIndividualDiscountNative() (gas: 82146) -FeeManagerProcessFeeTestV051:test_GlobalDiscountIsUpdatedAfterBeingSetToZeroLink() (gas: 47753) -FeeManagerProcessFeeTestV051:test_GlobalDiscountIsUpdatedAfterBeingSetToZeroNative() (gas: 50933) -FeeManagerProcessFeeTestV051:test_GlobalDiscountWithLink() (gas: 51481) -FeeManagerProcessFeeTestV051:test_GlobalDiscountWithNative() (gas: 54427) -FeeManagerProcessFeeTestV051:test_GlobalDiscountWithNativeAndLink() (gas: 83297) -FeeManagerProcessFeeTestV051:test_V1PayloadVerifies() (gas: 26980) -FeeManagerProcessFeeTestV051:test_V1PayloadVerifiesAndReturnsChange() (gas: 57943) -FeeManagerProcessFeeTestV051:test_V2PayloadVerifies() (gas: 118325) -FeeManagerProcessFeeTestV051:test_V2PayloadWithoutQuoteFails() (gas: 27389) -FeeManagerProcessFeeTestV051:test_V2PayloadWithoutZeroFee() (gas: 72626) -FeeManagerProcessFeeTestV051:test_WithdrawERC20() (gas: 71631) -FeeManagerProcessFeeTestV051:test_WithdrawNonAdminAddr() (gas: 56309) -FeeManagerProcessFeeTestV051:test_WithdrawUnwrappedNative() (gas: 25445) +FeeManagerProcessFeeTestV051:test_DiscountIsAppliedForNative() (gas: 88318) +FeeManagerProcessFeeTestV051:test_DiscountIsReturnedForNative() (gas: 88311) +FeeManagerProcessFeeTestV051:test_DiscountIsReturnedForNativeWithSurcharge() (gas: 154332) +FeeManagerProcessFeeTestV051:test_GlobalDiscountCantBeSetToMoreThanMaximum() (gas: 49013) +FeeManagerProcessFeeTestV051:test_GlobalDiscountIsOverridenByIndividualDiscountLink() (gas: 155632) +FeeManagerProcessFeeTestV051:test_GlobalDiscountIsOverridenByIndividualDiscountNative() (gas: 158646) +FeeManagerProcessFeeTestV051:test_GlobalDiscountIsUpdatedAfterBeingSetToZeroLink() (gas: 146685) +FeeManagerProcessFeeTestV051:test_GlobalDiscountIsUpdatedAfterBeingSetToZeroNative() (gas: 152660) +FeeManagerProcessFeeTestV051:test_GlobalDiscountWithLink() (gas: 86981) +FeeManagerProcessFeeTestV051:test_GlobalDiscountWithNative() (gas: 89927) +FeeManagerProcessFeeTestV051:test_GlobalDiscountWithNativeAndLink() (gas: 157297) +FeeManagerProcessFeeTestV051:test_V1PayloadVerifies() (gas: 57184) +FeeManagerProcessFeeTestV051:test_V1PayloadVerifiesAndReturnsChange() (gas: 93259) +FeeManagerProcessFeeTestV051:test_V2PayloadVerifies() (gas: 214977) +FeeManagerProcessFeeTestV051:test_V2PayloadWithoutQuoteFails() (gas: 60093) +FeeManagerProcessFeeTestV051:test_V2PayloadWithoutZeroFee() (gas: 105570) +FeeManagerProcessFeeTestV051:test_WithdrawERC20() (gas: 171587) +FeeManagerProcessFeeTestV051:test_WithdrawNonAdminAddr() (gas: 118965) +FeeManagerProcessFeeTestV051:test_WithdrawUnwrappedNative() (gas: 66217) FeeManagerProcessFeeTestV051:test_baseFeeIsAppliedForLink() (gas: 16619) FeeManagerProcessFeeTestV051:test_baseFeeIsAppliedForNative() (gas: 19624) -FeeManagerProcessFeeTestV051:test_correctDiscountIsAppliedWhenBothTokensAreDiscounted() (gas: 90421) -FeeManagerProcessFeeTestV051:test_discountAIsNotAppliedWhenSetForOtherUsers() (gas: 58508) -FeeManagerProcessFeeTestV051:test_discountFeeRoundsDownWhenUneven() (gas: 52518) -FeeManagerProcessFeeTestV051:test_discountIsAppliedForLink() (gas: 49374) -FeeManagerProcessFeeTestV051:test_discountIsAppliedWith100PercentSurcharge() (gas: 78619) -FeeManagerProcessFeeTestV051:test_discountIsNoLongerAppliedAfterRemoving() (gas: 47810) -FeeManagerProcessFeeTestV051:test_discountIsNotAppliedForInvalidTokenAddress() (gas: 17538) -FeeManagerProcessFeeTestV051:test_discountIsNotAppliedToOtherFeeds() (gas: 56512) -FeeManagerProcessFeeTestV051:test_discountIsReturnedForLink() (gas: 49346) +FeeManagerProcessFeeTestV051:test_correctDiscountIsAppliedWhenBothTokensAreDiscounted() (gas: 173921) +FeeManagerProcessFeeTestV051:test_discountAIsNotAppliedWhenSetForOtherUsers() (gas: 90508) +FeeManagerProcessFeeTestV051:test_discountFeeRoundsDownWhenUneven() (gas: 88542) +FeeManagerProcessFeeTestV051:test_discountIsAppliedForLink() (gas: 85374) +FeeManagerProcessFeeTestV051:test_discountIsAppliedWith100PercentSurcharge() (gas: 154383) +FeeManagerProcessFeeTestV051:test_discountIsNoLongerAppliedAfterRemoving() (gas: 145756) +FeeManagerProcessFeeTestV051:test_discountIsNotAppliedForInvalidTokenAddress() (gas: 47298) +FeeManagerProcessFeeTestV051:test_discountIsNotAppliedToOtherFeeds() (gas: 90512) +FeeManagerProcessFeeTestV051:test_discountIsReturnedForLink() (gas: 85346) FeeManagerProcessFeeTestV051:test_emptyQuoteRevertsWithError() (gas: 12162) -FeeManagerProcessFeeTestV051:test_eventIsEmittedAfterSurchargeIsSet() (gas: 41372) -FeeManagerProcessFeeTestV051:test_eventIsEmittedIfNotEnoughLink() (gas: 176139) -FeeManagerProcessFeeTestV051:test_eventIsEmittedUponWithdraw() (gas: 69036) -FeeManagerProcessFeeTestV051:test_feeIsUpdatedAfterDiscountIsRemoved() (gas: 51056) -FeeManagerProcessFeeTestV051:test_feeIsUpdatedAfterNewDiscountIsApplied() (gas: 67087) -FeeManagerProcessFeeTestV051:test_feeIsUpdatedAfterNewSurchargeIsApplied() (gas: 66294) -FeeManagerProcessFeeTestV051:test_feeIsZeroWith100PercentDiscount() (gas: 51717) +FeeManagerProcessFeeTestV051:test_eventIsEmittedAfterSurchargeIsSet() (gas: 70136) +FeeManagerProcessFeeTestV051:test_eventIsEmittedIfNotEnoughLink() (gas: 291851) +FeeManagerProcessFeeTestV051:test_eventIsEmittedUponWithdraw() (gas: 138920) +FeeManagerProcessFeeTestV051:test_feeIsUpdatedAfterDiscountIsRemoved() (gas: 151814) +FeeManagerProcessFeeTestV051:test_feeIsUpdatedAfterNewDiscountIsApplied() (gas: 159487) +FeeManagerProcessFeeTestV051:test_feeIsUpdatedAfterNewSurchargeIsApplied() (gas: 151422) +FeeManagerProcessFeeTestV051:test_feeIsZeroWith100PercentDiscount() (gas: 87717) FeeManagerProcessFeeTestV051:test_getBaseRewardWithLinkQuote() (gas: 16617) -FeeManagerProcessFeeTestV051:test_getLinkFeeIsRoundedUp() (gas: 49523) -FeeManagerProcessFeeTestV051:test_getLinkRewardIsSameAsFee() (gas: 55023) -FeeManagerProcessFeeTestV051:test_getLinkRewardWithNativeQuoteAndSurchargeWithLinkDiscount() (gas: 84739) -FeeManagerProcessFeeTestV051:test_getRewardWithLinkDiscount() (gas: 49370) -FeeManagerProcessFeeTestV051:test_getRewardWithLinkQuoteAndLinkDiscount() (gas: 49351) +FeeManagerProcessFeeTestV051:test_getLinkFeeIsRoundedUp() (gas: 85547) +FeeManagerProcessFeeTestV051:test_getLinkRewardIsSameAsFee() (gas: 101547) +FeeManagerProcessFeeTestV051:test_getLinkRewardWithNativeQuoteAndSurchargeWithLinkDiscount() (gas: 156527) +FeeManagerProcessFeeTestV051:test_getRewardWithLinkDiscount() (gas: 85370) +FeeManagerProcessFeeTestV051:test_getRewardWithLinkQuoteAndLinkDiscount() (gas: 85351) FeeManagerProcessFeeTestV051:test_getRewardWithNativeQuote() (gas: 19600) -FeeManagerProcessFeeTestV051:test_getRewardWithNativeQuoteAndSurcharge() (gas: 52834) -FeeManagerProcessFeeTestV051:test_linkAvailableForPaymentReturnsLinkBalance() (gas: 52451) -FeeManagerProcessFeeTestV051:test_nativeSurcharge0Percent() (gas: 32822) -FeeManagerProcessFeeTestV051:test_nativeSurcharge100Percent() (gas: 52859) -FeeManagerProcessFeeTestV051:test_nativeSurchargeCannotExceed100Percent() (gas: 17219) -FeeManagerProcessFeeTestV051:test_nativeSurchargeEventIsEmittedOnUpdate() (gas: 41418) -FeeManagerProcessFeeTestV051:test_noFeeIsAppliedWhenReportHasZeroFee() (gas: 51562) -FeeManagerProcessFeeTestV051:test_noFeeIsAppliedWhenReportHasZeroFeeAndDiscountAndSurchargeIsSet() (gas: 77797) -FeeManagerProcessFeeTestV051:test_nonAdminProxyUserCannotProcessFee() (gas: 21895) -FeeManagerProcessFeeTestV051:test_nonAdminUserCanNotSetDiscount() (gas: 19806) -FeeManagerProcessFeeTestV051:test_onlyOwnerCanSetGlobalDiscount() (gas: 19842) -FeeManagerProcessFeeTestV051:test_payLinkDeficit() (gas: 195659) -FeeManagerProcessFeeTestV051:test_payLinkDeficitOnlyCallableByAdmin() (gas: 17413) -FeeManagerProcessFeeTestV051:test_payLinkDeficitPaysAllFeesProcessed() (gas: 215929) -FeeManagerProcessFeeTestV051:test_payLinkDeficitTwice() (gas: 200015) -FeeManagerProcessFeeTestV051:test_processFeeAsProxy() (gas: 118663) -FeeManagerProcessFeeTestV051:test_processFeeDefaultReportsStillVerifiesWithEmptyQuote() (gas: 27468) -FeeManagerProcessFeeTestV051:test_processFeeEmitsEventIfNotEnoughLink() (gas: 164099) -FeeManagerProcessFeeTestV051:test_processFeeIfSubscriberIsSelf() (gas: 27833) -FeeManagerProcessFeeTestV051:test_processFeeNative() (gas: 174715) -FeeManagerProcessFeeTestV051:test_processFeeUsesCorrectDigest() (gas: 119623) -FeeManagerProcessFeeTestV051:test_processFeeWithDefaultReportPayloadAndQuoteStillVerifies() (gas: 29542) -FeeManagerProcessFeeTestV051:test_processFeeWithDiscountEmitsEvent() (gas: 241424) -FeeManagerProcessFeeTestV051:test_processFeeWithInvalidReportVersionFailsToDecode() (gas: 28511) -FeeManagerProcessFeeTestV051:test_processFeeWithNoDiscountDoesNotEmitEvent() (gas: 168670) -FeeManagerProcessFeeTestV051:test_processFeeWithUnwrappedNative() (gas: 182249) -FeeManagerProcessFeeTestV051:test_processFeeWithUnwrappedNativeLinkAddress() (gas: 133734) -FeeManagerProcessFeeTestV051:test_processFeeWithUnwrappedNativeLinkAddressExcessiveFee() (gas: 157680) -FeeManagerProcessFeeTestV051:test_processFeeWithUnwrappedNativeShortFunds() (gas: 94925) -FeeManagerProcessFeeTestV051:test_processFeeWithUnwrappedNativeWithExcessiveFee() (gas: 189238) -FeeManagerProcessFeeTestV051:test_processFeeWithWithCorruptQuotePayload() (gas: 72937) -FeeManagerProcessFeeTestV051:test_processFeeWithWithEmptyQuotePayload() (gas: 27727) -FeeManagerProcessFeeTestV051:test_processFeeWithWithZeroQuotePayload() (gas: 27783) -FeeManagerProcessFeeTestV051:test_processFeeWithZeroLinkNonZeroNativeWithLinkQuote() (gas: 35257) -FeeManagerProcessFeeTestV051:test_processFeeWithZeroLinkNonZeroNativeWithNativeQuote() (gas: 154614) -FeeManagerProcessFeeTestV051:test_processFeeWithZeroNativeNonZeroLinkReturnsChange() (gas: 55780) -FeeManagerProcessFeeTestV051:test_processFeeWithZeroNativeNonZeroLinkWithLinkQuote() (gas: 118574) -FeeManagerProcessFeeTestV051:test_processFeeWithZeroNativeNonZeroLinkWithNativeQuote() (gas: 38028) -FeeManagerProcessFeeTestV051:test_processMultipleLinkReports() (gas: 224855) -FeeManagerProcessFeeTestV051:test_processMultipleUnwrappedNativeReports() (gas: 258716) -FeeManagerProcessFeeTestV051:test_processMultipleV1Reports() (gas: 74163) -FeeManagerProcessFeeTestV051:test_processMultipleWrappedNativeReports() (gas: 241826) -FeeManagerProcessFeeTestV051:test_processV1V2V3Reports() (gas: 209336) -FeeManagerProcessFeeTestV051:test_processV1V2V3ReportsWithUnwrapped() (gas: 250990) +FeeManagerProcessFeeTestV051:test_getRewardWithNativeQuoteAndSurcharge() (gas: 85598) +FeeManagerProcessFeeTestV051:test_linkAvailableForPaymentReturnsLinkBalance() (gas: 100059) +FeeManagerProcessFeeTestV051:test_nativeSurcharge0Percent() (gas: 65514) +FeeManagerProcessFeeTestV051:test_nativeSurcharge100Percent() (gas: 85623) +FeeManagerProcessFeeTestV051:test_nativeSurchargeCannotExceed100Percent() (gas: 45995) +FeeManagerProcessFeeTestV051:test_nativeSurchargeEventIsEmittedOnUpdate() (gas: 70206) +FeeManagerProcessFeeTestV051:test_noFeeIsAppliedWhenReportHasZeroFee() (gas: 87562) +FeeManagerProcessFeeTestV051:test_noFeeIsAppliedWhenReportHasZeroFeeAndDiscountAndSurchargeIsSet() (gas: 153561) +FeeManagerProcessFeeTestV051:test_nonAdminProxyUserCannotProcessFee() (gas: 55475) +FeeManagerProcessFeeTestV051:test_nonAdminUserCanNotSetDiscount() (gas: 49806) +FeeManagerProcessFeeTestV051:test_onlyOwnerCanSetGlobalDiscount() (gas: 49342) +FeeManagerProcessFeeTestV051:test_payLinkDeficit() (gas: 393675) +FeeManagerProcessFeeTestV051:test_payLinkDeficitOnlyCallableByAdmin() (gas: 46489) +FeeManagerProcessFeeTestV051:test_payLinkDeficitPaysAllFeesProcessed() (gas: 504169) +FeeManagerProcessFeeTestV051:test_payLinkDeficitTwice() (gas: 441696) +FeeManagerProcessFeeTestV051:test_processFeeAsProxy() (gas: 215571) +FeeManagerProcessFeeTestV051:test_processFeeDefaultReportsStillVerifiesWithEmptyQuote() (gas: 57784) +FeeManagerProcessFeeTestV051:test_processFeeEmitsEventIfNotEnoughLink() (gas: 312115) +FeeManagerProcessFeeTestV051:test_processFeeIfSubscriberIsSelf() (gas: 61033) +FeeManagerProcessFeeTestV051:test_processFeeNative() (gas: 337831) +FeeManagerProcessFeeTestV051:test_processFeeUsesCorrectDigest() (gas: 223031) +FeeManagerProcessFeeTestV051:test_processFeeWithDefaultReportPayloadAndQuoteStillVerifies() (gas: 60098) +FeeManagerProcessFeeTestV051:test_processFeeWithDiscountEmitsEvent() (gas: 439240) +FeeManagerProcessFeeTestV051:test_processFeeWithInvalidReportVersionFailsToDecode() (gas: 60171) +FeeManagerProcessFeeTestV051:test_processFeeWithNoDiscountDoesNotEmitEvent() (gas: 301786) +FeeManagerProcessFeeTestV051:test_processFeeWithUnwrappedNative() (gas: 292657) +FeeManagerProcessFeeTestV051:test_processFeeWithUnwrappedNativeLinkAddress() (gas: 200542) +FeeManagerProcessFeeTestV051:test_processFeeWithUnwrappedNativeLinkAddressExcessiveFee() (gas: 266088) +FeeManagerProcessFeeTestV051:test_processFeeWithUnwrappedNativeShortFunds() (gas: 157233) +FeeManagerProcessFeeTestV051:test_processFeeWithUnwrappedNativeWithExcessiveFee() (gas: 299646) +FeeManagerProcessFeeTestV051:test_processFeeWithWithCorruptQuotePayload() (gas: 106137) +FeeManagerProcessFeeTestV051:test_processFeeWithWithEmptyQuotePayload() (gas: 60687) +FeeManagerProcessFeeTestV051:test_processFeeWithWithZeroQuotePayload() (gas: 60743) +FeeManagerProcessFeeTestV051:test_processFeeWithZeroLinkNonZeroNativeWithLinkQuote() (gas: 65909) +FeeManagerProcessFeeTestV051:test_processFeeWithZeroLinkNonZeroNativeWithNativeQuote() (gas: 304582) +FeeManagerProcessFeeTestV051:test_processFeeWithZeroNativeNonZeroLinkReturnsChange() (gas: 88932) +FeeManagerProcessFeeTestV051:test_processFeeWithZeroNativeNonZeroLinkWithLinkQuote() (gas: 215434) +FeeManagerProcessFeeTestV051:test_processFeeWithZeroNativeNonZeroLinkWithNativeQuote() (gas: 68680) +FeeManagerProcessFeeTestV051:test_processMultipleLinkReports() (gas: 320055) +FeeManagerProcessFeeTestV051:test_processMultipleUnwrappedNativeReports() (gas: 370628) +FeeManagerProcessFeeTestV051:test_processMultipleV1Reports() (gas: 122935) +FeeManagerProcessFeeTestV051:test_processMultipleWrappedNativeReports() (gas: 410958) +FeeManagerProcessFeeTestV051:test_processV1V2V3Reports() (gas: 372928) +FeeManagerProcessFeeTestV051:test_processV1V2V3ReportsWithUnwrapped() (gas: 362222) FeeManagerProcessFeeTestV051:test_reportWithNoExpiryOrFeeReturnsZero() (gas: 10759) -FeeManagerProcessFeeTestV051:test_setDiscountOver100Percent() (gas: 19584) -FeeManagerProcessFeeTestV051:test_subscriberDiscountEventIsEmittedOnUpdate() (gas: 46255) -FeeManagerProcessFeeTestV051:test_surchargeFeeRoundsUpWhenUneven() (gas: 53168) -FeeManagerProcessFeeTestV051:test_surchargeIsApplied() (gas: 53115) -FeeManagerProcessFeeTestV051:test_surchargeIsAppliedForNativeFeeWithDiscount() (gas: 78981) -FeeManagerProcessFeeTestV051:test_surchargeIsNoLongerAppliedAfterRemoving() (gas: 48634) -FeeManagerProcessFeeTestV051:test_surchargeIsNotAppliedForLinkFee() (gas: 51912) -FeeManagerProcessFeeTestV051:test_surchargeIsNotAppliedWith100PercentDiscount() (gas: 77977) +FeeManagerProcessFeeTestV051:test_setDiscountOver100Percent() (gas: 49596) +FeeManagerProcessFeeTestV051:test_subscriberDiscountEventIsEmittedOnUpdate() (gas: 76279) +FeeManagerProcessFeeTestV051:test_surchargeFeeRoundsUpWhenUneven() (gas: 85956) +FeeManagerProcessFeeTestV051:test_surchargeIsApplied() (gas: 85879) +FeeManagerProcessFeeTestV051:test_surchargeIsAppliedForNativeFeeWithDiscount() (gas: 154745) +FeeManagerProcessFeeTestV051:test_surchargeIsNoLongerAppliedAfterRemoving() (gas: 144314) +FeeManagerProcessFeeTestV051:test_surchargeIsNotAppliedForLinkFee() (gas: 82676) +FeeManagerProcessFeeTestV051:test_surchargeIsNotAppliedWith100PercentDiscount() (gas: 153741) FeeManagerProcessFeeTestV051:test_testRevertIfReportHasExpired() (gas: 14941) -FeeManagerProcessFeeTestV05:test_DiscountIsAppliedForNative() (gas: 52318) -FeeManagerProcessFeeTestV05:test_DiscountIsReturnedForNative() (gas: 52311) -FeeManagerProcessFeeTestV05:test_DiscountIsReturnedForNativeWithSurcharge() (gas: 78568) -FeeManagerProcessFeeTestV05:test_GlobalDiscountCantBeSetToMoreThanMaximum() (gas: 19501) -FeeManagerProcessFeeTestV05:test_GlobalDiscountIsOverridenByIndividualDiscountLink() (gas: 79132) -FeeManagerProcessFeeTestV05:test_GlobalDiscountIsOverridenByIndividualDiscountNative() (gas: 82146) -FeeManagerProcessFeeTestV05:test_GlobalDiscountIsUpdatedAfterBeingSetToZeroLink() (gas: 47753) -FeeManagerProcessFeeTestV05:test_GlobalDiscountIsUpdatedAfterBeingSetToZeroNative() (gas: 50933) -FeeManagerProcessFeeTestV05:test_GlobalDiscountWithLink() (gas: 51481) -FeeManagerProcessFeeTestV05:test_GlobalDiscountWithNative() (gas: 54427) -FeeManagerProcessFeeTestV05:test_GlobalDiscountWithNativeAndLink() (gas: 83297) -FeeManagerProcessFeeTestV05:test_V1PayloadVerifies() (gas: 26980) -FeeManagerProcessFeeTestV05:test_V1PayloadVerifiesAndReturnsChange() (gas: 57943) -FeeManagerProcessFeeTestV05:test_V2PayloadVerifies() (gas: 118325) -FeeManagerProcessFeeTestV05:test_V2PayloadWithoutQuoteFails() (gas: 27389) -FeeManagerProcessFeeTestV05:test_V2PayloadWithoutZeroFee() (gas: 72626) -FeeManagerProcessFeeTestV05:test_WithdrawERC20() (gas: 71631) -FeeManagerProcessFeeTestV05:test_WithdrawNonAdminAddr() (gas: 56309) -FeeManagerProcessFeeTestV05:test_WithdrawUnwrappedNative() (gas: 25445) +FeeManagerProcessFeeTestV05:test_DiscountIsAppliedForNative() (gas: 88318) +FeeManagerProcessFeeTestV05:test_DiscountIsReturnedForNative() (gas: 88311) +FeeManagerProcessFeeTestV05:test_DiscountIsReturnedForNativeWithSurcharge() (gas: 154332) +FeeManagerProcessFeeTestV05:test_GlobalDiscountCantBeSetToMoreThanMaximum() (gas: 49013) +FeeManagerProcessFeeTestV05:test_GlobalDiscountIsOverridenByIndividualDiscountLink() (gas: 155632) +FeeManagerProcessFeeTestV05:test_GlobalDiscountIsOverridenByIndividualDiscountNative() (gas: 158646) +FeeManagerProcessFeeTestV05:test_GlobalDiscountIsUpdatedAfterBeingSetToZeroLink() (gas: 146685) +FeeManagerProcessFeeTestV05:test_GlobalDiscountIsUpdatedAfterBeingSetToZeroNative() (gas: 152660) +FeeManagerProcessFeeTestV05:test_GlobalDiscountWithLink() (gas: 86981) +FeeManagerProcessFeeTestV05:test_GlobalDiscountWithNative() (gas: 89927) +FeeManagerProcessFeeTestV05:test_GlobalDiscountWithNativeAndLink() (gas: 157297) +FeeManagerProcessFeeTestV05:test_V1PayloadVerifies() (gas: 57184) +FeeManagerProcessFeeTestV05:test_V1PayloadVerifiesAndReturnsChange() (gas: 93259) +FeeManagerProcessFeeTestV05:test_V2PayloadVerifies() (gas: 214977) +FeeManagerProcessFeeTestV05:test_V2PayloadWithoutQuoteFails() (gas: 60093) +FeeManagerProcessFeeTestV05:test_V2PayloadWithoutZeroFee() (gas: 105570) +FeeManagerProcessFeeTestV05:test_WithdrawERC20() (gas: 171587) +FeeManagerProcessFeeTestV05:test_WithdrawNonAdminAddr() (gas: 118965) +FeeManagerProcessFeeTestV05:test_WithdrawUnwrappedNative() (gas: 66217) FeeManagerProcessFeeTestV05:test_baseFeeIsAppliedForLink() (gas: 16619) FeeManagerProcessFeeTestV05:test_baseFeeIsAppliedForNative() (gas: 19624) -FeeManagerProcessFeeTestV05:test_correctDiscountIsAppliedWhenBothTokensAreDiscounted() (gas: 90421) -FeeManagerProcessFeeTestV05:test_discountAIsNotAppliedWhenSetForOtherUsers() (gas: 58508) -FeeManagerProcessFeeTestV05:test_discountFeeRoundsDownWhenUneven() (gas: 52518) -FeeManagerProcessFeeTestV05:test_discountIsAppliedForLink() (gas: 49374) -FeeManagerProcessFeeTestV05:test_discountIsAppliedWith100PercentSurcharge() (gas: 78619) -FeeManagerProcessFeeTestV05:test_discountIsNoLongerAppliedAfterRemoving() (gas: 47810) -FeeManagerProcessFeeTestV05:test_discountIsNotAppliedForInvalidTokenAddress() (gas: 17538) -FeeManagerProcessFeeTestV05:test_discountIsNotAppliedToOtherFeeds() (gas: 56512) -FeeManagerProcessFeeTestV05:test_discountIsReturnedForLink() (gas: 49346) +FeeManagerProcessFeeTestV05:test_correctDiscountIsAppliedWhenBothTokensAreDiscounted() (gas: 173921) +FeeManagerProcessFeeTestV05:test_discountAIsNotAppliedWhenSetForOtherUsers() (gas: 90508) +FeeManagerProcessFeeTestV05:test_discountFeeRoundsDownWhenUneven() (gas: 88542) +FeeManagerProcessFeeTestV05:test_discountIsAppliedForLink() (gas: 85374) +FeeManagerProcessFeeTestV05:test_discountIsAppliedWith100PercentSurcharge() (gas: 154383) +FeeManagerProcessFeeTestV05:test_discountIsNoLongerAppliedAfterRemoving() (gas: 145756) +FeeManagerProcessFeeTestV05:test_discountIsNotAppliedForInvalidTokenAddress() (gas: 47298) +FeeManagerProcessFeeTestV05:test_discountIsNotAppliedToOtherFeeds() (gas: 90512) +FeeManagerProcessFeeTestV05:test_discountIsReturnedForLink() (gas: 85346) FeeManagerProcessFeeTestV05:test_emptyQuoteRevertsWithError() (gas: 12162) -FeeManagerProcessFeeTestV05:test_eventIsEmittedAfterSurchargeIsSet() (gas: 41372) -FeeManagerProcessFeeTestV05:test_eventIsEmittedIfNotEnoughLink() (gas: 176139) -FeeManagerProcessFeeTestV05:test_eventIsEmittedUponWithdraw() (gas: 69036) -FeeManagerProcessFeeTestV05:test_feeIsUpdatedAfterDiscountIsRemoved() (gas: 51056) -FeeManagerProcessFeeTestV05:test_feeIsUpdatedAfterNewDiscountIsApplied() (gas: 67087) -FeeManagerProcessFeeTestV05:test_feeIsUpdatedAfterNewSurchargeIsApplied() (gas: 66294) -FeeManagerProcessFeeTestV05:test_feeIsZeroWith100PercentDiscount() (gas: 51717) +FeeManagerProcessFeeTestV05:test_eventIsEmittedAfterSurchargeIsSet() (gas: 70136) +FeeManagerProcessFeeTestV05:test_eventIsEmittedIfNotEnoughLink() (gas: 291851) +FeeManagerProcessFeeTestV05:test_eventIsEmittedUponWithdraw() (gas: 138920) +FeeManagerProcessFeeTestV05:test_feeIsUpdatedAfterDiscountIsRemoved() (gas: 151814) +FeeManagerProcessFeeTestV05:test_feeIsUpdatedAfterNewDiscountIsApplied() (gas: 159487) +FeeManagerProcessFeeTestV05:test_feeIsUpdatedAfterNewSurchargeIsApplied() (gas: 151422) +FeeManagerProcessFeeTestV05:test_feeIsZeroWith100PercentDiscount() (gas: 87717) FeeManagerProcessFeeTestV05:test_getBaseRewardWithLinkQuote() (gas: 16617) -FeeManagerProcessFeeTestV05:test_getLinkFeeIsRoundedUp() (gas: 49523) -FeeManagerProcessFeeTestV05:test_getLinkRewardIsSameAsFee() (gas: 55023) -FeeManagerProcessFeeTestV05:test_getLinkRewardWithNativeQuoteAndSurchargeWithLinkDiscount() (gas: 84739) -FeeManagerProcessFeeTestV05:test_getRewardWithLinkDiscount() (gas: 49370) -FeeManagerProcessFeeTestV05:test_getRewardWithLinkQuoteAndLinkDiscount() (gas: 49351) +FeeManagerProcessFeeTestV05:test_getLinkFeeIsRoundedUp() (gas: 85547) +FeeManagerProcessFeeTestV05:test_getLinkRewardIsSameAsFee() (gas: 101547) +FeeManagerProcessFeeTestV05:test_getLinkRewardWithNativeQuoteAndSurchargeWithLinkDiscount() (gas: 156527) +FeeManagerProcessFeeTestV05:test_getRewardWithLinkDiscount() (gas: 85370) +FeeManagerProcessFeeTestV05:test_getRewardWithLinkQuoteAndLinkDiscount() (gas: 85351) FeeManagerProcessFeeTestV05:test_getRewardWithNativeQuote() (gas: 19600) -FeeManagerProcessFeeTestV05:test_getRewardWithNativeQuoteAndSurcharge() (gas: 52834) -FeeManagerProcessFeeTestV05:test_linkAvailableForPaymentReturnsLinkBalance() (gas: 52451) -FeeManagerProcessFeeTestV05:test_nativeSurcharge0Percent() (gas: 32822) -FeeManagerProcessFeeTestV05:test_nativeSurcharge100Percent() (gas: 52859) -FeeManagerProcessFeeTestV05:test_nativeSurchargeCannotExceed100Percent() (gas: 17219) -FeeManagerProcessFeeTestV05:test_nativeSurchargeEventIsEmittedOnUpdate() (gas: 41418) -FeeManagerProcessFeeTestV05:test_noFeeIsAppliedWhenReportHasZeroFee() (gas: 51562) -FeeManagerProcessFeeTestV05:test_noFeeIsAppliedWhenReportHasZeroFeeAndDiscountAndSurchargeIsSet() (gas: 77797) -FeeManagerProcessFeeTestV05:test_nonAdminProxyUserCannotProcessFee() (gas: 21895) -FeeManagerProcessFeeTestV05:test_nonAdminUserCanNotSetDiscount() (gas: 19806) -FeeManagerProcessFeeTestV05:test_onlyOwnerCanSetGlobalDiscount() (gas: 19842) -FeeManagerProcessFeeTestV05:test_payLinkDeficit() (gas: 195659) -FeeManagerProcessFeeTestV05:test_payLinkDeficitOnlyCallableByAdmin() (gas: 17413) -FeeManagerProcessFeeTestV05:test_payLinkDeficitPaysAllFeesProcessed() (gas: 215929) -FeeManagerProcessFeeTestV05:test_payLinkDeficitTwice() (gas: 200015) -FeeManagerProcessFeeTestV05:test_processFeeAsProxy() (gas: 118663) -FeeManagerProcessFeeTestV05:test_processFeeDefaultReportsStillVerifiesWithEmptyQuote() (gas: 27468) -FeeManagerProcessFeeTestV05:test_processFeeEmitsEventIfNotEnoughLink() (gas: 164099) -FeeManagerProcessFeeTestV05:test_processFeeIfSubscriberIsSelf() (gas: 27833) -FeeManagerProcessFeeTestV05:test_processFeeNative() (gas: 174715) -FeeManagerProcessFeeTestV05:test_processFeeUsesCorrectDigest() (gas: 119623) -FeeManagerProcessFeeTestV05:test_processFeeWithDefaultReportPayloadAndQuoteStillVerifies() (gas: 29542) -FeeManagerProcessFeeTestV05:test_processFeeWithDiscountEmitsEvent() (gas: 241424) -FeeManagerProcessFeeTestV05:test_processFeeWithInvalidReportVersionFailsToDecode() (gas: 28511) -FeeManagerProcessFeeTestV05:test_processFeeWithNoDiscountDoesNotEmitEvent() (gas: 168670) -FeeManagerProcessFeeTestV05:test_processFeeWithUnwrappedNative() (gas: 182249) -FeeManagerProcessFeeTestV05:test_processFeeWithUnwrappedNativeLinkAddress() (gas: 133734) -FeeManagerProcessFeeTestV05:test_processFeeWithUnwrappedNativeLinkAddressExcessiveFee() (gas: 157680) -FeeManagerProcessFeeTestV05:test_processFeeWithUnwrappedNativeShortFunds() (gas: 94925) -FeeManagerProcessFeeTestV05:test_processFeeWithUnwrappedNativeWithExcessiveFee() (gas: 189238) -FeeManagerProcessFeeTestV05:test_processFeeWithWithCorruptQuotePayload() (gas: 72937) -FeeManagerProcessFeeTestV05:test_processFeeWithWithEmptyQuotePayload() (gas: 27727) -FeeManagerProcessFeeTestV05:test_processFeeWithWithZeroQuotePayload() (gas: 27783) -FeeManagerProcessFeeTestV05:test_processFeeWithZeroLinkNonZeroNativeWithLinkQuote() (gas: 35257) -FeeManagerProcessFeeTestV05:test_processFeeWithZeroLinkNonZeroNativeWithNativeQuote() (gas: 154614) -FeeManagerProcessFeeTestV05:test_processFeeWithZeroNativeNonZeroLinkReturnsChange() (gas: 55780) -FeeManagerProcessFeeTestV05:test_processFeeWithZeroNativeNonZeroLinkWithLinkQuote() (gas: 118574) -FeeManagerProcessFeeTestV05:test_processFeeWithZeroNativeNonZeroLinkWithNativeQuote() (gas: 38028) -FeeManagerProcessFeeTestV05:test_processMultipleLinkReports() (gas: 224855) -FeeManagerProcessFeeTestV05:test_processMultipleUnwrappedNativeReports() (gas: 258716) -FeeManagerProcessFeeTestV05:test_processMultipleV1Reports() (gas: 74163) -FeeManagerProcessFeeTestV05:test_processMultipleWrappedNativeReports() (gas: 241826) -FeeManagerProcessFeeTestV05:test_processV1V2V3Reports() (gas: 209336) -FeeManagerProcessFeeTestV05:test_processV1V2V3ReportsWithUnwrapped() (gas: 250990) +FeeManagerProcessFeeTestV05:test_getRewardWithNativeQuoteAndSurcharge() (gas: 85598) +FeeManagerProcessFeeTestV05:test_linkAvailableForPaymentReturnsLinkBalance() (gas: 100059) +FeeManagerProcessFeeTestV05:test_nativeSurcharge0Percent() (gas: 65514) +FeeManagerProcessFeeTestV05:test_nativeSurcharge100Percent() (gas: 85623) +FeeManagerProcessFeeTestV05:test_nativeSurchargeCannotExceed100Percent() (gas: 45995) +FeeManagerProcessFeeTestV05:test_nativeSurchargeEventIsEmittedOnUpdate() (gas: 70206) +FeeManagerProcessFeeTestV05:test_noFeeIsAppliedWhenReportHasZeroFee() (gas: 87562) +FeeManagerProcessFeeTestV05:test_noFeeIsAppliedWhenReportHasZeroFeeAndDiscountAndSurchargeIsSet() (gas: 153561) +FeeManagerProcessFeeTestV05:test_nonAdminProxyUserCannotProcessFee() (gas: 55475) +FeeManagerProcessFeeTestV05:test_nonAdminUserCanNotSetDiscount() (gas: 49806) +FeeManagerProcessFeeTestV05:test_onlyOwnerCanSetGlobalDiscount() (gas: 49342) +FeeManagerProcessFeeTestV05:test_payLinkDeficit() (gas: 393675) +FeeManagerProcessFeeTestV05:test_payLinkDeficitOnlyCallableByAdmin() (gas: 46489) +FeeManagerProcessFeeTestV05:test_payLinkDeficitPaysAllFeesProcessed() (gas: 504169) +FeeManagerProcessFeeTestV05:test_payLinkDeficitTwice() (gas: 441696) +FeeManagerProcessFeeTestV05:test_processFeeAsProxy() (gas: 215571) +FeeManagerProcessFeeTestV05:test_processFeeDefaultReportsStillVerifiesWithEmptyQuote() (gas: 57784) +FeeManagerProcessFeeTestV05:test_processFeeEmitsEventIfNotEnoughLink() (gas: 312115) +FeeManagerProcessFeeTestV05:test_processFeeIfSubscriberIsSelf() (gas: 61033) +FeeManagerProcessFeeTestV05:test_processFeeNative() (gas: 337831) +FeeManagerProcessFeeTestV05:test_processFeeUsesCorrectDigest() (gas: 223031) +FeeManagerProcessFeeTestV05:test_processFeeWithDefaultReportPayloadAndQuoteStillVerifies() (gas: 60098) +FeeManagerProcessFeeTestV05:test_processFeeWithDiscountEmitsEvent() (gas: 439240) +FeeManagerProcessFeeTestV05:test_processFeeWithInvalidReportVersionFailsToDecode() (gas: 60171) +FeeManagerProcessFeeTestV05:test_processFeeWithNoDiscountDoesNotEmitEvent() (gas: 301786) +FeeManagerProcessFeeTestV05:test_processFeeWithUnwrappedNative() (gas: 292657) +FeeManagerProcessFeeTestV05:test_processFeeWithUnwrappedNativeLinkAddress() (gas: 200542) +FeeManagerProcessFeeTestV05:test_processFeeWithUnwrappedNativeLinkAddressExcessiveFee() (gas: 266088) +FeeManagerProcessFeeTestV05:test_processFeeWithUnwrappedNativeShortFunds() (gas: 157233) +FeeManagerProcessFeeTestV05:test_processFeeWithUnwrappedNativeWithExcessiveFee() (gas: 299646) +FeeManagerProcessFeeTestV05:test_processFeeWithWithCorruptQuotePayload() (gas: 106137) +FeeManagerProcessFeeTestV05:test_processFeeWithWithEmptyQuotePayload() (gas: 60687) +FeeManagerProcessFeeTestV05:test_processFeeWithWithZeroQuotePayload() (gas: 60743) +FeeManagerProcessFeeTestV05:test_processFeeWithZeroLinkNonZeroNativeWithLinkQuote() (gas: 65909) +FeeManagerProcessFeeTestV05:test_processFeeWithZeroLinkNonZeroNativeWithNativeQuote() (gas: 304582) +FeeManagerProcessFeeTestV05:test_processFeeWithZeroNativeNonZeroLinkReturnsChange() (gas: 88932) +FeeManagerProcessFeeTestV05:test_processFeeWithZeroNativeNonZeroLinkWithLinkQuote() (gas: 215434) +FeeManagerProcessFeeTestV05:test_processFeeWithZeroNativeNonZeroLinkWithNativeQuote() (gas: 68680) +FeeManagerProcessFeeTestV05:test_processMultipleLinkReports() (gas: 320055) +FeeManagerProcessFeeTestV05:test_processMultipleUnwrappedNativeReports() (gas: 370628) +FeeManagerProcessFeeTestV05:test_processMultipleV1Reports() (gas: 122935) +FeeManagerProcessFeeTestV05:test_processMultipleWrappedNativeReports() (gas: 410958) +FeeManagerProcessFeeTestV05:test_processV1V2V3Reports() (gas: 372928) +FeeManagerProcessFeeTestV05:test_processV1V2V3ReportsWithUnwrapped() (gas: 362222) FeeManagerProcessFeeTestV05:test_reportWithNoExpiryOrFeeReturnsZero() (gas: 10759) -FeeManagerProcessFeeTestV05:test_setDiscountOver100Percent() (gas: 19584) -FeeManagerProcessFeeTestV05:test_subscriberDiscountEventIsEmittedOnUpdate() (gas: 46255) -FeeManagerProcessFeeTestV05:test_surchargeFeeRoundsUpWhenUneven() (gas: 53168) -FeeManagerProcessFeeTestV05:test_surchargeIsApplied() (gas: 53115) -FeeManagerProcessFeeTestV05:test_surchargeIsAppliedForNativeFeeWithDiscount() (gas: 78981) -FeeManagerProcessFeeTestV05:test_surchargeIsNoLongerAppliedAfterRemoving() (gas: 48634) -FeeManagerProcessFeeTestV05:test_surchargeIsNotAppliedForLinkFee() (gas: 51912) -FeeManagerProcessFeeTestV05:test_surchargeIsNotAppliedWith100PercentDiscount() (gas: 77977) +FeeManagerProcessFeeTestV05:test_setDiscountOver100Percent() (gas: 49596) +FeeManagerProcessFeeTestV05:test_subscriberDiscountEventIsEmittedOnUpdate() (gas: 76279) +FeeManagerProcessFeeTestV05:test_surchargeFeeRoundsUpWhenUneven() (gas: 85956) +FeeManagerProcessFeeTestV05:test_surchargeIsApplied() (gas: 85879) +FeeManagerProcessFeeTestV05:test_surchargeIsAppliedForNativeFeeWithDiscount() (gas: 154745) +FeeManagerProcessFeeTestV05:test_surchargeIsNoLongerAppliedAfterRemoving() (gas: 144314) +FeeManagerProcessFeeTestV05:test_surchargeIsNotAppliedForLinkFee() (gas: 82676) +FeeManagerProcessFeeTestV05:test_surchargeIsNotAppliedWith100PercentDiscount() (gas: 153741) FeeManagerProcessFeeTestV05:test_testRevertIfReportHasExpired() (gas: 14941) -MultiVerifierBillingTests:test_multipleFeeManagersAndVerifiers() (gas: 4594820) -NoOpFeeManagerIntegrationTestV051:test_verificationWorkflowCompatibility() (gas: 369140) -NoOpFeeManagerTest:test_adminFunctionsDoNotRevert() (gas: 12766) -NoOpFeeManagerTest:test_discountGettersMatchFeeManagerSignature() (gas: 20341) -NoOpFeeManagerTest:test_discountGettersReturn100Percent() (gas: 9065) +MultiVerifierBillingTests:test_multipleFeeManagersAndVerifiers() (gas: 5596776) +NoOpFeeManagerIntegrationTestV051:test_verificationWorkflowCompatibility() (gas: 663484) +NoOpFeeManagerTest:test_adminFunctionsDoNotRevert() (gas: 143914) +NoOpFeeManagerTest:test_discountGettersMatchFeeManagerSignature() (gas: 35341) +NoOpFeeManagerTest:test_discountGettersReturn100Percent() (gas: 15565) NoOpFeeManagerTest:test_getFeeAndReward() (gas: 9728) NoOpFeeManagerTest:test_linkAvailableForPayment() (gas: 5525) -NoOpFeeManagerTest:test_processFeeBulkRefundsETH() (gas: 51353) -NoOpFeeManagerTest:test_processFeeRefundsETH() (gas: 50399) -NoOpFeeManagerTest:test_supportsInterface() (gas: 7523) +NoOpFeeManagerTest:test_processFeeBulkRefundsETH() (gas: 76369) +NoOpFeeManagerTest:test_processFeeRefundsETH() (gas: 74867) +NoOpFeeManagerTest:test_supportsInterface() (gas: 16523) NoOpFeeManagerTest:test_typeAndVersion() (gas: 9688) -NoOpFeeManagerTestV051:test_adminFunctionsDoNotRevert() (gas: 12789) -NoOpFeeManagerTestV051:test_constructorParameters() (gas: 13839) -NoOpFeeManagerTestV051:test_discountGettersMatchFeeManagerSignature() (gas: 20385) -NoOpFeeManagerTestV051:test_discountGettersReturn100Percent() (gas: 9042) +NoOpFeeManagerTestV051:test_adminFunctionsDoNotRevert() (gas: 143937) +NoOpFeeManagerTestV051:test_constructorParameters() (gas: 22839) +NoOpFeeManagerTestV051:test_discountGettersMatchFeeManagerSignature() (gas: 35385) +NoOpFeeManagerTestV051:test_discountGettersReturn100Percent() (gas: 15542) NoOpFeeManagerTestV051:test_getFeeAndReward() (gas: 9788) NoOpFeeManagerTestV051:test_linkAvailableForPayment() (gas: 5569) NoOpFeeManagerTestV051:test_nativeSurchargeReturnsZero() (gas: 5529) -NoOpFeeManagerTestV051:test_processFeeBulkRefundsETH() (gas: 51419) -NoOpFeeManagerTestV051:test_processFeeRefundsETH() (gas: 50444) -NoOpFeeManagerTestV051:test_supportsInterface_BackwardCompatibility() (gas: 6763) +NoOpFeeManagerTestV051:test_processFeeBulkRefundsETH() (gas: 76435) +NoOpFeeManagerTestV051:test_processFeeRefundsETH() (gas: 74912) +NoOpFeeManagerTestV051:test_supportsInterface_BackwardCompatibility() (gas: 11263) NoOpFeeManagerTestV051:test_supportsInterface_ERC165() (gas: 5725) NoOpFeeManagerTestV051:test_supportsInterface_IFeeManager() (gas: 5687) NoOpFeeManagerTestV051:test_supportsInterface_IVerifierFeeManager() (gas: 5703) NoOpFeeManagerTestV051:test_supportsInterface_UnsupportedInterface() (gas: 5773) NoOpFeeManagerTestV051:test_typeAndVersion() (gas: 9710) -RewardManagerClaimTest:test_claimAllRecipients() (gas: 275763) -RewardManagerClaimTest:test_claimAllRecipients() (gas: 275763) -RewardManagerClaimTest:test_claimAllRecipients() (gas: 275763) -RewardManagerClaimTest:test_claimMultipleRecipients() (gas: 153297) -RewardManagerClaimTest:test_claimMultipleRecipients() (gas: 153297) -RewardManagerClaimTest:test_claimMultipleRecipients() (gas: 153297) -RewardManagerClaimTest:test_claimRewardsWithDuplicatePoolIdsDoesNotPayoutTwice() (gas: 328347) -RewardManagerClaimTest:test_claimRewardsWithDuplicatePoolIdsDoesNotPayoutTwice() (gas: 328347) -RewardManagerClaimTest:test_claimRewardsWithDuplicatePoolIdsDoesNotPayoutTwice() (gas: 328347) -RewardManagerClaimTest:test_claimSingleRecipient() (gas: 88329) -RewardManagerClaimTest:test_claimSingleRecipient() (gas: 88329) -RewardManagerClaimTest:test_claimSingleRecipient() (gas: 88329) -RewardManagerClaimTest:test_claimUnevenAmountRoundsDown() (gas: 313551) -RewardManagerClaimTest:test_claimUnevenAmountRoundsDown() (gas: 313551) -RewardManagerClaimTest:test_claimUnevenAmountRoundsDown() (gas: 313551) -RewardManagerClaimTest:test_claimUnregisteredPoolId() (gas: 34417) -RewardManagerClaimTest:test_claimUnregisteredPoolId() (gas: 34417) -RewardManagerClaimTest:test_claimUnregisteredPoolId() (gas: 34417) -RewardManagerClaimTest:test_claimUnregisteredRecipient() (gas: 40469) -RewardManagerClaimTest:test_claimUnregisteredRecipient() (gas: 40469) -RewardManagerClaimTest:test_claimUnregisteredRecipient() (gas: 40469) -RewardManagerClaimTest:test_eventIsEmittedUponClaim() (gas: 86074) -RewardManagerClaimTest:test_eventIsEmittedUponClaim() (gas: 86074) -RewardManagerClaimTest:test_eventIsEmittedUponClaim() (gas: 86074) -RewardManagerClaimTest:test_eventIsNotEmittedUponUnsuccessfulClaim() (gas: 24685) -RewardManagerClaimTest:test_eventIsNotEmittedUponUnsuccessfulClaim() (gas: 24685) -RewardManagerClaimTest:test_eventIsNotEmittedUponUnsuccessfulClaim() (gas: 24685) -RewardManagerClaimTest:test_recipientsClaimMultipleDeposits() (gas: 383213) -RewardManagerClaimTest:test_recipientsClaimMultipleDeposits() (gas: 383213) -RewardManagerClaimTest:test_recipientsClaimMultipleDeposits() (gas: 383213) -RewardManagerClaimTest:test_singleRecipientClaimMultipleDeposits() (gas: 136264) -RewardManagerClaimTest:test_singleRecipientClaimMultipleDeposits() (gas: 136264) -RewardManagerClaimTest:test_singleRecipientClaimMultipleDeposits() (gas: 136264) -RewardManagerNoRecipientSet:test_claimAllRecipientsAfterRecipientsSet() (gas: 489333) -RewardManagerNoRecipientSet:test_claimAllRecipientsAfterRecipientsSet() (gas: 489333) -RewardManagerNoRecipientSet:test_claimAllRecipientsAfterRecipientsSet() (gas: 489333) -RewardManagerPayRecipientsTest:test_addFundsToPoolAsNonOwnerOrFeeManager() (gas: 11451) -RewardManagerPayRecipientsTest:test_addFundsToPoolAsNonOwnerOrFeeManager() (gas: 11451) -RewardManagerPayRecipientsTest:test_addFundsToPoolAsNonOwnerOrFeeManager() (gas: 11451) -RewardManagerPayRecipientsTest:test_addFundsToPoolAsOwner() (gas: 53905) -RewardManagerPayRecipientsTest:test_addFundsToPoolAsOwner() (gas: 53905) -RewardManagerPayRecipientsTest:test_addFundsToPoolAsOwner() (gas: 53905) -RewardManagerPayRecipientsTest:test_payAllRecipients() (gas: 249472) -RewardManagerPayRecipientsTest:test_payAllRecipients() (gas: 249472) -RewardManagerPayRecipientsTest:test_payAllRecipients() (gas: 249472) -RewardManagerPayRecipientsTest:test_payAllRecipientsFromNonAdminUser() (gas: 20475) -RewardManagerPayRecipientsTest:test_payAllRecipientsFromNonAdminUser() (gas: 20475) -RewardManagerPayRecipientsTest:test_payAllRecipientsFromNonAdminUser() (gas: 20475) -RewardManagerPayRecipientsTest:test_payAllRecipientsFromRecipientInPool() (gas: 249696) -RewardManagerPayRecipientsTest:test_payAllRecipientsFromRecipientInPool() (gas: 249696) -RewardManagerPayRecipientsTest:test_payAllRecipientsFromRecipientInPool() (gas: 249696) -RewardManagerPayRecipientsTest:test_payAllRecipientsWithAdditionalInvalidRecipient() (gas: 260900) -RewardManagerPayRecipientsTest:test_payAllRecipientsWithAdditionalInvalidRecipient() (gas: 260900) -RewardManagerPayRecipientsTest:test_payAllRecipientsWithAdditionalInvalidRecipient() (gas: 260900) -RewardManagerPayRecipientsTest:test_payAllRecipientsWithAdditionalUnregisteredRecipient() (gas: 264025) -RewardManagerPayRecipientsTest:test_payAllRecipientsWithAdditionalUnregisteredRecipient() (gas: 264025) -RewardManagerPayRecipientsTest:test_payAllRecipientsWithAdditionalUnregisteredRecipient() (gas: 264025) -RewardManagerPayRecipientsTest:test_payRecipientWithInvalidPool() (gas: 28516) -RewardManagerPayRecipientsTest:test_payRecipientWithInvalidPool() (gas: 28516) -RewardManagerPayRecipientsTest:test_payRecipientWithInvalidPool() (gas: 28516) -RewardManagerPayRecipientsTest:test_payRecipientsEmptyRecipientList() (gas: 24982) -RewardManagerPayRecipientsTest:test_payRecipientsEmptyRecipientList() (gas: 24982) -RewardManagerPayRecipientsTest:test_payRecipientsEmptyRecipientList() (gas: 24982) -RewardManagerPayRecipientsTest:test_payRecipientsWithInvalidPoolId() (gas: 31044) -RewardManagerPayRecipientsTest:test_payRecipientsWithInvalidPoolId() (gas: 31044) -RewardManagerPayRecipientsTest:test_payRecipientsWithInvalidPoolId() (gas: 31044) -RewardManagerPayRecipientsTest:test_paySingleRecipient() (gas: 84398) -RewardManagerPayRecipientsTest:test_paySingleRecipient() (gas: 84398) -RewardManagerPayRecipientsTest:test_paySingleRecipient() (gas: 84398) -RewardManagerPayRecipientsTest:test_paySubsetOfRecipientsInPool() (gas: 197429) -RewardManagerPayRecipientsTest:test_paySubsetOfRecipientsInPool() (gas: 197429) -RewardManagerPayRecipientsTest:test_paySubsetOfRecipientsInPool() (gas: 197429) -RewardManagerRecipientClaimDifferentWeightsTest:test_allRecipientsClaimingReceiveExpectedAmount() (gas: 279359) -RewardManagerRecipientClaimDifferentWeightsTest:test_allRecipientsClaimingReceiveExpectedAmount() (gas: 279359) -RewardManagerRecipientClaimDifferentWeightsTest:test_allRecipientsClaimingReceiveExpectedAmount() (gas: 279359) -RewardManagerRecipientClaimMultiplePoolsTest:test_claimAllRecipientsMultiplePools() (gas: 509902) -RewardManagerRecipientClaimMultiplePoolsTest:test_claimAllRecipientsMultiplePools() (gas: 509902) -RewardManagerRecipientClaimMultiplePoolsTest:test_claimAllRecipientsMultiplePools() (gas: 509902) -RewardManagerRecipientClaimMultiplePoolsTest:test_claimAllRecipientsSinglePool() (gas: 281845) -RewardManagerRecipientClaimMultiplePoolsTest:test_claimAllRecipientsSinglePool() (gas: 281845) -RewardManagerRecipientClaimMultiplePoolsTest:test_claimAllRecipientsSinglePool() (gas: 281845) -RewardManagerRecipientClaimMultiplePoolsTest:test_claimEmptyPoolWhenSecondPoolContainsFunds() (gas: 291629) -RewardManagerRecipientClaimMultiplePoolsTest:test_claimEmptyPoolWhenSecondPoolContainsFunds() (gas: 291629) -RewardManagerRecipientClaimMultiplePoolsTest:test_claimEmptyPoolWhenSecondPoolContainsFunds() (gas: 291629) -RewardManagerRecipientClaimMultiplePoolsTest:test_claimMultipleRecipientsMultiplePools() (gas: 261591) -RewardManagerRecipientClaimMultiplePoolsTest:test_claimMultipleRecipientsMultiplePools() (gas: 261591) -RewardManagerRecipientClaimMultiplePoolsTest:test_claimMultipleRecipientsMultiplePools() (gas: 261591) -RewardManagerRecipientClaimMultiplePoolsTest:test_claimMultipleRecipientsSinglePool() (gas: 153405) -RewardManagerRecipientClaimMultiplePoolsTest:test_claimMultipleRecipientsSinglePool() (gas: 153405) -RewardManagerRecipientClaimMultiplePoolsTest:test_claimMultipleRecipientsSinglePool() (gas: 153405) -RewardManagerRecipientClaimMultiplePoolsTest:test_claimSingleRecipientMultiplePools() (gas: 131915) -RewardManagerRecipientClaimMultiplePoolsTest:test_claimSingleRecipientMultiplePools() (gas: 131915) -RewardManagerRecipientClaimMultiplePoolsTest:test_claimSingleRecipientMultiplePools() (gas: 131915) -RewardManagerRecipientClaimMultiplePoolsTest:test_claimSingleUniqueRecipient() (gas: 105303) -RewardManagerRecipientClaimMultiplePoolsTest:test_claimSingleUniqueRecipient() (gas: 105303) -RewardManagerRecipientClaimMultiplePoolsTest:test_claimSingleUniqueRecipient() (gas: 105303) -RewardManagerRecipientClaimMultiplePoolsTest:test_claimUnevenAmountRoundsDown() (gas: 576306) -RewardManagerRecipientClaimMultiplePoolsTest:test_claimUnevenAmountRoundsDown() (gas: 576306) -RewardManagerRecipientClaimMultiplePoolsTest:test_claimUnevenAmountRoundsDown() (gas: 576306) -RewardManagerRecipientClaimMultiplePoolsTest:test_claimUnregisteredRecipient() (gas: 63524) -RewardManagerRecipientClaimMultiplePoolsTest:test_claimUnregisteredRecipient() (gas: 63524) -RewardManagerRecipientClaimMultiplePoolsTest:test_claimUnregisteredRecipient() (gas: 63524) +RewardManagerClaimTest:test_claimAllRecipients() (gas: 470739) +RewardManagerClaimTest:test_claimAllRecipients() (gas: 470739) +RewardManagerClaimTest:test_claimAllRecipients() (gas: 470739) +RewardManagerClaimTest:test_claimMultipleRecipients() (gas: 249285) +RewardManagerClaimTest:test_claimMultipleRecipients() (gas: 249285) +RewardManagerClaimTest:test_claimMultipleRecipients() (gas: 249285) +RewardManagerClaimTest:test_claimRewardsWithDuplicatePoolIdsDoesNotPayoutTwice() (gas: 616867) +RewardManagerClaimTest:test_claimRewardsWithDuplicatePoolIdsDoesNotPayoutTwice() (gas: 616867) +RewardManagerClaimTest:test_claimRewardsWithDuplicatePoolIdsDoesNotPayoutTwice() (gas: 616867) +RewardManagerClaimTest:test_claimSingleRecipient() (gas: 128173) +RewardManagerClaimTest:test_claimSingleRecipient() (gas: 128173) +RewardManagerClaimTest:test_claimSingleRecipient() (gas: 128173) +RewardManagerClaimTest:test_claimUnevenAmountRoundsDown() (gas: 611151) +RewardManagerClaimTest:test_claimUnevenAmountRoundsDown() (gas: 611151) +RewardManagerClaimTest:test_claimUnevenAmountRoundsDown() (gas: 611151) +RewardManagerClaimTest:test_claimUnregisteredPoolId() (gas: 67761) +RewardManagerClaimTest:test_claimUnregisteredPoolId() (gas: 67761) +RewardManagerClaimTest:test_claimUnregisteredPoolId() (gas: 67761) +RewardManagerClaimTest:test_claimUnregisteredRecipient() (gas: 73813) +RewardManagerClaimTest:test_claimUnregisteredRecipient() (gas: 73813) +RewardManagerClaimTest:test_claimUnregisteredRecipient() (gas: 73813) +RewardManagerClaimTest:test_eventIsEmittedUponClaim() (gas: 115418) +RewardManagerClaimTest:test_eventIsEmittedUponClaim() (gas: 115418) +RewardManagerClaimTest:test_eventIsEmittedUponClaim() (gas: 115418) +RewardManagerClaimTest:test_eventIsNotEmittedUponUnsuccessfulClaim() (gas: 54029) +RewardManagerClaimTest:test_eventIsNotEmittedUponUnsuccessfulClaim() (gas: 54029) +RewardManagerClaimTest:test_eventIsNotEmittedUponUnsuccessfulClaim() (gas: 54029) +RewardManagerClaimTest:test_recipientsClaimMultipleDeposits() (gas: 963109) +RewardManagerClaimTest:test_recipientsClaimMultipleDeposits() (gas: 963109) +RewardManagerClaimTest:test_recipientsClaimMultipleDeposits() (gas: 963109) +RewardManagerClaimTest:test_singleRecipientClaimMultipleDeposits() (gas: 341796) +RewardManagerClaimTest:test_singleRecipientClaimMultipleDeposits() (gas: 341796) +RewardManagerClaimTest:test_singleRecipientClaimMultipleDeposits() (gas: 341796) +RewardManagerNoRecipientSet:test_claimAllRecipientsAfterRecipientsSet() (gas: 942701) +RewardManagerNoRecipientSet:test_claimAllRecipientsAfterRecipientsSet() (gas: 942701) +RewardManagerNoRecipientSet:test_claimAllRecipientsAfterRecipientsSet() (gas: 942701) +RewardManagerPayRecipientsTest:test_addFundsToPoolAsNonOwnerOrFeeManager() (gas: 33863) +RewardManagerPayRecipientsTest:test_addFundsToPoolAsNonOwnerOrFeeManager() (gas: 33863) +RewardManagerPayRecipientsTest:test_addFundsToPoolAsNonOwnerOrFeeManager() (gas: 33863) +RewardManagerPayRecipientsTest:test_addFundsToPoolAsOwner() (gas: 121391) +RewardManagerPayRecipientsTest:test_addFundsToPoolAsOwner() (gas: 121391) +RewardManagerPayRecipientsTest:test_addFundsToPoolAsOwner() (gas: 121391) +RewardManagerPayRecipientsTest:test_payAllRecipients() (gas: 296988) +RewardManagerPayRecipientsTest:test_payAllRecipients() (gas: 296988) +RewardManagerPayRecipientsTest:test_payAllRecipients() (gas: 296988) +RewardManagerPayRecipientsTest:test_payAllRecipientsFromNonAdminUser() (gas: 51291) +RewardManagerPayRecipientsTest:test_payAllRecipientsFromNonAdminUser() (gas: 51291) +RewardManagerPayRecipientsTest:test_payAllRecipientsFromNonAdminUser() (gas: 51291) +RewardManagerPayRecipientsTest:test_payAllRecipientsFromRecipientInPool() (gas: 297212) +RewardManagerPayRecipientsTest:test_payAllRecipientsFromRecipientInPool() (gas: 297212) +RewardManagerPayRecipientsTest:test_payAllRecipientsFromRecipientInPool() (gas: 297212) +RewardManagerPayRecipientsTest:test_payAllRecipientsWithAdditionalInvalidRecipient() (gas: 308544) +RewardManagerPayRecipientsTest:test_payAllRecipientsWithAdditionalInvalidRecipient() (gas: 308544) +RewardManagerPayRecipientsTest:test_payAllRecipientsWithAdditionalInvalidRecipient() (gas: 308544) +RewardManagerPayRecipientsTest:test_payAllRecipientsWithAdditionalUnregisteredRecipient() (gas: 316409) +RewardManagerPayRecipientsTest:test_payAllRecipientsWithAdditionalUnregisteredRecipient() (gas: 316409) +RewardManagerPayRecipientsTest:test_payAllRecipientsWithAdditionalUnregisteredRecipient() (gas: 316409) +RewardManagerPayRecipientsTest:test_payRecipientWithInvalidPool() (gas: 55728) +RewardManagerPayRecipientsTest:test_payRecipientWithInvalidPool() (gas: 55728) +RewardManagerPayRecipientsTest:test_payRecipientWithInvalidPool() (gas: 55728) +RewardManagerPayRecipientsTest:test_payRecipientsEmptyRecipientList() (gas: 53814) +RewardManagerPayRecipientsTest:test_payRecipientsEmptyRecipientList() (gas: 53814) +RewardManagerPayRecipientsTest:test_payRecipientsEmptyRecipientList() (gas: 53814) +RewardManagerPayRecipientsTest:test_payRecipientsWithInvalidPoolId() (gas: 61372) +RewardManagerPayRecipientsTest:test_payRecipientsWithInvalidPoolId() (gas: 61372) +RewardManagerPayRecipientsTest:test_payRecipientsWithInvalidPoolId() (gas: 61372) +RewardManagerPayRecipientsTest:test_paySingleRecipient() (gas: 116110) +RewardManagerPayRecipientsTest:test_paySingleRecipient() (gas: 116110) +RewardManagerPayRecipientsTest:test_paySingleRecipient() (gas: 116110) +RewardManagerPayRecipientsTest:test_paySubsetOfRecipientsInPool() (gas: 244877) +RewardManagerPayRecipientsTest:test_paySubsetOfRecipientsInPool() (gas: 244877) +RewardManagerPayRecipientsTest:test_paySubsetOfRecipientsInPool() (gas: 244877) +RewardManagerRecipientClaimDifferentWeightsTest:test_allRecipientsClaimingReceiveExpectedAmount() (gas: 474335) +RewardManagerRecipientClaimDifferentWeightsTest:test_allRecipientsClaimingReceiveExpectedAmount() (gas: 474335) +RewardManagerRecipientClaimDifferentWeightsTest:test_allRecipientsClaimingReceiveExpectedAmount() (gas: 474335) +RewardManagerRecipientClaimMultiplePoolsTest:test_claimAllRecipientsMultiplePools() (gas: 921754) +RewardManagerRecipientClaimMultiplePoolsTest:test_claimAllRecipientsMultiplePools() (gas: 921754) +RewardManagerRecipientClaimMultiplePoolsTest:test_claimAllRecipientsMultiplePools() (gas: 921754) +RewardManagerRecipientClaimMultiplePoolsTest:test_claimAllRecipientsSinglePool() (gas: 490121) +RewardManagerRecipientClaimMultiplePoolsTest:test_claimAllRecipientsSinglePool() (gas: 490121) +RewardManagerRecipientClaimMultiplePoolsTest:test_claimAllRecipientsSinglePool() (gas: 490121) +RewardManagerRecipientClaimMultiplePoolsTest:test_claimEmptyPoolWhenSecondPoolContainsFunds() (gas: 544249) +RewardManagerRecipientClaimMultiplePoolsTest:test_claimEmptyPoolWhenSecondPoolContainsFunds() (gas: 544249) +RewardManagerRecipientClaimMultiplePoolsTest:test_claimEmptyPoolWhenSecondPoolContainsFunds() (gas: 544249) +RewardManagerRecipientClaimMultiplePoolsTest:test_claimMultipleRecipientsMultiplePools() (gas: 462167) +RewardManagerRecipientClaimMultiplePoolsTest:test_claimMultipleRecipientsMultiplePools() (gas: 462167) +RewardManagerRecipientClaimMultiplePoolsTest:test_claimMultipleRecipientsMultiplePools() (gas: 462167) +RewardManagerRecipientClaimMultiplePoolsTest:test_claimMultipleRecipientsSinglePool() (gas: 249393) +RewardManagerRecipientClaimMultiplePoolsTest:test_claimMultipleRecipientsSinglePool() (gas: 249393) +RewardManagerRecipientClaimMultiplePoolsTest:test_claimMultipleRecipientsSinglePool() (gas: 249393) +RewardManagerRecipientClaimMultiplePoolsTest:test_claimSingleRecipientMultiplePools() (gas: 220203) +RewardManagerRecipientClaimMultiplePoolsTest:test_claimSingleRecipientMultiplePools() (gas: 220203) +RewardManagerRecipientClaimMultiplePoolsTest:test_claimSingleRecipientMultiplePools() (gas: 220203) +RewardManagerRecipientClaimMultiplePoolsTest:test_claimSingleUniqueRecipient() (gas: 181491) +RewardManagerRecipientClaimMultiplePoolsTest:test_claimSingleUniqueRecipient() (gas: 181491) +RewardManagerRecipientClaimMultiplePoolsTest:test_claimSingleUniqueRecipient() (gas: 181491) +RewardManagerRecipientClaimMultiplePoolsTest:test_claimUnevenAmountRoundsDown() (gas: 1195506) +RewardManagerRecipientClaimMultiplePoolsTest:test_claimUnevenAmountRoundsDown() (gas: 1195506) +RewardManagerRecipientClaimMultiplePoolsTest:test_claimUnevenAmountRoundsDown() (gas: 1195506) +RewardManagerRecipientClaimMultiplePoolsTest:test_claimUnregisteredRecipient() (gas: 137712) +RewardManagerRecipientClaimMultiplePoolsTest:test_claimUnregisteredRecipient() (gas: 137712) +RewardManagerRecipientClaimMultiplePoolsTest:test_claimUnregisteredRecipient() (gas: 137712) RewardManagerRecipientClaimMultiplePoolsTest:test_getAvailableRewardsCursorAndTotalPoolsEqual() (gas: 10180) RewardManagerRecipientClaimMultiplePoolsTest:test_getAvailableRewardsCursorAndTotalPoolsEqual() (gas: 10180) RewardManagerRecipientClaimMultiplePoolsTest:test_getAvailableRewardsCursorAndTotalPoolsEqual() (gas: 10180) @@ -778,417 +778,417 @@ RewardManagerRecipientClaimMultiplePoolsTest:test_getAvailableRewardsCursorSingl RewardManagerRecipientClaimMultiplePoolsTest:test_getRewardsAvailableToRecipientInBothPools() (gas: 29052) RewardManagerRecipientClaimMultiplePoolsTest:test_getRewardsAvailableToRecipientInBothPools() (gas: 29052) RewardManagerRecipientClaimMultiplePoolsTest:test_getRewardsAvailableToRecipientInBothPools() (gas: 29052) -RewardManagerRecipientClaimMultiplePoolsTest:test_getRewardsAvailableToRecipientInBothPoolsWhereAlreadyClaimed() (gas: 147240) -RewardManagerRecipientClaimMultiplePoolsTest:test_getRewardsAvailableToRecipientInBothPoolsWhereAlreadyClaimed() (gas: 147240) -RewardManagerRecipientClaimMultiplePoolsTest:test_getRewardsAvailableToRecipientInBothPoolsWhereAlreadyClaimed() (gas: 147240) +RewardManagerRecipientClaimMultiplePoolsTest:test_getRewardsAvailableToRecipientInBothPoolsWhereAlreadyClaimed() (gas: 261528) +RewardManagerRecipientClaimMultiplePoolsTest:test_getRewardsAvailableToRecipientInBothPoolsWhereAlreadyClaimed() (gas: 261528) +RewardManagerRecipientClaimMultiplePoolsTest:test_getRewardsAvailableToRecipientInBothPoolsWhereAlreadyClaimed() (gas: 261528) RewardManagerRecipientClaimMultiplePoolsTest:test_getRewardsAvailableToRecipientInNoPools() (gas: 18510) RewardManagerRecipientClaimMultiplePoolsTest:test_getRewardsAvailableToRecipientInNoPools() (gas: 18510) RewardManagerRecipientClaimMultiplePoolsTest:test_getRewardsAvailableToRecipientInNoPools() (gas: 18510) RewardManagerRecipientClaimMultiplePoolsTest:test_getRewardsAvailableToRecipientInSinglePool() (gas: 24569) RewardManagerRecipientClaimMultiplePoolsTest:test_getRewardsAvailableToRecipientInSinglePool() (gas: 24569) RewardManagerRecipientClaimMultiplePoolsTest:test_getRewardsAvailableToRecipientInSinglePool() (gas: 24569) -RewardManagerRecipientClaimMultiplePoolsTest:test_recipientsClaimMultipleDeposits() (gas: 387663) -RewardManagerRecipientClaimMultiplePoolsTest:test_recipientsClaimMultipleDeposits() (gas: 387663) -RewardManagerRecipientClaimMultiplePoolsTest:test_recipientsClaimMultipleDeposits() (gas: 387663) -RewardManagerRecipientClaimMultiplePoolsTest:test_singleRecipientClaimMultipleDeposits() (gas: 136301) -RewardManagerRecipientClaimMultiplePoolsTest:test_singleRecipientClaimMultipleDeposits() (gas: 136301) -RewardManagerRecipientClaimMultiplePoolsTest:test_singleRecipientClaimMultipleDeposits() (gas: 136301) -RewardManagerRecipientClaimUnevenWeightTest:test_allRecipientsClaimingReceiveExpectedAmount() (gas: 198401) -RewardManagerRecipientClaimUnevenWeightTest:test_allRecipientsClaimingReceiveExpectedAmount() (gas: 198401) -RewardManagerRecipientClaimUnevenWeightTest:test_allRecipientsClaimingReceiveExpectedAmount() (gas: 198401) -RewardManagerRecipientClaimUnevenWeightTest:test_allRecipientsClaimingReceiveExpectedAmountWithSmallDeposit() (gas: 218274) -RewardManagerRecipientClaimUnevenWeightTest:test_allRecipientsClaimingReceiveExpectedAmountWithSmallDeposit() (gas: 218274) -RewardManagerRecipientClaimUnevenWeightTest:test_allRecipientsClaimingReceiveExpectedAmountWithSmallDeposit() (gas: 218274) -RewardManagerSetRecipientsTest:test_eventIsEmittedUponSetRecipients() (gas: 191701) -RewardManagerSetRecipientsTest:test_eventIsEmittedUponSetRecipients() (gas: 191701) -RewardManagerSetRecipientsTest:test_eventIsEmittedUponSetRecipients() (gas: 191701) -RewardManagerSetRecipientsTest:test_setRecipientContainsDuplicateRecipients() (gas: 126082) -RewardManagerSetRecipientsTest:test_setRecipientContainsDuplicateRecipients() (gas: 126082) -RewardManagerSetRecipientsTest:test_setRecipientContainsDuplicateRecipients() (gas: 126082) -RewardManagerSetRecipientsTest:test_setRewardRecipientFromManagerAddress() (gas: 193880) -RewardManagerSetRecipientsTest:test_setRewardRecipientFromManagerAddress() (gas: 193880) -RewardManagerSetRecipientsTest:test_setRewardRecipientFromManagerAddress() (gas: 193880) -RewardManagerSetRecipientsTest:test_setRewardRecipientFromNonOwnerOrFeeManagerAddress() (gas: 21452) -RewardManagerSetRecipientsTest:test_setRewardRecipientFromNonOwnerOrFeeManagerAddress() (gas: 21452) -RewardManagerSetRecipientsTest:test_setRewardRecipientFromNonOwnerOrFeeManagerAddress() (gas: 21452) -RewardManagerSetRecipientsTest:test_setRewardRecipientTwice() (gas: 193368) -RewardManagerSetRecipientsTest:test_setRewardRecipientTwice() (gas: 193368) -RewardManagerSetRecipientsTest:test_setRewardRecipientTwice() (gas: 193368) -RewardManagerSetRecipientsTest:test_setRewardRecipientWeights() (gas: 180630) -RewardManagerSetRecipientsTest:test_setRewardRecipientWeights() (gas: 180630) -RewardManagerSetRecipientsTest:test_setRewardRecipientWeights() (gas: 180630) -RewardManagerSetRecipientsTest:test_setRewardRecipientWithZeroAddress() (gas: 90224) -RewardManagerSetRecipientsTest:test_setRewardRecipientWithZeroAddress() (gas: 90224) -RewardManagerSetRecipientsTest:test_setRewardRecipientWithZeroAddress() (gas: 90224) -RewardManagerSetRecipientsTest:test_setRewardRecipientWithZeroWeight() (gas: 191334) -RewardManagerSetRecipientsTest:test_setRewardRecipientWithZeroWeight() (gas: 191334) -RewardManagerSetRecipientsTest:test_setRewardRecipientWithZeroWeight() (gas: 191334) -RewardManagerSetRecipientsTest:test_setRewardRecipients() (gas: 185589) -RewardManagerSetRecipientsTest:test_setRewardRecipients() (gas: 185589) -RewardManagerSetRecipientsTest:test_setRewardRecipients() (gas: 185589) -RewardManagerSetRecipientsTest:test_setRewardRecipientsIsEmpty() (gas: 87136) -RewardManagerSetRecipientsTest:test_setRewardRecipientsIsEmpty() (gas: 87136) -RewardManagerSetRecipientsTest:test_setRewardRecipientsIsEmpty() (gas: 87136) -RewardManagerSetRecipientsTest:test_setSingleRewardRecipient() (gas: 110371) -RewardManagerSetRecipientsTest:test_setSingleRewardRecipient() (gas: 110371) -RewardManagerSetRecipientsTest:test_setSingleRewardRecipient() (gas: 110371) -RewardManagerSetupTest:test_eventEmittedUponFeeManagerUpdate() (gas: 21360) -RewardManagerSetupTest:test_eventEmittedUponFeeManagerUpdate() (gas: 21360) -RewardManagerSetupTest:test_eventEmittedUponFeeManagerUpdate() (gas: 21360) -RewardManagerSetupTest:test_eventEmittedUponFeePaid() (gas: 259117) -RewardManagerSetupTest:test_eventEmittedUponFeePaid() (gas: 259117) -RewardManagerSetupTest:test_eventEmittedUponFeePaid() (gas: 259117) -RewardManagerSetupTest:test_rejectsZeroLinkAddressOnConstruction() (gas: 59411) -RewardManagerSetupTest:test_rejectsZeroLinkAddressOnConstruction() (gas: 59411) -RewardManagerSetupTest:test_rejectsZeroLinkAddressOnConstruction() (gas: 59411) -RewardManagerSetupTest:test_setFeeManagerZeroAddress() (gas: 17105) -RewardManagerSetupTest:test_setFeeManagerZeroAddress() (gas: 17105) -RewardManagerSetupTest:test_setFeeManagerZeroAddress() (gas: 17105) -RewardManagerUpdateRewardRecipientsMultiplePoolsTest:test_updatePrimaryRecipientWeights() (gas: 373527) -RewardManagerUpdateRewardRecipientsMultiplePoolsTest:test_updatePrimaryRecipientWeights() (gas: 373527) -RewardManagerUpdateRewardRecipientsMultiplePoolsTest:test_updatePrimaryRecipientWeights() (gas: 373527) -RewardManagerUpdateRewardRecipientsTest:test_eventIsEmittedUponUpdateRecipients() (gas: 279135) -RewardManagerUpdateRewardRecipientsTest:test_eventIsEmittedUponUpdateRecipients() (gas: 279135) -RewardManagerUpdateRewardRecipientsTest:test_eventIsEmittedUponUpdateRecipients() (gas: 279135) -RewardManagerUpdateRewardRecipientsTest:test_onlyAdminCanUpdateRecipients() (gas: 19749) -RewardManagerUpdateRewardRecipientsTest:test_onlyAdminCanUpdateRecipients() (gas: 19749) -RewardManagerUpdateRewardRecipientsTest:test_onlyAdminCanUpdateRecipients() (gas: 19749) -RewardManagerUpdateRewardRecipientsTest:test_partialUpdateRecipientWeights() (gas: 218889) -RewardManagerUpdateRewardRecipientsTest:test_partialUpdateRecipientWeights() (gas: 218889) -RewardManagerUpdateRewardRecipientsTest:test_partialUpdateRecipientWeights() (gas: 218889) -RewardManagerUpdateRewardRecipientsTest:test_updateAllRecipientsWithSameAddressAndWeight() (gas: 272941) -RewardManagerUpdateRewardRecipientsTest:test_updateAllRecipientsWithSameAddressAndWeight() (gas: 272941) -RewardManagerUpdateRewardRecipientsTest:test_updateAllRecipientsWithSameAddressAndWeight() (gas: 272941) -RewardManagerUpdateRewardRecipientsTest:test_updatePartialRecipientsToSubset() (gas: 254276) -RewardManagerUpdateRewardRecipientsTest:test_updatePartialRecipientsToSubset() (gas: 254276) -RewardManagerUpdateRewardRecipientsTest:test_updatePartialRecipientsToSubset() (gas: 254276) -RewardManagerUpdateRewardRecipientsTest:test_updatePartialRecipientsWithExcessiveWeight() (gas: 259263) -RewardManagerUpdateRewardRecipientsTest:test_updatePartialRecipientsWithExcessiveWeight() (gas: 259263) -RewardManagerUpdateRewardRecipientsTest:test_updatePartialRecipientsWithExcessiveWeight() (gas: 259263) -RewardManagerUpdateRewardRecipientsTest:test_updatePartialRecipientsWithSameAddressAndWeight() (gas: 148879) -RewardManagerUpdateRewardRecipientsTest:test_updatePartialRecipientsWithSameAddressAndWeight() (gas: 148879) -RewardManagerUpdateRewardRecipientsTest:test_updatePartialRecipientsWithSameAddressAndWeight() (gas: 148879) -RewardManagerUpdateRewardRecipientsTest:test_updatePartialRecipientsWithUnderWeightSet() (gas: 259337) -RewardManagerUpdateRewardRecipientsTest:test_updatePartialRecipientsWithUnderWeightSet() (gas: 259337) -RewardManagerUpdateRewardRecipientsTest:test_updatePartialRecipientsWithUnderWeightSet() (gas: 259337) -RewardManagerUpdateRewardRecipientsTest:test_updateRecipientWeights() (gas: 369008) -RewardManagerUpdateRewardRecipientsTest:test_updateRecipientWeights() (gas: 369008) -RewardManagerUpdateRewardRecipientsTest:test_updateRecipientWeights() (gas: 369008) -RewardManagerUpdateRewardRecipientsTest:test_updateRecipientWithNewZeroAddress() (gas: 270846) -RewardManagerUpdateRewardRecipientsTest:test_updateRecipientWithNewZeroAddress() (gas: 270846) -RewardManagerUpdateRewardRecipientsTest:test_updateRecipientWithNewZeroAddress() (gas: 270846) -RewardManagerUpdateRewardRecipientsTest:test_updateRecipientsContainsDuplicateRecipients() (gas: 288619) -RewardManagerUpdateRewardRecipientsTest:test_updateRecipientsContainsDuplicateRecipients() (gas: 288619) -RewardManagerUpdateRewardRecipientsTest:test_updateRecipientsContainsDuplicateRecipients() (gas: 288619) -RewardManagerUpdateRewardRecipientsTest:test_updateRecipientsToDifferentLargerSet() (gas: 407920) -RewardManagerUpdateRewardRecipientsTest:test_updateRecipientsToDifferentLargerSet() (gas: 407920) -RewardManagerUpdateRewardRecipientsTest:test_updateRecipientsToDifferentLargerSet() (gas: 407920) -RewardManagerUpdateRewardRecipientsTest:test_updateRecipientsToDifferentPartialSet() (gas: 318073) -RewardManagerUpdateRewardRecipientsTest:test_updateRecipientsToDifferentPartialSet() (gas: 318073) -RewardManagerUpdateRewardRecipientsTest:test_updateRecipientsToDifferentPartialSet() (gas: 318073) -RewardManagerUpdateRewardRecipientsTest:test_updateRecipientsToDifferentSet() (gas: 377828) -RewardManagerUpdateRewardRecipientsTest:test_updateRecipientsToDifferentSet() (gas: 377828) -RewardManagerUpdateRewardRecipientsTest:test_updateRecipientsToDifferentSet() (gas: 377828) -RewardManagerUpdateRewardRecipientsTest:test_updateRecipientsToDifferentSetWithInvalidWeights() (gas: 312166) -RewardManagerUpdateRewardRecipientsTest:test_updateRecipientsToDifferentSetWithInvalidWeights() (gas: 312166) -RewardManagerUpdateRewardRecipientsTest:test_updateRecipientsToDifferentSetWithInvalidWeights() (gas: 312166) -RewardManagerUpdateRewardRecipientsTest:test_updateRecipientsUpdateAndRemoveExistingForLargerSet() (gas: 399743) -RewardManagerUpdateRewardRecipientsTest:test_updateRecipientsUpdateAndRemoveExistingForLargerSet() (gas: 399743) -RewardManagerUpdateRewardRecipientsTest:test_updateRecipientsUpdateAndRemoveExistingForLargerSet() (gas: 399743) -RewardManagerUpdateRewardRecipientsTest:test_updateRecipientsUpdateAndRemoveExistingForSmallerSet() (gas: 289557) -RewardManagerUpdateRewardRecipientsTest:test_updateRecipientsUpdateAndRemoveExistingForSmallerSet() (gas: 289557) -RewardManagerUpdateRewardRecipientsTest:test_updateRecipientsUpdateAndRemoveExistingForSmallerSet() (gas: 289557) -VerificationdeactivateConfigWhenThereAreMultipleDigestsTest:test_correctlyRemovesAMiddleDigest() (gas: 24177) -VerificationdeactivateConfigWhenThereAreMultipleDigestsTest:test_correctlyRemovesTheFirstDigest() (gas: 24167) -VerificationdeactivateConfigWhenThereAreMultipleDigestsTest:test_correctlyUnsetsDigestsInSequence() (gas: 44109) -VerificationdeactivateConfigWhenThereAreMultipleDigestsTest:test_revertsIfCalledByNonOwner() (gas: 15016) -VerificationdeactivateConfigWhenThereAreMultipleDigestsTest:test_revertsIfRemovingAnEmptyDigest() (gas: 10907) -VerificationdeactivateConfigWhenThereAreMultipleDigestsTest:test_revertsIfRemovingAnNonExistentDigest() (gas: 13381) -VerificationdeactivateConfigWhenThereAreMultipleDigestsTestV051:test_revertsIfCalledByNonOwner() (gas: 14955) -VerificationdeactivateConfigWhenThereAreMultipleDigestsTestV051:test_revertsIfRemovingAnEmptyDigest() (gas: 10869) -VerificationdeactivateConfigWhenThereAreMultipleDigestsTestV051:test_revertsIfRemovingAnNonExistentDigest() (gas: 13173) -VerificationdeactivateConfigWhenThereAreMultipleDigestsTestV05:test_revertsIfCalledByNonOwner() (gas: 14977) -VerificationdeactivateConfigWhenThereAreMultipleDigestsTestV05:test_revertsIfRemovingAnEmptyDigest() (gas: 10891) -VerificationdeactivateConfigWhenThereAreMultipleDigestsTestV05:test_revertsIfRemovingAnNonExistentDigest() (gas: 13195) -VerifierActivateConfigTest:test_revertsIfDigestIsEmpty() (gas: 10962) -VerifierActivateConfigTest:test_revertsIfDigestNotSet() (gas: 13394) -VerifierActivateConfigTest:test_revertsIfNotOwner() (gas: 17182) -VerifierActivateConfigTestV051:test_revertsIfDigestIsEmpty() (gas: 10903) -VerifierActivateConfigTestV051:test_revertsIfDigestNotSet() (gas: 13154) -VerifierActivateConfigTestV051:test_revertsIfNotOwner() (gas: 17123) -VerifierActivateConfigTestV05:test_revertsIfDigestIsEmpty() (gas: 10903) -VerifierActivateConfigTestV05:test_revertsIfDigestNotSet() (gas: 13154) -VerifierActivateConfigTestV05:test_revertsIfNotOwner() (gas: 17123) -VerifierActivateConfigWithDeactivatedConfigTest:test_allowsVerification() (gas: 97157) -VerifierActivateConfigWithDeactivatedConfigTestV051:test_allowsVerification() (gas: 94328) -VerifierActivateConfigWithDeactivatedConfigTestV05:test_allowsVerification() (gas: 94182) -VerifierActivateFeedTest:test_revertsIfNoFeedExistsActivate() (gas: 13179) -VerifierActivateFeedTest:test_revertsIfNoFeedExistsDeactivate() (gas: 13202) -VerifierActivateFeedTest:test_revertsIfNotOwnerActivateFeed() (gas: 17109) -VerifierActivateFeedTest:test_revertsIfNotOwnerDeactivateFeed() (gas: 17164) -VerifierBillingTests:test_rewardsAreDistributedAccordingToWeights() (gas: 1733961) -VerifierBillingTests:test_rewardsAreDistributedAccordingToWeightsMultipleWeigths() (gas: 4466027) -VerifierBillingTests:test_rewardsAreDistributedAccordingToWeightsUsingHistoricalConfigs() (gas: 2102489) -VerifierBillingTests:test_verifyWithLinkV3Report() (gas: 1592103) -VerifierBillingTests:test_verifyWithNativeERC20() (gas: 1466756) -VerifierBillingTests:test_verifyWithNativeUnwrapped() (gas: 1377955) -VerifierBillingTests:test_verifyWithNativeUnwrappedReturnsChange() (gas: 1384979) -VerifierBulkVerifyBillingReport:test_verifyMultiVersions() (gas: 475414) -VerifierBulkVerifyBillingReport:test_verifyMultiVersionsReturnsVerifiedReports() (gas: 474712) -VerifierBulkVerifyBillingReport:test_verifyWithBulkLink() (gas: 556758) -VerifierBulkVerifyBillingReport:test_verifyWithBulkNative() (gas: 560386) -VerifierBulkVerifyBillingReport:test_verifyWithBulkNativeUnwrapped() (gas: 567877) -VerifierBulkVerifyBillingReport:test_verifyWithBulkNativeUnwrappedReturnsChange() (gas: 574883) -VerifierBulkVerifyBillingReportV051:test_verifyMultiVersions() (gas: 473046) -VerifierBulkVerifyBillingReportV051:test_verifyMultiVersionsReturnsVerifiedReports() (gas: 472344) -VerifierBulkVerifyBillingReportV051:test_verifyWithBulkLink() (gas: 556562) -VerifierBulkVerifyBillingReportV051:test_verifyWithBulkNative() (gas: 560190) -VerifierBulkVerifyBillingReportV051:test_verifyWithBulkNativeUnwrapped() (gas: 567681) -VerifierBulkVerifyBillingReportV051:test_verifyWithBulkNativeUnwrappedReturnsChange() (gas: 574783) -VerifierBulkVerifyBillingReportV05:test_verifyMultiVersions() (gas: 472558) -VerifierBulkVerifyBillingReportV05:test_verifyMultiVersionsReturnsVerifiedReports() (gas: 471856) -VerifierBulkVerifyBillingReportV05:test_verifyWithBulkLink() (gas: 555782) -VerifierBulkVerifyBillingReportV05:test_verifyWithBulkNative() (gas: 559410) -VerifierBulkVerifyBillingReportV05:test_verifyWithBulkNativeUnwrapped() (gas: 566901) -VerifierBulkVerifyBillingReportV05:test_verifyWithBulkNativeUnwrappedReturnsChange() (gas: 574003) -VerifierConstructorTest:test_revertsIfInitializedWithEmptyVerifierProxy() (gas: 59960) -VerifierConstructorTest:test_setsTheCorrectProperties() (gas: 1810891) -VerifierConstructorTestV051:test_revertsIfInitializedWithEmptyVerifierProxy() (gas: 59692) -VerifierConstructorTestV051:test_setsTheCorrectProperties() (gas: 1561223) -VerifierConstructorTestV05:test_revertsIfInitializedWithEmptyVerifierProxy() (gas: 59657) -VerifierConstructorTestV05:test_setsTheCorrectProperties() (gas: 1530171) -VerifierDeactivateFeedWithVerifyTest:test_currentReportAllowsVerification() (gas: 192007) -VerifierDeactivateFeedWithVerifyTest:test_currentReportFailsVerification() (gas: 113322) -VerifierDeactivateFeedWithVerifyTest:test_previousReportAllowsVerification() (gas: 99651) -VerifierDeactivateFeedWithVerifyTest:test_previousReportFailsVerification() (gas: 69925) -VerifierInterfacesTest:test_DestinationContractInterfaces() (gas: 627433) -VerifierProxyAccessControlledVerificationTest:test_proxiesToTheVerifierIfHasAccess() (gas: 205719) -VerifierProxyAccessControlledVerificationTest:test_revertsIfNoAccess() (gas: 112257) -VerifierProxyAccessControlledVerificationTestV051:test_proxiesToTheVerifierIfHasAccess() (gas: 203385) -VerifierProxyAccessControlledVerificationTestV051:test_revertsIfNoAccess() (gas: 112257) -VerifierProxyAccessControlledVerificationTestV05:test_proxiesToTheVerifierIfHasAccess() (gas: 203239) -VerifierProxyAccessControlledVerificationTestV05:test_revertsIfNoAccess() (gas: 112257) -VerifierProxyConstructorTest:test_correctlySetsTheCorrectAccessControllerInterface() (gas: 1482500) -VerifierProxyConstructorTest:test_correctlySetsTheCorrectAccessControllerInterface() (gas: 1482500) -VerifierProxyConstructorTest:test_correctlySetsTheOwner() (gas: 1462646) -VerifierProxyConstructorTest:test_correctlySetsTheOwner() (gas: 1462646) +RewardManagerRecipientClaimMultiplePoolsTest:test_recipientsClaimMultipleDeposits() (gas: 964859) +RewardManagerRecipientClaimMultiplePoolsTest:test_recipientsClaimMultipleDeposits() (gas: 964859) +RewardManagerRecipientClaimMultiplePoolsTest:test_recipientsClaimMultipleDeposits() (gas: 964859) +RewardManagerRecipientClaimMultiplePoolsTest:test_singleRecipientClaimMultipleDeposits() (gas: 341833) +RewardManagerRecipientClaimMultiplePoolsTest:test_singleRecipientClaimMultipleDeposits() (gas: 341833) +RewardManagerRecipientClaimMultiplePoolsTest:test_singleRecipientClaimMultipleDeposits() (gas: 341833) +RewardManagerRecipientClaimUnevenWeightTest:test_allRecipientsClaimingReceiveExpectedAmount() (gas: 394133) +RewardManagerRecipientClaimUnevenWeightTest:test_allRecipientsClaimingReceiveExpectedAmount() (gas: 394133) +RewardManagerRecipientClaimUnevenWeightTest:test_allRecipientsClaimingReceiveExpectedAmount() (gas: 394133) +RewardManagerRecipientClaimUnevenWeightTest:test_allRecipientsClaimingReceiveExpectedAmountWithSmallDeposit() (gas: 403634) +RewardManagerRecipientClaimUnevenWeightTest:test_allRecipientsClaimingReceiveExpectedAmountWithSmallDeposit() (gas: 403634) +RewardManagerRecipientClaimUnevenWeightTest:test_allRecipientsClaimingReceiveExpectedAmountWithSmallDeposit() (gas: 403634) +RewardManagerSetRecipientsTest:test_eventIsEmittedUponSetRecipients() (gas: 223317) +RewardManagerSetRecipientsTest:test_eventIsEmittedUponSetRecipients() (gas: 223317) +RewardManagerSetRecipientsTest:test_eventIsEmittedUponSetRecipients() (gas: 223317) +RewardManagerSetRecipientsTest:test_setRecipientContainsDuplicateRecipients() (gas: 159970) +RewardManagerSetRecipientsTest:test_setRecipientContainsDuplicateRecipients() (gas: 159970) +RewardManagerSetRecipientsTest:test_setRecipientContainsDuplicateRecipients() (gas: 159970) +RewardManagerSetRecipientsTest:test_setRewardRecipientFromManagerAddress() (gas: 262928) +RewardManagerSetRecipientsTest:test_setRewardRecipientFromManagerAddress() (gas: 262928) +RewardManagerSetRecipientsTest:test_setRewardRecipientFromManagerAddress() (gas: 262928) +RewardManagerSetRecipientsTest:test_setRewardRecipientFromNonOwnerOrFeeManagerAddress() (gas: 53068) +RewardManagerSetRecipientsTest:test_setRewardRecipientFromNonOwnerOrFeeManagerAddress() (gas: 53068) +RewardManagerSetRecipientsTest:test_setRewardRecipientFromNonOwnerOrFeeManagerAddress() (gas: 53068) +RewardManagerSetRecipientsTest:test_setRewardRecipientTwice() (gas: 265100) +RewardManagerSetRecipientsTest:test_setRewardRecipientTwice() (gas: 265100) +RewardManagerSetRecipientsTest:test_setRewardRecipientTwice() (gas: 265100) +RewardManagerSetRecipientsTest:test_setRewardRecipientWeights() (gas: 212006) +RewardManagerSetRecipientsTest:test_setRewardRecipientWeights() (gas: 212006) +RewardManagerSetRecipientsTest:test_setRewardRecipientWeights() (gas: 212006) +RewardManagerSetRecipientsTest:test_setRewardRecipientWithZeroAddress() (gas: 121600) +RewardManagerSetRecipientsTest:test_setRewardRecipientWithZeroAddress() (gas: 121600) +RewardManagerSetRecipientsTest:test_setRewardRecipientWithZeroAddress() (gas: 121600) +RewardManagerSetRecipientsTest:test_setRewardRecipientWithZeroWeight() (gas: 220946) +RewardManagerSetRecipientsTest:test_setRewardRecipientWithZeroWeight() (gas: 220946) +RewardManagerSetRecipientsTest:test_setRewardRecipientWithZeroWeight() (gas: 220946) +RewardManagerSetRecipientsTest:test_setRewardRecipients() (gas: 214705) +RewardManagerSetRecipientsTest:test_setRewardRecipients() (gas: 214705) +RewardManagerSetRecipientsTest:test_setRewardRecipients() (gas: 214705) +RewardManagerSetRecipientsTest:test_setRewardRecipientsIsEmpty() (gas: 117504) +RewardManagerSetRecipientsTest:test_setRewardRecipientsIsEmpty() (gas: 117504) +RewardManagerSetRecipientsTest:test_setRewardRecipientsIsEmpty() (gas: 117504) +RewardManagerSetRecipientsTest:test_setSingleRewardRecipient() (gas: 137783) +RewardManagerSetRecipientsTest:test_setSingleRewardRecipient() (gas: 137783) +RewardManagerSetRecipientsTest:test_setSingleRewardRecipient() (gas: 137783) +RewardManagerSetupTest:test_eventEmittedUponFeeManagerUpdate() (gas: 50292) +RewardManagerSetupTest:test_eventEmittedUponFeeManagerUpdate() (gas: 50292) +RewardManagerSetupTest:test_eventEmittedUponFeeManagerUpdate() (gas: 50292) +RewardManagerSetupTest:test_eventEmittedUponFeePaid() (gas: 349377) +RewardManagerSetupTest:test_eventEmittedUponFeePaid() (gas: 349377) +RewardManagerSetupTest:test_eventEmittedUponFeePaid() (gas: 349377) +RewardManagerSetupTest:test_rejectsZeroLinkAddressOnConstruction() (gas: 232555) +RewardManagerSetupTest:test_rejectsZeroLinkAddressOnConstruction() (gas: 232555) +RewardManagerSetupTest:test_rejectsZeroLinkAddressOnConstruction() (gas: 232555) +RewardManagerSetupTest:test_setFeeManagerZeroAddress() (gas: 45797) +RewardManagerSetupTest:test_setFeeManagerZeroAddress() (gas: 45797) +RewardManagerSetupTest:test_setFeeManagerZeroAddress() (gas: 45797) +RewardManagerUpdateRewardRecipientsMultiplePoolsTest:test_updatePrimaryRecipientWeights() (gas: 791563) +RewardManagerUpdateRewardRecipientsMultiplePoolsTest:test_updatePrimaryRecipientWeights() (gas: 791563) +RewardManagerUpdateRewardRecipientsMultiplePoolsTest:test_updatePrimaryRecipientWeights() (gas: 791563) +RewardManagerUpdateRewardRecipientsTest:test_eventIsEmittedUponUpdateRecipients() (gas: 329951) +RewardManagerUpdateRewardRecipientsTest:test_eventIsEmittedUponUpdateRecipients() (gas: 329951) +RewardManagerUpdateRewardRecipientsTest:test_eventIsEmittedUponUpdateRecipients() (gas: 329951) +RewardManagerUpdateRewardRecipientsTest:test_onlyAdminCanUpdateRecipients() (gas: 51365) +RewardManagerUpdateRewardRecipientsTest:test_onlyAdminCanUpdateRecipients() (gas: 51365) +RewardManagerUpdateRewardRecipientsTest:test_onlyAdminCanUpdateRecipients() (gas: 51365) +RewardManagerUpdateRewardRecipientsTest:test_partialUpdateRecipientWeights() (gas: 498601) +RewardManagerUpdateRewardRecipientsTest:test_partialUpdateRecipientWeights() (gas: 498601) +RewardManagerUpdateRewardRecipientsTest:test_partialUpdateRecipientWeights() (gas: 498601) +RewardManagerUpdateRewardRecipientsTest:test_updateAllRecipientsWithSameAddressAndWeight() (gas: 321257) +RewardManagerUpdateRewardRecipientsTest:test_updateAllRecipientsWithSameAddressAndWeight() (gas: 321257) +RewardManagerUpdateRewardRecipientsTest:test_updateAllRecipientsWithSameAddressAndWeight() (gas: 321257) +RewardManagerUpdateRewardRecipientsTest:test_updatePartialRecipientsToSubset() (gas: 268848) +RewardManagerUpdateRewardRecipientsTest:test_updatePartialRecipientsToSubset() (gas: 268848) +RewardManagerUpdateRewardRecipientsTest:test_updatePartialRecipientsToSubset() (gas: 268848) +RewardManagerUpdateRewardRecipientsTest:test_updatePartialRecipientsWithExcessiveWeight() (gas: 295679) +RewardManagerUpdateRewardRecipientsTest:test_updatePartialRecipientsWithExcessiveWeight() (gas: 295679) +RewardManagerUpdateRewardRecipientsTest:test_updatePartialRecipientsWithExcessiveWeight() (gas: 295679) +RewardManagerUpdateRewardRecipientsTest:test_updatePartialRecipientsWithSameAddressAndWeight() (gas: 196359) +RewardManagerUpdateRewardRecipientsTest:test_updatePartialRecipientsWithSameAddressAndWeight() (gas: 196359) +RewardManagerUpdateRewardRecipientsTest:test_updatePartialRecipientsWithSameAddressAndWeight() (gas: 196359) +RewardManagerUpdateRewardRecipientsTest:test_updatePartialRecipientsWithUnderWeightSet() (gas: 295753) +RewardManagerUpdateRewardRecipientsTest:test_updatePartialRecipientsWithUnderWeightSet() (gas: 295753) +RewardManagerUpdateRewardRecipientsTest:test_updatePartialRecipientsWithUnderWeightSet() (gas: 295753) +RewardManagerUpdateRewardRecipientsTest:test_updateRecipientWeights() (gas: 789744) +RewardManagerUpdateRewardRecipientsTest:test_updateRecipientWeights() (gas: 789744) +RewardManagerUpdateRewardRecipientsTest:test_updateRecipientWeights() (gas: 789744) +RewardManagerUpdateRewardRecipientsTest:test_updateRecipientWithNewZeroAddress() (gas: 307518) +RewardManagerUpdateRewardRecipientsTest:test_updateRecipientWithNewZeroAddress() (gas: 307518) +RewardManagerUpdateRewardRecipientsTest:test_updateRecipientWithNewZeroAddress() (gas: 307518) +RewardManagerUpdateRewardRecipientsTest:test_updateRecipientsContainsDuplicateRecipients() (gas: 327307) +RewardManagerUpdateRewardRecipientsTest:test_updateRecipientsContainsDuplicateRecipients() (gas: 327307) +RewardManagerUpdateRewardRecipientsTest:test_updateRecipientsContainsDuplicateRecipients() (gas: 327307) +RewardManagerUpdateRewardRecipientsTest:test_updateRecipientsToDifferentLargerSet() (gas: 415588) +RewardManagerUpdateRewardRecipientsTest:test_updateRecipientsToDifferentLargerSet() (gas: 415588) +RewardManagerUpdateRewardRecipientsTest:test_updateRecipientsToDifferentLargerSet() (gas: 415588) +RewardManagerUpdateRewardRecipientsTest:test_updateRecipientsToDifferentPartialSet() (gas: 324037) +RewardManagerUpdateRewardRecipientsTest:test_updateRecipientsToDifferentPartialSet() (gas: 324037) +RewardManagerUpdateRewardRecipientsTest:test_updateRecipientsToDifferentPartialSet() (gas: 324037) +RewardManagerUpdateRewardRecipientsTest:test_updateRecipientsToDifferentSet() (gas: 384928) +RewardManagerUpdateRewardRecipientsTest:test_updateRecipientsToDifferentSet() (gas: 384928) +RewardManagerUpdateRewardRecipientsTest:test_updateRecipientsToDifferentSet() (gas: 384928) +RewardManagerUpdateRewardRecipientsTest:test_updateRecipientsToDifferentSetWithInvalidWeights() (gas: 368630) +RewardManagerUpdateRewardRecipientsTest:test_updateRecipientsToDifferentSetWithInvalidWeights() (gas: 368630) +RewardManagerUpdateRewardRecipientsTest:test_updateRecipientsToDifferentSetWithInvalidWeights() (gas: 368630) +RewardManagerUpdateRewardRecipientsTest:test_updateRecipientsUpdateAndRemoveExistingForLargerSet() (gas: 448455) +RewardManagerUpdateRewardRecipientsTest:test_updateRecipientsUpdateAndRemoveExistingForLargerSet() (gas: 448455) +RewardManagerUpdateRewardRecipientsTest:test_updateRecipientsUpdateAndRemoveExistingForLargerSet() (gas: 448455) +RewardManagerUpdateRewardRecipientsTest:test_updateRecipientsUpdateAndRemoveExistingForSmallerSet() (gas: 304697) +RewardManagerUpdateRewardRecipientsTest:test_updateRecipientsUpdateAndRemoveExistingForSmallerSet() (gas: 304697) +RewardManagerUpdateRewardRecipientsTest:test_updateRecipientsUpdateAndRemoveExistingForSmallerSet() (gas: 304697) +VerificationdeactivateConfigWhenThereAreMultipleDigestsTest:test_correctlyRemovesAMiddleDigest() (gas: 48229) +VerificationdeactivateConfigWhenThereAreMultipleDigestsTest:test_correctlyRemovesTheFirstDigest() (gas: 48231) +VerificationdeactivateConfigWhenThereAreMultipleDigestsTest:test_correctlyUnsetsDigestsInSequence() (gas: 141289) +VerificationdeactivateConfigWhenThereAreMultipleDigestsTest:test_revertsIfCalledByNonOwner() (gas: 39208) +VerificationdeactivateConfigWhenThereAreMultipleDigestsTest:test_revertsIfRemovingAnEmptyDigest() (gas: 32599) +VerificationdeactivateConfigWhenThereAreMultipleDigestsTest:test_revertsIfRemovingAnNonExistentDigest() (gas: 35205) +VerificationdeactivateConfigWhenThereAreMultipleDigestsTestV051:test_revertsIfCalledByNonOwner() (gas: 38647) +VerificationdeactivateConfigWhenThereAreMultipleDigestsTestV051:test_revertsIfRemovingAnEmptyDigest() (gas: 32061) +VerificationdeactivateConfigWhenThereAreMultipleDigestsTestV051:test_revertsIfRemovingAnNonExistentDigest() (gas: 34497) +VerificationdeactivateConfigWhenThereAreMultipleDigestsTestV05:test_revertsIfCalledByNonOwner() (gas: 38669) +VerificationdeactivateConfigWhenThereAreMultipleDigestsTestV05:test_revertsIfRemovingAnEmptyDigest() (gas: 32083) +VerificationdeactivateConfigWhenThereAreMultipleDigestsTestV05:test_revertsIfRemovingAnNonExistentDigest() (gas: 34519) +VerifierActivateConfigTest:test_revertsIfDigestIsEmpty() (gas: 32654) +VerifierActivateConfigTest:test_revertsIfDigestNotSet() (gas: 35314) +VerifierActivateConfigTest:test_revertsIfNotOwner() (gas: 41422) +VerifierActivateConfigTestV051:test_revertsIfDigestIsEmpty() (gas: 32095) +VerifierActivateConfigTestV051:test_revertsIfDigestNotSet() (gas: 34574) +VerifierActivateConfigTestV051:test_revertsIfNotOwner() (gas: 40863) +VerifierActivateConfigTestV05:test_revertsIfDigestIsEmpty() (gas: 32095) +VerifierActivateConfigTestV05:test_revertsIfDigestNotSet() (gas: 34574) +VerifierActivateConfigTestV05:test_revertsIfNotOwner() (gas: 40863) +VerifierActivateConfigWithDeactivatedConfigTest:test_allowsVerification() (gas: 154137) +VerifierActivateConfigWithDeactivatedConfigTestV051:test_allowsVerification() (gas: 150868) +VerifierActivateConfigWithDeactivatedConfigTestV05:test_allowsVerification() (gas: 150722) +VerifierActivateFeedTest:test_revertsIfNoFeedExistsActivate() (gas: 34755) +VerifierActivateFeedTest:test_revertsIfNoFeedExistsDeactivate() (gas: 34778) +VerifierActivateFeedTest:test_revertsIfNotOwnerActivateFeed() (gas: 38673) +VerifierActivateFeedTest:test_revertsIfNotOwnerDeactivateFeed() (gas: 38728) +VerifierBillingTests:test_rewardsAreDistributedAccordingToWeights() (gas: 2062313) +VerifierBillingTests:test_rewardsAreDistributedAccordingToWeightsMultipleWeigths() (gas: 6917359) +VerifierBillingTests:test_rewardsAreDistributedAccordingToWeightsUsingHistoricalConfigs() (gas: 3058437) +VerifierBillingTests:test_verifyWithLinkV3Report() (gas: 1833611) +VerifierBillingTests:test_verifyWithNativeERC20() (gas: 1643540) +VerifierBillingTests:test_verifyWithNativeUnwrapped() (gas: 1481451) +VerifierBillingTests:test_verifyWithNativeUnwrappedReturnsChange() (gas: 1488475) +VerifierBulkVerifyBillingReport:test_verifyMultiVersions() (gas: 616978) +VerifierBulkVerifyBillingReport:test_verifyMultiVersionsReturnsVerifiedReports() (gas: 601276) +VerifierBulkVerifyBillingReport:test_verifyWithBulkLink() (gas: 729178) +VerifierBulkVerifyBillingReport:test_verifyWithBulkNative() (gas: 724318) +VerifierBulkVerifyBillingReport:test_verifyWithBulkNativeUnwrapped() (gas: 676589) +VerifierBulkVerifyBillingReport:test_verifyWithBulkNativeUnwrappedReturnsChange() (gas: 683595) +VerifierBulkVerifyBillingReportV051:test_verifyMultiVersions() (gas: 614598) +VerifierBulkVerifyBillingReportV051:test_verifyMultiVersionsReturnsVerifiedReports() (gas: 598896) +VerifierBulkVerifyBillingReportV051:test_verifyWithBulkLink() (gas: 728862) +VerifierBulkVerifyBillingReportV051:test_verifyWithBulkNative() (gas: 724002) +VerifierBulkVerifyBillingReportV051:test_verifyWithBulkNativeUnwrapped() (gas: 676273) +VerifierBulkVerifyBillingReportV051:test_verifyWithBulkNativeUnwrappedReturnsChange() (gas: 683375) +VerifierBulkVerifyBillingReportV05:test_verifyMultiVersions() (gas: 614110) +VerifierBulkVerifyBillingReportV05:test_verifyMultiVersionsReturnsVerifiedReports() (gas: 598408) +VerifierBulkVerifyBillingReportV05:test_verifyWithBulkLink() (gas: 728082) +VerifierBulkVerifyBillingReportV05:test_verifyWithBulkNative() (gas: 723222) +VerifierBulkVerifyBillingReportV05:test_verifyWithBulkNativeUnwrapped() (gas: 675493) +VerifierBulkVerifyBillingReportV05:test_verifyWithBulkNativeUnwrappedReturnsChange() (gas: 682595) +VerifierConstructorTest:test_revertsIfInitializedWithEmptyVerifierProxy() (gas: 243284) +VerifierConstructorTest:test_setsTheCorrectProperties() (gas: 2005455) +VerifierConstructorTestV051:test_revertsIfInitializedWithEmptyVerifierProxy() (gas: 224204) +VerifierConstructorTestV051:test_setsTheCorrectProperties() (gas: 1730475) +VerifierConstructorTestV05:test_revertsIfInitializedWithEmptyVerifierProxy() (gas: 221749) +VerifierConstructorTestV05:test_setsTheCorrectProperties() (gas: 1697003) +VerifierDeactivateFeedWithVerifyTest:test_currentReportAllowsVerification() (gas: 256775) +VerifierDeactivateFeedWithVerifyTest:test_currentReportFailsVerification() (gas: 150026) +VerifierDeactivateFeedWithVerifyTest:test_previousReportAllowsVerification() (gas: 156143) +VerifierDeactivateFeedWithVerifyTest:test_previousReportFailsVerification() (gas: 98353) +VerifierInterfacesTest:test_DestinationContractInterfaces() (gas: 794353) +VerifierProxyAccessControlledVerificationTest:test_proxiesToTheVerifierIfHasAccess() (gas: 259227) +VerifierProxyAccessControlledVerificationTest:test_revertsIfNoAccess() (gas: 154145) +VerifierProxyAccessControlledVerificationTestV051:test_proxiesToTheVerifierIfHasAccess() (gas: 256929) +VerifierProxyAccessControlledVerificationTestV051:test_revertsIfNoAccess() (gas: 154181) +VerifierProxyAccessControlledVerificationTestV05:test_proxiesToTheVerifierIfHasAccess() (gas: 256783) +VerifierProxyAccessControlledVerificationTestV05:test_revertsIfNoAccess() (gas: 154181) +VerifierProxyConstructorTest:test_correctlySetsTheCorrectAccessControllerInterface() (gas: 1643056) +VerifierProxyConstructorTest:test_correctlySetsTheCorrectAccessControllerInterface() (gas: 1643056) +VerifierProxyConstructorTest:test_correctlySetsTheOwner() (gas: 1623178) +VerifierProxyConstructorTest:test_correctlySetsTheOwner() (gas: 1623178) VerifierProxyConstructorTest:test_correctlySetsVersion() (gas: 9767) VerifierProxyConstructorTest:test_correctlySetsVersion() (gas: 9767) -VerifierProxyConstructorTestV051:test_correctlySetsTheCorrectAccessControllerInterface() (gas: 1712817) -VerifierProxyConstructorTestV051:test_correctlySetsTheOwner() (gas: 1692875) +VerifierProxyConstructorTestV051:test_correctlySetsTheCorrectAccessControllerInterface() (gas: 1889453) +VerifierProxyConstructorTestV051:test_correctlySetsTheOwner() (gas: 1869487) VerifierProxyConstructorTestV051:test_correctlySetsVersion() (gas: 9767) -VerifierProxyInitializeVerifierTest:test_revertsIfDigestAlreadySet() (gas: 54117) -VerifierProxyInitializeVerifierTest:test_revertsIfNotCorrectVerifier() (gas: 13613) -VerifierProxyInitializeVerifierTest:test_revertsIfNotOwner() (gas: 17168) -VerifierProxyInitializeVerifierTest:test_revertsIfVerifierAlreadyInitialized() (gas: 42053) -VerifierProxyInitializeVerifierTest:test_revertsIfZeroAddress() (gas: 10956) -VerifierProxyInitializeVerifierTest:test_setFeeManagerWhichDoesntHonourIERC165Interface() (gas: 13884) -VerifierProxyInitializeVerifierTest:test_setFeeManagerWhichDoesntHonourInterface() (gas: 16290) -VerifierProxyInitializeVerifierTest:test_setFeeManagerZeroAddress() (gas: 10911) -VerifierProxyInitializeVerifierTest:test_updatesVerifierIfVerifier() (gas: 53436) -VerifierProxyInitializeVerifierTestV051:test_revertsIfDigestAlreadySet() (gas: 48428) -VerifierProxyInitializeVerifierTestV051:test_revertsIfNotCorrectVerifier() (gas: 13635) -VerifierProxyInitializeVerifierTestV051:test_revertsIfNotOwner() (gas: 17190) -VerifierProxyInitializeVerifierTestV051:test_revertsIfVerifierAlreadyInitialized() (gas: 42097) -VerifierProxyInitializeVerifierTestV051:test_revertsIfZeroAddress() (gas: 10978) -VerifierProxyInitializeVerifierTestV051:test_setFeeManagerWhichDoesntHonourIERC165Interface() (gas: 13884) -VerifierProxyInitializeVerifierTestV051:test_setFeeManagerWhichDoesntHonourInterface() (gas: 16290) -VerifierProxyInitializeVerifierTestV051:test_setFeeManagerZeroAddress() (gas: 10911) -VerifierProxyInitializeVerifierTestV051:test_updatesVerifierIfVerifier() (gas: 47772) -VerifierProxyInitializeVerifierTestV05:test_revertsIfDigestAlreadySet() (gas: 48384) -VerifierProxyInitializeVerifierTestV05:test_revertsIfNotCorrectVerifier() (gas: 13613) -VerifierProxyInitializeVerifierTestV05:test_revertsIfNotOwner() (gas: 17168) -VerifierProxyInitializeVerifierTestV05:test_revertsIfVerifierAlreadyInitialized() (gas: 42053) -VerifierProxyInitializeVerifierTestV05:test_revertsIfZeroAddress() (gas: 10956) -VerifierProxyInitializeVerifierTestV05:test_setFeeManagerWhichDoesntHonourIERC165Interface() (gas: 13884) -VerifierProxyInitializeVerifierTestV05:test_setFeeManagerWhichDoesntHonourInterface() (gas: 16290) -VerifierProxyInitializeVerifierTestV05:test_setFeeManagerZeroAddress() (gas: 10911) -VerifierProxyInitializeVerifierTestV05:test_updatesVerifierIfVerifier() (gas: 47706) -VerifierProxySetAccessControllerTest:test_emitsTheCorrectEvent() (gas: 35348) -VerifierProxySetAccessControllerTest:test_emitsTheCorrectEvent() (gas: 35348) -VerifierProxySetAccessControllerTest:test_revertsIfCalledByNonOwner() (gas: 15025) -VerifierProxySetAccessControllerTest:test_revertsIfCalledByNonOwner() (gas: 15025) -VerifierProxySetAccessControllerTest:test_successfullySetsNewAccessController() (gas: 32090) -VerifierProxySetAccessControllerTest:test_successfullySetsNewAccessController() (gas: 32090) -VerifierProxySetAccessControllerTest:test_successfullySetsNewAccessControllerIsEmpty() (gas: 12234) -VerifierProxySetAccessControllerTest:test_successfullySetsNewAccessControllerIsEmpty() (gas: 12234) -VerifierProxySetAccessControllerTestV051:test_emitsTheCorrectEvent() (gas: 35348) -VerifierProxySetAccessControllerTestV051:test_revertsIfCalledByNonOwner() (gas: 15025) -VerifierProxySetAccessControllerTestV051:test_successfullySetsNewAccessController() (gas: 32112) -VerifierProxySetAccessControllerTestV051:test_successfullySetsNewAccessControllerIsEmpty() (gas: 12256) -VerifierProxyUnsetVerifierTest:test_revertsIfDigestDoesNotExist() (gas: 13149) -VerifierProxyUnsetVerifierTest:test_revertsIfDigestDoesNotExist() (gas: 13149) -VerifierProxyUnsetVerifierTest:test_revertsIfNotAdmin() (gas: 14973) -VerifierProxyUnsetVerifierTest:test_revertsIfNotAdmin() (gas: 14973) -VerifierProxyUnsetVerifierTestV051:test_revertsIfDigestDoesNotExist() (gas: 13171) -VerifierProxyUnsetVerifierTestV051:test_revertsIfNotAdmin() (gas: 14995) -VerifierProxyUnsetVerifierWithPreviouslySetVerifierTest:test_correctlyUnsetsVerifier() (gas: 12724) -VerifierProxyUnsetVerifierWithPreviouslySetVerifierTest:test_correctlyUnsetsVerifier() (gas: 12724) -VerifierProxyUnsetVerifierWithPreviouslySetVerifierTest:test_emitsAnEventAfterUnsettingVerifier() (gas: 17985) -VerifierProxyUnsetVerifierWithPreviouslySetVerifierTest:test_emitsAnEventAfterUnsettingVerifier() (gas: 17985) -VerifierProxyUnsetVerifierWithPreviouslySetVerifierTestV051:test_correctlyUnsetsVerifier() (gas: 12768) -VerifierProxyUnsetVerifierWithPreviouslySetVerifierTestV051:test_emitsAnEventAfterUnsettingVerifier() (gas: 18007) -VerifierProxyVerifyTest:test_proxiesToTheCorrectVerifier() (gas: 201554) -VerifierProxyVerifyTest:test_revertsIfNoVerifierConfigured() (gas: 117265) -VerifierProxyVerifyTestV051:test_proxiesToTheCorrectVerifier() (gas: 199220) -VerifierProxyVerifyTestV051:test_revertsIfNoVerifierConfigured() (gas: 117265) -VerifierProxyVerifyTestV05:test_proxiesToTheCorrectVerifier() (gas: 199074) -VerifierProxyVerifyTestV05:test_revertsIfNoVerifierConfigured() (gas: 117265) -VerifierSetAccessControllerTest:test_revertsIfCalledByNonOwner() (gas: 17152) -VerifierSetAccessControllerTest:test_setFeeManagerWhichDoesntHonourInterface() (gas: 16272) -VerifierSetAccessControllerTest:test_successfullySetsNewFeeManager() (gas: 41888) -VerifierSetConfigFromSourceMultipleDigestsTest:test_correctlySetsConfigWhenDigestsAreRemoved() (gas: 538740) -VerifierSetConfigFromSourceMultipleDigestsTest:test_correctlyUpdatesDigestsOnMultipleVerifiersInTheProxy() (gas: 964683) -VerifierSetConfigFromSourceMultipleDigestsTest:test_correctlyUpdatesTheDigestInTheProxy() (gas: 520403) -VerifierSetConfigFromSourceTest:test_revertsIfCalledByNonOwner() (gas: 183217) -VerifierSetConfigTest:test_correctlyUpdatesTheConfig() (gas: 1057885) -VerifierSetConfigTest:test_revertsIfCalledByNonOwner() (gas: 182986) -VerifierSetConfigTest:test_revertsIfDuplicateSigners() (gas: 251595) -VerifierSetConfigTest:test_revertsIfFaultToleranceIsZero() (gas: 176543) -VerifierSetConfigTest:test_revertsIfNotEnoughSigners() (gas: 15842) -VerifierSetConfigTest:test_revertsIfSetWithTooManySigners() (gas: 22182) -VerifierSetConfigTest:test_revertsIfSignerContainsZeroAddress() (gas: 228025) -VerifierSetConfigTestV051:test_correctlyUpdatesTheConfig() (gas: 1019486) -VerifierSetConfigTestV051:test_revertsIfCalledByNonOwner() (gas: 213876) -VerifierSetConfigTestV051:test_revertsIfDuplicateSigners() (gas: 243775) -VerifierSetConfigTestV051:test_revertsIfFaultToleranceIsZero() (gas: 207433) -VerifierSetConfigTestV051:test_revertsIfNotEnoughSigners() (gas: 16385) -VerifierSetConfigTestV051:test_revertsIfSetWithTooManySigners() (gas: 41439) -VerifierSetConfigTestV051:test_revertsIfSignerContainsZeroAddress() (gas: 220290) -VerifierSetConfigTestV05:test_correctlyUpdatesTheConfig() (gas: 1019340) -VerifierSetConfigTestV05:test_revertsIfCalledByNonOwner() (gas: 213898) -VerifierSetConfigTestV05:test_revertsIfDuplicateSigners() (gas: 243789) -VerifierSetConfigTestV05:test_revertsIfFaultToleranceIsZero() (gas: 207455) -VerifierSetConfigTestV05:test_revertsIfNotEnoughSigners() (gas: 16407) -VerifierSetConfigTestV05:test_revertsIfSetWithTooManySigners() (gas: 41461) -VerifierSetConfigTestV05:test_revertsIfSignerContainsZeroAddress() (gas: 220308) -VerifierSetConfigWhenThereAreMultipleDigestsTest05:test_configDigestMatchesConfiguratorDigest() (gas: 581521) -VerifierSetConfigWhenThereAreMultipleDigestsTest05:test_correctlySetsConfigWhenDigestsAreRemoved() (gas: 524424) -VerifierSetConfigWhenThereAreMultipleDigestsTest05:test_correctlyUpdatesDigestsOnMultipleVerifiersInTheProxy() (gas: 958257) -VerifierSetConfigWhenThereAreMultipleDigestsTest05:test_correctlyUpdatesTheDigestInTheProxy() (gas: 517141) -VerifierSetConfigWhenThereAreMultipleDigestsTest05:test_incrementalConfigUpdates() (gas: 1424440) -VerifierSetConfigWhenThereAreMultipleDigestsTest05:test_revertsIfDuplicateConfigIsSet() (gas: 545708) -VerifierSetConfigWhenThereAreMultipleDigestsTest:test_correctlySetsConfigWhenDigestsAreRemoved() (gas: 538489) -VerifierSetConfigWhenThereAreMultipleDigestsTest:test_correctlyUpdatesDigestsOnMultipleVerifiersInTheProxy() (gas: 964172) -VerifierSetConfigWhenThereAreMultipleDigestsTest:test_correctlyUpdatesTheDigestInTheProxy() (gas: 520143) -VerifierSetConfigWhenThereAreMultipleDigestsTestV051:test_configDigestMatchesConfiguratorDigest() (gas: 581521) -VerifierSetConfigWhenThereAreMultipleDigestsTestV051:test_correctlySetsConfigWhenDigestsAreRemoved() (gas: 524462) -VerifierSetConfigWhenThereAreMultipleDigestsTestV051:test_correctlyUpdatesDigestsOnMultipleVerifiersInTheProxy() (gas: 958421) -VerifierSetConfigWhenThereAreMultipleDigestsTestV051:test_correctlyUpdatesTheDigestInTheProxy() (gas: 517223) -VerifierSetConfigWhenThereAreMultipleDigestsTestV051:test_incrementalConfigUpdates() (gas: 1424620) -VerifierSetConfigWhenThereAreMultipleDigestsTestV051:test_revertsIfDuplicateConfigIsSet() (gas: 545746) +VerifierProxyInitializeVerifierTest:test_revertsIfDigestAlreadySet() (gas: 108985) +VerifierProxyInitializeVerifierTest:test_revertsIfNotCorrectVerifier() (gas: 35453) +VerifierProxyInitializeVerifierTest:test_revertsIfNotOwner() (gas: 38600) +VerifierProxyInitializeVerifierTest:test_revertsIfVerifierAlreadyInitialized() (gas: 91417) +VerifierProxyInitializeVerifierTest:test_revertsIfZeroAddress() (gas: 32148) +VerifierProxyInitializeVerifierTest:test_setFeeManagerWhichDoesntHonourIERC165Interface() (gas: 35088) +VerifierProxyInitializeVerifierTest:test_setFeeManagerWhichDoesntHonourInterface() (gas: 37722) +VerifierProxyInitializeVerifierTest:test_setFeeManagerZeroAddress() (gas: 32103) +VerifierProxyInitializeVerifierTest:test_updatesVerifierIfVerifier() (gas: 88016) +VerifierProxyInitializeVerifierTestV051:test_revertsIfDigestAlreadySet() (gas: 101296) +VerifierProxyInitializeVerifierTestV051:test_revertsIfNotCorrectVerifier() (gas: 35475) +VerifierProxyInitializeVerifierTestV051:test_revertsIfNotOwner() (gas: 38622) +VerifierProxyInitializeVerifierTestV051:test_revertsIfVerifierAlreadyInitialized() (gas: 91461) +VerifierProxyInitializeVerifierTestV051:test_revertsIfZeroAddress() (gas: 32170) +VerifierProxyInitializeVerifierTestV051:test_setFeeManagerWhichDoesntHonourIERC165Interface() (gas: 35088) +VerifierProxyInitializeVerifierTestV051:test_setFeeManagerWhichDoesntHonourInterface() (gas: 37722) +VerifierProxyInitializeVerifierTestV051:test_setFeeManagerZeroAddress() (gas: 32103) +VerifierProxyInitializeVerifierTestV051:test_updatesVerifierIfVerifier() (gas: 80352) +VerifierProxyInitializeVerifierTestV05:test_revertsIfDigestAlreadySet() (gas: 101252) +VerifierProxyInitializeVerifierTestV05:test_revertsIfNotCorrectVerifier() (gas: 35453) +VerifierProxyInitializeVerifierTestV05:test_revertsIfNotOwner() (gas: 38600) +VerifierProxyInitializeVerifierTestV05:test_revertsIfVerifierAlreadyInitialized() (gas: 91417) +VerifierProxyInitializeVerifierTestV05:test_revertsIfZeroAddress() (gas: 32148) +VerifierProxyInitializeVerifierTestV05:test_setFeeManagerWhichDoesntHonourIERC165Interface() (gas: 35088) +VerifierProxyInitializeVerifierTestV05:test_setFeeManagerWhichDoesntHonourInterface() (gas: 37722) +VerifierProxyInitializeVerifierTestV05:test_setFeeManagerZeroAddress() (gas: 32103) +VerifierProxyInitializeVerifierTestV05:test_updatesVerifierIfVerifier() (gas: 80286) +VerifierProxySetAccessControllerTest:test_emitsTheCorrectEvent() (gas: 56564) +VerifierProxySetAccessControllerTest:test_emitsTheCorrectEvent() (gas: 56564) +VerifierProxySetAccessControllerTest:test_revertsIfCalledByNonOwner() (gas: 38741) +VerifierProxySetAccessControllerTest:test_revertsIfCalledByNonOwner() (gas: 38741) +VerifierProxySetAccessControllerTest:test_successfullySetsNewAccessController() (gas: 55306) +VerifierProxySetAccessControllerTest:test_successfullySetsNewAccessController() (gas: 55306) +VerifierProxySetAccessControllerTest:test_successfullySetsNewAccessControllerIsEmpty() (gas: 35426) +VerifierProxySetAccessControllerTest:test_successfullySetsNewAccessControllerIsEmpty() (gas: 35426) +VerifierProxySetAccessControllerTestV051:test_emitsTheCorrectEvent() (gas: 56564) +VerifierProxySetAccessControllerTestV051:test_revertsIfCalledByNonOwner() (gas: 38741) +VerifierProxySetAccessControllerTestV051:test_successfullySetsNewAccessController() (gas: 55328) +VerifierProxySetAccessControllerTestV051:test_successfullySetsNewAccessControllerIsEmpty() (gas: 35448) +VerifierProxyUnsetVerifierTest:test_revertsIfDigestDoesNotExist() (gas: 34341) +VerifierProxyUnsetVerifierTest:test_revertsIfDigestDoesNotExist() (gas: 34341) +VerifierProxyUnsetVerifierTest:test_revertsIfNotAdmin() (gas: 38665) +VerifierProxyUnsetVerifierTest:test_revertsIfNotAdmin() (gas: 38665) +VerifierProxyUnsetVerifierTestV051:test_revertsIfDigestDoesNotExist() (gas: 34363) +VerifierProxyUnsetVerifierTestV051:test_revertsIfNotAdmin() (gas: 38687) +VerifierProxyUnsetVerifierWithPreviouslySetVerifierTest:test_correctlyUnsetsVerifier() (gas: 31488) +VerifierProxyUnsetVerifierWithPreviouslySetVerifierTest:test_correctlyUnsetsVerifier() (gas: 31488) +VerifierProxyUnsetVerifierWithPreviouslySetVerifierTest:test_emitsAnEventAfterUnsettingVerifier() (gas: 34749) +VerifierProxyUnsetVerifierWithPreviouslySetVerifierTest:test_emitsAnEventAfterUnsettingVerifier() (gas: 34749) +VerifierProxyUnsetVerifierWithPreviouslySetVerifierTestV051:test_correctlyUnsetsVerifier() (gas: 31532) +VerifierProxyUnsetVerifierWithPreviouslySetVerifierTestV051:test_emitsAnEventAfterUnsettingVerifier() (gas: 34771) +VerifierProxyVerifyTest:test_proxiesToTheCorrectVerifier() (gas: 238442) +VerifierProxyVerifyTest:test_revertsIfNoVerifierConfigured() (gas: 153665) +VerifierProxyVerifyTestV051:test_proxiesToTheCorrectVerifier() (gas: 236144) +VerifierProxyVerifyTestV051:test_revertsIfNoVerifierConfigured() (gas: 153665) +VerifierProxyVerifyTestV05:test_proxiesToTheCorrectVerifier() (gas: 235998) +VerifierProxyVerifyTestV05:test_revertsIfNoVerifierConfigured() (gas: 153665) +VerifierSetAccessControllerTest:test_revertsIfCalledByNonOwner() (gas: 41084) +VerifierSetAccessControllerTest:test_setFeeManagerWhichDoesntHonourInterface() (gas: 37692) +VerifierSetAccessControllerTest:test_successfullySetsNewFeeManager() (gas: 67320) +VerifierSetConfigFromSourceMultipleDigestsTest:test_correctlySetsConfigWhenDigestsAreRemoved() (gas: 600192) +VerifierSetConfigFromSourceMultipleDigestsTest:test_correctlyUpdatesDigestsOnMultipleVerifiersInTheProxy() (gas: 1080551) +VerifierSetConfigFromSourceMultipleDigestsTest:test_correctlyUpdatesTheDigestInTheProxy() (gas: 560087) +VerifierSetConfigFromSourceTest:test_revertsIfCalledByNonOwner() (gas: 282777) +VerifierSetConfigTest:test_correctlyUpdatesTheConfig() (gas: 1130921) +VerifierSetConfigTest:test_revertsIfCalledByNonOwner() (gas: 282090) +VerifierSetConfigTest:test_revertsIfDuplicateSigners() (gas: 286199) +VerifierSetConfigTest:test_revertsIfFaultToleranceIsZero() (gas: 211135) +VerifierSetConfigTest:test_revertsIfNotEnoughSigners() (gas: 39390) +VerifierSetConfigTest:test_revertsIfSetWithTooManySigners() (gas: 49522) +VerifierSetConfigTest:test_revertsIfSignerContainsZeroAddress() (gas: 262389) +VerifierSetConfigTestV051:test_correctlyUpdatesTheConfig() (gas: 1081054) +VerifierSetConfigTestV051:test_revertsIfCalledByNonOwner() (gas: 312012) +VerifierSetConfigTestV051:test_revertsIfDuplicateSigners() (gas: 277411) +VerifierSetConfigTestV051:test_revertsIfFaultToleranceIsZero() (gas: 241045) +VerifierSetConfigTestV051:test_revertsIfNotEnoughSigners() (gas: 38941) +VerifierSetConfigTestV051:test_revertsIfSetWithTooManySigners() (gas: 67799) +VerifierSetConfigTestV051:test_revertsIfSignerContainsZeroAddress() (gas: 253686) +VerifierSetConfigTestV05:test_correctlyUpdatesTheConfig() (gas: 1080908) +VerifierSetConfigTestV05:test_revertsIfCalledByNonOwner() (gas: 312034) +VerifierSetConfigTestV05:test_revertsIfDuplicateSigners() (gas: 277425) +VerifierSetConfigTestV05:test_revertsIfFaultToleranceIsZero() (gas: 241067) +VerifierSetConfigTestV05:test_revertsIfNotEnoughSigners() (gas: 38963) +VerifierSetConfigTestV05:test_revertsIfSetWithTooManySigners() (gas: 67821) +VerifierSetConfigTestV05:test_revertsIfSignerContainsZeroAddress() (gas: 253704) +VerifierSetConfigWhenThereAreMultipleDigestsTest05:test_configDigestMatchesConfiguratorDigest() (gas: 700649) +VerifierSetConfigWhenThereAreMultipleDigestsTest05:test_correctlySetsConfigWhenDigestsAreRemoved() (gas: 577748) +VerifierSetConfigWhenThereAreMultipleDigestsTest05:test_correctlyUpdatesDigestsOnMultipleVerifiersInTheProxy() (gas: 1060777) +VerifierSetConfigWhenThereAreMultipleDigestsTest05:test_correctlyUpdatesTheDigestInTheProxy() (gas: 548901) +VerifierSetConfigWhenThereAreMultipleDigestsTest05:test_incrementalConfigUpdates() (gas: 1520720) +VerifierSetConfigWhenThereAreMultipleDigestsTest05:test_revertsIfDuplicateConfigIsSet() (gas: 605228) +VerifierSetConfigWhenThereAreMultipleDigestsTest:test_correctlySetsConfigWhenDigestsAreRemoved() (gas: 599269) +VerifierSetConfigWhenThereAreMultipleDigestsTest:test_correctlyUpdatesDigestsOnMultipleVerifiersInTheProxy() (gas: 1079128) +VerifierSetConfigWhenThereAreMultipleDigestsTest:test_correctlyUpdatesTheDigestInTheProxy() (gas: 559371) +VerifierSetConfigWhenThereAreMultipleDigestsTestV051:test_configDigestMatchesConfiguratorDigest() (gas: 700649) +VerifierSetConfigWhenThereAreMultipleDigestsTestV051:test_correctlySetsConfigWhenDigestsAreRemoved() (gas: 577786) +VerifierSetConfigWhenThereAreMultipleDigestsTestV051:test_correctlyUpdatesDigestsOnMultipleVerifiersInTheProxy() (gas: 1060941) +VerifierSetConfigWhenThereAreMultipleDigestsTestV051:test_correctlyUpdatesTheDigestInTheProxy() (gas: 548983) +VerifierSetConfigWhenThereAreMultipleDigestsTestV051:test_incrementalConfigUpdates() (gas: 1520900) +VerifierSetConfigWhenThereAreMultipleDigestsTestV051:test_revertsIfDuplicateConfigIsSet() (gas: 605266) VerifierSupportsInterfaceTest:test_falseIfIsNotCorrectInterface() (gas: 5590) VerifierSupportsInterfaceTest:test_falseIfIsNotCorrectInterface() (gas: 5590) VerifierSupportsInterfaceTest:test_trueIfIsCorrectInterface() (gas: 5633) VerifierSupportsInterfaceTest:test_trueIfIsCorrectInterface() (gas: 5633) VerifierSupportsInterfaceTestV051:test_falseIfIsNotCorrectInterface() (gas: 5590) VerifierSupportsInterfaceTestV051:test_trueIfIsCorrectInterface() (gas: 5633) -VerifierTestBillingReport:test_verifyWithLink() (gas: 274865) -VerifierTestBillingReport:test_verifyWithNative() (gas: 315543) -VerifierTestBillingReport:test_verifyWithNativeUnwrapped() (gas: 317858) -VerifierTestBillingReport:test_verifyWithNativeUnwrappedReturnsChange() (gas: 324881) -VerifierTestBillingReportV051:test_verifyWithLink() (gas: 274815) -VerifierTestBillingReportV051:test_verifyWithNative() (gas: 315493) -VerifierTestBillingReportV051:test_verifyWithNativeUnwrapped() (gas: 317808) -VerifierTestBillingReportV051:test_verifyWithNativeUnwrappedReturnsChange() (gas: 324927) -VerifierTestBillingReportV05:test_verifyWithLink() (gas: 274669) -VerifierTestBillingReportV05:test_verifyWithNative() (gas: 315347) -VerifierTestBillingReportV05:test_verifyWithNativeUnwrapped() (gas: 317662) -VerifierTestBillingReportV05:test_verifyWithNativeUnwrappedReturnsChange() (gas: 324781) -VerifierUpdateConfigTest:test_updateConfig() (gas: 673580) -VerifierUpdateConfigTest:test_updateConfigRevertsIfCalledByNonOwner() (gas: 505312) -VerifierUpdateConfigTest:test_updateConfigRevertsIfDigestNotSet() (gas: 92340) -VerifierUpdateConfigTest:test_updateConfigRevertsIfFIsZero() (gas: 500500) -VerifierUpdateConfigTest:test_updateConfigRevertsIfFTooHigh() (gas: 501433) -VerifierUpdateConfigTest:test_updateConfigRevertsIfPrevSignersLengthMismatch() (gas: 526466) -VerifierUpdateConfigTest:test_updateConfigWithDifferentSigners() (gas: 801254) -VerifierUpdateConfigTestV051:test_updateConfig() (gas: 673808) -VerifierUpdateConfigTestV051:test_updateConfigRevertsIfCalledByNonOwner() (gas: 505417) -VerifierUpdateConfigTestV051:test_updateConfigRevertsIfDigestNotSet() (gas: 92385) -VerifierUpdateConfigTestV051:test_updateConfigRevertsIfFIsZero() (gas: 500605) -VerifierUpdateConfigTestV051:test_updateConfigRevertsIfFTooHigh() (gas: 501538) -VerifierUpdateConfigTestV051:test_updateConfigRevertsIfPrevSignersLengthMismatch() (gas: 526571) -VerifierUpdateConfigTestV051:test_updateConfigWithDifferentSigners() (gas: 801498) -VerifierVerifyBulkTest:test_revertsVerifyBulkIfNoAccess() (gas: 112799) -VerifierVerifyBulkTest:test_verifyBulkSingleCaseWithSingleConfig() (gas: 714286) -VerifierVerifyBulkTest:test_verifyBulkWithSingleConfigOneVerifyFails() (gas: 698191) -VerifierVerifyMultipleConfigDigestTest:test_canVerifyNewerReportsWithNewerConfigs() (gas: 131203) -VerifierVerifyMultipleConfigDigestTest:test_canVerifyOlderReportsWithOlderConfigs() (gas: 187055) -VerifierVerifyMultipleConfigDigestTest:test_revertsIfAReportIsVerifiedWithAnExistingButIncorrectDigest() (gas: 88180) -VerifierVerifyMultipleConfigDigestTest:test_revertsIfVerifyingWithAnUnsetDigest() (gas: 128007) -VerifierVerifyMultipleConfigDigestTestV051:test_canVerifyNewerReportsWithNewerConfigs() (gas: 128892) -VerifierVerifyMultipleConfigDigestTestV051:test_canVerifyOlderReportsWithOlderConfigs() (gas: 184721) -VerifierVerifyMultipleConfigDigestTestV051:test_revertsIfAReportIsVerifiedWithAnExistingButIncorrectDigest() (gas: 85978) -VerifierVerifyMultipleConfigDigestTestV051:test_revertsIfVerifyingWithAnUnsetDigest() (gas: 123104) -VerifierVerifyMultipleConfigDigestTestV051:test_verifyAfterConfigUpdate() (gas: 904360) -VerifierVerifyMultipleConfigDigestTestV051:test_verifyAfterConfigUpdateWithExistingSigners() (gas: 743779) -VerifierVerifyMultipleConfigDigestTestV05:test_canVerifyNewerReportsWithNewerConfigs() (gas: 128746) -VerifierVerifyMultipleConfigDigestTestV05:test_canVerifyOlderReportsWithOlderConfigs() (gas: 184575) -VerifierVerifyMultipleConfigDigestTestV05:test_revertsIfAReportIsVerifiedWithAnExistingButIncorrectDigest() (gas: 85862) -VerifierVerifyMultipleConfigDigestTestV05:test_revertsIfVerifyingWithAnUnsetDigest() (gas: 123010) -VerifierVerifyMultipleConfigDigestTestV05:test_verifyAfterConfigUpdate() (gas: 903907) -VerifierVerifyMultipleConfigDigestTestV05:test_verifyAfterConfigUpdateWithExistingSigners() (gas: 743434) -VerifierVerifySingleConfigDigestTest:test_emitsAnEventIfReportVerified() (gas: 186868) -VerifierVerifySingleConfigDigestTest:test_returnsThePriceAndBlockNumIfReportVerified() (gas: 187037) -VerifierVerifySingleConfigDigestTest:test_revertsIfConfigDigestNotSet() (gas: 116096) -VerifierVerifySingleConfigDigestTest:test_revertsIfDuplicateSignersHaveSigned() (gas: 182305) -VerifierVerifySingleConfigDigestTest:test_revertsIfMismatchedSignatureLengthV03() (gas: 53108) -VerifierVerifySingleConfigDigestTest:test_revertsIfReportHasUnconfiguredFeedID() (gas: 103921) -VerifierVerifySingleConfigDigestTest:test_revertsIfVerifiedByNonProxy() (gas: 100926) -VerifierVerifySingleConfigDigestTest:test_revertsIfVerifiedWithIncorrectAddresses() (gas: 184034) -VerifierVerifySingleConfigDigestTest:test_revertsIfWrongNumberOfSigners() (gas: 109982) -VerifierVerifySingleConfigDigestTest:test_setsTheCorrectEpoch() (gas: 194206) -VerifierVerifySingleConfigDigestTestV051:test_emitsAnEventIfReportVerified() (gas: 184567) -VerifierVerifySingleConfigDigestTestV051:test_returnsThePriceAndBlockNumIfReportVerified() (gas: 184736) -VerifierVerifySingleConfigDigestTestV051:test_revertsIfConfigDigestNotSet() (gas: 113750) -VerifierVerifySingleConfigDigestTestV051:test_revertsIfDuplicateSignersHaveSigned() (gas: 179830) -VerifierVerifySingleConfigDigestTestV051:test_revertsIfMismatchedSignatureLength() (gas: 50894) -VerifierVerifySingleConfigDigestTestV051:test_revertsIfReportHasUnconfiguredConfigDigest() (gas: 104633) -VerifierVerifySingleConfigDigestTestV051:test_revertsIfVerifiedByNonProxy() (gas: 100997) -VerifierVerifySingleConfigDigestTestV051:test_revertsIfVerifiedWithIncorrectAddresses() (gas: 181559) -VerifierVerifySingleConfigDigestTestV051:test_revertsIfWrongNumberOfSigners() (gas: 107768) -VerifierVerifySingleConfigDigestTestV05:test_emitsAnEventIfReportVerified() (gas: 184421) -VerifierVerifySingleConfigDigestTestV05:test_returnsThePriceAndBlockNumIfReportVerified() (gas: 184590) -VerifierVerifySingleConfigDigestTestV05:test_revertsIfConfigDigestNotSet() (gas: 113634) -VerifierVerifySingleConfigDigestTestV05:test_revertsIfDuplicateSignersHaveSigned() (gas: 179714) -VerifierVerifySingleConfigDigestTestV05:test_revertsIfMismatchedSignatureLength() (gas: 50778) -VerifierVerifySingleConfigDigestTestV05:test_revertsIfReportHasUnconfiguredConfigDigest() (gas: 104517) -VerifierVerifySingleConfigDigestTestV05:test_revertsIfVerifiedByNonProxy() (gas: 100881) -VerifierVerifySingleConfigDigestTestV05:test_revertsIfVerifiedWithIncorrectAddresses() (gas: 181443) -VerifierVerifySingleConfigDigestTestV05:test_revertsIfWrongNumberOfSigners() (gas: 107652) -VerifierVerifyTest:test_canVerifyNewerReportsWithNewerConfigs() (gas: 862929) -VerifierVerifyTest:test_canVerifyOlderV3ReportsWithOlderConfigs() (gas: 809672) -VerifierVerifyTest:test_failToVerifyReportIfDupSigners() (gas: 450716) -VerifierVerifyTest:test_failToVerifyReportIfNoSigners() (gas: 426452) -VerifierVerifyTest:test_failToVerifyReportIfNotEnoughSigners() (gas: 434768) -VerifierVerifyTest:test_failToVerifyReportIfSignerNotInConfig() (gas: 456802) -VerifierVerifyTest:test_revertsVerifyIfNoAccess() (gas: 109387) -VerifierVerifyTest:test_rollingOutConfiguration() (gas: 1496956) -VerifierVerifyTest:test_scenarioRollingNewChainWithHistoricConfigs() (gas: 975976) -VerifierVerifyTest:test_verifyFailsWhenReportIsOlderThanConfig() (gas: 2303123) -VerifierVerifyTest:test_verifyReport() (gas: 1431517) -VerifierVerifyTest:test_verifyTooglingActiveFlagsDonConfigs() (gas: 1912420) -Verifier_accessControlledVerifyV03:testVerifyWithAccessControl_gas() (gas: 212077) -Verifier_accessControlledVerifyV051:testVerifyWithAccessControl_gas() (gas: 209743) -Verifier_accessControlledVerifyV05:testVerifyWithAccessControl_gas() (gas: 209597) -Verifier_bulkVerifyWithFeeV03:testBulkVerifyProxyWithLinkFeeSuccess_gas() (gas: 519313) -Verifier_bulkVerifyWithFeeV03:testBulkVerifyProxyWithNativeFeeSuccess_gas() (gas: 542709) -Verifier_bulkVerifyWithFeeV051:testBulkVerifyProxyWithLinkFeeSuccess_gas() (gas: 519125) -Verifier_bulkVerifyWithFeeV051:testBulkVerifyProxyWithNativeFeeSuccess_gas() (gas: 542521) -Verifier_bulkVerifyWithFeeV05:testBulkVerifyProxyWithLinkFeeSuccess_gas() (gas: 518345) -Verifier_bulkVerifyWithFeeV05:testBulkVerifyProxyWithNativeFeeSuccess_gas() (gas: 541741) -Verifier_setConfigV03:testSetConfigSuccess_gas() (gas: 922625) -Verifier_setConfigV051:testSetConfigSuccess_gas() (gas: 895289) -Verifier_setConfigV05:testSetConfigSuccess_gas() (gas: 895165) -Verifier_verifyV03:testVerifyProxySuccess_gas() (gas: 198742) -Verifier_verifyV03:testVerifySuccess_gas() (gas: 186736) -Verifier_verifyV051:testVerifyProxySuccess_gas() (gas: 196408) -Verifier_verifyV051:testVerifySuccess_gas() (gas: 184402) -Verifier_verifyV05:testVerifyProxySuccess_gas() (gas: 196262) -Verifier_verifyV05:testVerifySuccess_gas() (gas: 184256) -Verifier_verifyWithFeeV03:testVerifyProxyWithLinkFeeSuccess_gas() (gas: 238823) -Verifier_verifyWithFeeV03:testVerifyProxyWithNativeFeeSuccess_gas() (gas: 257300) -Verifier_verifyWithFeeV051:testVerifyProxyWithLinkFeeSuccess_gas() (gas: 238773) -Verifier_verifyWithFeeV051:testVerifyProxyWithNativeFeeSuccess_gas() (gas: 257250) -Verifier_verifyWithFeeV05:testVerifyProxyWithLinkFeeSuccess_gas() (gas: 238627) -Verifier_verifyWithFeeV05:testVerifyProxyWithNativeFeeSuccess_gas() (gas: 257104) \ No newline at end of file +VerifierTestBillingReport:test_verifyWithLink() (gas: 377129) +VerifierTestBillingReport:test_verifyWithNative() (gas: 417507) +VerifierTestBillingReport:test_verifyWithNativeUnwrapped() (gas: 360114) +VerifierTestBillingReport:test_verifyWithNativeUnwrappedReturnsChange() (gas: 367137) +VerifierTestBillingReportV051:test_verifyWithLink() (gas: 377055) +VerifierTestBillingReportV051:test_verifyWithNative() (gas: 417433) +VerifierTestBillingReportV051:test_verifyWithNativeUnwrapped() (gas: 360040) +VerifierTestBillingReportV051:test_verifyWithNativeUnwrappedReturnsChange() (gas: 367159) +VerifierTestBillingReportV05:test_verifyWithLink() (gas: 376909) +VerifierTestBillingReportV05:test_verifyWithNative() (gas: 417287) +VerifierTestBillingReportV05:test_verifyWithNativeUnwrapped() (gas: 359894) +VerifierTestBillingReportV05:test_verifyWithNativeUnwrappedReturnsChange() (gas: 367013) +VerifierUpdateConfigTest:test_updateConfig() (gas: 621280) +VerifierUpdateConfigTest:test_updateConfigRevertsIfCalledByNonOwner() (gas: 572864) +VerifierUpdateConfigTest:test_updateConfigRevertsIfDigestNotSet() (gas: 125620) +VerifierUpdateConfigTest:test_updateConfigRevertsIfFIsZero() (gas: 561540) +VerifierUpdateConfigTest:test_updateConfigRevertsIfFTooHigh() (gas: 562485) +VerifierUpdateConfigTest:test_updateConfigRevertsIfPrevSignersLengthMismatch() (gas: 589690) +VerifierUpdateConfigTest:test_updateConfigWithDifferentSigners() (gas: 768013) +VerifierUpdateConfigTestV051:test_updateConfig() (gas: 621475) +VerifierUpdateConfigTestV051:test_updateConfigRevertsIfCalledByNonOwner() (gas: 572969) +VerifierUpdateConfigTestV051:test_updateConfigRevertsIfDigestNotSet() (gas: 125665) +VerifierUpdateConfigTestV051:test_updateConfigRevertsIfFIsZero() (gas: 561645) +VerifierUpdateConfigTestV051:test_updateConfigRevertsIfFTooHigh() (gas: 562590) +VerifierUpdateConfigTestV051:test_updateConfigRevertsIfPrevSignersLengthMismatch() (gas: 589795) +VerifierUpdateConfigTestV051:test_updateConfigWithDifferentSigners() (gas: 768318) +VerifierVerifyBulkTest:test_revertsVerifyBulkIfNoAccess() (gas: 167555) +VerifierVerifyBulkTest:test_verifyBulkSingleCaseWithSingleConfig() (gas: 840414) +VerifierVerifyBulkTest:test_verifyBulkWithSingleConfigOneVerifyFails() (gas: 831087) +VerifierVerifyMultipleConfigDigestTest:test_canVerifyNewerReportsWithNewerConfigs() (gas: 177203) +VerifierVerifyMultipleConfigDigestTest:test_canVerifyOlderReportsWithOlderConfigs() (gas: 238151) +VerifierVerifyMultipleConfigDigestTest:test_revertsIfAReportIsVerifiedWithAnExistingButIncorrectDigest() (gas: 122132) +VerifierVerifyMultipleConfigDigestTest:test_revertsIfVerifyingWithAnUnsetDigest() (gas: 197667) +VerifierVerifyMultipleConfigDigestTestV051:test_canVerifyNewerReportsWithNewerConfigs() (gas: 174904) +VerifierVerifyMultipleConfigDigestTestV051:test_canVerifyOlderReportsWithOlderConfigs() (gas: 235853) +VerifierVerifyMultipleConfigDigestTestV051:test_revertsIfAReportIsVerifiedWithAnExistingButIncorrectDigest() (gas: 119954) +VerifierVerifyMultipleConfigDigestTestV051:test_revertsIfVerifyingWithAnUnsetDigest() (gas: 192300) +VerifierVerifyMultipleConfigDigestTestV051:test_verifyAfterConfigUpdate() (gas: 991256) +VerifierVerifyMultipleConfigDigestTestV051:test_verifyAfterConfigUpdateWithExistingSigners() (gas: 755827) +VerifierVerifyMultipleConfigDigestTestV05:test_canVerifyNewerReportsWithNewerConfigs() (gas: 174758) +VerifierVerifyMultipleConfigDigestTestV05:test_canVerifyOlderReportsWithOlderConfigs() (gas: 235707) +VerifierVerifyMultipleConfigDigestTestV05:test_revertsIfAReportIsVerifiedWithAnExistingButIncorrectDigest() (gas: 119838) +VerifierVerifyMultipleConfigDigestTestV05:test_revertsIfVerifyingWithAnUnsetDigest() (gas: 192206) +VerifierVerifyMultipleConfigDigestTestV05:test_verifyAfterConfigUpdate() (gas: 990689) +VerifierVerifyMultipleConfigDigestTestV05:test_verifyAfterConfigUpdateWithExistingSigners() (gas: 755486) +VerifierVerifySingleConfigDigestTest:test_emitsAnEventIfReportVerified() (gas: 227964) +VerifierVerifySingleConfigDigestTest:test_returnsThePriceAndBlockNumIfReportVerified() (gas: 238133) +VerifierVerifySingleConfigDigestTest:test_revertsIfConfigDigestNotSet() (gas: 155168) +VerifierVerifySingleConfigDigestTest:test_revertsIfDuplicateSignersHaveSigned() (gas: 221377) +VerifierVerifySingleConfigDigestTest:test_revertsIfMismatchedSignatureLengthV03() (gas: 81536) +VerifierVerifySingleConfigDigestTest:test_revertsIfReportHasUnconfiguredFeedID() (gas: 143101) +VerifierVerifySingleConfigDigestTest:test_revertsIfVerifiedByNonProxy() (gas: 137522) +VerifierVerifySingleConfigDigestTest:test_revertsIfVerifiedWithIncorrectAddresses() (gas: 223130) +VerifierVerifySingleConfigDigestTest:test_revertsIfWrongNumberOfSigners() (gas: 148054) +VerifierVerifySingleConfigDigestTest:test_setsTheCorrectEpoch() (gas: 235338) +VerifierVerifySingleConfigDigestTestV051:test_emitsAnEventIfReportVerified() (gas: 225699) +VerifierVerifySingleConfigDigestTestV051:test_returnsThePriceAndBlockNumIfReportVerified() (gas: 235868) +VerifierVerifySingleConfigDigestTestV051:test_revertsIfConfigDigestNotSet() (gas: 152822) +VerifierVerifySingleConfigDigestTestV051:test_revertsIfDuplicateSignersHaveSigned() (gas: 218962) +VerifierVerifySingleConfigDigestTestV051:test_revertsIfMismatchedSignatureLength() (gas: 79322) +VerifierVerifySingleConfigDigestTestV051:test_revertsIfReportHasUnconfiguredConfigDigest() (gas: 143801) +VerifierVerifySingleConfigDigestTestV051:test_revertsIfVerifiedByNonProxy() (gas: 137629) +VerifierVerifySingleConfigDigestTestV051:test_revertsIfVerifiedWithIncorrectAddresses() (gas: 220703) +VerifierVerifySingleConfigDigestTestV051:test_revertsIfWrongNumberOfSigners() (gas: 145876) +VerifierVerifySingleConfigDigestTestV05:test_emitsAnEventIfReportVerified() (gas: 225553) +VerifierVerifySingleConfigDigestTestV05:test_returnsThePriceAndBlockNumIfReportVerified() (gas: 235722) +VerifierVerifySingleConfigDigestTestV05:test_revertsIfConfigDigestNotSet() (gas: 152706) +VerifierVerifySingleConfigDigestTestV05:test_revertsIfDuplicateSignersHaveSigned() (gas: 218846) +VerifierVerifySingleConfigDigestTestV05:test_revertsIfMismatchedSignatureLength() (gas: 79206) +VerifierVerifySingleConfigDigestTestV05:test_revertsIfReportHasUnconfiguredConfigDigest() (gas: 143685) +VerifierVerifySingleConfigDigestTestV05:test_revertsIfVerifiedByNonProxy() (gas: 137513) +VerifierVerifySingleConfigDigestTestV05:test_revertsIfVerifiedWithIncorrectAddresses() (gas: 220587) +VerifierVerifySingleConfigDigestTestV05:test_revertsIfWrongNumberOfSigners() (gas: 145760) +VerifierVerifyTest:test_canVerifyNewerReportsWithNewerConfigs() (gas: 994469) +VerifierVerifyTest:test_canVerifyOlderV3ReportsWithOlderConfigs() (gas: 1091096) +VerifierVerifyTest:test_failToVerifyReportIfDupSigners() (gas: 507012) +VerifierVerifyTest:test_failToVerifyReportIfNoSigners() (gas: 478616) +VerifierVerifyTest:test_failToVerifyReportIfNotEnoughSigners() (gas: 491968) +VerifierVerifyTest:test_failToVerifyReportIfSignerNotInConfig() (gas: 523098) +VerifierVerifyTest:test_revertsVerifyIfNoAccess() (gas: 148903) +VerifierVerifyTest:test_rollingOutConfiguration() (gas: 2415240) +VerifierVerifyTest:test_scenarioRollingNewChainWithHistoricConfigs() (gas: 1246532) +VerifierVerifyTest:test_verifyFailsWhenReportIsOlderThanConfig() (gas: 2443931) +VerifierVerifyTest:test_verifyReport() (gas: 1590329) +VerifierVerifyTest:test_verifyTooglingActiveFlagsDonConfigs() (gas: 2330836) +Verifier_accessControlledVerifyV03:testVerifyWithAccessControl_gas() (gas: 248965) +Verifier_accessControlledVerifyV051:testVerifyWithAccessControl_gas() (gas: 246667) +Verifier_accessControlledVerifyV05:testVerifyWithAccessControl_gas() (gas: 246521) +Verifier_bulkVerifyWithFeeV03:testBulkVerifyProxyWithLinkFeeSuccess_gas() (gas: 613225) +Verifier_bulkVerifyWithFeeV03:testBulkVerifyProxyWithNativeFeeSuccess_gas() (gas: 631821) +Verifier_bulkVerifyWithFeeV051:testBulkVerifyProxyWithLinkFeeSuccess_gas() (gas: 612917) +Verifier_bulkVerifyWithFeeV051:testBulkVerifyProxyWithNativeFeeSuccess_gas() (gas: 631513) +Verifier_bulkVerifyWithFeeV05:testBulkVerifyProxyWithLinkFeeSuccess_gas() (gas: 612137) +Verifier_bulkVerifyWithFeeV05:testBulkVerifyProxyWithNativeFeeSuccess_gas() (gas: 630733) +Verifier_setConfigV03:testSetConfigSuccess_gas() (gas: 957229) +Verifier_setConfigV051:testSetConfigSuccess_gas() (gas: 928925) +Verifier_setConfigV05:testSetConfigSuccess_gas() (gas: 928801) +Verifier_verifyV03:testVerifyProxySuccess_gas() (gas: 235630) +Verifier_verifyV03:testVerifySuccess_gas() (gas: 223332) +Verifier_verifyV051:testVerifyProxySuccess_gas() (gas: 233332) +Verifier_verifyV051:testVerifySuccess_gas() (gas: 221034) +Verifier_verifyV05:testVerifyProxySuccess_gas() (gas: 233186) +Verifier_verifyV05:testVerifySuccess_gas() (gas: 220888) +Verifier_verifyWithFeeV03:testVerifyProxyWithLinkFeeSuccess_gas() (gas: 271079) +Verifier_verifyWithFeeV03:testVerifyProxyWithNativeFeeSuccess_gas() (gas: 284756) +Verifier_verifyWithFeeV051:testVerifyProxyWithLinkFeeSuccess_gas() (gas: 271005) +Verifier_verifyWithFeeV051:testVerifyProxyWithNativeFeeSuccess_gas() (gas: 284682) +Verifier_verifyWithFeeV05:testVerifyProxyWithLinkFeeSuccess_gas() (gas: 270859) +Verifier_verifyWithFeeV05:testVerifyProxyWithNativeFeeSuccess_gas() (gas: 284536) \ No newline at end of file diff --git a/contracts/gas-snapshots/operatorforwarder.gas-snapshot b/contracts/gas-snapshots/operatorforwarder.gas-snapshot index 18b9dd0e07..64734fa38c 100644 --- a/contracts/gas-snapshots/operatorforwarder.gas-snapshot +++ b/contracts/gas-snapshots/operatorforwarder.gas-snapshot @@ -1,11 +1,11 @@ -FactoryTest:test_DeployNewForwarderAndTransferOwnership_Success() (gas: 1059400) -FactoryTest:test_DeployNewForwarder_Success() (gas: 1045384) -FactoryTest:test_DeployNewOperatorAndForwarder_Success() (gas: 4068661) -FactoryTest:test_DeployNewOperator_Success() (gas: 3017684) -ForwarderTest:test_OwnerForward_Success() (gas: 30112) -ForwarderTest:test_SetAuthorizedSenders_Success() (gas: 159219) -ForwarderTest:test_TransferOwnershipWithMessage_Success() (gas: 35159) -OperatorTest:test_CancelOracleRequest_Success() (gas: 273009) -OperatorTest:test_FulfillOracleRequest_Success() (gas: 329828) -OperatorTest:test_NotAuthorizedSender_Revert() (gas: 247065) -OperatorTest:test_OracleRequest_Success() (gas: 249277) \ No newline at end of file +FactoryTest:test_DeployNewForwarderAndTransferOwnership_Success() (gas: 1155912) +FactoryTest:test_DeployNewForwarder_Success() (gas: 1072948) +FactoryTest:test_DeployNewOperatorAndForwarder_Success() (gas: 4148189) +FactoryTest:test_DeployNewOperator_Success() (gas: 3045248) +ForwarderTest:test_OwnerForward_Success() (gas: 95288) +ForwarderTest:test_SetAuthorizedSenders_Success() (gas: 358445) +ForwarderTest:test_TransferOwnershipWithMessage_Success() (gas: 135510) +OperatorTest:test_CancelOracleRequest_Success() (gas: 544239) +OperatorTest:test_FulfillOracleRequest_Success() (gas: 567107) +OperatorTest:test_NotAuthorizedSender_Revert() (gas: 425413) +OperatorTest:test_OracleRequest_Success() (gas: 441898) \ No newline at end of file diff --git a/contracts/gas-snapshots/payments.gas-snapshot b/contracts/gas-snapshots/payments.gas-snapshot index 7167b77bbf..6a6e26a55e 100644 --- a/contracts/gas-snapshots/payments.gas-snapshot +++ b/contracts/gas-snapshots/payments.gas-snapshot @@ -1,23 +1,23 @@ BaseTest:test_baseTest() (gas: 166) EmergencyPauseUnitTest:test_baseTest() (gas: 188) EmergencyPauseUnitTest:test_baseUnitTest() (gas: 186) -EmergencyPauseUnitTest:test_emergencyPause() (gas: 44053) +EmergencyPauseUnitTest:test_emergencyPause() (gas: 69117) EmergencyUnpauseUnitTest:test_baseTest() (gas: 188) EmergencyUnpauseUnitTest:test_baseUnitTest() (gas: 164) -EmergencyUnpauseUnitTest:test_emergencyUnpause() (gas: 35890) +EmergencyUnpauseUnitTest:test_emergencyUnpause() (gas: 91456) EmergencyWithdrawer_EmergencyWithdrawIntegrationTest:test_baseTest() (gas: 166) EmergencyWithdrawer_EmergencyWithdrawIntegrationTest:test_baseUnitTest() (gas: 186) -EmergencyWithdrawer_EmergencyWithdrawIntegrationTest:test_emergencyWithdraw_MultipleAssets() (gas: 420921) -EmergencyWithdrawer_EmergencyWithdrawIntegrationTest:test_emergencyWithdraw_SingleAsset() (gas: 222935) +EmergencyWithdrawer_EmergencyWithdrawIntegrationTest:test_emergencyWithdraw_MultipleAssets() (gas: 733329) +EmergencyWithdrawer_EmergencyWithdrawIntegrationTest:test_emergencyWithdraw_SingleAsset() (gas: 382714) EmergencyWithdrawer_EmergencyWithdrawNativeIntegrationTest:test_baseTest() (gas: 164) EmergencyWithdrawer_EmergencyWithdrawNativeIntegrationTest:test_baseUnitTest() (gas: 184) -EmergencyWithdrawer_EmergencyWithdrawNativeIntegrationTest:test_emergencyWithdrawNative() (gas: 32537) +EmergencyWithdrawer_EmergencyWithdrawNativeIntegrationTest:test_emergencyWithdrawNative() (gas: 54169) GrantRoleUnitTests:test_baseTest() (gas: 188) GrantRoleUnitTests:test_baseUnitTest() (gas: 186) -GrantRoleUnitTests:test_grantRole_ShouldEnumerateRoleAfterGranting() (gas: 121500) +GrantRoleUnitTests:test_grantRole_ShouldEnumerateRoleAfterGranting() (gas: 179944) PaymentTokenOnRamp_constructor:test_baseTest() (gas: 166) PaymentTokenOnRamp_constructor:test_baseUnitTest() (gas: 186) -PaymentTokenOnRamp_constructor:test_constructor() (gas: 2722522) +PaymentTokenOnRamp_constructor:test_constructor() (gas: 2983530) PaymentTokenOnRamp_constructor:test_supportsInterface() (gas: 5663) PaymentTokenOnRamp_getSubmittedPaymentRequestsUnitTest:test_baseTest() (gas: 166) PaymentTokenOnRamp_getSubmittedPaymentRequestsUnitTest:test_baseUnitTest() (gas: 164) @@ -28,20 +28,20 @@ PaymentTokenOnRamp_getSubmittedPaymentRequestsUnitTest:test_getSubmittedPaymentR PaymentTokenOnRamp_getSubmittedPaymentRequestsUnitTest:test_getSubmittedPaymentRequests_StartPlusLimitLteTotalRequests() (gas: 26435) PaymentTokenOnRamp_setFeeAggregatorUnitTest:test_baseTest() (gas: 166) PaymentTokenOnRamp_setFeeAggregatorUnitTest:test_baseUnitTest() (gas: 186) -PaymentTokenOnRamp_setFeeAggregatorUnitTest:test_setFeeAggregator_UpdatesFeeAggregator() (gas: 19142) +PaymentTokenOnRamp_setFeeAggregatorUnitTest:test_setFeeAggregator_UpdatesFeeAggregator() (gas: 42574) PaymentTokenOnRamp_submitPaymentRequestsUnitTest:test_baseTest() (gas: 188) PaymentTokenOnRamp_submitPaymentRequestsUnitTest:test_baseUnitTest() (gas: 186) -PaymentTokenOnRamp_submitPaymentRequestsUnitTest:test_submitPaymentRequests_MultipleRequests() (gas: 228059) -PaymentTokenOnRamp_submitPaymentRequestsUnitTest:test_submitPaymentRequests_SingleRequestWithMultipleTokens() (gas: 167863) -PaymentTokenOnRamp_submitPaymentRequestsUnitTest:test_submitPaymentRequests_SingleRequestWithSingleToken() (gas: 133526) +PaymentTokenOnRamp_submitPaymentRequestsUnitTest:test_submitPaymentRequests_MultipleRequests() (gas: 262303) +PaymentTokenOnRamp_submitPaymentRequestsUnitTest:test_submitPaymentRequests_SingleRequestWithMultipleTokens() (gas: 182107) +PaymentTokenOnRamp_submitPaymentRequestsUnitTest:test_submitPaymentRequests_SingleRequestWithSingleToken() (gas: 156826) PaymentTokenOnRamp_withdrawFeeTokensTest:test_baseTest() (gas: 188) PaymentTokenOnRamp_withdrawFeeTokensTest:test_baseUnitTest() (gas: 186) -PaymentTokenOnRamp_withdrawFeeTokensTest:test_withdrawFeeTokens_MultipleTokens() (gas: 94262) -PaymentTokenOnRamp_withdrawFeeTokensTest:test_withdrawFeeTokens_SingleToken() (gas: 56891) -PaymentTokenOnRamp_withdrawFeeTokensTest:test_withdrawFeeTokens_ZeroAmount() (gas: 36633) +PaymentTokenOnRamp_withdrawFeeTokensTest:test_withdrawFeeTokens_MultipleTokens() (gas: 130242) +PaymentTokenOnRamp_withdrawFeeTokensTest:test_withdrawFeeTokens_SingleToken() (gas: 82303) +PaymentTokenOnRamp_withdrawFeeTokensTest:test_withdrawFeeTokens_ZeroAmount() (gas: 64845) RevokeRoleUnitTests:test_baseTest() (gas: 188) RevokeRoleUnitTests:test_baseUnitTest() (gas: 164) -RevokeRoleUnitTests:test_revokeRole_ShouldEnumerateRoleAfterRevoking() (gas: 96834) +RevokeRoleUnitTests:test_revokeRole_ShouldEnumerateRoleAfterRevoking() (gas: 201900) SupportsInterfaceUnitTests:test_baseTest() (gas: 166) SupportsInterfaceUnitTests:test_baseUnitTest() (gas: 186) -SupportsInterfaceUnitTests:test_supportsInterface() (gas: 17121) \ No newline at end of file +SupportsInterfaceUnitTests:test_supportsInterface() (gas: 32621) \ No newline at end of file From c2a9dd0faa614ea99ec6f486c0206c7bf6b04423 Mon Sep 17 00:00:00 2001 From: Rens Rooimans Date: Fri, 21 Aug 2026 11:32:28 +0200 Subject: [PATCH 6/9] same for cre --- contracts/cre/GNUmakefile | 4 +- contracts/cre/gas-snapshots/dev.gas-snapshot | 38 +- contracts/cre/gas-snapshots/v1.gas-snapshot | 200 ++++---- contracts/cre/gas-snapshots/v2.gas-snapshot | 508 +++++++++---------- contracts/cre/package.json | 4 +- contracts/cre/pnpm-lock.yaml | 9 + contracts/cre/remappings.txt | 2 +- 7 files changed, 387 insertions(+), 378 deletions(-) diff --git a/contracts/cre/GNUmakefile b/contracts/cre/GNUmakefile index 3926d625a6..82b3051e79 100644 --- a/contracts/cre/GNUmakefile +++ b/contracts/cre/GNUmakefile @@ -16,11 +16,11 @@ ALL_FOUNDRY_PRODUCTS = dev v1 v2 # a static fuzz seed by default, flaky gas results per platform are still observed. .PHONY: snapshot snapshot: ## Make a snapshot for a specific product. - export FOUNDRY_PROFILE=$(FOUNDRY_PROFILE) && forge snapshot --nmt "test?(Fuzz|Fork|.*_RevertWhen)_.*" --snap gas-snapshots/$(FOUNDRY_PROFILE).gas-snapshot + export FOUNDRY_PROFILE=$(FOUNDRY_PROFILE) && forge snapshot --isolate --nmt "test?(Fuzz|Fork|.*_RevertWhen)_.*" --snap gas-snapshots/$(FOUNDRY_PROFILE).gas-snapshot .PHONY: snapshot-diff snapshot-diff: ## Make a snapshot for a specific product. - export FOUNDRY_PROFILE=$(FOUNDRY_PROFILE) && forge snapshot --nmt "test?(Fuzz|Fork|.*_RevertWhen)_.*" --diff gas-snapshots/$(FOUNDRY_PROFILE).gas-snapshot + export FOUNDRY_PROFILE=$(FOUNDRY_PROFILE) && forge snapshot --isolate --nmt "test?(Fuzz|Fork|.*_RevertWhen)_.*" --diff gas-snapshots/$(FOUNDRY_PROFILE).gas-snapshot .PHONY: snapshot-all diff --git a/contracts/cre/gas-snapshots/dev.gas-snapshot b/contracts/cre/gas-snapshots/dev.gas-snapshot index 5cf0ab3ddc..60a70000d9 100644 --- a/contracts/cre/gas-snapshots/dev.gas-snapshot +++ b/contracts/cre/gas-snapshots/dev.gas-snapshot @@ -1,22 +1,22 @@ -MessageEmitter_BasicTest:test_EmitMessage_EmitsEventAndUpdatesLastMessage() (gas: 66399) -MessageEmitter_BasicTest:test_EmitMessage_MultipleAddressesSameBlock() (gas: 117924) -MessageEmitter_BasicTest:test_EmitMessage_SucceedsInNextBlock() (gas: 90723) -MessageEmitter_BasicTest:test_GetMessage_Succeeds_WhenExists() (gas: 62952) +MessageEmitter_BasicTest:test_EmitMessage_EmitsEventAndUpdatesLastMessage() (gas: 92431) +MessageEmitter_BasicTest:test_EmitMessage_MultipleAddressesSameBlock() (gas: 176656) +MessageEmitter_BasicTest:test_EmitMessage_SucceedsInNextBlock() (gas: 143099) +MessageEmitter_BasicTest:test_GetMessage_Succeeds_WhenExists() (gas: 88996) MessageEmitter_BasicTest:test_TypeAndVersion() (gas: 9616) -MockKeystoneForwarder_BasicTest:test_GetTransmissionId_MatchesManual() (gas: 9375) -MockKeystoneForwarder_BasicTest:test_GetTransmissionInfo_NotAttempted_And_GetTransmitter_Zero() (gas: 19659) -MockKeystoneForwarder_BasicTest:test_IsForwarder_SelfTrue_AddRemove() (gas: 32448) -MockKeystoneForwarder_BasicTest:test_Route_Direct_Failure() (gas: 48805) -MockKeystoneForwarder_BasicTest:test_Route_Direct_Success() (gas: 51514) +MockKeystoneForwarder_BasicTest:test_GetTransmissionId_MatchesManual() (gas: 6207) +MockKeystoneForwarder_BasicTest:test_GetTransmissionInfo_NotAttempted_And_GetTransmitter_Zero() (gas: 22263) +MockKeystoneForwarder_BasicTest:test_IsForwarder_SelfTrue_AddRemove() (gas: 99146) +MockKeystoneForwarder_BasicTest:test_Route_Direct_Failure() (gas: 74712) +MockKeystoneForwarder_BasicTest:test_Route_Direct_Success() (gas: 77415) MockKeystoneForwarder_BasicTest:test_TypeAndVersion() (gas: 9731) -ReserveManagerTest:testOnReportUpdatesStateAndEmitsEvent() (gas: 81553) -ReserveManagerTest:testSupportsInterface() (gas: 12071) -ShardConfigTest:testConstructor_RevertZeroShardCount() (gas: 58081) -ShardConfigTest:testConstructor_Success() (gas: 13715) -ShardConfigTest:testGetDesiredShardCount() (gas: 10390) -ShardConfigTest:testOwnershipTransfer() (gas: 29818) -ShardConfigTest:testSetDesiredShardCount_EmitsEvent() (gas: 17833) -ShardConfigTest:testSetDesiredShardCount_RevertNotOwner() (gas: 10795) -ShardConfigTest:testSetDesiredShardCount_RevertZeroCount() (gas: 10648) -ShardConfigTest:testSetDesiredShardCount_Success() (gas: 18700) +ReserveManagerTest:testOnReportUpdatesStateAndEmitsEvent() (gas: 111495) +ReserveManagerTest:testSupportsInterface() (gas: 16547) +ShardConfigTest:testConstructor_RevertZeroShardCount() (gas: 135209) +ShardConfigTest:testConstructor_Success() (gas: 15026) +ShardConfigTest:testGetDesiredShardCount() (gas: 7538) +ShardConfigTest:testOwnershipTransfer() (gas: 89838) +ShardConfigTest:testSetDesiredShardCount_EmitsEvent() (gas: 39037) +ShardConfigTest:testSetDesiredShardCount_RevertNotOwner() (gas: 31999) +ShardConfigTest:testSetDesiredShardCount_RevertZeroCount() (gas: 31840) +ShardConfigTest:testSetDesiredShardCount_Success() (gas: 45209) ShardConfigTest:testTypeAndVersion() (gas: 9705) \ No newline at end of file diff --git a/contracts/cre/gas-snapshots/v1.gas-snapshot b/contracts/cre/gas-snapshots/v1.gas-snapshot index b86e744b6c..9b2ce1280e 100644 --- a/contracts/cre/gas-snapshots/v1.gas-snapshot +++ b/contracts/cre/gas-snapshots/v1.gas-snapshot @@ -1,109 +1,109 @@ -CapabilitiesRegistry_AddCapabilitiesTest:test_AddCapability_NoConfigurationContract() (gas: 153542) -CapabilitiesRegistry_AddCapabilitiesTest:test_AddCapability_WithConfiguration() (gas: 178600) -CapabilitiesRegistry_AddDONTest:test_AddDON() (gas: 377844) -CapabilitiesRegistry_AddNodeOperatorsTest:test_AddNodeOperators() (gas: 184773) -CapabilitiesRegistry_AddNodesTest:test_AddsNodeParams() (gas: 382336) -CapabilitiesRegistry_AddNodesTest:test_OwnerCanAddNodes() (gas: 382531) -CapabilitiesRegistry_DeprecateCapabilitiesTest:test_DeprecatesCapability() (gas: 89664) -CapabilitiesRegistry_DeprecateCapabilitiesTest:test_EmitsEvent() (gas: 90094) -CapabilitiesRegistry_GetCapabilitiesTest:test_ReturnsCapabilities() (gas: 135832) -CapabilitiesRegistry_GetDONsTest:test_CorrectlyFetchesDONs() (gas: 69402) -CapabilitiesRegistry_GetDONsTest:test_DoesNotIncludeRemovedDONs() (gas: 67155) -CapabilitiesRegistry_GetHashedCapabilityTest:test_CorrectlyGeneratesHashedCapabilityId() (gas: 11784) -CapabilitiesRegistry_GetHashedCapabilityTest:test_DoesNotCauseIncorrectClashes() (gas: 12817) -CapabilitiesRegistry_GetNextDONIdTest:test_CorrectlyFetchesNextDONId() (gas: 351311) -CapabilitiesRegistry_GetNodeOperatorsTest:test_CorrectlyFetchesNodeOperators() (gas: 37384) -CapabilitiesRegistry_GetNodeOperatorsTest:test_DoesNotIncludeRemovedNodeOperators() (gas: 38924) -CapabilitiesRegistry_GetNodesTest:test_CorrectlyFetchesNodes() (gas: 72805) -CapabilitiesRegistry_GetNodesTest:test_CorrectlyFetchesSpecificNodes() (gas: 33620) -CapabilitiesRegistry_GetNodesTest:test_DoesNotIncludeRemovedNodes() (gas: 79889) +CapabilitiesRegistry_AddCapabilitiesTest:test_AddCapability_NoConfigurationContract() (gas: 194822) +CapabilitiesRegistry_AddCapabilitiesTest:test_AddCapability_WithConfiguration() (gas: 220276) +CapabilitiesRegistry_AddDONTest:test_AddDON() (gas: 449231) +CapabilitiesRegistry_AddNodeOperatorsTest:test_AddNodeOperators() (gas: 223590) +CapabilitiesRegistry_AddNodesTest:test_AddsNodeParams() (gas: 422246) +CapabilitiesRegistry_AddNodesTest:test_OwnerCanAddNodes() (gas: 422441) +CapabilitiesRegistry_DeprecateCapabilitiesTest:test_DeprecatesCapability() (gas: 115150) +CapabilitiesRegistry_DeprecateCapabilitiesTest:test_EmitsEvent() (gas: 116450) +CapabilitiesRegistry_GetCapabilitiesTest:test_ReturnsCapabilities() (gas: 160241) +CapabilitiesRegistry_GetDONsTest:test_CorrectlyFetchesDONs() (gas: 62296) +CapabilitiesRegistry_GetDONsTest:test_DoesNotIncludeRemovedDONs() (gas: 80492) +CapabilitiesRegistry_GetHashedCapabilityTest:test_CorrectlyGeneratesHashedCapabilityId() (gas: 8916) +CapabilitiesRegistry_GetHashedCapabilityTest:test_DoesNotCauseIncorrectClashes() (gas: 12449) +CapabilitiesRegistry_GetNextDONIdTest:test_CorrectlyFetchesNextDONId() (gas: 384870) +CapabilitiesRegistry_GetNodeOperatorsTest:test_CorrectlyFetchesNodeOperators() (gas: 35938) +CapabilitiesRegistry_GetNodeOperatorsTest:test_DoesNotIncludeRemovedNodeOperators() (gas: 59067) +CapabilitiesRegistry_GetNodesTest:test_CorrectlyFetchesNodes() (gas: 65000) +CapabilitiesRegistry_GetNodesTest:test_CorrectlyFetchesSpecificNodes() (gas: 30058) +CapabilitiesRegistry_GetNodesTest:test_DoesNotIncludeRemovedNodes() (gas: 94340) CapabilitiesRegistry_GetNodesTest:test_GetNodesByP2PIdsInvalidNode_Revers() (gas: 27568) -CapabilitiesRegistry_RemoveDONsTest:test_RemovesDON() (gas: 56065) -CapabilitiesRegistry_RemoveNodeOperatorsTest:test_RemovesNodeOperator() (gas: 35817) -CapabilitiesRegistry_RemoveNodesTest:test_CanAddNodeWithSameSignerAddressAfterRemoving() (gas: 118167) -CapabilitiesRegistry_RemoveNodesTest:test_CanRemoveWhenDONDeleted() (gas: 289855) -CapabilitiesRegistry_RemoveNodesTest:test_CanRemoveWhenNodeNoLongerPartOfDON() (gas: 564994) -CapabilitiesRegistry_RemoveNodesTest:test_OwnerCanRemoveNodes() (gas: 77672) -CapabilitiesRegistry_RemoveNodesTest:test_RemovesNode() (gas: 79678) +CapabilitiesRegistry_RemoveDONsTest:test_RemovesDON() (gas: 79915) +CapabilitiesRegistry_RemoveNodeOperatorsTest:test_RemovesNodeOperator() (gas: 67357) +CapabilitiesRegistry_RemoveNodesTest:test_CanAddNodeWithSameSignerAddressAfterRemoving() (gas: 340712) +CapabilitiesRegistry_RemoveNodesTest:test_CanRemoveWhenDONDeleted() (gas: 432063) +CapabilitiesRegistry_RemoveNodesTest:test_CanRemoveWhenNodeNoLongerPartOfDON() (gas: 703146) +CapabilitiesRegistry_RemoveNodesTest:test_OwnerCanRemoveNodes() (gas: 92121) +CapabilitiesRegistry_RemoveNodesTest:test_RemovesNode() (gas: 93722) CapabilitiesRegistry_TypeAndVersionTest:test_TypeAndVersion() (gas: 9687) -CapabilitiesRegistry_UpdateDONTest:test_UpdatesDON() (gas: 377516) -CapabilitiesRegistry_UpdateNodeOperatorTest:test_UpdatesNodeOperator() (gas: 37262) -CapabilitiesRegistry_UpdateNodesTest:test_CanUpdateParamsIfNodeSignerAddressNoLongerUsed() (gas: 261934) -CapabilitiesRegistry_UpdateNodesTest:test_OwnerCanUpdateNodes() (gas: 165576) -CapabilitiesRegistry_UpdateNodesTest:test_UpdatesNodeParams() (gas: 165733) -KeystoneForwarder_ReportTest:test_Report_ConfigVersion() (gas: 2002261) -KeystoneForwarder_ReportTest:test_Report_FailedDelieryWhenReportReceiverConsumesAllGas() (gas: 1019529) -KeystoneForwarder_ReportTest:test_Report_FailedDeliveryWhenReceiverInterfaceNotSupported() (gas: 125371) -KeystoneForwarder_ReportTest:test_Report_FailedDeliveryWhenReceiverNotContract() (gas: 127165) -KeystoneForwarder_ReportTest:test_Report_FailedDeliveryWhenReportReceiverConsumesAllGasAndInterfaceCheckUsesMax() (gas: 413142) -KeystoneForwarder_ReportTest:test_Report_SuccessfulDelivery() (gas: 362318) -KeystoneForwarder_ReportTest:test_Report_SuccessfulRetryWithMoreGas() (gas: 510639) -KeystoneForwarder_SetConfigTest:test_SetConfig_FirstTime() (gas: 1538747) -KeystoneForwarder_SetConfigTest:test_SetConfig_WhenSignersAreRemoved() (gas: 1535704) +CapabilitiesRegistry_UpdateDONTest:test_UpdatesDON() (gas: 441062) +CapabilitiesRegistry_UpdateNodeOperatorTest:test_UpdatesNodeOperator() (gas: 66031) +CapabilitiesRegistry_UpdateNodesTest:test_CanUpdateParamsIfNodeSignerAddressNoLongerUsed() (gas: 359336) +CapabilitiesRegistry_UpdateNodesTest:test_OwnerCanUpdateNodes() (gas: 195740) +CapabilitiesRegistry_UpdateNodesTest:test_UpdatesNodeParams() (gas: 195897) +KeystoneForwarder_ReportTest:test_Report_ConfigVersion() (gas: 2171651) +KeystoneForwarder_ReportTest:test_Report_FailedDelieryWhenReportReceiverConsumesAllGas() (gas: 614272) +KeystoneForwarder_ReportTest:test_Report_FailedDeliveryWhenReceiverInterfaceNotSupported() (gas: 154418) +KeystoneForwarder_ReportTest:test_Report_FailedDeliveryWhenReceiverNotContract() (gas: 155999) +KeystoneForwarder_ReportTest:test_Report_FailedDeliveryWhenReportReceiverConsumesAllGasAndInterfaceCheckUsesMax() (gas: 277152) +KeystoneForwarder_ReportTest:test_Report_SuccessfulDelivery() (gas: 402013) +KeystoneForwarder_ReportTest:test_Report_SuccessfulRetryWithMoreGas() (gas: 420289) +KeystoneForwarder_SetConfigTest:test_SetConfig_FirstTime() (gas: 1571919) +KeystoneForwarder_SetConfigTest:test_SetConfig_WhenSignersAreRemoved() (gas: 1790484) KeystoneForwarder_TypeAndVersionTest:test_TypeAndVersion() (gas: 9614) -KeystoneRouter_SetConfigTest:test_RemoveForwarder_Success() (gas: 15879) -KeystoneRouter_SetConfigTest:test_Route_Success() (gas: 72759) -WorkflowRegistryManager_activateVersion:test_WhenTheVersionNumberIsNotActive_AndWhenThereAreNoActiveVersions() (gas: 529151) -WorkflowRegistryManager_addVersion:test_WhenAutoActivateIsFalse() (gas: 265730) -WorkflowRegistryManager_addVersion:test_WhenAutoActivateIsTrue() (gas: 270806) -WorkflowRegistryManager_getActiveVersion:test_WhenAnActiveVersionExists() (gas: 287951) +KeystoneRouter_SetConfigTest:test_RemoveForwarder_Success() (gas: 37083) +KeystoneRouter_SetConfigTest:test_Route_Success() (gas: 135999) +WorkflowRegistryManager_activateVersion:test_WhenTheVersionNumberIsNotActive_AndWhenThereAreNoActiveVersions() (gas: 813140) +WorkflowRegistryManager_addVersion:test_WhenAutoActivateIsFalse() (gas: 366116) +WorkflowRegistryManager_addVersion:test_WhenAutoActivateIsTrue() (gas: 366350) +WorkflowRegistryManager_getActiveVersion:test_WhenAnActiveVersionExists() (gas: 383616) WorkflowRegistryManager_getActiveVersion:test_WhenNoActiveVersionIsAvailable() (gas: 13258) -WorkflowRegistryManager_getActiveVersionNumber:test_WhenAnActiveVersionExists() (gas: 284076) +WorkflowRegistryManager_getActiveVersionNumber:test_WhenAnActiveVersionExists() (gas: 368479) WorkflowRegistryManager_getActiveVersionNumber:test_WhenNoActiveVersionIsAvailable() (gas: 10698) -WorkflowRegistryManager_getAllVersions:test_WhenLimitExceedsMaximumPaginationLimit() (gas: 54503) -WorkflowRegistryManager_getAllVersions:test_WhenRequestingWithInvalidStartIndex() (gas: 11338) -WorkflowRegistryManager_getAllVersions:test_WhenRequestingWithValidStartIndexAndLimitWithinBounds() (gas: 40398) +WorkflowRegistryManager_getAllVersions:test_WhenLimitExceedsMaximumPaginationLimit() (gas: 50569) +WorkflowRegistryManager_getAllVersions:test_WhenRequestingWithInvalidStartIndex() (gas: 8465) +WorkflowRegistryManager_getAllVersions:test_WhenRequestingWithValidStartIndexAndLimitWithinBounds() (gas: 36809) WorkflowRegistryManager_getLatestVersion:test_WhenNoVersionsHaveBeenRegistered() (gas: 12984) -WorkflowRegistryManager_getLatestVersion:test_WhenVersionsHaveBeenRegistered() (gas: 287982) +WorkflowRegistryManager_getLatestVersion:test_WhenVersionsHaveBeenRegistered() (gas: 383647) WorkflowRegistryManager_getLatestVersionNumber:test_WhenNoVersionsHaveBeenRegistered() (gas: 10637) -WorkflowRegistryManager_getLatestVersionNumber:test_WhenVersionsHaveBeenRegistered() (gas: 284325) +WorkflowRegistryManager_getLatestVersionNumber:test_WhenVersionsHaveBeenRegistered() (gas: 368728) WorkflowRegistryManager_getVersion:test_WhenVersionNumberIsNotRegistered() (gas: 13785) -WorkflowRegistryManager_getVersion:test_WhenVersionNumberIsRegistered() (gas: 288360) -WorkflowRegistryManager_getVersionNumberByContractAddressAndChainID:test_WhenAVersionIsRegisteredForTheContractAddressAndChainIDCombination() (gas: 285213) -WorkflowRegistryManager_getVersionNumberByContractAddressAndChainID:test_WhenNoVersionIsRegisteredForTheContractAddressAndChainIDCombination() (gas: 286825) -WorkflowRegistryManager_getVersionNumberByContractAddressAndChainID:test_WhenTheContractAddressIsInvalid() (gas: 284795) -WorkflowRegistry_activateWorkflow:test_WhenTheCallerIsAnAuthorizedAddress() (gas: 517448) -WorkflowRegistry_deleteWorkflow:test_WhenTheCallerIsAnAuthorizedAddress_AndTheDonIDIsAllowed() (gas: 422188) -WorkflowRegistry_deleteWorkflow:test_WhenTheCallerIsAnAuthorizedAddress_AndTheDonIDIsNotAllowed() (gas: 439990) -WorkflowRegistry_getAllAllowedDONs:test_WhenTheRegistryIsLocked() (gas: 47473) -WorkflowRegistry_getAllAllowedDONs:test_WhenTheSetOfAllowedDONsIsEmpty() (gas: 25780) -WorkflowRegistry_getAllAllowedDONs:test_WhenThereAreMultipleAllowedDONs() (gas: 75437) -WorkflowRegistry_getAllAllowedDONs:test_WhenThereIsASingleAllowedDON() (gas: 16590) -WorkflowRegistry_getAllAuthorizedAddresses:test_WhenTheRegistryIsLocked() (gas: 47740) -WorkflowRegistry_getAllAuthorizedAddresses:test_WhenTheSetOfAuthorizedAddressesIsEmpty() (gas: 26152) -WorkflowRegistry_getAllAuthorizedAddresses:test_WhenThereAreMultipleAuthorizedAddresses() (gas: 78270) -WorkflowRegistry_getAllAuthorizedAddresses:test_WhenThereIsASingleAuthorizedAddress() (gas: 16832) -WorkflowRegistry_getWorkflowMetadata:test_WhenTheRegistryIsLocked() (gas: 541714) +WorkflowRegistryManager_getVersion:test_WhenVersionNumberIsRegistered() (gas: 384025) +WorkflowRegistryManager_getVersionNumberByContractAddressAndChainID:test_WhenAVersionIsRegisteredForTheContractAddressAndChainIDCombination() (gas: 372097) +WorkflowRegistryManager_getVersionNumberByContractAddressAndChainID:test_WhenNoVersionIsRegisteredForTheContractAddressAndChainIDCombination() (gas: 372077) +WorkflowRegistryManager_getVersionNumberByContractAddressAndChainID:test_WhenTheContractAddressIsInvalid() (gas: 367547) +WorkflowRegistry_activateWorkflow:test_WhenTheCallerIsAnAuthorizedAddress() (gas: 598448) +WorkflowRegistry_deleteWorkflow:test_WhenTheCallerIsAnAuthorizedAddress_AndTheDonIDIsAllowed() (gas: 662948) +WorkflowRegistry_deleteWorkflow:test_WhenTheCallerIsAnAuthorizedAddress_AndTheDonIDIsNotAllowed() (gas: 693103) +WorkflowRegistry_getAllAllowedDONs:test_WhenTheRegistryIsLocked() (gas: 67822) +WorkflowRegistry_getAllAllowedDONs:test_WhenTheSetOfAllowedDONsIsEmpty() (gas: 43037) +WorkflowRegistry_getAllAllowedDONs:test_WhenThereAreMultipleAllowedDONs() (gas: 99992) +WorkflowRegistry_getAllAllowedDONs:test_WhenThereIsASingleAllowedDON() (gas: 13375) +WorkflowRegistry_getAllAuthorizedAddresses:test_WhenTheRegistryIsLocked() (gas: 68089) +WorkflowRegistry_getAllAuthorizedAddresses:test_WhenTheSetOfAuthorizedAddressesIsEmpty() (gas: 43559) +WorkflowRegistry_getAllAuthorizedAddresses:test_WhenThereAreMultipleAuthorizedAddresses() (gas: 105048) +WorkflowRegistry_getAllAuthorizedAddresses:test_WhenThereIsASingleAuthorizedAddress() (gas: 13617) +WorkflowRegistry_getWorkflowMetadata:test_WhenTheRegistryIsLocked() (gas: 629886) WorkflowRegistry_getWorkflowMetadata:test_WhenTheWorkflowDoesNotExist() (gas: 17543) -WorkflowRegistry_getWorkflowMetadata:test_WhenTheWorkflowExistsWithTheOwnerAndName() (gas: 512570) -WorkflowRegistry_getWorkflowMetadataListByDON:test_WhenLimitExceedsTotalWorkflows() (gas: 128146) -WorkflowRegistry_getWorkflowMetadataListByDON:test_WhenLimitIsEqualToTotalWorkflows() (gas: 128035) -WorkflowRegistry_getWorkflowMetadataListByDON:test_WhenLimitIsLessThanTotalWorkflows() (gas: 90141) -WorkflowRegistry_getWorkflowMetadataListByDON:test_WhenStartIs0() (gas: 128075) -WorkflowRegistry_getWorkflowMetadataListByDON:test_WhenStartIsGreaterThan0() (gas: 90098) -WorkflowRegistry_getWorkflowMetadataListByDON:test_WhenStartIsGreaterThanOrEqualToTotalWorkflows() (gas: 13476) -WorkflowRegistry_getWorkflowMetadataListByDON:test_WhenTheDONHasNoWorkflows() (gas: 13410) -WorkflowRegistry_getWorkflowMetadataListByDON:test_WhenTheRegistryIsLocked() (gas: 158899) -WorkflowRegistry_getWorkflowMetadataListByOwner:test_WhenLimitExceedsTotalWorkflows() (gas: 135132) -WorkflowRegistry_getWorkflowMetadataListByOwner:test_WhenLimitIsEqualToTotalWorkflows() (gas: 135073) -WorkflowRegistry_getWorkflowMetadataListByOwner:test_WhenLimitIsLessThanTotalWorkflows() (gas: 95635) -WorkflowRegistry_getWorkflowMetadataListByOwner:test_WhenStartIs0() (gas: 135113) -WorkflowRegistry_getWorkflowMetadataListByOwner:test_WhenStartIsGreaterThan0() (gas: 95592) -WorkflowRegistry_getWorkflowMetadataListByOwner:test_WhenStartIsGreaterThanOrEqualToTotalWorkflows() (gas: 13764) -WorkflowRegistry_getWorkflowMetadataListByOwner:test_WhenTheOwnerHasNoWorkflows() (gas: 14006) -WorkflowRegistry_getWorkflowMetadataListByOwner:test_WhenTheRegistryIsLocked() (gas: 165968) -WorkflowRegistry_lockRegistry:test_WhenTheCallerIsTheContractOwner() (gas: 38758) -WorkflowRegistry_pauseWorkflow:test_WhenTheDonIDIsAllowed_AndTheCallerIsAnAuthorizedAddress() (gas: 517427) -WorkflowRegistry_pauseWorkflow:test_WhenTheDonIDIsAllowed_AndTheCallerIsAnUnauthorizedAddress() (gas: 525230) -WorkflowRegistry_pauseWorkflow:test_WhenTheDonIDIsNotAllowed_AndTheCallerIsAnAuthorizedAddress() (gas: 524989) -WorkflowRegistry_pauseWorkflow:test_WhenTheDonIDIsNotAllowed_AndTheCallerIsAnUnauthorizedAddress() (gas: 529400) -WorkflowRegistry_registerWorkflow:test_WhenTheWorkflowInputsAreAllValid() (gas: 572260) -WorkflowRegistry_requestForceUpdateSecrets:test_WhenTheCallerIsAnAuthorizedAddress_AndTheWorkflowIsInAnAllowedDON() (gas: 936092) -WorkflowRegistry_requestForceUpdateSecrets:test_WhenTheCallerIsAnAuthorizedAddress_AndTheWorkflowIsNotInAnAllowedDON() (gas: 510822) -WorkflowRegistry_requestForceUpdateSecrets:test_WhenTheCallerIsNotAnAuthorizedAddress() (gas: 509176) -WorkflowRegistry_unlockRegistry:test_WhenTheCallerIsTheContractOwner() (gas: 30325) -WorkflowRegistry_updateAllowedDONs:test_WhenTheBoolInputIsFalse() (gas: 29739) -WorkflowRegistry_updateAllowedDONs:test_WhenTheBoolInputIsTrue() (gas: 170256) -WorkflowRegistry_updateAuthorizedAddresses:test_WhenTheBoolInputIsFalse() (gas: 30278) -WorkflowRegistry_updateAuthorizedAddresses:test_WhenTheBoolInputIsTrue() (gas: 175475) -WorkflowRegistry_updateWorkflow:test_WhenTheWorkflowInputsAreAllValid() (gas: 515528) \ No newline at end of file +WorkflowRegistry_getWorkflowMetadata:test_WhenTheWorkflowExistsWithTheOwnerAndName() (gas: 577678) +WorkflowRegistry_getWorkflowMetadataListByDON:test_WhenLimitExceedsTotalWorkflows() (gas: 126736) +WorkflowRegistry_getWorkflowMetadataListByDON:test_WhenLimitIsEqualToTotalWorkflows() (gas: 126625) +WorkflowRegistry_getWorkflowMetadataListByDON:test_WhenLimitIsLessThanTotalWorkflows() (gas: 89083) +WorkflowRegistry_getWorkflowMetadataListByDON:test_WhenStartIs0() (gas: 126665) +WorkflowRegistry_getWorkflowMetadataListByDON:test_WhenStartIsGreaterThan0() (gas: 89040) +WorkflowRegistry_getWorkflowMetadataListByDON:test_WhenStartIsGreaterThanOrEqualToTotalWorkflows() (gas: 10610) +WorkflowRegistry_getWorkflowMetadataListByDON:test_WhenTheDONHasNoWorkflows() (gas: 10544) +WorkflowRegistry_getWorkflowMetadataListByDON:test_WhenTheRegistryIsLocked() (gas: 181053) +WorkflowRegistry_getWorkflowMetadataListByOwner:test_WhenLimitExceedsTotalWorkflows() (gas: 130566) +WorkflowRegistry_getWorkflowMetadataListByOwner:test_WhenLimitIsEqualToTotalWorkflows() (gas: 130507) +WorkflowRegistry_getWorkflowMetadataListByOwner:test_WhenLimitIsLessThanTotalWorkflows() (gas: 92473) +WorkflowRegistry_getWorkflowMetadataListByOwner:test_WhenStartIs0() (gas: 130547) +WorkflowRegistry_getWorkflowMetadataListByOwner:test_WhenStartIsGreaterThan0() (gas: 92430) +WorkflowRegistry_getWorkflowMetadataListByOwner:test_WhenStartIsGreaterThanOrEqualToTotalWorkflows() (gas: 10898) +WorkflowRegistry_getWorkflowMetadataListByOwner:test_WhenTheOwnerHasNoWorkflows() (gas: 11140) +WorkflowRegistry_getWorkflowMetadataListByOwner:test_WhenTheRegistryIsLocked() (gas: 184966) +WorkflowRegistry_lockRegistry:test_WhenTheCallerIsTheContractOwner() (gas: 61466) +WorkflowRegistry_pauseWorkflow:test_WhenTheDonIDIsAllowed_AndTheCallerIsAnAuthorizedAddress() (gas: 594412) +WorkflowRegistry_pauseWorkflow:test_WhenTheDonIDIsAllowed_AndTheCallerIsAnUnauthorizedAddress() (gas: 624575) +WorkflowRegistry_pauseWorkflow:test_WhenTheDonIDIsNotAllowed_AndTheCallerIsAnAuthorizedAddress() (gas: 624276) +WorkflowRegistry_pauseWorkflow:test_WhenTheDonIDIsNotAllowed_AndTheCallerIsAnUnauthorizedAddress() (gas: 653047) +WorkflowRegistry_registerWorkflow:test_WhenTheWorkflowInputsAreAllValid() (gas: 768004) +WorkflowRegistry_requestForceUpdateSecrets:test_WhenTheCallerIsAnAuthorizedAddress_AndTheWorkflowIsInAnAllowedDON() (gas: 1046068) +WorkflowRegistry_requestForceUpdateSecrets:test_WhenTheCallerIsAnAuthorizedAddress_AndTheWorkflowIsNotInAnAllowedDON() (gas: 589723) +WorkflowRegistry_requestForceUpdateSecrets:test_WhenTheCallerIsNotAnAuthorizedAddress() (gas: 590138) +WorkflowRegistry_unlockRegistry:test_WhenTheCallerIsTheContractOwner() (gas: 97235) +WorkflowRegistry_updateAllowedDONs:test_WhenTheBoolInputIsFalse() (gas: 56090) +WorkflowRegistry_updateAllowedDONs:test_WhenTheBoolInputIsTrue() (gas: 207939) +WorkflowRegistry_updateAuthorizedAddresses:test_WhenTheBoolInputIsFalse() (gas: 56863) +WorkflowRegistry_updateAuthorizedAddresses:test_WhenTheBoolInputIsTrue() (gas: 216354) +WorkflowRegistry_updateWorkflow:test_WhenTheWorkflowInputsAreAllValid() (gas: 757195) \ No newline at end of file diff --git a/contracts/cre/gas-snapshots/v2.gas-snapshot b/contracts/cre/gas-snapshots/v2.gas-snapshot index f411ae4b54..e3fdefe1b5 100644 --- a/contracts/cre/gas-snapshots/v2.gas-snapshot +++ b/contracts/cre/gas-snapshots/v2.gas-snapshot @@ -1,261 +1,261 @@ -CapabilitiesRegistry_AddCapabilitiesTest:test_AddCapability_NoConfigurationContract() (gas: 171963) -CapabilitiesRegistry_AddCapabilitiesTest:test_AddCapability_WithConfiguration() (gas: 270789) -CapabilitiesRegistry_AddDONsTest:test_AddDONs() (gas: 997260) -CapabilitiesRegistry_AddDONsTest:test_AddDONs_EmptyConfigDON() (gas: 6893251) -CapabilitiesRegistry_AddDONsTest:test_AddDONs_OneNodeDON() (gas: 6656923) -CapabilitiesRegistry_AddNodeOperatorsTest:test_AddNodeOperators() (gas: 416184) -CapabilitiesRegistry_AddNodesTest:test_AddsNodeParams() (gas: 490928) -CapabilitiesRegistry_AddNodesTest:test_OwnerCanAddNodes() (gas: 491186) -CapabilitiesRegistry_DeprecateCapabilitiesTest:test_DeprecatesCapability() (gas: 88079) -CapabilitiesRegistry_DeprecateCapabilitiesTest:test_EmitsEvent() (gas: 87700) -CapabilitiesRegistry_GetCapabilitiesTest:test_ReturnsCapabilities() (gas: 140441) -CapabilitiesRegistry_GetCapabilitiesTest:test_ReturnsPaginatedCapabilities() (gas: 137434) -CapabilitiesRegistry_GetDONByNameTest:test_CorrectlyFetchesDONByName() (gas: 127311) -CapabilitiesRegistry_GetDONByNameTest:test_CorrectlyFetchesDONFamilies() (gas: 1286596) -CapabilitiesRegistry_GetDONsTest:test_CorrectlyFetchesDONs() (gas: 112815) -CapabilitiesRegistry_GetDONsTest:test_DoesNotIncludeRemovedDONs() (gas: 132038) -CapabilitiesRegistry_GetHistoricalDONInfoTest:test_CorrectlyFetchesHistoricalDONInfo() (gas: 95892) -CapabilitiesRegistry_GetNextDONIdTest:test_CorrectlyFetchesNextDONId() (gas: 908095) -CapabilitiesRegistry_GetNodeOperatorsTest:test_CorrectlyFetchesNodeOperators() (gas: 52775) -CapabilitiesRegistry_GetNodeOperatorsTest:test_DoesNotIncludeRemovedNodeOperators() (gas: 67604) -CapabilitiesRegistry_GetNodesTest:test_CorrectlyFetchesNodes() (gas: 100868) -CapabilitiesRegistry_GetNodesTest:test_CorrectlyFetchesSpecificNodes() (gas: 47434) -CapabilitiesRegistry_GetNodesTest:test_DoesNotIncludeRemovedNodes() (gas: 113120) +CapabilitiesRegistry_AddCapabilitiesTest:test_AddCapability_NoConfigurationContract() (gas: 207097) +CapabilitiesRegistry_AddCapabilitiesTest:test_AddCapability_WithConfiguration() (gas: 309995) +CapabilitiesRegistry_AddDONsTest:test_AddDONs() (gas: 1101470) +CapabilitiesRegistry_AddDONsTest:test_AddDONs_EmptyConfigDON() (gas: 7466418) +CapabilitiesRegistry_AddDONsTest:test_AddDONs_OneNodeDON() (gas: 7203531) +CapabilitiesRegistry_AddNodeOperatorsTest:test_AddNodeOperators() (gas: 454954) +CapabilitiesRegistry_AddNodesTest:test_AddsNodeParams() (gas: 540842) +CapabilitiesRegistry_AddNodesTest:test_OwnerCanAddNodes() (gas: 541100) +CapabilitiesRegistry_DeprecateCapabilitiesTest:test_DeprecatesCapability() (gas: 109240) +CapabilitiesRegistry_DeprecateCapabilitiesTest:test_EmitsEvent() (gas: 109764) +CapabilitiesRegistry_GetCapabilitiesTest:test_ReturnsCapabilities() (gas: 164349) +CapabilitiesRegistry_GetCapabilitiesTest:test_ReturnsPaginatedCapabilities() (gas: 173797) +CapabilitiesRegistry_GetDONByNameTest:test_CorrectlyFetchesDONByName() (gas: 128935) +CapabilitiesRegistry_GetDONByNameTest:test_CorrectlyFetchesDONFamilies() (gas: 1330593) +CapabilitiesRegistry_GetDONsTest:test_CorrectlyFetchesDONs() (gas: 108512) +CapabilitiesRegistry_GetDONsTest:test_DoesNotIncludeRemovedDONs() (gas: 143181) +CapabilitiesRegistry_GetHistoricalDONInfoTest:test_CorrectlyFetchesHistoricalDONInfo() (gas: 104142) +CapabilitiesRegistry_GetNextDONIdTest:test_CorrectlyFetchesNextDONId() (gas: 983632) +CapabilitiesRegistry_GetNodeOperatorsTest:test_CorrectlyFetchesNodeOperators() (gas: 51172) +CapabilitiesRegistry_GetNodeOperatorsTest:test_DoesNotIncludeRemovedNodeOperators() (gas: 88131) +CapabilitiesRegistry_GetNodesTest:test_CorrectlyFetchesNodes() (gas: 96524) +CapabilitiesRegistry_GetNodesTest:test_CorrectlyFetchesSpecificNodes() (gas: 43750) +CapabilitiesRegistry_GetNodesTest:test_DoesNotIncludeRemovedNodes() (gas: 130233) CapabilitiesRegistry_GetNodesTest:test_GetNodesByP2PIdsInvalidNode_Reverts() (gas: 29645) -CapabilitiesRegistry_RemoveDONsByNameTest:test_RemovesDONsByName() (gas: 64331) -CapabilitiesRegistry_RemoveDONsTest:test_RemoveDON_RemovesFromAllFamilies_MultipleFamilies() (gas: 399172) -CapabilitiesRegistry_RemoveDONsTest:test_RemovesCapabilitiesDON() (gas: 475126) -CapabilitiesRegistry_RemoveDONsTest:test_RemovesDON() (gas: 63368) -CapabilitiesRegistry_RemoveNodeOperatorsTest:test_RemovesNodeOperator() (gas: 78333) -CapabilitiesRegistry_RemoveNodeOperatorsTest:test_RemovesNodeOperator_UnblocksReAdding() (gas: 313402) -CapabilitiesRegistry_RemoveNodesTest:test_CanAddNodeWithSameSignerAddressAfterRemoving() (gas: 251883) -CapabilitiesRegistry_RemoveNodesTest:test_CanRemoveWhenDONDeleted() (gas: 415283) -CapabilitiesRegistry_RemoveNodesTest:test_CanRemoveWhenNodeNoLongerPartOfDON() (gas: 759247) -CapabilitiesRegistry_RemoveNodesTest:test_OwnerCanRemoveNodes() (gas: 93200) -CapabilitiesRegistry_RemoveNodesTest:test_RemovesNode() (gas: 210105) -CapabilitiesRegistry_SetDONFamilyTest:test_DONInfo_IncludesFamilyInformation() (gas: 54472) -CapabilitiesRegistry_SetDONFamilyTest:test_FamilyCleanupOnDONRemoval() (gas: 106599) -CapabilitiesRegistry_SetDONFamilyTest:test_GetDONsInFamily_EmptyFamily() (gas: 12645) -CapabilitiesRegistry_SetDONFamilyTest:test_SetDONFamilies_AddToMultipleFamilies() (gas: 257871) -CapabilitiesRegistry_SetDONFamilyTest:test_SetDONFamilies_RemoveFromAllFamilies() (gas: 73566) -CapabilitiesRegistry_SetDONFamilyTest:test_SetDONFamilies_SkipMissingThenRemoveExisting() (gas: 79334) -CapabilitiesRegistry_SetDONFamilyTest:test_SetDONFamily_EmitsEvent() (gas: 219041) -CapabilitiesRegistry_SetDONFamilyTest:test_SetDONFamily_MoveDONBetweenFamilies() (gas: 276395) -CapabilitiesRegistry_SetDONFamilyTest:test_SetDONFamily_MultipleDONsInSameFamily() (gas: 38627) -CapabilitiesRegistry_SetDONFamilyTest:test_SetDONFamily_RemoveFromFamily() (gas: 81706) -CapabilitiesRegistry_SetDONFamilyTest:test_SetDONFamily_SameFamilyNoOp() (gas: 37341) +CapabilitiesRegistry_RemoveDONsByNameTest:test_RemovesDONsByName() (gas: 90244) +CapabilitiesRegistry_RemoveDONsTest:test_RemoveDON_RemovesFromAllFamilies_MultipleFamilies() (gas: 581509) +CapabilitiesRegistry_RemoveDONsTest:test_RemovesCapabilitiesDON() (gas: 749001) +CapabilitiesRegistry_RemoveDONsTest:test_RemovesDON() (gas: 89129) +CapabilitiesRegistry_RemoveNodeOperatorsTest:test_RemovesNodeOperator() (gas: 102520) +CapabilitiesRegistry_RemoveNodeOperatorsTest:test_RemovesNodeOperator_UnblocksReAdding() (gas: 542595) +CapabilitiesRegistry_RemoveNodesTest:test_CanAddNodeWithSameSignerAddressAfterRemoving() (gas: 559827) +CapabilitiesRegistry_RemoveNodesTest:test_CanRemoveWhenDONDeleted() (gas: 597869) +CapabilitiesRegistry_RemoveNodesTest:test_CanRemoveWhenNodeNoLongerPartOfDON() (gas: 908950) +CapabilitiesRegistry_RemoveNodesTest:test_OwnerCanRemoveNodes() (gas: 103619) +CapabilitiesRegistry_RemoveNodesTest:test_RemovesNode() (gas: 518956) +CapabilitiesRegistry_SetDONFamilyTest:test_DONInfo_IncludesFamilyInformation() (gas: 53746) +CapabilitiesRegistry_SetDONFamilyTest:test_FamilyCleanupOnDONRemoval() (gas: 171138) +CapabilitiesRegistry_SetDONFamilyTest:test_GetDONsInFamily_EmptyFamily() (gas: 9664) +CapabilitiesRegistry_SetDONFamilyTest:test_SetDONFamilies_AddToMultipleFamilies() (gas: 287780) +CapabilitiesRegistry_SetDONFamilyTest:test_SetDONFamilies_RemoveFromAllFamilies() (gas: 90049) +CapabilitiesRegistry_SetDONFamilyTest:test_SetDONFamilies_SkipMissingThenRemoveExisting() (gas: 97771) +CapabilitiesRegistry_SetDONFamilyTest:test_SetDONFamily_EmitsEvent() (gas: 204641) +CapabilitiesRegistry_SetDONFamilyTest:test_SetDONFamily_MoveDONBetweenFamilies() (gas: 316723) +CapabilitiesRegistry_SetDONFamilyTest:test_SetDONFamily_MultipleDONsInSameFamily() (gas: 81181) +CapabilitiesRegistry_SetDONFamilyTest:test_SetDONFamily_RemoveFromFamily() (gas: 105949) +CapabilitiesRegistry_SetDONFamilyTest:test_SetDONFamily_SameFamilyNoOp() (gas: 84757) CapabilitiesRegistry_TypeAndVersionTest:test_TypeAndVersion() (gas: 9845) -CapabilitiesRegistry_UpdateDONByNameTest:test_UpdatesDONByName() (gas: 886568) -CapabilitiesRegistry_UpdateDONTest:test_UpdatesDON() (gas: 870896) -CapabilitiesRegistry_UpdateDONTest:test_UpdatesDONAndPreservesWorkflowID() (gas: 363818) -CapabilitiesRegistry_UpdateDONTest:test_UpdatesDONAndRemovesDONNameMapping() (gas: 416331) -CapabilitiesRegistry_UpdateNodeOperatorTest:test_UpdatesNodeOperator() (gas: 65113) -CapabilitiesRegistry_UpdateNodeOperatorTest:test_UpdatesNodeOperator_UnblocksReAddingOldNodeOperator() (gas: 57567) -CapabilitiesRegistry_UpdateNodesTest:test_CanReassignNode() (gas: 180432) -CapabilitiesRegistry_UpdateNodesTest:test_CanUpdateParamsIfNodeSignerAddressNoLongerUsed() (gas: 261904) -CapabilitiesRegistry_UpdateNodesTest:test_OwnerCanUpdateNodes() (gas: 166892) -CapabilitiesRegistry_UpdateNodesTest:test_UpdatesNodeParams() (gas: 169192) -WorkflowRegistry_activateWorkflow:test_activateWorkflow_WhenCallerIsNotLinkedAsAnOwner() (gas: 19213) -WorkflowRegistry_activateWorkflow:test_activateWorkflow_WhenNoDONLimitIsSetGloballyForTheDonFamily() (gas: 587524) -WorkflowRegistry_activateWorkflow:test_activateWorkflow_WhenNoWorkflowExistsForTheGivenWorkflowId() (gas: 156631) -WorkflowRegistry_activateWorkflow:test_activateWorkflow_WhenTheWorkflowExistsButOwnerDoesNotEqualCaller() (gas: 1168673) -WorkflowRegistry_activateWorkflow:test_activateWorkflow_WhenTheWorkflowExistsOwnerMatchesButStatusIsACTIVE() (gas: 1065101) -WorkflowRegistry_activateWorkflow:test_activateWorkflow_WhenThereAreAlreadyTooManyWorkflowsInTheDON() (gas: 2195261) -WorkflowRegistry_activateWorkflow:test_activateWorkflow_WhenThereIsEnoughSpaceForTheWorkflowInTheDON() (gas: 1696124) -WorkflowRegistry_adminBatchPauseWorkflows:test_adminBatchPauseWorkflows_WhenCallerIsNOTTheContractOwner() (gas: 17556) -WorkflowRegistry_adminBatchPauseWorkflows:test_adminBatchPauseWorkflows_WhenWorkflowIdsIsNotZero() (gas: 1465643) -WorkflowRegistry_adminBatchPauseWorkflows:test_adminBatchPauseWorkflows_WhenWorkflowIdsLengthIs0() (gas: 12862) -WorkflowRegistry_adminPauseAllByDON:test_adminPauseAllByDON_WhenCallerIsNOTTheContractOwner() (gas: 17536) -WorkflowRegistry_adminPauseAllByDON:test_adminPauseAllByDON_WhenThereAreActiveWorkflows() (gas: 1487508) -WorkflowRegistry_adminPauseAllByDON:test_adminPauseAllByDON_WhenThereAreActiveWorkflowsButLimitIsSet() (gas: 2570965) -WorkflowRegistry_adminPauseAllByOwner:test_adminPauseAllByDON_WhenThereAreActiveWorkflowsButLimitIsSet() (gas: 2568637) -WorkflowRegistry_adminPauseAllByOwner:test_adminPauseAllByOwner_WhenCallerIsNOTTheContractOwner() (gas: 16535) -WorkflowRegistry_adminPauseAllByOwner:test_adminPauseAllByOwner_WhenThereAreActiveWorkflows() (gas: 1486344) -WorkflowRegistry_adminPauseWorkflow:test_adminPauseWorkflow_WhenCallerIsNOTTheContractOwner() (gas: 16245) -WorkflowRegistry_adminPauseWorkflow:test_adminPauseWorkflow_WhenWorkflowStatusIsACTIVE() (gas: 964213) -WorkflowRegistry_adminPauseWorkflow:test_adminPauseWorkflow_WhenWorkflowStatusIsPAUSED() (gas: 835171) -WorkflowRegistry_allowlistRequest:test_allowlistRequest_WhenTheUserAlreadyHasARequest() (gas: 504890) -WorkflowRegistry_allowlistRequest:test_allowlistRequest_WhenTheUserHasNoExistingRequest() (gas: 571094) -WorkflowRegistry_allowlistRequest:test_allowlistRequest_WhenTheUserIsNotLinked() (gas: 37037) -WorkflowRegistry_batchActivateWorkflows:test_batchActivateWorkflows_WhenActivationWouldExceedCallersPer_DONCap() (gas: 1201822) -WorkflowRegistry_batchActivateWorkflows:test_batchActivateWorkflows_WhenAllListedWorkflowsAreAlreadyACTIVE() (gas: 1066052) -WorkflowRegistry_batchActivateWorkflows:test_batchActivateWorkflows_WhenAtLeastOneWorkflowIdIsNotOwnedByCaller() (gas: 922834) -WorkflowRegistry_batchActivateWorkflows:test_batchActivateWorkflows_WhenCallerIsNOTALinkedOwner() (gas: 19878) -WorkflowRegistry_batchActivateWorkflows:test_batchActivateWorkflows_WhenDONFamilyHasNoGlobalLimitSet() (gas: 587773) -WorkflowRegistry_batchActivateWorkflows:test_batchActivateWorkflows_WhenEveryWorkflowIdIsUnknown() (gas: 157421) -WorkflowRegistry_batchActivateWorkflows:test_batchActivateWorkflows_WhenListMixesACTIVEAndPAUSEDWorkflowsWhereTheOnesToActivateAreWithinCap() (gas: 1798252) -WorkflowRegistry_batchActivateWorkflows:test_batchActivateWorkflows_WhenWorkflowIdsLengthIs0() (gas: 149813) -WorkflowRegistry_batchPauseWorkflows:test_batchPauseWorkflows_WhenCallerIsNOTALinkedOwner() (gas: 18040) -WorkflowRegistry_batchPauseWorkflows:test_batchPauseWorkflows_WhenEveryListedWorkflowIsACTIVE() (gas: 1451843) -WorkflowRegistry_batchPauseWorkflows:test_batchPauseWorkflows_WhenEveryListedWorkflowIsAlreadyPAUSED() (gas: 1164135) -WorkflowRegistry_batchPauseWorkflows:test_batchPauseWorkflows_WhenTheListMixesPAUSEDAndACTIVEWorkflows() (gas: 1327482) -WorkflowRegistry_batchPauseWorkflows:test_batchPauseWorkflows_WhenWorkflowIdsContainsAnIDNotOwnedByCaller() (gas: 922946) -WorkflowRegistry_batchPauseWorkflows:test_batchPauseWorkflows_WhenWorkflowIdsContainsAnUnknownID() (gas: 155189) -WorkflowRegistry_batchPauseWorkflows:test_batchPauseWorkflows_WhenWorkflowIdsLengthIs0() (gas: 148106) +CapabilitiesRegistry_UpdateDONByNameTest:test_UpdatesDONByName() (gas: 1010945) +CapabilitiesRegistry_UpdateDONTest:test_UpdatesDON() (gas: 994041) +CapabilitiesRegistry_UpdateDONTest:test_UpdatesDONAndPreservesWorkflowID() (gas: 375652) +CapabilitiesRegistry_UpdateDONTest:test_UpdatesDONAndRemovesDONNameMapping() (gas: 472194) +CapabilitiesRegistry_UpdateNodeOperatorTest:test_UpdatesNodeOperator() (gas: 89040) +CapabilitiesRegistry_UpdateNodeOperatorTest:test_UpdatesNodeOperator_UnblocksReAddingOldNodeOperator() (gas: 138836) +CapabilitiesRegistry_UpdateNodesTest:test_CanReassignNode() (gas: 197210) +CapabilitiesRegistry_UpdateNodesTest:test_CanUpdateParamsIfNodeSignerAddressNoLongerUsed() (gas: 350672) +CapabilitiesRegistry_UpdateNodesTest:test_OwnerCanUpdateNodes() (gas: 199857) +CapabilitiesRegistry_UpdateNodesTest:test_UpdatesNodeParams() (gas: 202157) +WorkflowRegistry_activateWorkflow:test_activateWorkflow_WhenCallerIsNotLinkedAsAnOwner() (gas: 41257) +WorkflowRegistry_activateWorkflow:test_activateWorkflow_WhenNoDONLimitIsSetGloballyForTheDonFamily() (gas: 665800) +WorkflowRegistry_activateWorkflow:test_activateWorkflow_WhenNoWorkflowExistsForTheGivenWorkflowId() (gas: 203871) +WorkflowRegistry_activateWorkflow:test_activateWorkflow_WhenTheWorkflowExistsButOwnerDoesNotEqualCaller() (gas: 1300745) +WorkflowRegistry_activateWorkflow:test_activateWorkflow_WhenTheWorkflowExistsOwnerMatchesButStatusIsACTIVE() (gas: 1167174) +WorkflowRegistry_activateWorkflow:test_activateWorkflow_WhenThereAreAlreadyTooManyWorkflowsInTheDON() (gas: 2552665) +WorkflowRegistry_activateWorkflow:test_activateWorkflow_WhenThereIsEnoughSpaceForTheWorkflowInTheDON() (gas: 1877624) +WorkflowRegistry_adminBatchPauseWorkflows:test_adminBatchPauseWorkflows_WhenCallerIsNOTTheContractOwner() (gas: 39924) +WorkflowRegistry_adminBatchPauseWorkflows:test_adminBatchPauseWorkflows_WhenWorkflowIdsIsNotZero() (gas: 2004824) +WorkflowRegistry_adminBatchPauseWorkflows:test_adminBatchPauseWorkflows_WhenWorkflowIdsLengthIs0() (gas: 34194) +WorkflowRegistry_adminPauseAllByDON:test_adminPauseAllByDON_WhenCallerIsNOTTheContractOwner() (gas: 39196) +WorkflowRegistry_adminPauseAllByDON:test_adminPauseAllByDON_WhenThereAreActiveWorkflows() (gas: 2078789) +WorkflowRegistry_adminPauseAllByDON:test_adminPauseAllByDON_WhenThereAreActiveWorkflowsButLimitIsSet() (gas: 3735331) +WorkflowRegistry_adminPauseAllByOwner:test_adminPauseAllByDON_WhenThereAreActiveWorkflowsButLimitIsSet() (gas: 3733209) +WorkflowRegistry_adminPauseAllByOwner:test_adminPauseAllByOwner_WhenCallerIsNOTTheContractOwner() (gas: 38095) +WorkflowRegistry_adminPauseAllByOwner:test_adminPauseAllByOwner_WhenThereAreActiveWorkflows() (gas: 2077931) +WorkflowRegistry_adminPauseWorkflow:test_adminPauseWorkflow_WhenCallerIsNOTTheContractOwner() (gas: 37821) +WorkflowRegistry_adminPauseWorkflow:test_adminPauseWorkflow_WhenWorkflowStatusIsACTIVE() (gas: 1322158) +WorkflowRegistry_adminPauseWorkflow:test_adminPauseWorkflow_WhenWorkflowStatusIsPAUSED() (gas: 982998) +WorkflowRegistry_allowlistRequest:test_allowlistRequest_WhenTheUserAlreadyHasARequest() (gas: 768115) +WorkflowRegistry_allowlistRequest:test_allowlistRequest_WhenTheUserHasNoExistingRequest() (gas: 883770) +WorkflowRegistry_allowlistRequest:test_allowlistRequest_WhenTheUserIsNotLinked() (gas: 134475) +WorkflowRegistry_batchActivateWorkflows:test_batchActivateWorkflows_WhenActivationWouldExceedCallersPer_DONCap() (gas: 1347326) +WorkflowRegistry_batchActivateWorkflows:test_batchActivateWorkflows_WhenAllListedWorkflowsAreAlreadyACTIVE() (gas: 1168405) +WorkflowRegistry_batchActivateWorkflows:test_batchActivateWorkflows_WhenAtLeastOneWorkflowIdIsNotOwnedByCaller() (gas: 1053198) +WorkflowRegistry_batchActivateWorkflows:test_batchActivateWorkflows_WhenCallerIsNOTALinkedOwner() (gas: 42714) +WorkflowRegistry_batchActivateWorkflows:test_batchActivateWorkflows_WhenDONFamilyHasNoGlobalLimitSet() (gas: 666329) +WorkflowRegistry_batchActivateWorkflows:test_batchActivateWorkflows_WhenEveryWorkflowIdIsUnknown() (gas: 204941) +WorkflowRegistry_batchActivateWorkflows:test_batchActivateWorkflows_WhenListMixesACTIVEAndPAUSEDWorkflowsWhereTheOnesToActivateAreWithinCap() (gas: 1972132) +WorkflowRegistry_batchActivateWorkflows:test_batchActivateWorkflows_WhenWorkflowIdsLengthIs0() (gas: 194809) +WorkflowRegistry_batchPauseWorkflows:test_batchPauseWorkflows_WhenCallerIsNOTALinkedOwner() (gas: 40408) +WorkflowRegistry_batchPauseWorkflows:test_batchPauseWorkflows_WhenEveryListedWorkflowIsACTIVE() (gas: 1949179) +WorkflowRegistry_batchPauseWorkflows:test_batchPauseWorkflows_WhenEveryListedWorkflowIsAlreadyPAUSED() (gas: 1284100) +WorkflowRegistry_batchPauseWorkflows:test_batchPauseWorkflows_WhenTheListMixesPAUSEDAndACTIVEWorkflows() (gas: 1676185) +WorkflowRegistry_batchPauseWorkflows:test_batchPauseWorkflows_WhenWorkflowIdsContainsAnIDNotOwnedByCaller() (gas: 1052842) +WorkflowRegistry_batchPauseWorkflows:test_batchPauseWorkflows_WhenWorkflowIdsContainsAnUnknownID() (gas: 202241) +WorkflowRegistry_batchPauseWorkflows:test_batchPauseWorkflows_WhenWorkflowIdsLengthIs0() (gas: 192634) WorkflowRegistry_canLinkOwner:test_canLinkOwner_WhenBlockTimestampIsGreaterThanValidityTimestamp() (gas: 26205) -WorkflowRegistry_canLinkOwner:test_canLinkOwner_WhenMsgSenderIsAlreadyLinked() (gas: 152345) -WorkflowRegistry_canLinkOwner:test_canLinkOwner_WhenProofHasAlreadyBeenUsed() (gas: 155873) +WorkflowRegistry_canLinkOwner:test_canLinkOwner_WhenMsgSenderIsAlreadyLinked() (gas: 177541) +WorkflowRegistry_canLinkOwner:test_canLinkOwner_WhenProofHasAlreadyBeenUsed() (gas: 181069) WorkflowRegistry_canLinkOwner:test_canLinkOwner_WhenSignatureIsValidAndSignerIsAllowed() (gas: 35556) WorkflowRegistry_canLinkOwner:test_canLinkOwner_WhenSignatureRecoversToASignerNotInAllowedSigners() (gas: 35494) WorkflowRegistry_canLinkOwner:test_canLinkOwner_WhenSignatureRecoveryFails() (gas: 23780) -WorkflowRegistry_canUnlinkOwner:test_canUnlinkOwner_WhenOwnerHasExistingWorkflows() (gas: 3964510) -WorkflowRegistry_canUnlinkOwner:test_canUnlinkOwner_WhenOwnerIsNotYetLinked() (gas: 32271) -WorkflowRegistry_canUnlinkOwner:test_canUnlinkOwner_WhenTheSignatureDoesNotRecoverAnAllowedSigner() (gas: 162402) -WorkflowRegistry_canUnlinkOwner:test_canUnlinkOwner_WhenTheSignatureRecoversAnAllowedSigner() (gas: 155013) -WorkflowRegistry_canUnlinkOwner:test_canUnlinkOwner_WhenValidTimestampIsLessThanBlockTimestamp() (gas: 153510) -WorkflowRegistry_getActiveAllowlistedRequestsReverse:test_getActiveAllowlistedRequestsReverse_WhenNoRequestsAreAllowlisted() (gas: 16207) -WorkflowRegistry_getActiveAllowlistedRequestsReverse:test_getActiveAllowlistedRequestsReverse_WhenNoneOfTheRequestsHaveExpired() (gas: 905352) -WorkflowRegistry_getActiveAllowlistedRequestsReverse:test_getActiveAllowlistedRequestsReverse_WhenSomeOfTheRequestsHaveExpired() (gas: 854602) -WorkflowRegistry_getActiveAllowlistedRequestsReverse:test_getActiveAllowlistedRequestsReverse_WhenStopCriteriaWasReached() (gas: 1308368) -WorkflowRegistry_getActiveWorkflowListByDON:test_getActiveWorkflowListByDON_DeletedPausedWorkflowShouldNotLeaveGhostEntry() (gas: 1196592) -WorkflowRegistry_getActiveWorkflowListByDON:test_getActiveWorkflowListByDON_RecreateAsPausedAfterDeletingActive() (gas: 1480522) -WorkflowRegistry_getActiveWorkflowListByDON:test_getActiveWorkflowListByDON_ShouldExcludeWorkflowThatWasPaused() (gas: 957436) -WorkflowRegistry_getActiveWorkflowListByDON:test_getActiveWorkflowListByDON_ShouldHandleMultipleDeletesAndRecreations() (gas: 3531542) -WorkflowRegistry_getActiveWorkflowListByDON:test_getActiveWorkflowListByDON_ShouldIncludeRecreatedWorkflow() (gas: 1386023) -WorkflowRegistry_getActiveWorkflowListByDON:test_getActiveWorkflowListByDON_ShouldIncludeWorkflowThatWasReactivated() (gas: 1175544) -WorkflowRegistry_getActiveWorkflowListByDON:test_getActiveWorkflowListByDON_ShouldNotIncludeDeletedWorkflow() (gas: 871340) -WorkflowRegistry_getActiveWorkflowListByDON:test_getActiveWorkflowListByDON_ShouldNotIncludePausedWorkflows() (gas: 1444033) -WorkflowRegistry_getActiveWorkflowListByDON:test_getActiveWorkflowListByDON_ShouldOnlyReturnActiveWorkflows() (gas: 4422744) -WorkflowRegistry_getActiveWorkflowListByDON:test_getActiveWorkflowListByDON_ShouldOnlyReturnActiveWorkflowsFromSpecifiedDON() (gas: 4460683) -WorkflowRegistry_getActiveWorkflowListByDON:test_getActiveWorkflowListByDON_WhenLimitIsGreaterThanOrEqualToTotalMinusStart() (gas: 4505770) -WorkflowRegistry_getActiveWorkflowListByDON:test_getActiveWorkflowListByDON_WhenLimitIsLessThanTotalMinusStart() (gas: 4444641) -WorkflowRegistry_getActiveWorkflowListByDON:test_getActiveWorkflowListByDON_WhenLimitIsZero() (gas: 4391372) -WorkflowRegistry_getActiveWorkflowListByDON:test_getActiveWorkflowListByDON_WhenStartIsGreaterThanOrEqualToTotalActiveWorkflows() (gas: 4394522) -WorkflowRegistry_getActiveWorkflowListByDON:test_getActiveWorkflowListByDON_WhenTheDONFamilyHasNoWorkflowsRegistered() (gas: 23539) -WorkflowRegistry_getAllowedSigners:test_getAllowedSigners_WhenAPageIsRequested() (gas: 39185) +WorkflowRegistry_canUnlinkOwner:test_canUnlinkOwner_WhenOwnerHasExistingWorkflows() (gas: 4299942) +WorkflowRegistry_canUnlinkOwner:test_canUnlinkOwner_WhenOwnerIsNotYetLinked() (gas: 34002) +WorkflowRegistry_canUnlinkOwner:test_canUnlinkOwner_WhenTheSignatureDoesNotRecoverAnAllowedSigner() (gas: 189598) +WorkflowRegistry_canUnlinkOwner:test_canUnlinkOwner_WhenTheSignatureRecoversAnAllowedSigner() (gas: 184209) +WorkflowRegistry_canUnlinkOwner:test_canUnlinkOwner_WhenValidTimestampIsLessThanBlockTimestamp() (gas: 180440) +WorkflowRegistry_getActiveAllowlistedRequestsReverse:test_getActiveAllowlistedRequestsReverse_WhenNoRequestsAreAllowlisted() (gas: 15945) +WorkflowRegistry_getActiveAllowlistedRequestsReverse:test_getActiveAllowlistedRequestsReverse_WhenNoneOfTheRequestsHaveExpired() (gas: 1265755) +WorkflowRegistry_getActiveAllowlistedRequestsReverse:test_getActiveAllowlistedRequestsReverse_WhenSomeOfTheRequestsHaveExpired() (gas: 1212703) +WorkflowRegistry_getActiveAllowlistedRequestsReverse:test_getActiveAllowlistedRequestsReverse_WhenStopCriteriaWasReached() (gas: 1847910) +WorkflowRegistry_getActiveWorkflowListByDON:test_getActiveWorkflowListByDON_DeletedPausedWorkflowShouldNotLeaveGhostEntry() (gas: 1712321) +WorkflowRegistry_getActiveWorkflowListByDON:test_getActiveWorkflowListByDON_RecreateAsPausedAfterDeletingActive() (gas: 2200083) +WorkflowRegistry_getActiveWorkflowListByDON:test_getActiveWorkflowListByDON_ShouldExcludeWorkflowThatWasPaused() (gas: 1298407) +WorkflowRegistry_getActiveWorkflowListByDON:test_getActiveWorkflowListByDON_ShouldHandleMultipleDeletesAndRecreations() (gas: 5712964) +WorkflowRegistry_getActiveWorkflowListByDON:test_getActiveWorkflowListByDON_ShouldIncludeRecreatedWorkflow() (gas: 1997462) +WorkflowRegistry_getActiveWorkflowListByDON:test_getActiveWorkflowListByDON_ShouldIncludeWorkflowThatWasReactivated() (gas: 1324176) +WorkflowRegistry_getActiveWorkflowListByDON:test_getActiveWorkflowListByDON_ShouldNotIncludeDeletedWorkflow() (gas: 1291259) +WorkflowRegistry_getActiveWorkflowListByDON:test_getActiveWorkflowListByDON_ShouldNotIncludePausedWorkflows() (gas: 1580127) +WorkflowRegistry_getActiveWorkflowListByDON:test_getActiveWorkflowListByDON_ShouldOnlyReturnActiveWorkflows() (gas: 4903434) +WorkflowRegistry_getActiveWorkflowListByDON:test_getActiveWorkflowListByDON_ShouldOnlyReturnActiveWorkflowsFromSpecifiedDON() (gas: 4982515) +WorkflowRegistry_getActiveWorkflowListByDON:test_getActiveWorkflowListByDON_WhenLimitIsGreaterThanOrEqualToTotalMinusStart() (gas: 5127505) +WorkflowRegistry_getActiveWorkflowListByDON:test_getActiveWorkflowListByDON_WhenLimitIsLessThanTotalMinusStart() (gas: 4968602) +WorkflowRegistry_getActiveWorkflowListByDON:test_getActiveWorkflowListByDON_WhenLimitIsZero() (gas: 4823982) +WorkflowRegistry_getActiveWorkflowListByDON:test_getActiveWorkflowListByDON_WhenStartIsGreaterThanOrEqualToTotalActiveWorkflows() (gas: 4832753) +WorkflowRegistry_getActiveWorkflowListByDON:test_getActiveWorkflowListByDON_WhenTheDONFamilyHasNoWorkflowsRegistered() (gas: 31827) +WorkflowRegistry_getAllowedSigners:test_getAllowedSigners_WhenAPageIsRequested() (gas: 44167) WorkflowRegistry_getAllowedSigners:test_getAllowedSigners_WhenNoAllowedSignersAreConfigured() (gas: 395) -WorkflowRegistry_getAllowedSigners:test_getAllowedSigners_WhenStartIs0AndLimitIsGreaterThanTheNumberOfSigners() (gas: 30069) -WorkflowRegistry_getAllowlistedRequests:test_getAllowlistedRequests_WhenNoRequestsAreAllowlisted() (gas: 15066) -WorkflowRegistry_getAllowlistedRequests:test_getAllowlistedRequests_WhenNoneOfTheRequestsHaveExpired() (gas: 882726) -WorkflowRegistry_getAllowlistedRequests:test_getAllowlistedRequests_WhenSomeOfTheRequestsHaveExpired() (gas: 852029) -WorkflowRegistry_getCapabilitiesRegistry:test_getCapabilitiesRegistry_WhenTheRegistryHasBeenSet() (gas: 41703) -WorkflowRegistry_getCapabilitiesRegistry:test_getCapabilitiesRegistry_WhenTheRegistryHasnNotBeenSetYet() (gas: 11707) -WorkflowRegistry_getDonConfigs:test_getDonConfigs_WhenThereAreDONConfigsSet() (gas: 632246) -WorkflowRegistry_getDonConfigs:test_getDonConfigs_WhenThereAreNoDONConfigs() (gas: 11741) -WorkflowRegistry_getEvents:test_getEvents_When0IsLessThanLimitWhichIsLessThanNMinusStart() (gas: 444347) -WorkflowRegistry_getEvents:test_getEvents_WhenLimitIs0() (gas: 438262) -WorkflowRegistry_getEvents:test_getEvents_WhenLimitIsGreaterThanNMinusStart() (gas: 444698) -WorkflowRegistry_getEvents:test_getEvents_WhenNoEventsHaveBeenRecorded() (gas: 11851) -WorkflowRegistry_getEvents:test_getEvents_WhenStartIsGreaterThanNumberOfEvents() (gas: 438036) -WorkflowRegistry_getLinkedOwners:test_getLinkedOwners_GivenThatBatchSizeIsEqualToTotalLinkedOwners() (gas: 574237) -WorkflowRegistry_getLinkedOwners:test_getLinkedOwners_GivenThatBatchSizeIsGreaterThanTotalLinkedOwners() (gas: 574238) -WorkflowRegistry_getLinkedOwners:test_getLinkedOwners_GivenThatBatchSizeIsLessThanTotalLinkedOwners() (gas: 573573) -WorkflowRegistry_getLinkedOwners:test_getLinkedOwners_GivenThatStartIndexIsEqualToTotalLinkedOwners() (gas: 567936) -WorkflowRegistry_getLinkedOwners:test_getLinkedOwners_GivenThatStartIndexIsGreaterThanTotalLinkedOwners() (gas: 567826) -WorkflowRegistry_getLinkedOwners:test_getLinkedOwners_WhenBatchSizeIsEqualToTotalLinkedOwners() (gas: 572234) -WorkflowRegistry_getLinkedOwners:test_getLinkedOwners_WhenBatchSizeIsGreaterThanTotalLinkedOwners() (gas: 572410) -WorkflowRegistry_getLinkedOwners:test_getLinkedOwners_WhenBatchSizeIsLessThanTotalLinkedOwners() (gas: 577168) -WorkflowRegistry_getLinkedOwners:test_getLinkedOwners_WhenThereAreNoLinkedOwners() (gas: 17275) -WorkflowRegistry_getMaxWorkflowsPerDON:test_getMaxWorkflowsPerDON_WhenDonLabelHasNeverBeenConfigured() (gas: 14885) -WorkflowRegistry_getMaxWorkflowsPerDON:test_getMaxWorkflowsPerDON_WhenDonLabelWasConfiguredToLimit() (gas: 246619) -WorkflowRegistry_getMaxWorkflowsPerUserDON:test_getMaxWorkflowsPerUserDON_WhenAUserOverrideExistsAndIsEnabled() (gas: 347795) -WorkflowRegistry_getMaxWorkflowsPerUserDON:test_getMaxWorkflowsPerUserDON_WhenGlobalDONLimitIsSetToL() (gas: 250719) -WorkflowRegistry_getMaxWorkflowsPerUserDON:test_getMaxWorkflowsPerUserDON_WhenGlobalDONLimitIsUnset() (gas: 18880) -WorkflowRegistry_getUserDONOverrides:test_getUserDONOverrides_WhenThereAreNoUserOverridesForASpecificDON() (gas: 14694) -WorkflowRegistry_getUserDONOverrides:test_getUserDONOverrides_WhenThereAreUserOverridesForASpecificDON() (gas: 918458) -WorkflowRegistry_getWorkflow:test_getWorkflow_WhenTheWorkflowDoesNotExist() (gas: 33662) -WorkflowRegistry_getWorkflow:test_getWorkflow_WhenTheWorkflowExistsWithTheOwnerAndNameAndTag() (gas: 1083728) -WorkflowRegistry_getWorkflowListByDON:test_getWorkflowListByDON_ShouldIncludeBothActiveAndPausedWorkflows() (gas: 1454840) -WorkflowRegistry_getWorkflowListByDON:test_getWorkflowListByDON_ShouldOnlyReturnWorkflowsFromSpecifiedDON() (gas: 3480875) -WorkflowRegistry_getWorkflowListByDON:test_getWorkflowListByDON_ShouldReturnWorkflowsWithCorrectStatus() (gas: 3442809) -WorkflowRegistry_getWorkflowListByDON:test_getWorkflowListByDON_WhenLimitIsGreaterThanOrEqualToTotalMinusStart() (gas: 3562482) -WorkflowRegistry_getWorkflowListByDON:test_getWorkflowListByDON_WhenLimitIsLessThanTotalMinusStart() (gas: 3454605) -WorkflowRegistry_getWorkflowListByDON:test_getWorkflowListByDON_WhenLimitIsZero() (gas: 3388729) -WorkflowRegistry_getWorkflowListByDON:test_getWorkflowListByDON_WhenStartIsGreaterThanOrEqualToTotalWorkflows() (gas: 3392363) -WorkflowRegistry_getWorkflowListByDON:test_getWorkflowListByDON_WhenTheDONFamilyHasNoWorkflowsRegistered() (gas: 23295) -WorkflowRegistry_isAllowedSigner:test_isAllowedSigner_WhenTheSignerAddressHasNeverBeenConfigured() (gas: 13837) -WorkflowRegistry_isAllowedSigner:test_isAllowedSigner_WhenTheSignerIsConfigured() (gas: 13748) -WorkflowRegistry_isOwnerLinked:test_isOwnerLinked_WhenTheSpecifiedOwnerHasNotLinked() (gas: 12778) -WorkflowRegistry_isOwnerLinked:test_isOwnerLinked_WhenTheSpecifiedOwnerIsLinked() (gas: 145787) -WorkflowRegistry_limitsScenario:test_limitsScenario_whenGlobalLimitEqualsSumOfPerUserLimits() (gas: 7059707) -WorkflowRegistry_limitsScenario:test_limitsScenario_whenGlobalLimitLowerThanSumOfPerUserLimits() (gas: 6357842) -WorkflowRegistry_linkOwner:test_WhenTheProofWasPreviouslyUsed() (gas: 148068) -WorkflowRegistry_linkOwner:test_linkOwner_WhenProofIsValid() (gas: 149322) -WorkflowRegistry_linkOwner:test_linkOwner_WhenTheProofContainsInvalidData() (gas: 41995) -WorkflowRegistry_linkOwner:test_linkOwner_WhenTheProofIsNotSignedByAnAllowedSigner() (gas: 41171) -WorkflowRegistry_linkOwner:test_linkOwner_WhenTheSignatureIsNotValid() (gas: 28018) -WorkflowRegistry_linkOwner:test_linkOwner_WhenTheTimestampHasExpired() (gas: 30226) -WorkflowRegistry_linkOwner:test_linkOwner_WhenTheTimestampIsExpired() (gas: 159553) -WorkflowRegistry_linkOwner:test_linkOwner_WhenTheTimestampIsStillValid() (gas: 158720) -WorkflowRegistry_pauseWorkflow:test_pauseWorkflow_WhenCallerIsNotLinkedAsAnOwner() (gas: 17045) -WorkflowRegistry_pauseWorkflow:test_pauseWorkflow_WhenNoWorkflowExistsForTheGivenWorkflowId() (gas: 154623) -WorkflowRegistry_pauseWorkflow:test_pauseWorkflow_WhenTheWorkflowExistsButOwnerIsNotCaller() (gas: 1168876) -WorkflowRegistry_pauseWorkflow:test_pauseWorkflow_WhenTheWorkflowExistsOwnerMatchesAndStatusIsACTIVE() (gas: 950128) -WorkflowRegistry_pauseWorkflow:test_pauseWorkflow_WhenTheWorkflowExistsOwnerMatchesButStatusIsPAUSED() (gas: 817678) -WorkflowRegistry_setCapabilitiesRegistry:test_setCapabilitiesRegistry_WhenBothRegistryAndChainSelectorAreTheSameAsCurrent() (gas: 45123) -WorkflowRegistry_setCapabilitiesRegistry:test_setCapabilitiesRegistry_WhenBothRegistryAndChainSelectorDifferFromTheCurrentValues() (gas: 47751) -WorkflowRegistry_setCapabilitiesRegistry:test_setCapabilitiesRegistry_WhenTheCallerIsNOTTheContractOwner() (gas: 16092) -WorkflowRegistry_setCapabilitiesRegistry:test_setCapabilitiesRegistry_WhenThereAreNoExistingRegistries() (gas: 44259) -WorkflowRegistry_setConfig:test_setConfig_WhenAllConfigFieldsAreZero() (gas: 54950) -WorkflowRegistry_setConfig:test_setConfig_WhenConfigFieldsAreNon_zero() (gas: 39421) -WorkflowRegistry_setConfig:test_setConfig_WhenSomeConfigFieldsAreZero() (gas: 39378) -WorkflowRegistry_setConfig:test_setConfig_WhenTheCallerIsNOTTheContractOwner() (gas: 14985) -WorkflowRegistry_setDONLimit:test_setDONLimit_WhenNewLimitDoesNotEqualExistingLimit() (gas: 363221) -WorkflowRegistry_setDONLimit:test_setDONLimit_WhenNewLimitIsEqualToExistingLimit() (gas: 257688) -WorkflowRegistry_setDONLimit:test_setDONLimit_WhenNoPreviousLimitExistsForDonLabel() (gas: 255727) -WorkflowRegistry_setDONLimit:test_setDONLimit_WhenNooPreviousLimitExistsForDonLabel() (gas: 35636) -WorkflowRegistry_setDONLimit:test_setDONLimit_WhenPreviousLimitExistsForDonLabel() (gas: 319372) -WorkflowRegistry_setDONLimit:test_setDONLimit_WhenTheCallerIsNOTTheContractOwner() (gas: 17441) -WorkflowRegistry_setUserDONOverride:test_setUserDONOverride_WhenAPriorOverrideExistsForUserDonLabel() (gas: 284876) -WorkflowRegistry_setUserDONOverride:test_setUserDONOverride_WhenGlobalDONLimitIsNotSet() (gas: 23023) -WorkflowRegistry_setUserDONOverride:test_setUserDONOverride_WhenLimitIsGreaterThanGlobalDONLimit() (gas: 249887) -WorkflowRegistry_setUserDONOverride:test_setUserDONOverride_WhenNewLimitDoesNotEqualExistingOverrideValue() (gas: 360849) -WorkflowRegistry_setUserDONOverride:test_setUserDONOverride_WhenNewLimitIsEqualToExistingOverrideValue() (gas: 346794) -WorkflowRegistry_setUserDONOverride:test_setUserDONOverride_WhenNoPriorOverrideExists() (gas: 261793) -WorkflowRegistry_setUserDONOverride:test_setUserDONOverride_WhenNoPriorOverrideExistsForUserDonLabel() (gas: 347552) -WorkflowRegistry_setUserDONOverride:test_setUserDONOverride_WhenTheCallerIsNOTTheContractOwner() (gas: 17712) -WorkflowRegistry_setWorkflowOwnerConfig:test_setWorkflowOwnerConfig_WhenSettingANonEmptyConfigForTheFirstTime() (gas: 46682) -WorkflowRegistry_setWorkflowOwnerConfig:test_setWorkflowOwnerConfig_WhenSettingAnEmptyBlob() (gas: 38946) -WorkflowRegistry_setWorkflowOwnerConfig:test_setWorkflowOwnerConfig_WhenTheCallerIsNOTTheContractOwner() (gas: 17449) -WorkflowRegistry_setWorkflowOwnerConfig:test_setWorkflowOwnerConfig_WhenUpdatingToADifferentBlob() (gas: 55025) -WorkflowRegistry_totalEvents:test_totalEvents() (gas: 479804) -WorkflowRegistry_totalLinkedOwners:test_totalLinkedOwners() (gas: 355139) -WorkflowRegistry_unlinkOwner:test_unlinkOwner_AutomaticallyDeletesWorkflowsWhenCallerIsNotOwner() (gas: 3134963) -WorkflowRegistry_unlinkOwner:test_unlinkOwner_AutomaticallyDeletesWorkflowsWhenOwnerIsLinked() (gas: 3133697) -WorkflowRegistry_unlinkOwner:test_unlinkOwner_UnlinkOwnerWhenCallerIsNotOwnerGivenTheOwnerIsNotLinked() (gas: 37470) -WorkflowRegistry_unlinkOwner:test_unlinkOwner_UnlinkOwnerWhenCallerIsNotOwnerGivenTheProofDoesNotMatchTheStoredProof() (gas: 172681) -WorkflowRegistry_unlinkOwner:test_unlinkOwner_UnlinkOwnerWhenCallerIsNotOwnerWhenRequestTimestampHasExpired() (gas: 161489) -WorkflowRegistry_unlinkOwner:test_unlinkOwner_UnlinkOwnerWhenCallerIsNotOwnerWhenTheProofIsNotValid() (gas: 172159) -WorkflowRegistry_unlinkOwner:test_unlinkOwner_UnlinkOwnerWhenCallerIsNotOwnerWhenTheProofIsValid() (gas: 134240) -WorkflowRegistry_unlinkOwner:test_unlinkOwner_UnlinkOwnerWhenCallerIsOwnerGivenTheOwnerIsNotLinked() (gas: 36514) -WorkflowRegistry_unlinkOwner:test_unlinkOwner_UnlinkOwnerWhenCallerIsOwnerGivenTheProofDoesNotMatchTheStoredProof() (gas: 170452) -WorkflowRegistry_unlinkOwner:test_unlinkOwner_UnlinkOwnerWhenCallerIsOwnerWhenRequestTimestampHasExpired() (gas: 159732) -WorkflowRegistry_unlinkOwner:test_unlinkOwner_UnlinkOwnerWhenCallerIsOwnerWhenTheProofIsNotValid() (gas: 170316) -WorkflowRegistry_unlinkOwner:test_unlinkOwner_UnlinkOwnerWhenCallerIsOwnerWhenTheProofIsValid() (gas: 132685) -WorkflowRegistry_updateAllowedSigners:test_updateAllowedSigners_GivenSignerIsNotAlreadyAdded() (gas: 86949) -WorkflowRegistry_updateAllowedSigners:test_updateAllowedSigners_GivenTheSignerIsAlreadyAdded() (gas: 34398) -WorkflowRegistry_updateAllowedSigners:test_updateAllowedSigners_GivenTheSignerIsAlreadyRemoved() (gas: 39192) -WorkflowRegistry_updateAllowedSigners:test_updateAllowedSigners_GivenTheSignerIsNotAlreadyRemoved() (gas: 47181) -WorkflowRegistry_updateAllowedSigners:test_updateAllowedSigners_ShouldOnlyBeCalledByTheContractOwner() (gas: 15357) -WorkflowRegistry_updateAllowedSigners:test_updateAllowedSigners_WhenTheSignerIsTheZeroAddress() (gas: 30248) -WorkflowRegistry_upsertWorkflow:test_upsertWorkflow_RevertWhenDonFamilyIsChangedOnUpdateWorkflow() (gas: 1419899) -WorkflowRegistry_upsertWorkflow:test_upsertWorkflow_RevertWhenStatusIsChangedOnUpdateWorkflow() (gas: 1232180) -WorkflowRegistry_upsertWorkflow:test_upsertWorkflow_WhenAttributesLengthGreaterThanAllowed() (gas: 338177) -WorkflowRegistry_upsertWorkflow:test_upsertWorkflow_WhenBinaryUrlIsMissing() (gas: 167677) -WorkflowRegistry_upsertWorkflow:test_upsertWorkflow_WhenBinaryUrlLengthGreaterThanAllowed() (gas: 190859) -WorkflowRegistry_upsertWorkflow:test_upsertWorkflow_WhenConfigUrlLengthGreaterThanAllowed() (gas: 190772) -WorkflowRegistry_upsertWorkflow:test_upsertWorkflow_WhenKeepAliveIsTrue() (gas: 1895847) -WorkflowRegistry_upsertWorkflow:test_upsertWorkflow_WhenMsgSenderNotALinkedOwner() (gas: 33015) -WorkflowRegistry_upsertWorkflow:test_upsertWorkflow_WhenNewAttributesLengthGreaterThanAllowed() (gas: 1254572) -WorkflowRegistry_upsertWorkflow:test_upsertWorkflow_WhenNewBinaryUrlIsMissing() (gas: 1069476) -WorkflowRegistry_upsertWorkflow:test_upsertWorkflow_WhenNewBinaryUrlOrNewConfigUrlLengthGreaterThanAllowed() (gas: 1092591) -WorkflowRegistry_upsertWorkflow:test_upsertWorkflow_WhenNewWorkflowIdAlreadyExists() (gas: 1067929) -WorkflowRegistry_upsertWorkflow:test_upsertWorkflow_WhenNewWorkflowIdIsZero() (gas: 1067305) -WorkflowRegistry_upsertWorkflow:test_upsertWorkflow_WhenOwnerWouldExceedTheirEffectiveCap() (gas: 2438872) -WorkflowRegistry_upsertWorkflow:test_upsertWorkflow_WhenTagLengthGreaterThanAllowed() (gas: 182088) -WorkflowRegistry_upsertWorkflow:test_upsertWorkflow_WhenTagLengthIsZero() (gas: 168058) -WorkflowRegistry_upsertWorkflow:test_upsertWorkflow_WhenTheDonHasNoGlobalCapSet() (gas: 180470) -WorkflowRegistry_upsertWorkflow:test_upsertWorkflow_WhenThereAreMoreThanOneActiveWorkflowThatSharesTheKey() (gas: 1897581) -WorkflowRegistry_upsertWorkflow:test_upsertWorkflow_WhenThereAreNoActiveWorkflowsWithTheSameKey() (gas: 1965164) -WorkflowRegistry_upsertWorkflow:test_upsertWorkflow_WhenThereAreNoFailures() (gas: 1065451) -WorkflowRegistry_upsertWorkflow:test_upsertWorkflow_WhenThereAreNoValidationFailures() (gas: 1095546) -WorkflowRegistry_upsertWorkflow:test_upsertWorkflow_WhenWorkflowIdAlreadyExists() (gas: 586823) -WorkflowRegistry_upsertWorkflow:test_upsertWorkflow_WhenWorkflowIdIsZero() (gas: 163662) -WorkflowRegistry_upsertWorkflow:test_upsertWorkflow_WhenWorkflowNameLengthGreaterThanAllowed() (gas: 182196) -WorkflowRegistry_upsertWorkflow:test_upsertWorkflow_WhenWorkflowNameLengthIsZero() (gas: 167688) -WorkflowRegistrydeleteWorkflow:test_WhenCallerIsNotTheOwner() (gas: 687661) -WorkflowRegistrydeleteWorkflow:test_WhenCallerIsTheOwner() (gas: 487294) -WorkflowRegistrydeleteWorkflow:test_WhenTheOwnerIsNotLinked() (gas: 16555) -WorkflowRegistrydeleteWorkflow:test_WhenTheWorkflowDoesNotExist() (gas: 154092) -WorkflowRegistrydeleteWorkflow:test_deleteWorkflow_activeThenPausedWorkflowShouldNotLeaveAnyStaleEntries() (gas: 2144139) -WorkflowRegistrydeleteWorkflow:test_deleteWorkflow_pausedWorkflowShouldNotLeaveAnyStaleEntries() (gas: 1900011) \ No newline at end of file +WorkflowRegistry_getAllowedSigners:test_getAllowedSigners_WhenStartIs0AndLimitIsGreaterThanTheNumberOfSigners() (gas: 23573) +WorkflowRegistry_getAllowlistedRequests:test_getAllowlistedRequests_WhenNoRequestsAreAllowlisted() (gas: 15516) +WorkflowRegistry_getAllowlistedRequests:test_getAllowlistedRequests_WhenNoneOfTheRequestsHaveExpired() (gas: 1227673) +WorkflowRegistry_getAllowlistedRequests:test_getAllowlistedRequests_WhenSomeOfTheRequestsHaveExpired() (gas: 1204910) +WorkflowRegistry_getCapabilitiesRegistry:test_getCapabilitiesRegistry_WhenTheRegistryHasBeenSet() (gas: 64455) +WorkflowRegistry_getCapabilitiesRegistry:test_getCapabilitiesRegistry_WhenTheRegistryHasnNotBeenSetYet() (gas: 8349) +WorkflowRegistry_getDonConfigs:test_getDonConfigs_WhenThereAreDONConfigsSet() (gas: 741994) +WorkflowRegistry_getDonConfigs:test_getDonConfigs_WhenThereAreNoDONConfigs() (gas: 8751) +WorkflowRegistry_getEvents:test_getEvents_When0IsLessThanLimitWhichIsLessThanNMinusStart() (gas: 554518) +WorkflowRegistry_getEvents:test_getEvents_WhenLimitIs0() (gas: 532433) +WorkflowRegistry_getEvents:test_getEvents_WhenLimitIsGreaterThanNMinusStart() (gas: 554869) +WorkflowRegistry_getEvents:test_getEvents_WhenNoEventsHaveBeenRecorded() (gas: 8877) +WorkflowRegistry_getEvents:test_getEvents_WhenStartIsGreaterThanNumberOfEvents() (gas: 532207) +WorkflowRegistry_getLinkedOwners:test_getLinkedOwners_GivenThatBatchSizeIsEqualToTotalLinkedOwners() (gas: 735151) +WorkflowRegistry_getLinkedOwners:test_getLinkedOwners_GivenThatBatchSizeIsGreaterThanTotalLinkedOwners() (gas: 735152) +WorkflowRegistry_getLinkedOwners:test_getLinkedOwners_GivenThatBatchSizeIsLessThanTotalLinkedOwners() (gas: 729724) +WorkflowRegistry_getLinkedOwners:test_getLinkedOwners_GivenThatStartIndexIsEqualToTotalLinkedOwners() (gas: 716253) +WorkflowRegistry_getLinkedOwners:test_getLinkedOwners_GivenThatStartIndexIsGreaterThanTotalLinkedOwners() (gas: 716143) +WorkflowRegistry_getLinkedOwners:test_getLinkedOwners_WhenBatchSizeIsEqualToTotalLinkedOwners() (gas: 729862) +WorkflowRegistry_getLinkedOwners:test_getLinkedOwners_WhenBatchSizeIsGreaterThanTotalLinkedOwners() (gas: 730038) +WorkflowRegistry_getLinkedOwners:test_getLinkedOwners_WhenBatchSizeIsLessThanTotalLinkedOwners() (gas: 739891) +WorkflowRegistry_getLinkedOwners:test_getLinkedOwners_WhenThereAreNoLinkedOwners() (gas: 21758) +WorkflowRegistry_getMaxWorkflowsPerDON:test_getMaxWorkflowsPerDON_WhenDonLabelHasNeverBeenConfigured() (gas: 11584) +WorkflowRegistry_getMaxWorkflowsPerDON:test_getMaxWorkflowsPerDON_WhenDonLabelWasConfiguredToLimit() (gas: 269588) +WorkflowRegistry_getMaxWorkflowsPerUserDON:test_getMaxWorkflowsPerUserDON_WhenAUserOverrideExistsAndIsEnabled() (gas: 411970) +WorkflowRegistry_getMaxWorkflowsPerUserDON:test_getMaxWorkflowsPerUserDON_WhenGlobalDONLimitIsSetToL() (gas: 274138) +WorkflowRegistry_getMaxWorkflowsPerUserDON:test_getMaxWorkflowsPerUserDON_WhenGlobalDONLimitIsUnset() (gas: 15976) +WorkflowRegistry_getUserDONOverrides:test_getUserDONOverrides_WhenThereAreNoUserOverridesForASpecificDON() (gas: 11779) +WorkflowRegistry_getUserDONOverrides:test_getUserDONOverrides_WhenThereAreUserOverridesForASpecificDON() (gas: 1107215) +WorkflowRegistry_getWorkflow:test_getWorkflow_WhenTheWorkflowDoesNotExist() (gas: 36162) +WorkflowRegistry_getWorkflow:test_getWorkflow_WhenTheWorkflowExistsWithTheOwnerAndNameAndTag() (gas: 1202878) +WorkflowRegistry_getWorkflowListByDON:test_getWorkflowListByDON_ShouldIncludeBothActiveAndPausedWorkflows() (gas: 1605652) +WorkflowRegistry_getWorkflowListByDON:test_getWorkflowListByDON_ShouldOnlyReturnWorkflowsFromSpecifiedDON() (gas: 3970983) +WorkflowRegistry_getWorkflowListByDON:test_getWorkflowListByDON_ShouldReturnWorkflowsWithCorrectStatus() (gas: 3891657) +WorkflowRegistry_getWorkflowListByDON:test_getWorkflowListByDON_WhenLimitIsGreaterThanOrEqualToTotalMinusStart() (gas: 4206990) +WorkflowRegistry_getWorkflowListByDON:test_getWorkflowListByDON_WhenLimitIsLessThanTotalMinusStart() (gas: 3929370) +WorkflowRegistry_getWorkflowListByDON:test_getWorkflowListByDON_WhenLimitIsZero() (gas: 3754143) +WorkflowRegistry_getWorkflowListByDON:test_getWorkflowListByDON_WhenStartIsGreaterThanOrEqualToTotalWorkflows() (gas: 3763470) +WorkflowRegistry_getWorkflowListByDON:test_getWorkflowListByDON_WhenTheDONFamilyHasNoWorkflowsRegistered() (gas: 31583) +WorkflowRegistry_isAllowedSigner:test_isAllowedSigner_WhenTheSignerAddressHasNeverBeenConfigured() (gas: 10916) +WorkflowRegistry_isAllowedSigner:test_isAllowedSigner_WhenTheSignerIsConfigured() (gas: 10833) +WorkflowRegistry_isOwnerLinked:test_isOwnerLinked_WhenTheSpecifiedOwnerHasNotLinked() (gas: 9875) +WorkflowRegistry_isOwnerLinked:test_isOwnerLinked_WhenTheSpecifiedOwnerIsLinked() (gas: 170586) +WorkflowRegistry_limitsScenario:test_limitsScenario_whenGlobalLimitEqualsSumOfPerUserLimits() (gas: 8249287) +WorkflowRegistry_limitsScenario:test_limitsScenario_whenGlobalLimitLowerThanSumOfPerUserLimits() (gas: 7451466) +WorkflowRegistry_linkOwner:test_WhenTheProofWasPreviouslyUsed() (gas: 336850) +WorkflowRegistry_linkOwner:test_linkOwner_WhenProofIsValid() (gas: 173768) +WorkflowRegistry_linkOwner:test_linkOwner_WhenTheProofContainsInvalidData() (gas: 64426) +WorkflowRegistry_linkOwner:test_linkOwner_WhenTheProofIsNotSignedByAnAllowedSigner() (gas: 63100) +WorkflowRegistry_linkOwner:test_linkOwner_WhenTheSignatureIsNotValid() (gas: 49629) +WorkflowRegistry_linkOwner:test_linkOwner_WhenTheTimestampHasExpired() (gas: 52669) +WorkflowRegistry_linkOwner:test_linkOwner_WhenTheTimestampIsExpired() (gas: 225942) +WorkflowRegistry_linkOwner:test_linkOwner_WhenTheTimestampIsStillValid() (gas: 227109) +WorkflowRegistry_pauseWorkflow:test_pauseWorkflow_WhenCallerIsNotLinkedAsAnOwner() (gas: 38621) +WorkflowRegistry_pauseWorkflow:test_pauseWorkflow_WhenNoWorkflowExistsForTheGivenWorkflowId() (gas: 201395) +WorkflowRegistry_pauseWorkflow:test_pauseWorkflow_WhenTheWorkflowExistsButOwnerIsNotCaller() (gas: 1300480) +WorkflowRegistry_pauseWorkflow:test_pauseWorkflow_WhenTheWorkflowExistsOwnerMatchesAndStatusIsACTIVE() (gas: 1259482) +WorkflowRegistry_pauseWorkflow:test_pauseWorkflow_WhenTheWorkflowExistsOwnerMatchesButStatusIsPAUSED() (gas: 917295) +WorkflowRegistry_setCapabilitiesRegistry:test_setCapabilitiesRegistry_WhenBothRegistryAndChainSelectorAreTheSameAsCurrent() (gas: 95893) +WorkflowRegistry_setCapabilitiesRegistry:test_setCapabilitiesRegistry_WhenBothRegistryAndChainSelectorDifferFromTheCurrentValues() (gas: 101283) +WorkflowRegistry_setCapabilitiesRegistry:test_setCapabilitiesRegistry_WhenTheCallerIsNOTTheContractOwner() (gas: 37688) +WorkflowRegistry_setCapabilitiesRegistry:test_setCapabilitiesRegistry_WhenThereAreNoExistingRegistries() (gas: 66942) +WorkflowRegistry_setConfig:test_setConfig_WhenAllConfigFieldsAreZero() (gas: 142776) +WorkflowRegistry_setConfig:test_setConfig_WhenConfigFieldsAreNon_zero() (gas: 78880) +WorkflowRegistry_setConfig:test_setConfig_WhenSomeConfigFieldsAreZero() (gas: 78771) +WorkflowRegistry_setConfig:test_setConfig_WhenTheCallerIsNOTTheContractOwner() (gas: 36749) +WorkflowRegistry_setDONLimit:test_setDONLimit_WhenNewLimitDoesNotEqualExistingLimit() (gas: 486384) +WorkflowRegistry_setDONLimit:test_setDONLimit_WhenNewLimitIsEqualToExistingLimit() (gas: 320926) +WorkflowRegistry_setDONLimit:test_setDONLimit_WhenNoPreviousLimitExistsForDonLabel() (gas: 290656) +WorkflowRegistry_setDONLimit:test_setDONLimit_WhenNooPreviousLimitExistsForDonLabel() (gas: 82323) +WorkflowRegistry_setDONLimit:test_setDONLimit_WhenPreviousLimitExistsForDonLabel() (gas: 420559) +WorkflowRegistry_setDONLimit:test_setDONLimit_WhenTheCallerIsNOTTheContractOwner() (gas: 39253) +WorkflowRegistry_setUserDONOverride:test_setUserDONOverride_WhenAPriorOverrideExistsForUserDonLabel() (gas: 452916) +WorkflowRegistry_setUserDONOverride:test_setUserDONOverride_WhenGlobalDONLimitIsNotSet() (gas: 45203) +WorkflowRegistry_setUserDONOverride:test_setUserDONOverride_WhenLimitIsGreaterThanGlobalDONLimit() (gas: 297879) +WorkflowRegistry_setUserDONOverride:test_setUserDONOverride_WhenNewLimitDoesNotEqualExistingOverrideValue() (gas: 458371) +WorkflowRegistry_setUserDONOverride:test_setUserDONOverride_WhenNewLimitIsEqualToExistingOverrideValue() (gas: 398827) +WorkflowRegistry_setUserDONOverride:test_setUserDONOverride_WhenNoPriorOverrideExists() (gas: 315814) +WorkflowRegistry_setUserDONOverride:test_setUserDONOverride_WhenNoPriorOverrideExistsForUserDonLabel() (gas: 399585) +WorkflowRegistry_setUserDONOverride:test_setUserDONOverride_WhenTheCallerIsNOTTheContractOwner() (gas: 39892) +WorkflowRegistry_setWorkflowOwnerConfig:test_setWorkflowOwnerConfig_WhenSettingANonEmptyConfigForTheFirstTime() (gas: 70152) +WorkflowRegistry_setWorkflowOwnerConfig:test_setWorkflowOwnerConfig_WhenSettingAnEmptyBlob() (gas: 108810) +WorkflowRegistry_setWorkflowOwnerConfig:test_setWorkflowOwnerConfig_WhenTheCallerIsNOTTheContractOwner() (gas: 39441) +WorkflowRegistry_setWorkflowOwnerConfig:test_setWorkflowOwnerConfig_WhenUpdatingToADifferentBlob() (gas: 119687) +WorkflowRegistry_totalEvents:test_totalEvents() (gas: 552589) +WorkflowRegistry_totalLinkedOwners:test_totalLinkedOwners() (gas: 439924) +WorkflowRegistry_unlinkOwner:test_unlinkOwner_AutomaticallyDeletesWorkflowsWhenCallerIsNotOwner() (gas: 4844409) +WorkflowRegistry_unlinkOwner:test_unlinkOwner_AutomaticallyDeletesWorkflowsWhenOwnerIsLinked() (gas: 4842827) +WorkflowRegistry_unlinkOwner:test_unlinkOwner_UnlinkOwnerWhenCallerIsNotOwnerGivenTheOwnerIsNotLinked() (gas: 59769) +WorkflowRegistry_unlinkOwner:test_unlinkOwner_UnlinkOwnerWhenCallerIsNotOwnerGivenTheProofDoesNotMatchTheStoredProof() (gas: 224179) +WorkflowRegistry_unlinkOwner:test_unlinkOwner_UnlinkOwnerWhenCallerIsNotOwnerWhenRequestTimestampHasExpired() (gas: 208975) +WorkflowRegistry_unlinkOwner:test_unlinkOwner_UnlinkOwnerWhenCallerIsNotOwnerWhenTheProofIsNotValid() (gas: 223657) +WorkflowRegistry_unlinkOwner:test_unlinkOwner_UnlinkOwnerWhenCallerIsNotOwnerWhenTheProofIsValid() (gas: 219438) +WorkflowRegistry_unlinkOwner:test_unlinkOwner_UnlinkOwnerWhenCallerIsOwnerGivenTheOwnerIsNotLinked() (gas: 58813) +WorkflowRegistry_unlinkOwner:test_unlinkOwner_UnlinkOwnerWhenCallerIsOwnerGivenTheProofDoesNotMatchTheStoredProof() (gas: 221950) +WorkflowRegistry_unlinkOwner:test_unlinkOwner_UnlinkOwnerWhenCallerIsOwnerWhenRequestTimestampHasExpired() (gas: 207230) +WorkflowRegistry_unlinkOwner:test_unlinkOwner_UnlinkOwnerWhenCallerIsOwnerWhenTheProofIsNotValid() (gas: 221814) +WorkflowRegistry_unlinkOwner:test_unlinkOwner_UnlinkOwnerWhenCallerIsOwnerWhenTheProofIsValid() (gas: 217495) +WorkflowRegistry_updateAllowedSigners:test_updateAllowedSigners_GivenSignerIsNotAlreadyAdded() (gas: 115069) +WorkflowRegistry_updateAllowedSigners:test_updateAllowedSigners_GivenTheSignerIsAlreadyAdded() (gas: 60766) +WorkflowRegistry_updateAllowedSigners:test_updateAllowedSigners_GivenTheSignerIsAlreadyRemoved() (gas: 67229) +WorkflowRegistry_updateAllowedSigners:test_updateAllowedSigners_GivenTheSignerIsNotAlreadyRemoved() (gas: 65934) +WorkflowRegistry_updateAllowedSigners:test_updateAllowedSigners_ShouldOnlyBeCalledByTheContractOwner() (gas: 36829) +WorkflowRegistry_updateAllowedSigners:test_updateAllowedSigners_WhenTheSignerIsTheZeroAddress() (gas: 54591) +WorkflowRegistry_upsertWorkflow:test_upsertWorkflow_RevertWhenDonFamilyIsChangedOnUpdateWorkflow() (gas: 1609772) +WorkflowRegistry_upsertWorkflow:test_upsertWorkflow_RevertWhenStatusIsChangedOnUpdateWorkflow() (gas: 1386461) +WorkflowRegistry_upsertWorkflow:test_upsertWorkflow_WhenAttributesLengthGreaterThanAllowed() (gas: 415589) +WorkflowRegistry_upsertWorkflow:test_upsertWorkflow_WhenBinaryUrlIsMissing() (gas: 217649) +WorkflowRegistry_upsertWorkflow:test_upsertWorkflow_WhenBinaryUrlLengthGreaterThanAllowed() (gas: 255711) +WorkflowRegistry_upsertWorkflow:test_upsertWorkflow_WhenConfigUrlLengthGreaterThanAllowed() (gas: 255636) +WorkflowRegistry_upsertWorkflow:test_upsertWorkflow_WhenKeepAliveIsTrue() (gas: 2156192) +WorkflowRegistry_upsertWorkflow:test_upsertWorkflow_WhenMsgSenderNotALinkedOwner() (gas: 58063) +WorkflowRegistry_upsertWorkflow:test_upsertWorkflow_WhenNewAttributesLengthGreaterThanAllowed() (gas: 1394796) +WorkflowRegistry_upsertWorkflow:test_upsertWorkflow_WhenNewBinaryUrlIsMissing() (gas: 1172248) +WorkflowRegistry_upsertWorkflow:test_upsertWorkflow_WhenNewBinaryUrlOrNewConfigUrlLengthGreaterThanAllowed() (gas: 1220243) +WorkflowRegistry_upsertWorkflow:test_upsertWorkflow_WhenNewWorkflowIdAlreadyExists() (gas: 1170985) +WorkflowRegistry_upsertWorkflow:test_upsertWorkflow_WhenNewWorkflowIdIsZero() (gas: 1167977) +WorkflowRegistry_upsertWorkflow:test_upsertWorkflow_WhenOwnerWouldExceedTheirEffectiveCap() (gas: 3092795) +WorkflowRegistry_upsertWorkflow:test_upsertWorkflow_WhenTagLengthGreaterThanAllowed() (gas: 245180) +WorkflowRegistry_upsertWorkflow:test_upsertWorkflow_WhenTagLengthIsZero() (gas: 218090) +WorkflowRegistry_upsertWorkflow:test_upsertWorkflow_WhenTheDonHasNoGlobalCapSet() (gas: 230690) +WorkflowRegistry_upsertWorkflow:test_upsertWorkflow_WhenThereAreMoreThanOneActiveWorkflowThatSharesTheKey() (gas: 2280861) +WorkflowRegistry_upsertWorkflow:test_upsertWorkflow_WhenThereAreNoActiveWorkflowsWithTheSameKey() (gas: 2289532) +WorkflowRegistry_upsertWorkflow:test_upsertWorkflow_WhenThereAreNoFailures() (gas: 1139483) +WorkflowRegistry_upsertWorkflow:test_upsertWorkflow_WhenThereAreNoValidationFailures() (gas: 1253102) +WorkflowRegistry_upsertWorkflow:test_upsertWorkflow_WhenWorkflowIdAlreadyExists() (gas: 666091) +WorkflowRegistry_upsertWorkflow:test_upsertWorkflow_WhenWorkflowIdIsZero() (gas: 213522) +WorkflowRegistry_upsertWorkflow:test_upsertWorkflow_WhenWorkflowNameLengthGreaterThanAllowed() (gas: 245216) +WorkflowRegistry_upsertWorkflow:test_upsertWorkflow_WhenWorkflowNameLengthIsZero() (gas: 217648) +WorkflowRegistrydeleteWorkflow:test_WhenCallerIsNotTheOwner() (gas: 795465) +WorkflowRegistrydeleteWorkflow:test_WhenCallerIsTheOwner() (gas: 757670) +WorkflowRegistrydeleteWorkflow:test_WhenTheOwnerIsNotLinked() (gas: 38131) +WorkflowRegistrydeleteWorkflow:test_WhenTheWorkflowDoesNotExist() (gas: 200864) +WorkflowRegistrydeleteWorkflow:test_deleteWorkflow_activeThenPausedWorkflowShouldNotLeaveAnyStaleEntries() (gas: 3122508) +WorkflowRegistrydeleteWorkflow:test_deleteWorkflow_pausedWorkflowShouldNotLeaveAnyStaleEntries() (gas: 3011828) \ No newline at end of file diff --git a/contracts/cre/package.json b/contracts/cre/package.json index 06f6d57823..0ad6a1543b 100644 --- a/contracts/cre/package.json +++ b/contracts/cre/package.json @@ -29,10 +29,10 @@ "@openzeppelin/contracts": "4.9.6" } }, - "devDependencies": { "solhint": "^6.2.4", - "solhint-plugin-chainlink-solidity": "github:smartcontractkit/chainlink-solhint-rules#v1.2.1" + "solhint-plugin-chainlink-solidity": "github:smartcontractkit/chainlink-solhint-rules#v1.2.1", + "forge-std": "github:foundry-rs/forge-std#v1.16.2" }, "dependencies": { "@openzeppelin/contracts-4.8.3": "npm:@openzeppelin/contracts@4.8.3", diff --git a/contracts/cre/pnpm-lock.yaml b/contracts/cre/pnpm-lock.yaml index 24d77bd7ed..f1b385486d 100644 --- a/contracts/cre/pnpm-lock.yaml +++ b/contracts/cre/pnpm-lock.yaml @@ -25,6 +25,9 @@ importers: specifier: npm:@openzeppelin/contracts@5.1.0 version: '@openzeppelin/contracts@5.1.0' devDependencies: + forge-std: + specifier: github:foundry-rs/forge-std#v1.16.2 + version: https://codeload.github.com/foundry-rs/forge-std/tar.gz/bf647bd6046f2f7da30d0c2bf435e5c76a780c1b solhint: specifier: ^6.2.4 version: 6.2.4 @@ -572,6 +575,10 @@ packages: find-yarn-workspace-root@2.0.0: resolution: {integrity: sha512-1IMnbjt4KzsQfnhnzNd8wUEgXZ44IzZaZmnLYx7D5FZlaHt2gW20Cri8Q+E/t5tIj4+epTBub+2Zxu/vNILzqQ==} + forge-std@https://codeload.github.com/foundry-rs/forge-std/tar.gz/bf647bd6046f2f7da30d0c2bf435e5c76a780c1b: + resolution: {gitHosted: true, tarball: https://codeload.github.com/foundry-rs/forge-std/tar.gz/bf647bd6046f2f7da30d0c2bf435e5c76a780c1b} + version: 1.16.2 + form-data-encoder@2.1.4: resolution: {integrity: sha512-yDYSgNMraqvnxiEXO4hi88+YZxaHC6QKzb5N84iRCTDeRO7ZALpir/lVmf/uXUhnwUr2O4HU8s/n6x+yNjQkHw==, tarball: https://registry.npmjs.org/form-data-encoder/-/form-data-encoder-2.1.4.tgz} engines: {node: '>= 14.17'} @@ -2047,6 +2054,8 @@ snapshots: dependencies: micromatch: 4.0.8 + forge-std@https://codeload.github.com/foundry-rs/forge-std/tar.gz/bf647bd6046f2f7da30d0c2bf435e5c76a780c1b: {} + form-data-encoder@2.1.4: {} fs-extra@7.0.1: diff --git a/contracts/cre/remappings.txt b/contracts/cre/remappings.txt index 82c0d762ca..8420c68356 100644 --- a/contracts/cre/remappings.txt +++ b/contracts/cre/remappings.txt @@ -1,4 +1,4 @@ -forge-std/=node_modules/@chainlink/contracts/src/v0.8/vendor/forge-std/src/ +forge-std/=node_modules/forge-std/src/ @chainlink/contracts/=node_modules/@chainlink/contracts/ @openzeppelin/contracts@4.8.3=node_modules/@openzeppelin/contracts-4.8.3 From 10b375144c95f08feb596b94045f405660c4748b Mon Sep 17 00:00:00 2001 From: Rens Rooimans Date: Fri, 21 Aug 2026 11:40:29 +0200 Subject: [PATCH 7/9] don't run with prod=true for tests --- .github/workflows/solidity-foundry.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/solidity-foundry.yml b/.github/workflows/solidity-foundry.yml index 34a9e7d3f7..d8b2d2c2a8 100644 --- a/.github/workflows/solidity-foundry.yml +++ b/.github/workflows/solidity-foundry.yml @@ -143,7 +143,7 @@ jobs: || needs.changes.outputs.non_src_changes == 'true' }} uses: ./.github/actions/setup-nodejs with: - prod: "true" + prod: "false" - name: Install Foundry if: From 8142106a1459e46c6509cc3f4da258a47de9e70a Mon Sep 17 00:00:00 2001 From: Rens Rooimans Date: Fri, 21 Aug 2026 11:53:05 +0200 Subject: [PATCH 8/9] undo isolate --- contracts/GNUmakefile | 4 +- contracts/cre/GNUmakefile | 4 +- contracts/cre/gas-snapshots/dev.gas-snapshot | 34 +- contracts/cre/gas-snapshots/v1.gas-snapshot | 152 +- contracts/cre/gas-snapshots/v2.gas-snapshot | 476 ++-- .../gas-snapshots/automation-cre.gas-snapshot | 68 +- .../gas-snapshots/data-feeds.gas-snapshot | 168 +- contracts/gas-snapshots/l2ep.gas-snapshot | 220 +- .../gas-snapshots/llo-feeds.gas-snapshot | 2164 ++++++++--------- .../operatorforwarder.gas-snapshot | 22 +- contracts/gas-snapshots/payments.gas-snapshot | 32 +- 11 files changed, 1672 insertions(+), 1672 deletions(-) diff --git a/contracts/GNUmakefile b/contracts/GNUmakefile index 76a162465d..66aa18ac35 100644 --- a/contracts/GNUmakefile +++ b/contracts/GNUmakefile @@ -16,11 +16,11 @@ ALL_FOUNDRY_PRODUCTS = automation-cre l2ep llo-feeds operatorforwarder payments # a static fuzz seed by default, flaky gas results per platform are still observed. .PHONY: snapshot snapshot: ## Make a snapshot for a specific product. - export FOUNDRY_PROFILE=$(FOUNDRY_PROFILE) && forge snapshot --isolate --nmt "test?(Fuzz|Fork|.*_RevertWhen)_.*" --snap gas-snapshots/$(FOUNDRY_PROFILE).gas-snapshot + export FOUNDRY_PROFILE=$(FOUNDRY_PROFILE) && forge snapshot --nmt "test?(Fuzz|Fork|.*_RevertWhen)_.*" --snap gas-snapshots/$(FOUNDRY_PROFILE).gas-snapshot .PHONY: snapshot-diff snapshot-diff: ## Make a snapshot for a specific product. - export FOUNDRY_PROFILE=$(FOUNDRY_PROFILE) && forge snapshot --isolate --nmt "test?(Fuzz|Fork|.*_RevertWhen)_.*" --diff gas-snapshots/$(FOUNDRY_PROFILE).gas-snapshot + export FOUNDRY_PROFILE=$(FOUNDRY_PROFILE) && forge snapshot --nmt "test?(Fuzz|Fork|.*_RevertWhen)_.*" --diff gas-snapshots/$(FOUNDRY_PROFILE).gas-snapshot .PHONY: snapshot-all diff --git a/contracts/cre/GNUmakefile b/contracts/cre/GNUmakefile index 82b3051e79..3926d625a6 100644 --- a/contracts/cre/GNUmakefile +++ b/contracts/cre/GNUmakefile @@ -16,11 +16,11 @@ ALL_FOUNDRY_PRODUCTS = dev v1 v2 # a static fuzz seed by default, flaky gas results per platform are still observed. .PHONY: snapshot snapshot: ## Make a snapshot for a specific product. - export FOUNDRY_PROFILE=$(FOUNDRY_PROFILE) && forge snapshot --isolate --nmt "test?(Fuzz|Fork|.*_RevertWhen)_.*" --snap gas-snapshots/$(FOUNDRY_PROFILE).gas-snapshot + export FOUNDRY_PROFILE=$(FOUNDRY_PROFILE) && forge snapshot --nmt "test?(Fuzz|Fork|.*_RevertWhen)_.*" --snap gas-snapshots/$(FOUNDRY_PROFILE).gas-snapshot .PHONY: snapshot-diff snapshot-diff: ## Make a snapshot for a specific product. - export FOUNDRY_PROFILE=$(FOUNDRY_PROFILE) && forge snapshot --isolate --nmt "test?(Fuzz|Fork|.*_RevertWhen)_.*" --diff gas-snapshots/$(FOUNDRY_PROFILE).gas-snapshot + export FOUNDRY_PROFILE=$(FOUNDRY_PROFILE) && forge snapshot --nmt "test?(Fuzz|Fork|.*_RevertWhen)_.*" --diff gas-snapshots/$(FOUNDRY_PROFILE).gas-snapshot .PHONY: snapshot-all diff --git a/contracts/cre/gas-snapshots/dev.gas-snapshot b/contracts/cre/gas-snapshots/dev.gas-snapshot index 60a70000d9..16c3a920eb 100644 --- a/contracts/cre/gas-snapshots/dev.gas-snapshot +++ b/contracts/cre/gas-snapshots/dev.gas-snapshot @@ -1,22 +1,22 @@ -MessageEmitter_BasicTest:test_EmitMessage_EmitsEventAndUpdatesLastMessage() (gas: 92431) -MessageEmitter_BasicTest:test_EmitMessage_MultipleAddressesSameBlock() (gas: 176656) -MessageEmitter_BasicTest:test_EmitMessage_SucceedsInNextBlock() (gas: 143099) -MessageEmitter_BasicTest:test_GetMessage_Succeeds_WhenExists() (gas: 88996) +MessageEmitter_BasicTest:test_EmitMessage_EmitsEventAndUpdatesLastMessage() (gas: 66399) +MessageEmitter_BasicTest:test_EmitMessage_MultipleAddressesSameBlock() (gas: 117924) +MessageEmitter_BasicTest:test_EmitMessage_SucceedsInNextBlock() (gas: 90723) +MessageEmitter_BasicTest:test_GetMessage_Succeeds_WhenExists() (gas: 62952) MessageEmitter_BasicTest:test_TypeAndVersion() (gas: 9616) MockKeystoneForwarder_BasicTest:test_GetTransmissionId_MatchesManual() (gas: 6207) -MockKeystoneForwarder_BasicTest:test_GetTransmissionInfo_NotAttempted_And_GetTransmitter_Zero() (gas: 22263) -MockKeystoneForwarder_BasicTest:test_IsForwarder_SelfTrue_AddRemove() (gas: 99146) -MockKeystoneForwarder_BasicTest:test_Route_Direct_Failure() (gas: 74712) -MockKeystoneForwarder_BasicTest:test_Route_Direct_Success() (gas: 77415) +MockKeystoneForwarder_BasicTest:test_GetTransmissionInfo_NotAttempted_And_GetTransmitter_Zero() (gas: 13763) +MockKeystoneForwarder_BasicTest:test_IsForwarder_SelfTrue_AddRemove() (gas: 29399) +MockKeystoneForwarder_BasicTest:test_Route_Direct_Failure() (gas: 43060) +MockKeystoneForwarder_BasicTest:test_Route_Direct_Success() (gas: 45763) MockKeystoneForwarder_BasicTest:test_TypeAndVersion() (gas: 9731) -ReserveManagerTest:testOnReportUpdatesStateAndEmitsEvent() (gas: 111495) -ReserveManagerTest:testSupportsInterface() (gas: 16547) -ShardConfigTest:testConstructor_RevertZeroShardCount() (gas: 135209) -ShardConfigTest:testConstructor_Success() (gas: 15026) +ReserveManagerTest:testOnReportUpdatesStateAndEmitsEvent() (gas: 80867) +ReserveManagerTest:testSupportsInterface() (gas: 7547) +ShardConfigTest:testConstructor_RevertZeroShardCount() (gas: 58081) +ShardConfigTest:testConstructor_Success() (gas: 10526) ShardConfigTest:testGetDesiredShardCount() (gas: 7538) -ShardConfigTest:testOwnershipTransfer() (gas: 89838) -ShardConfigTest:testSetDesiredShardCount_EmitsEvent() (gas: 39037) -ShardConfigTest:testSetDesiredShardCount_RevertNotOwner() (gas: 31999) -ShardConfigTest:testSetDesiredShardCount_RevertZeroCount() (gas: 31840) -ShardConfigTest:testSetDesiredShardCount_Success() (gas: 45209) +ShardConfigTest:testOwnershipTransfer() (gas: 29274) +ShardConfigTest:testSetDesiredShardCount_EmitsEvent() (gas: 17833) +ShardConfigTest:testSetDesiredShardCount_RevertNotOwner() (gas: 10795) +ShardConfigTest:testSetDesiredShardCount_RevertZeroCount() (gas: 10648) +ShardConfigTest:testSetDesiredShardCount_Success() (gas: 15505) ShardConfigTest:testTypeAndVersion() (gas: 9705) \ No newline at end of file diff --git a/contracts/cre/gas-snapshots/v1.gas-snapshot b/contracts/cre/gas-snapshots/v1.gas-snapshot index 9b2ce1280e..13c14c6f30 100644 --- a/contracts/cre/gas-snapshots/v1.gas-snapshot +++ b/contracts/cre/gas-snapshots/v1.gas-snapshot @@ -1,81 +1,81 @@ -CapabilitiesRegistry_AddCapabilitiesTest:test_AddCapability_NoConfigurationContract() (gas: 194822) -CapabilitiesRegistry_AddCapabilitiesTest:test_AddCapability_WithConfiguration() (gas: 220276) -CapabilitiesRegistry_AddDONTest:test_AddDON() (gas: 449231) -CapabilitiesRegistry_AddNodeOperatorsTest:test_AddNodeOperators() (gas: 223590) -CapabilitiesRegistry_AddNodesTest:test_AddsNodeParams() (gas: 422246) -CapabilitiesRegistry_AddNodesTest:test_OwnerCanAddNodes() (gas: 422441) -CapabilitiesRegistry_DeprecateCapabilitiesTest:test_DeprecatesCapability() (gas: 115150) -CapabilitiesRegistry_DeprecateCapabilitiesTest:test_EmitsEvent() (gas: 116450) -CapabilitiesRegistry_GetCapabilitiesTest:test_ReturnsCapabilities() (gas: 160241) +CapabilitiesRegistry_AddCapabilitiesTest:test_AddCapability_NoConfigurationContract() (gas: 152838) +CapabilitiesRegistry_AddCapabilitiesTest:test_AddCapability_WithConfiguration() (gas: 177896) +CapabilitiesRegistry_AddDONTest:test_AddDON() (gas: 374979) +CapabilitiesRegistry_AddNodeOperatorsTest:test_AddNodeOperators() (gas: 184034) +CapabilitiesRegistry_AddNodesTest:test_AddsNodeParams() (gas: 380214) +CapabilitiesRegistry_AddNodesTest:test_OwnerCanAddNodes() (gas: 380409) +CapabilitiesRegistry_DeprecateCapabilitiesTest:test_DeprecatesCapability() (gas: 86794) +CapabilitiesRegistry_DeprecateCapabilitiesTest:test_EmitsEvent() (gas: 90094) +CapabilitiesRegistry_GetCapabilitiesTest:test_ReturnsCapabilities() (gas: 131885) CapabilitiesRegistry_GetDONsTest:test_CorrectlyFetchesDONs() (gas: 62296) -CapabilitiesRegistry_GetDONsTest:test_DoesNotIncludeRemovedDONs() (gas: 80492) +CapabilitiesRegistry_GetDONsTest:test_DoesNotIncludeRemovedDONs() (gas: 61808) CapabilitiesRegistry_GetHashedCapabilityTest:test_CorrectlyGeneratesHashedCapabilityId() (gas: 8916) -CapabilitiesRegistry_GetHashedCapabilityTest:test_DoesNotCauseIncorrectClashes() (gas: 12449) -CapabilitiesRegistry_GetNextDONIdTest:test_CorrectlyFetchesNextDONId() (gas: 384870) +CapabilitiesRegistry_GetHashedCapabilityTest:test_DoesNotCauseIncorrectClashes() (gas: 9949) +CapabilitiesRegistry_GetNextDONIdTest:test_CorrectlyFetchesNextDONId() (gas: 350618) CapabilitiesRegistry_GetNodeOperatorsTest:test_CorrectlyFetchesNodeOperators() (gas: 35938) -CapabilitiesRegistry_GetNodeOperatorsTest:test_DoesNotIncludeRemovedNodeOperators() (gas: 59067) +CapabilitiesRegistry_GetNodeOperatorsTest:test_DoesNotIncludeRemovedNodeOperators() (gas: 37835) CapabilitiesRegistry_GetNodesTest:test_CorrectlyFetchesNodes() (gas: 65000) CapabilitiesRegistry_GetNodesTest:test_CorrectlyFetchesSpecificNodes() (gas: 30058) -CapabilitiesRegistry_GetNodesTest:test_DoesNotIncludeRemovedNodes() (gas: 94340) +CapabilitiesRegistry_GetNodesTest:test_DoesNotIncludeRemovedNodes() (gas: 77628) CapabilitiesRegistry_GetNodesTest:test_GetNodesByP2PIdsInvalidNode_Revers() (gas: 27568) -CapabilitiesRegistry_RemoveDONsTest:test_RemovesDON() (gas: 79915) -CapabilitiesRegistry_RemoveNodeOperatorsTest:test_RemovesNodeOperator() (gas: 67357) -CapabilitiesRegistry_RemoveNodesTest:test_CanAddNodeWithSameSignerAddressAfterRemoving() (gas: 340712) -CapabilitiesRegistry_RemoveNodesTest:test_CanRemoveWhenDONDeleted() (gas: 432063) -CapabilitiesRegistry_RemoveNodesTest:test_CanRemoveWhenNodeNoLongerPartOfDON() (gas: 703146) -CapabilitiesRegistry_RemoveNodesTest:test_OwnerCanRemoveNodes() (gas: 92121) -CapabilitiesRegistry_RemoveNodesTest:test_RemovesNode() (gas: 93722) +CapabilitiesRegistry_RemoveDONsTest:test_RemovesDON() (gas: 54231) +CapabilitiesRegistry_RemoveNodeOperatorsTest:test_RemovesNodeOperator() (gas: 35236) +CapabilitiesRegistry_RemoveNodesTest:test_CanAddNodeWithSameSignerAddressAfterRemoving() (gas: 116012) +CapabilitiesRegistry_RemoveNodesTest:test_CanRemoveWhenDONDeleted() (gas: 288045) +CapabilitiesRegistry_RemoveNodesTest:test_CanRemoveWhenNodeNoLongerPartOfDON() (gas: 563184) +CapabilitiesRegistry_RemoveNodesTest:test_OwnerCanRemoveNodes() (gas: 76225) +CapabilitiesRegistry_RemoveNodesTest:test_RemovesNode() (gas: 78231) CapabilitiesRegistry_TypeAndVersionTest:test_TypeAndVersion() (gas: 9687) -CapabilitiesRegistry_UpdateDONTest:test_UpdatesDON() (gas: 441062) -CapabilitiesRegistry_UpdateNodeOperatorTest:test_UpdatesNodeOperator() (gas: 66031) -CapabilitiesRegistry_UpdateNodesTest:test_CanUpdateParamsIfNodeSignerAddressNoLongerUsed() (gas: 359336) -CapabilitiesRegistry_UpdateNodesTest:test_OwnerCanUpdateNodes() (gas: 195740) -CapabilitiesRegistry_UpdateNodesTest:test_UpdatesNodeParams() (gas: 195897) -KeystoneForwarder_ReportTest:test_Report_ConfigVersion() (gas: 2171651) -KeystoneForwarder_ReportTest:test_Report_FailedDelieryWhenReportReceiverConsumesAllGas() (gas: 614272) -KeystoneForwarder_ReportTest:test_Report_FailedDeliveryWhenReceiverInterfaceNotSupported() (gas: 154418) -KeystoneForwarder_ReportTest:test_Report_FailedDeliveryWhenReceiverNotContract() (gas: 155999) -KeystoneForwarder_ReportTest:test_Report_FailedDeliveryWhenReportReceiverConsumesAllGasAndInterfaceCheckUsesMax() (gas: 277152) -KeystoneForwarder_ReportTest:test_Report_SuccessfulDelivery() (gas: 402013) -KeystoneForwarder_ReportTest:test_Report_SuccessfulRetryWithMoreGas() (gas: 420289) -KeystoneForwarder_SetConfigTest:test_SetConfig_FirstTime() (gas: 1571919) -KeystoneForwarder_SetConfigTest:test_SetConfig_WhenSignersAreRemoved() (gas: 1790484) +CapabilitiesRegistry_UpdateDONTest:test_UpdatesDON() (gas: 374622) +CapabilitiesRegistry_UpdateNodeOperatorTest:test_UpdatesNodeOperator() (gas: 36875) +CapabilitiesRegistry_UpdateNodesTest:test_CanUpdateParamsIfNodeSignerAddressNoLongerUsed() (gas: 261572) +CapabilitiesRegistry_UpdateNodesTest:test_OwnerCanUpdateNodes() (gas: 163460) +CapabilitiesRegistry_UpdateNodesTest:test_UpdatesNodeParams() (gas: 163617) +KeystoneForwarder_ReportTest:test_Report_ConfigVersion() (gas: 2001703) +KeystoneForwarder_ReportTest:test_Report_FailedDelieryWhenReportReceiverConsumesAllGas() (gas: 1015219) +KeystoneForwarder_ReportTest:test_Report_FailedDeliveryWhenReceiverInterfaceNotSupported() (gas: 124786) +KeystoneForwarder_ReportTest:test_Report_FailedDeliveryWhenReceiverNotContract() (gas: 126583) +KeystoneForwarder_ReportTest:test_Report_FailedDeliveryWhenReportReceiverConsumesAllGasAndInterfaceCheckUsesMax() (gas: 409439) +KeystoneForwarder_ReportTest:test_Report_SuccessfulDelivery() (gas: 359881) +KeystoneForwarder_ReportTest:test_Report_SuccessfulRetryWithMoreGas() (gas: 505755) +KeystoneForwarder_SetConfigTest:test_SetConfig_FirstTime() (gas: 1538747) +KeystoneForwarder_SetConfigTest:test_SetConfig_WhenSignersAreRemoved() (gas: 1535704) KeystoneForwarder_TypeAndVersionTest:test_TypeAndVersion() (gas: 9614) -KeystoneRouter_SetConfigTest:test_RemoveForwarder_Success() (gas: 37083) -KeystoneRouter_SetConfigTest:test_Route_Success() (gas: 135999) -WorkflowRegistryManager_activateVersion:test_WhenTheVersionNumberIsNotActive_AndWhenThereAreNoActiveVersions() (gas: 813140) -WorkflowRegistryManager_addVersion:test_WhenAutoActivateIsFalse() (gas: 366116) -WorkflowRegistryManager_addVersion:test_WhenAutoActivateIsTrue() (gas: 366350) -WorkflowRegistryManager_getActiveVersion:test_WhenAnActiveVersionExists() (gas: 383616) +KeystoneRouter_SetConfigTest:test_RemoveForwarder_Success() (gas: 15879) +KeystoneRouter_SetConfigTest:test_Route_Success() (gas: 72027) +WorkflowRegistryManager_activateVersion:test_WhenTheVersionNumberIsNotActive_AndWhenThereAreNoActiveVersions() (gas: 528052) +WorkflowRegistryManager_addVersion:test_WhenAutoActivateIsFalse() (gas: 265376) +WorkflowRegistryManager_addVersion:test_WhenAutoActivateIsTrue() (gas: 270098) +WorkflowRegistryManager_getActiveVersion:test_WhenAnActiveVersionExists() (gas: 286864) WorkflowRegistryManager_getActiveVersion:test_WhenNoActiveVersionIsAvailable() (gas: 13258) -WorkflowRegistryManager_getActiveVersionNumber:test_WhenAnActiveVersionExists() (gas: 368479) +WorkflowRegistryManager_getActiveVersionNumber:test_WhenAnActiveVersionExists() (gas: 283727) WorkflowRegistryManager_getActiveVersionNumber:test_WhenNoActiveVersionIsAvailable() (gas: 10698) WorkflowRegistryManager_getAllVersions:test_WhenLimitExceedsMaximumPaginationLimit() (gas: 50569) WorkflowRegistryManager_getAllVersions:test_WhenRequestingWithInvalidStartIndex() (gas: 8465) WorkflowRegistryManager_getAllVersions:test_WhenRequestingWithValidStartIndexAndLimitWithinBounds() (gas: 36809) WorkflowRegistryManager_getLatestVersion:test_WhenNoVersionsHaveBeenRegistered() (gas: 12984) -WorkflowRegistryManager_getLatestVersion:test_WhenVersionsHaveBeenRegistered() (gas: 383647) +WorkflowRegistryManager_getLatestVersion:test_WhenVersionsHaveBeenRegistered() (gas: 286895) WorkflowRegistryManager_getLatestVersionNumber:test_WhenNoVersionsHaveBeenRegistered() (gas: 10637) -WorkflowRegistryManager_getLatestVersionNumber:test_WhenVersionsHaveBeenRegistered() (gas: 368728) +WorkflowRegistryManager_getLatestVersionNumber:test_WhenVersionsHaveBeenRegistered() (gas: 283976) WorkflowRegistryManager_getVersion:test_WhenVersionNumberIsNotRegistered() (gas: 13785) -WorkflowRegistryManager_getVersion:test_WhenVersionNumberIsRegistered() (gas: 384025) -WorkflowRegistryManager_getVersionNumberByContractAddressAndChainID:test_WhenAVersionIsRegisteredForTheContractAddressAndChainIDCombination() (gas: 372097) -WorkflowRegistryManager_getVersionNumberByContractAddressAndChainID:test_WhenNoVersionIsRegisteredForTheContractAddressAndChainIDCombination() (gas: 372077) -WorkflowRegistryManager_getVersionNumberByContractAddressAndChainID:test_WhenTheContractAddressIsInvalid() (gas: 367547) -WorkflowRegistry_activateWorkflow:test_WhenTheCallerIsAnAuthorizedAddress() (gas: 598448) -WorkflowRegistry_deleteWorkflow:test_WhenTheCallerIsAnAuthorizedAddress_AndTheDonIDIsAllowed() (gas: 662948) -WorkflowRegistry_deleteWorkflow:test_WhenTheCallerIsAnAuthorizedAddress_AndTheDonIDIsNotAllowed() (gas: 693103) -WorkflowRegistry_getAllAllowedDONs:test_WhenTheRegistryIsLocked() (gas: 67822) -WorkflowRegistry_getAllAllowedDONs:test_WhenTheSetOfAllowedDONsIsEmpty() (gas: 43037) -WorkflowRegistry_getAllAllowedDONs:test_WhenThereAreMultipleAllowedDONs() (gas: 99992) +WorkflowRegistryManager_getVersion:test_WhenVersionNumberIsRegistered() (gas: 287273) +WorkflowRegistryManager_getVersionNumberByContractAddressAndChainID:test_WhenAVersionIsRegisteredForTheContractAddressAndChainIDCombination() (gas: 284845) +WorkflowRegistryManager_getVersionNumberByContractAddressAndChainID:test_WhenNoVersionIsRegisteredForTheContractAddressAndChainIDCombination() (gas: 286825) +WorkflowRegistryManager_getVersionNumberByContractAddressAndChainID:test_WhenTheContractAddressIsInvalid() (gas: 284795) +WorkflowRegistry_activateWorkflow:test_WhenTheCallerIsAnAuthorizedAddress() (gas: 517100) +WorkflowRegistry_deleteWorkflow:test_WhenTheCallerIsAnAuthorizedAddress_AndTheDonIDIsAllowed() (gas: 422188) +WorkflowRegistry_deleteWorkflow:test_WhenTheCallerIsAnAuthorizedAddress_AndTheDonIDIsNotAllowed() (gas: 439990) +WorkflowRegistry_getAllAllowedDONs:test_WhenTheRegistryIsLocked() (gas: 46758) +WorkflowRegistry_getAllAllowedDONs:test_WhenTheSetOfAllowedDONsIsEmpty() (gas: 25496) +WorkflowRegistry_getAllAllowedDONs:test_WhenThereAreMultipleAllowedDONs() (gas: 74368) WorkflowRegistry_getAllAllowedDONs:test_WhenThereIsASingleAllowedDON() (gas: 13375) -WorkflowRegistry_getAllAuthorizedAddresses:test_WhenTheRegistryIsLocked() (gas: 68089) -WorkflowRegistry_getAllAuthorizedAddresses:test_WhenTheSetOfAuthorizedAddressesIsEmpty() (gas: 43559) -WorkflowRegistry_getAllAuthorizedAddresses:test_WhenThereAreMultipleAuthorizedAddresses() (gas: 105048) +WorkflowRegistry_getAllAuthorizedAddresses:test_WhenTheRegistryIsLocked() (gas: 47025) +WorkflowRegistry_getAllAuthorizedAddresses:test_WhenTheSetOfAuthorizedAddressesIsEmpty() (gas: 25867) +WorkflowRegistry_getAllAuthorizedAddresses:test_WhenThereAreMultipleAuthorizedAddresses() (gas: 77196) WorkflowRegistry_getAllAuthorizedAddresses:test_WhenThereIsASingleAuthorizedAddress() (gas: 13617) -WorkflowRegistry_getWorkflowMetadata:test_WhenTheRegistryIsLocked() (gas: 629886) +WorkflowRegistry_getWorkflowMetadata:test_WhenTheRegistryIsLocked() (gas: 541362) WorkflowRegistry_getWorkflowMetadata:test_WhenTheWorkflowDoesNotExist() (gas: 17543) -WorkflowRegistry_getWorkflowMetadata:test_WhenTheWorkflowExistsWithTheOwnerAndName() (gas: 577678) +WorkflowRegistry_getWorkflowMetadata:test_WhenTheWorkflowExistsWithTheOwnerAndName() (gas: 512218) WorkflowRegistry_getWorkflowMetadataListByDON:test_WhenLimitExceedsTotalWorkflows() (gas: 126736) WorkflowRegistry_getWorkflowMetadataListByDON:test_WhenLimitIsEqualToTotalWorkflows() (gas: 126625) WorkflowRegistry_getWorkflowMetadataListByDON:test_WhenLimitIsLessThanTotalWorkflows() (gas: 89083) @@ -83,7 +83,7 @@ WorkflowRegistry_getWorkflowMetadataListByDON:test_WhenStartIs0() (gas: 126665) WorkflowRegistry_getWorkflowMetadataListByDON:test_WhenStartIsGreaterThan0() (gas: 89040) WorkflowRegistry_getWorkflowMetadataListByDON:test_WhenStartIsGreaterThanOrEqualToTotalWorkflows() (gas: 10610) WorkflowRegistry_getWorkflowMetadataListByDON:test_WhenTheDONHasNoWorkflows() (gas: 10544) -WorkflowRegistry_getWorkflowMetadataListByDON:test_WhenTheRegistryIsLocked() (gas: 181053) +WorkflowRegistry_getWorkflowMetadataListByDON:test_WhenTheRegistryIsLocked() (gas: 157489) WorkflowRegistry_getWorkflowMetadataListByOwner:test_WhenLimitExceedsTotalWorkflows() (gas: 130566) WorkflowRegistry_getWorkflowMetadataListByOwner:test_WhenLimitIsEqualToTotalWorkflows() (gas: 130507) WorkflowRegistry_getWorkflowMetadataListByOwner:test_WhenLimitIsLessThanTotalWorkflows() (gas: 92473) @@ -91,19 +91,19 @@ WorkflowRegistry_getWorkflowMetadataListByOwner:test_WhenStartIs0() (gas: 130547 WorkflowRegistry_getWorkflowMetadataListByOwner:test_WhenStartIsGreaterThan0() (gas: 92430) WorkflowRegistry_getWorkflowMetadataListByOwner:test_WhenStartIsGreaterThanOrEqualToTotalWorkflows() (gas: 10898) WorkflowRegistry_getWorkflowMetadataListByOwner:test_WhenTheOwnerHasNoWorkflows() (gas: 11140) -WorkflowRegistry_getWorkflowMetadataListByOwner:test_WhenTheRegistryIsLocked() (gas: 184966) -WorkflowRegistry_lockRegistry:test_WhenTheCallerIsTheContractOwner() (gas: 61466) -WorkflowRegistry_pauseWorkflow:test_WhenTheDonIDIsAllowed_AndTheCallerIsAnAuthorizedAddress() (gas: 594412) -WorkflowRegistry_pauseWorkflow:test_WhenTheDonIDIsAllowed_AndTheCallerIsAnUnauthorizedAddress() (gas: 624575) -WorkflowRegistry_pauseWorkflow:test_WhenTheDonIDIsNotAllowed_AndTheCallerIsAnAuthorizedAddress() (gas: 624276) -WorkflowRegistry_pauseWorkflow:test_WhenTheDonIDIsNotAllowed_AndTheCallerIsAnUnauthorizedAddress() (gas: 653047) -WorkflowRegistry_registerWorkflow:test_WhenTheWorkflowInputsAreAllValid() (gas: 768004) -WorkflowRegistry_requestForceUpdateSecrets:test_WhenTheCallerIsAnAuthorizedAddress_AndTheWorkflowIsInAnAllowedDON() (gas: 1046068) -WorkflowRegistry_requestForceUpdateSecrets:test_WhenTheCallerIsAnAuthorizedAddress_AndTheWorkflowIsNotInAnAllowedDON() (gas: 589723) -WorkflowRegistry_requestForceUpdateSecrets:test_WhenTheCallerIsNotAnAuthorizedAddress() (gas: 590138) -WorkflowRegistry_unlockRegistry:test_WhenTheCallerIsTheContractOwner() (gas: 97235) -WorkflowRegistry_updateAllowedDONs:test_WhenTheBoolInputIsFalse() (gas: 56090) -WorkflowRegistry_updateAllowedDONs:test_WhenTheBoolInputIsTrue() (gas: 207939) -WorkflowRegistry_updateAuthorizedAddresses:test_WhenTheBoolInputIsFalse() (gas: 56863) -WorkflowRegistry_updateAuthorizedAddresses:test_WhenTheBoolInputIsTrue() (gas: 216354) -WorkflowRegistry_updateWorkflow:test_WhenTheWorkflowInputsAreAllValid() (gas: 757195) \ No newline at end of file +WorkflowRegistry_getWorkflowMetadataListByOwner:test_WhenTheRegistryIsLocked() (gas: 161402) +WorkflowRegistry_lockRegistry:test_WhenTheCallerIsTheContractOwner() (gas: 38402) +WorkflowRegistry_pauseWorkflow:test_WhenTheDonIDIsAllowed_AndTheCallerIsAnAuthorizedAddress() (gas: 517076) +WorkflowRegistry_pauseWorkflow:test_WhenTheDonIDIsAllowed_AndTheCallerIsAnUnauthorizedAddress() (gas: 524879) +WorkflowRegistry_pauseWorkflow:test_WhenTheDonIDIsNotAllowed_AndTheCallerIsAnAuthorizedAddress() (gas: 524638) +WorkflowRegistry_pauseWorkflow:test_WhenTheDonIDIsNotAllowed_AndTheCallerIsAnUnauthorizedAddress() (gas: 529049) +WorkflowRegistry_registerWorkflow:test_WhenTheWorkflowInputsAreAllValid() (gas: 568048) +WorkflowRegistry_requestForceUpdateSecrets:test_WhenTheCallerIsAnAuthorizedAddress_AndTheWorkflowIsInAnAllowedDON() (gas: 933600) +WorkflowRegistry_requestForceUpdateSecrets:test_WhenTheCallerIsAnAuthorizedAddress_AndTheWorkflowIsNotInAnAllowedDON() (gas: 510465) +WorkflowRegistry_requestForceUpdateSecrets:test_WhenTheCallerIsNotAnAuthorizedAddress() (gas: 508822) +WorkflowRegistry_unlockRegistry:test_WhenTheCallerIsTheContractOwner() (gas: 29713) +WorkflowRegistry_updateAllowedDONs:test_WhenTheBoolInputIsFalse() (gas: 29138) +WorkflowRegistry_updateAllowedDONs:test_WhenTheBoolInputIsTrue() (gas: 169535) +WorkflowRegistry_updateAuthorizedAddresses:test_WhenTheBoolInputIsFalse() (gas: 29710) +WorkflowRegistry_updateAuthorizedAddresses:test_WhenTheBoolInputIsTrue() (gas: 174766) +WorkflowRegistry_updateWorkflow:test_WhenTheWorkflowInputsAreAllValid() (gas: 514347) \ No newline at end of file diff --git a/contracts/cre/gas-snapshots/v2.gas-snapshot b/contracts/cre/gas-snapshots/v2.gas-snapshot index e3fdefe1b5..c857346c31 100644 --- a/contracts/cre/gas-snapshots/v2.gas-snapshot +++ b/contracts/cre/gas-snapshots/v2.gas-snapshot @@ -1,261 +1,261 @@ -CapabilitiesRegistry_AddCapabilitiesTest:test_AddCapability_NoConfigurationContract() (gas: 207097) -CapabilitiesRegistry_AddCapabilitiesTest:test_AddCapability_WithConfiguration() (gas: 309995) -CapabilitiesRegistry_AddDONsTest:test_AddDONs() (gas: 1101470) -CapabilitiesRegistry_AddDONsTest:test_AddDONs_EmptyConfigDON() (gas: 7466418) -CapabilitiesRegistry_AddDONsTest:test_AddDONs_OneNodeDON() (gas: 7203531) -CapabilitiesRegistry_AddNodeOperatorsTest:test_AddNodeOperators() (gas: 454954) -CapabilitiesRegistry_AddNodesTest:test_AddsNodeParams() (gas: 540842) -CapabilitiesRegistry_AddNodesTest:test_OwnerCanAddNodes() (gas: 541100) -CapabilitiesRegistry_DeprecateCapabilitiesTest:test_DeprecatesCapability() (gas: 109240) -CapabilitiesRegistry_DeprecateCapabilitiesTest:test_EmitsEvent() (gas: 109764) -CapabilitiesRegistry_GetCapabilitiesTest:test_ReturnsCapabilities() (gas: 164349) -CapabilitiesRegistry_GetCapabilitiesTest:test_ReturnsPaginatedCapabilities() (gas: 173797) -CapabilitiesRegistry_GetDONByNameTest:test_CorrectlyFetchesDONByName() (gas: 128935) -CapabilitiesRegistry_GetDONByNameTest:test_CorrectlyFetchesDONFamilies() (gas: 1330593) +CapabilitiesRegistry_AddCapabilitiesTest:test_AddCapability_NoConfigurationContract() (gas: 171581) +CapabilitiesRegistry_AddCapabilitiesTest:test_AddCapability_WithConfiguration() (gas: 270407) +CapabilitiesRegistry_AddDONsTest:test_AddDONs() (gas: 993146) +CapabilitiesRegistry_AddDONsTest:test_AddDONs_EmptyConfigDON() (gas: 6890502) +CapabilitiesRegistry_AddDONsTest:test_AddDONs_OneNodeDON() (gas: 6656923) +CapabilitiesRegistry_AddNodeOperatorsTest:test_AddNodeOperators() (gas: 415398) +CapabilitiesRegistry_AddNodesTest:test_AddsNodeParams() (gas: 489362) +CapabilitiesRegistry_AddNodesTest:test_OwnerCanAddNodes() (gas: 489620) +CapabilitiesRegistry_DeprecateCapabilitiesTest:test_DeprecatesCapability() (gas: 85176) +CapabilitiesRegistry_DeprecateCapabilitiesTest:test_EmitsEvent() (gas: 87700) +CapabilitiesRegistry_GetCapabilitiesTest:test_ReturnsCapabilities() (gas: 138285) +CapabilitiesRegistry_GetCapabilitiesTest:test_ReturnsPaginatedCapabilities() (gas: 136233) +CapabilitiesRegistry_GetDONByNameTest:test_CorrectlyFetchesDONByName() (gas: 117935) +CapabilitiesRegistry_GetDONByNameTest:test_CorrectlyFetchesDONFamilies() (gas: 1283761) CapabilitiesRegistry_GetDONsTest:test_CorrectlyFetchesDONs() (gas: 108512) -CapabilitiesRegistry_GetDONsTest:test_DoesNotIncludeRemovedDONs() (gas: 143181) -CapabilitiesRegistry_GetHistoricalDONInfoTest:test_CorrectlyFetchesHistoricalDONInfo() (gas: 104142) -CapabilitiesRegistry_GetNextDONIdTest:test_CorrectlyFetchesNextDONId() (gas: 983632) +CapabilitiesRegistry_GetDONsTest:test_DoesNotIncludeRemovedDONs() (gas: 129832) +CapabilitiesRegistry_GetHistoricalDONInfoTest:test_CorrectlyFetchesHistoricalDONInfo() (gas: 91142) +CapabilitiesRegistry_GetNextDONIdTest:test_CorrectlyFetchesNextDONId() (gas: 907260) CapabilitiesRegistry_GetNodeOperatorsTest:test_CorrectlyFetchesNodeOperators() (gas: 51172) -CapabilitiesRegistry_GetNodeOperatorsTest:test_DoesNotIncludeRemovedNodeOperators() (gas: 88131) +CapabilitiesRegistry_GetNodeOperatorsTest:test_DoesNotIncludeRemovedNodeOperators() (gas: 66633) CapabilitiesRegistry_GetNodesTest:test_CorrectlyFetchesNodes() (gas: 96524) CapabilitiesRegistry_GetNodesTest:test_CorrectlyFetchesSpecificNodes() (gas: 43750) -CapabilitiesRegistry_GetNodesTest:test_DoesNotIncludeRemovedNodes() (gas: 130233) +CapabilitiesRegistry_GetNodesTest:test_DoesNotIncludeRemovedNodes() (gas: 111238) CapabilitiesRegistry_GetNodesTest:test_GetNodesByP2PIdsInvalidNode_Reverts() (gas: 29645) -CapabilitiesRegistry_RemoveDONsByNameTest:test_RemovesDONsByName() (gas: 90244) -CapabilitiesRegistry_RemoveDONsTest:test_RemoveDON_RemovesFromAllFamilies_MultipleFamilies() (gas: 581509) -CapabilitiesRegistry_RemoveDONsTest:test_RemovesCapabilitiesDON() (gas: 749001) -CapabilitiesRegistry_RemoveDONsTest:test_RemovesDON() (gas: 89129) -CapabilitiesRegistry_RemoveNodeOperatorsTest:test_RemovesNodeOperator() (gas: 102520) -CapabilitiesRegistry_RemoveNodeOperatorsTest:test_RemovesNodeOperator_UnblocksReAdding() (gas: 542595) -CapabilitiesRegistry_RemoveNodesTest:test_CanAddNodeWithSameSignerAddressAfterRemoving() (gas: 559827) -CapabilitiesRegistry_RemoveNodesTest:test_CanRemoveWhenDONDeleted() (gas: 597869) -CapabilitiesRegistry_RemoveNodesTest:test_CanRemoveWhenNodeNoLongerPartOfDON() (gas: 908950) -CapabilitiesRegistry_RemoveNodesTest:test_OwnerCanRemoveNodes() (gas: 103619) -CapabilitiesRegistry_RemoveNodesTest:test_RemovesNode() (gas: 518956) +CapabilitiesRegistry_RemoveDONsByNameTest:test_RemovesDONsByName() (gas: 63653) +CapabilitiesRegistry_RemoveDONsTest:test_RemoveDON_RemovesFromAllFamilies_MultipleFamilies() (gas: 393873) +CapabilitiesRegistry_RemoveDONsTest:test_RemovesCapabilitiesDON() (gas: 471849) +CapabilitiesRegistry_RemoveDONsTest:test_RemovesDON() (gas: 62720) +CapabilitiesRegistry_RemoveNodeOperatorsTest:test_RemovesNodeOperator() (gas: 77704) +CapabilitiesRegistry_RemoveNodeOperatorsTest:test_RemovesNodeOperator_UnblocksReAdding() (gas: 312223) +CapabilitiesRegistry_RemoveNodesTest:test_CanAddNodeWithSameSignerAddressAfterRemoving() (gas: 249547) +CapabilitiesRegistry_RemoveNodesTest:test_CanRemoveWhenDONDeleted() (gas: 412878) +CapabilitiesRegistry_RemoveNodesTest:test_CanRemoveWhenNodeNoLongerPartOfDON() (gas: 756240) +CapabilitiesRegistry_RemoveNodesTest:test_OwnerCanRemoveNodes() (gas: 90796) +CapabilitiesRegistry_RemoveNodesTest:test_RemovesNode() (gas: 203156) CapabilitiesRegistry_SetDONFamilyTest:test_DONInfo_IncludesFamilyInformation() (gas: 53746) -CapabilitiesRegistry_SetDONFamilyTest:test_FamilyCleanupOnDONRemoval() (gas: 171138) +CapabilitiesRegistry_SetDONFamilyTest:test_FamilyCleanupOnDONRemoval() (gas: 103464) CapabilitiesRegistry_SetDONFamilyTest:test_GetDONsInFamily_EmptyFamily() (gas: 9664) -CapabilitiesRegistry_SetDONFamilyTest:test_SetDONFamilies_AddToMultipleFamilies() (gas: 287780) -CapabilitiesRegistry_SetDONFamilyTest:test_SetDONFamilies_RemoveFromAllFamilies() (gas: 90049) -CapabilitiesRegistry_SetDONFamilyTest:test_SetDONFamilies_SkipMissingThenRemoveExisting() (gas: 97771) -CapabilitiesRegistry_SetDONFamilyTest:test_SetDONFamily_EmitsEvent() (gas: 204641) -CapabilitiesRegistry_SetDONFamilyTest:test_SetDONFamily_MoveDONBetweenFamilies() (gas: 316723) -CapabilitiesRegistry_SetDONFamilyTest:test_SetDONFamily_MultipleDONsInSameFamily() (gas: 81181) -CapabilitiesRegistry_SetDONFamilyTest:test_SetDONFamily_RemoveFromFamily() (gas: 105949) -CapabilitiesRegistry_SetDONFamilyTest:test_SetDONFamily_SameFamilyNoOp() (gas: 84757) +CapabilitiesRegistry_SetDONFamilyTest:test_SetDONFamilies_AddToMultipleFamilies() (gas: 257080) +CapabilitiesRegistry_SetDONFamilyTest:test_SetDONFamilies_RemoveFromAllFamilies() (gas: 70910) +CapabilitiesRegistry_SetDONFamilyTest:test_SetDONFamilies_SkipMissingThenRemoveExisting() (gas: 78515) +CapabilitiesRegistry_SetDONFamilyTest:test_SetDONFamily_EmitsEvent() (gas: 219041) +CapabilitiesRegistry_SetDONFamilyTest:test_SetDONFamily_MoveDONBetweenFamilies() (gas: 270923) +CapabilitiesRegistry_SetDONFamilyTest:test_SetDONFamily_MultipleDONsInSameFamily() (gas: 34765) +CapabilitiesRegistry_SetDONFamilyTest:test_SetDONFamily_RemoveFromFamily() (gas: 79303) +CapabilitiesRegistry_SetDONFamilyTest:test_SetDONFamily_SameFamilyNoOp() (gas: 34341) CapabilitiesRegistry_TypeAndVersionTest:test_TypeAndVersion() (gas: 9845) -CapabilitiesRegistry_UpdateDONByNameTest:test_UpdatesDONByName() (gas: 1010945) -CapabilitiesRegistry_UpdateDONTest:test_UpdatesDON() (gas: 994041) -CapabilitiesRegistry_UpdateDONTest:test_UpdatesDONAndPreservesWorkflowID() (gas: 375652) -CapabilitiesRegistry_UpdateDONTest:test_UpdatesDONAndRemovesDONNameMapping() (gas: 472194) -CapabilitiesRegistry_UpdateNodeOperatorTest:test_UpdatesNodeOperator() (gas: 89040) -CapabilitiesRegistry_UpdateNodeOperatorTest:test_UpdatesNodeOperator_UnblocksReAddingOldNodeOperator() (gas: 138836) -CapabilitiesRegistry_UpdateNodesTest:test_CanReassignNode() (gas: 197210) -CapabilitiesRegistry_UpdateNodesTest:test_CanUpdateParamsIfNodeSignerAddressNoLongerUsed() (gas: 350672) -CapabilitiesRegistry_UpdateNodesTest:test_OwnerCanUpdateNodes() (gas: 199857) -CapabilitiesRegistry_UpdateNodesTest:test_UpdatesNodeParams() (gas: 202157) -WorkflowRegistry_activateWorkflow:test_activateWorkflow_WhenCallerIsNotLinkedAsAnOwner() (gas: 41257) -WorkflowRegistry_activateWorkflow:test_activateWorkflow_WhenNoDONLimitIsSetGloballyForTheDonFamily() (gas: 665800) -WorkflowRegistry_activateWorkflow:test_activateWorkflow_WhenNoWorkflowExistsForTheGivenWorkflowId() (gas: 203871) -WorkflowRegistry_activateWorkflow:test_activateWorkflow_WhenTheWorkflowExistsButOwnerDoesNotEqualCaller() (gas: 1300745) -WorkflowRegistry_activateWorkflow:test_activateWorkflow_WhenTheWorkflowExistsOwnerMatchesButStatusIsACTIVE() (gas: 1167174) -WorkflowRegistry_activateWorkflow:test_activateWorkflow_WhenThereAreAlreadyTooManyWorkflowsInTheDON() (gas: 2552665) -WorkflowRegistry_activateWorkflow:test_activateWorkflow_WhenThereIsEnoughSpaceForTheWorkflowInTheDON() (gas: 1877624) -WorkflowRegistry_adminBatchPauseWorkflows:test_adminBatchPauseWorkflows_WhenCallerIsNOTTheContractOwner() (gas: 39924) -WorkflowRegistry_adminBatchPauseWorkflows:test_adminBatchPauseWorkflows_WhenWorkflowIdsIsNotZero() (gas: 2004824) -WorkflowRegistry_adminBatchPauseWorkflows:test_adminBatchPauseWorkflows_WhenWorkflowIdsLengthIs0() (gas: 34194) -WorkflowRegistry_adminPauseAllByDON:test_adminPauseAllByDON_WhenCallerIsNOTTheContractOwner() (gas: 39196) -WorkflowRegistry_adminPauseAllByDON:test_adminPauseAllByDON_WhenThereAreActiveWorkflows() (gas: 2078789) -WorkflowRegistry_adminPauseAllByDON:test_adminPauseAllByDON_WhenThereAreActiveWorkflowsButLimitIsSet() (gas: 3735331) -WorkflowRegistry_adminPauseAllByOwner:test_adminPauseAllByDON_WhenThereAreActiveWorkflowsButLimitIsSet() (gas: 3733209) -WorkflowRegistry_adminPauseAllByOwner:test_adminPauseAllByOwner_WhenCallerIsNOTTheContractOwner() (gas: 38095) -WorkflowRegistry_adminPauseAllByOwner:test_adminPauseAllByOwner_WhenThereAreActiveWorkflows() (gas: 2077931) -WorkflowRegistry_adminPauseWorkflow:test_adminPauseWorkflow_WhenCallerIsNOTTheContractOwner() (gas: 37821) -WorkflowRegistry_adminPauseWorkflow:test_adminPauseWorkflow_WhenWorkflowStatusIsACTIVE() (gas: 1322158) -WorkflowRegistry_adminPauseWorkflow:test_adminPauseWorkflow_WhenWorkflowStatusIsPAUSED() (gas: 982998) -WorkflowRegistry_allowlistRequest:test_allowlistRequest_WhenTheUserAlreadyHasARequest() (gas: 768115) -WorkflowRegistry_allowlistRequest:test_allowlistRequest_WhenTheUserHasNoExistingRequest() (gas: 883770) -WorkflowRegistry_allowlistRequest:test_allowlistRequest_WhenTheUserIsNotLinked() (gas: 134475) -WorkflowRegistry_batchActivateWorkflows:test_batchActivateWorkflows_WhenActivationWouldExceedCallersPer_DONCap() (gas: 1347326) -WorkflowRegistry_batchActivateWorkflows:test_batchActivateWorkflows_WhenAllListedWorkflowsAreAlreadyACTIVE() (gas: 1168405) -WorkflowRegistry_batchActivateWorkflows:test_batchActivateWorkflows_WhenAtLeastOneWorkflowIdIsNotOwnedByCaller() (gas: 1053198) -WorkflowRegistry_batchActivateWorkflows:test_batchActivateWorkflows_WhenCallerIsNOTALinkedOwner() (gas: 42714) -WorkflowRegistry_batchActivateWorkflows:test_batchActivateWorkflows_WhenDONFamilyHasNoGlobalLimitSet() (gas: 666329) -WorkflowRegistry_batchActivateWorkflows:test_batchActivateWorkflows_WhenEveryWorkflowIdIsUnknown() (gas: 204941) -WorkflowRegistry_batchActivateWorkflows:test_batchActivateWorkflows_WhenListMixesACTIVEAndPAUSEDWorkflowsWhereTheOnesToActivateAreWithinCap() (gas: 1972132) -WorkflowRegistry_batchActivateWorkflows:test_batchActivateWorkflows_WhenWorkflowIdsLengthIs0() (gas: 194809) -WorkflowRegistry_batchPauseWorkflows:test_batchPauseWorkflows_WhenCallerIsNOTALinkedOwner() (gas: 40408) -WorkflowRegistry_batchPauseWorkflows:test_batchPauseWorkflows_WhenEveryListedWorkflowIsACTIVE() (gas: 1949179) -WorkflowRegistry_batchPauseWorkflows:test_batchPauseWorkflows_WhenEveryListedWorkflowIsAlreadyPAUSED() (gas: 1284100) -WorkflowRegistry_batchPauseWorkflows:test_batchPauseWorkflows_WhenTheListMixesPAUSEDAndACTIVEWorkflows() (gas: 1676185) -WorkflowRegistry_batchPauseWorkflows:test_batchPauseWorkflows_WhenWorkflowIdsContainsAnIDNotOwnedByCaller() (gas: 1052842) -WorkflowRegistry_batchPauseWorkflows:test_batchPauseWorkflows_WhenWorkflowIdsContainsAnUnknownID() (gas: 202241) -WorkflowRegistry_batchPauseWorkflows:test_batchPauseWorkflows_WhenWorkflowIdsLengthIs0() (gas: 192634) +CapabilitiesRegistry_UpdateDONByNameTest:test_UpdatesDONByName() (gas: 883665) +CapabilitiesRegistry_UpdateDONTest:test_UpdatesDON() (gas: 867553) +CapabilitiesRegistry_UpdateDONTest:test_UpdatesDONAndPreservesWorkflowID() (gas: 360488) +CapabilitiesRegistry_UpdateDONTest:test_UpdatesDONAndRemovesDONNameMapping() (gas: 414890) +CapabilitiesRegistry_UpdateNodeOperatorTest:test_UpdatesNodeOperator() (gas: 64684) +CapabilitiesRegistry_UpdateNodeOperatorTest:test_UpdatesNodeOperator_UnblocksReAddingOldNodeOperator() (gas: 57567) +CapabilitiesRegistry_UpdateNodesTest:test_CanReassignNode() (gas: 177110) +CapabilitiesRegistry_UpdateNodesTest:test_CanUpdateParamsIfNodeSignerAddressNoLongerUsed() (gas: 261424) +CapabilitiesRegistry_UpdateNodesTest:test_OwnerCanUpdateNodes() (gas: 164597) +CapabilitiesRegistry_UpdateNodesTest:test_UpdatesNodeParams() (gas: 166897) +WorkflowRegistry_activateWorkflow:test_activateWorkflow_WhenCallerIsNotLinkedAsAnOwner() (gas: 19213) +WorkflowRegistry_activateWorkflow:test_activateWorkflow_WhenNoDONLimitIsSetGloballyForTheDonFamily() (gas: 587524) +WorkflowRegistry_activateWorkflow:test_activateWorkflow_WhenNoWorkflowExistsForTheGivenWorkflowId() (gas: 156631) +WorkflowRegistry_activateWorkflow:test_activateWorkflow_WhenTheWorkflowExistsButOwnerDoesNotEqualCaller() (gas: 1168673) +WorkflowRegistry_activateWorkflow:test_activateWorkflow_WhenTheWorkflowExistsOwnerMatchesButStatusIsACTIVE() (gas: 1065098) +WorkflowRegistry_activateWorkflow:test_activateWorkflow_WhenThereAreAlreadyTooManyWorkflowsInTheDON() (gas: 2195261) +WorkflowRegistry_activateWorkflow:test_activateWorkflow_WhenThereIsEnoughSpaceForTheWorkflowInTheDON() (gas: 1696124) +WorkflowRegistry_adminBatchPauseWorkflows:test_adminBatchPauseWorkflows_WhenCallerIsNOTTheContractOwner() (gas: 17556) +WorkflowRegistry_adminBatchPauseWorkflows:test_adminBatchPauseWorkflows_WhenWorkflowIdsIsNotZero() (gas: 1464730) +WorkflowRegistry_adminBatchPauseWorkflows:test_adminBatchPauseWorkflows_WhenWorkflowIdsLengthIs0() (gas: 12862) +WorkflowRegistry_adminPauseAllByDON:test_adminPauseAllByDON_WhenCallerIsNOTTheContractOwner() (gas: 17536) +WorkflowRegistry_adminPauseAllByDON:test_adminPauseAllByDON_WhenThereAreActiveWorkflows() (gas: 1485653) +WorkflowRegistry_adminPauseAllByDON:test_adminPauseAllByDON_WhenThereAreActiveWorkflowsButLimitIsSet() (gas: 2565411) +WorkflowRegistry_adminPauseAllByOwner:test_adminPauseAllByDON_WhenThereAreActiveWorkflowsButLimitIsSet() (gas: 2563083) +WorkflowRegistry_adminPauseAllByOwner:test_adminPauseAllByOwner_WhenCallerIsNOTTheContractOwner() (gas: 16535) +WorkflowRegistry_adminPauseAllByOwner:test_adminPauseAllByOwner_WhenThereAreActiveWorkflows() (gas: 1484489) +WorkflowRegistry_adminPauseWorkflow:test_adminPauseWorkflow_WhenCallerIsNOTTheContractOwner() (gas: 16245) +WorkflowRegistry_adminPauseWorkflow:test_adminPauseWorkflow_WhenWorkflowStatusIsACTIVE() (gas: 963372) +WorkflowRegistry_adminPauseWorkflow:test_adminPauseWorkflow_WhenWorkflowStatusIsPAUSED() (gas: 834378) +WorkflowRegistry_allowlistRequest:test_allowlistRequest_WhenTheUserAlreadyHasARequest() (gas: 486707) +WorkflowRegistry_allowlistRequest:test_allowlistRequest_WhenTheUserHasNoExistingRequest() (gas: 564822) +WorkflowRegistry_allowlistRequest:test_allowlistRequest_WhenTheUserIsNotLinked() (gas: 36219) +WorkflowRegistry_batchActivateWorkflows:test_batchActivateWorkflows_WhenActivationWouldExceedCallersPer_DONCap() (gas: 1201822) +WorkflowRegistry_batchActivateWorkflows:test_batchActivateWorkflows_WhenAllListedWorkflowsAreAlreadyACTIVE() (gas: 1066049) +WorkflowRegistry_batchActivateWorkflows:test_batchActivateWorkflows_WhenAtLeastOneWorkflowIdIsNotOwnedByCaller() (gas: 922834) +WorkflowRegistry_batchActivateWorkflows:test_batchActivateWorkflows_WhenCallerIsNOTALinkedOwner() (gas: 19878) +WorkflowRegistry_batchActivateWorkflows:test_batchActivateWorkflows_WhenDONFamilyHasNoGlobalLimitSet() (gas: 587773) +WorkflowRegistry_batchActivateWorkflows:test_batchActivateWorkflows_WhenEveryWorkflowIdIsUnknown() (gas: 157421) +WorkflowRegistry_batchActivateWorkflows:test_batchActivateWorkflows_WhenListMixesACTIVEAndPAUSEDWorkflowsWhereTheOnesToActivateAreWithinCap() (gas: 1798252) +WorkflowRegistry_batchActivateWorkflows:test_batchActivateWorkflows_WhenWorkflowIdsLengthIs0() (gas: 149813) +WorkflowRegistry_batchPauseWorkflows:test_batchPauseWorkflows_WhenCallerIsNOTALinkedOwner() (gas: 18040) +WorkflowRegistry_batchPauseWorkflows:test_batchPauseWorkflows_WhenEveryListedWorkflowIsACTIVE() (gas: 1451843) +WorkflowRegistry_batchPauseWorkflows:test_batchPauseWorkflows_WhenEveryListedWorkflowIsAlreadyPAUSED() (gas: 1164132) +WorkflowRegistry_batchPauseWorkflows:test_batchPauseWorkflows_WhenTheListMixesPAUSEDAndACTIVEWorkflows() (gas: 1325767) +WorkflowRegistry_batchPauseWorkflows:test_batchPauseWorkflows_WhenWorkflowIdsContainsAnIDNotOwnedByCaller() (gas: 922946) +WorkflowRegistry_batchPauseWorkflows:test_batchPauseWorkflows_WhenWorkflowIdsContainsAnUnknownID() (gas: 155189) +WorkflowRegistry_batchPauseWorkflows:test_batchPauseWorkflows_WhenWorkflowIdsLengthIs0() (gas: 148106) WorkflowRegistry_canLinkOwner:test_canLinkOwner_WhenBlockTimestampIsGreaterThanValidityTimestamp() (gas: 26205) -WorkflowRegistry_canLinkOwner:test_canLinkOwner_WhenMsgSenderIsAlreadyLinked() (gas: 177541) -WorkflowRegistry_canLinkOwner:test_canLinkOwner_WhenProofHasAlreadyBeenUsed() (gas: 181069) +WorkflowRegistry_canLinkOwner:test_canLinkOwner_WhenMsgSenderIsAlreadyLinked() (gas: 152345) +WorkflowRegistry_canLinkOwner:test_canLinkOwner_WhenProofHasAlreadyBeenUsed() (gas: 155873) WorkflowRegistry_canLinkOwner:test_canLinkOwner_WhenSignatureIsValidAndSignerIsAllowed() (gas: 35556) WorkflowRegistry_canLinkOwner:test_canLinkOwner_WhenSignatureRecoversToASignerNotInAllowedSigners() (gas: 35494) WorkflowRegistry_canLinkOwner:test_canLinkOwner_WhenSignatureRecoveryFails() (gas: 23780) -WorkflowRegistry_canUnlinkOwner:test_canUnlinkOwner_WhenOwnerHasExistingWorkflows() (gas: 4299942) -WorkflowRegistry_canUnlinkOwner:test_canUnlinkOwner_WhenOwnerIsNotYetLinked() (gas: 34002) -WorkflowRegistry_canUnlinkOwner:test_canUnlinkOwner_WhenTheSignatureDoesNotRecoverAnAllowedSigner() (gas: 189598) -WorkflowRegistry_canUnlinkOwner:test_canUnlinkOwner_WhenTheSignatureRecoversAnAllowedSigner() (gas: 184209) -WorkflowRegistry_canUnlinkOwner:test_canUnlinkOwner_WhenValidTimestampIsLessThanBlockTimestamp() (gas: 180440) -WorkflowRegistry_getActiveAllowlistedRequestsReverse:test_getActiveAllowlistedRequestsReverse_WhenNoRequestsAreAllowlisted() (gas: 15945) -WorkflowRegistry_getActiveAllowlistedRequestsReverse:test_getActiveAllowlistedRequestsReverse_WhenNoneOfTheRequestsHaveExpired() (gas: 1265755) -WorkflowRegistry_getActiveAllowlistedRequestsReverse:test_getActiveAllowlistedRequestsReverse_WhenSomeOfTheRequestsHaveExpired() (gas: 1212703) -WorkflowRegistry_getActiveAllowlistedRequestsReverse:test_getActiveAllowlistedRequestsReverse_WhenStopCriteriaWasReached() (gas: 1847910) -WorkflowRegistry_getActiveWorkflowListByDON:test_getActiveWorkflowListByDON_DeletedPausedWorkflowShouldNotLeaveGhostEntry() (gas: 1712321) -WorkflowRegistry_getActiveWorkflowListByDON:test_getActiveWorkflowListByDON_RecreateAsPausedAfterDeletingActive() (gas: 2200083) -WorkflowRegistry_getActiveWorkflowListByDON:test_getActiveWorkflowListByDON_ShouldExcludeWorkflowThatWasPaused() (gas: 1298407) -WorkflowRegistry_getActiveWorkflowListByDON:test_getActiveWorkflowListByDON_ShouldHandleMultipleDeletesAndRecreations() (gas: 5712964) -WorkflowRegistry_getActiveWorkflowListByDON:test_getActiveWorkflowListByDON_ShouldIncludeRecreatedWorkflow() (gas: 1997462) -WorkflowRegistry_getActiveWorkflowListByDON:test_getActiveWorkflowListByDON_ShouldIncludeWorkflowThatWasReactivated() (gas: 1324176) -WorkflowRegistry_getActiveWorkflowListByDON:test_getActiveWorkflowListByDON_ShouldNotIncludeDeletedWorkflow() (gas: 1291259) -WorkflowRegistry_getActiveWorkflowListByDON:test_getActiveWorkflowListByDON_ShouldNotIncludePausedWorkflows() (gas: 1580127) -WorkflowRegistry_getActiveWorkflowListByDON:test_getActiveWorkflowListByDON_ShouldOnlyReturnActiveWorkflows() (gas: 4903434) -WorkflowRegistry_getActiveWorkflowListByDON:test_getActiveWorkflowListByDON_ShouldOnlyReturnActiveWorkflowsFromSpecifiedDON() (gas: 4982515) -WorkflowRegistry_getActiveWorkflowListByDON:test_getActiveWorkflowListByDON_WhenLimitIsGreaterThanOrEqualToTotalMinusStart() (gas: 5127505) -WorkflowRegistry_getActiveWorkflowListByDON:test_getActiveWorkflowListByDON_WhenLimitIsLessThanTotalMinusStart() (gas: 4968602) -WorkflowRegistry_getActiveWorkflowListByDON:test_getActiveWorkflowListByDON_WhenLimitIsZero() (gas: 4823982) -WorkflowRegistry_getActiveWorkflowListByDON:test_getActiveWorkflowListByDON_WhenStartIsGreaterThanOrEqualToTotalActiveWorkflows() (gas: 4832753) -WorkflowRegistry_getActiveWorkflowListByDON:test_getActiveWorkflowListByDON_WhenTheDONFamilyHasNoWorkflowsRegistered() (gas: 31827) -WorkflowRegistry_getAllowedSigners:test_getAllowedSigners_WhenAPageIsRequested() (gas: 44167) +WorkflowRegistry_canUnlinkOwner:test_canUnlinkOwner_WhenOwnerHasExistingWorkflows() (gas: 3964510) +WorkflowRegistry_canUnlinkOwner:test_canUnlinkOwner_WhenOwnerIsNotYetLinked() (gas: 31502) +WorkflowRegistry_canUnlinkOwner:test_canUnlinkOwner_WhenTheSignatureDoesNotRecoverAnAllowedSigner() (gas: 162402) +WorkflowRegistry_canUnlinkOwner:test_canUnlinkOwner_WhenTheSignatureRecoversAnAllowedSigner() (gas: 155013) +WorkflowRegistry_canUnlinkOwner:test_canUnlinkOwner_WhenValidTimestampIsLessThanBlockTimestamp() (gas: 152744) +WorkflowRegistry_getActiveAllowlistedRequestsReverse:test_getActiveAllowlistedRequestsReverse_WhenNoRequestsAreAllowlisted() (gas: 11445) +WorkflowRegistry_getActiveAllowlistedRequestsReverse:test_getActiveAllowlistedRequestsReverse_WhenNoneOfTheRequestsHaveExpired() (gas: 875067) +WorkflowRegistry_getActiveAllowlistedRequestsReverse:test_getActiveAllowlistedRequestsReverse_WhenSomeOfTheRequestsHaveExpired() (gas: 846015) +WorkflowRegistry_getActiveAllowlistedRequestsReverse:test_getActiveAllowlistedRequestsReverse_WhenStopCriteriaWasReached() (gas: 1298670) +WorkflowRegistry_getActiveWorkflowListByDON:test_getActiveWorkflowListByDON_DeletedPausedWorkflowShouldNotLeaveGhostEntry() (gas: 1194097) +WorkflowRegistry_getActiveWorkflowListByDON:test_getActiveWorkflowListByDON_RecreateAsPausedAfterDeletingActive() (gas: 1478033) +WorkflowRegistry_getActiveWorkflowListByDON:test_getActiveWorkflowListByDON_ShouldExcludeWorkflowThatWasPaused() (gas: 955825) +WorkflowRegistry_getActiveWorkflowListByDON:test_getActiveWorkflowListByDON_ShouldHandleMultipleDeletesAndRecreations() (gas: 3526530) +WorkflowRegistry_getActiveWorkflowListByDON:test_getActiveWorkflowListByDON_ShouldIncludeRecreatedWorkflow() (gas: 1384167) +WorkflowRegistry_getActiveWorkflowListByDON:test_getActiveWorkflowListByDON_ShouldIncludeWorkflowThatWasReactivated() (gas: 1173224) +WorkflowRegistry_getActiveWorkflowListByDON:test_getActiveWorkflowListByDON_ShouldNotIncludeDeletedWorkflow() (gas: 870062) +WorkflowRegistry_getActiveWorkflowListByDON:test_getActiveWorkflowListByDON_ShouldNotIncludePausedWorkflows() (gas: 1442575) +WorkflowRegistry_getActiveWorkflowListByDON:test_getActiveWorkflowListByDON_ShouldOnlyReturnActiveWorkflows() (gas: 4419730) +WorkflowRegistry_getActiveWorkflowListByDON:test_getActiveWorkflowListByDON_ShouldOnlyReturnActiveWorkflowsFromSpecifiedDON() (gas: 4451811) +WorkflowRegistry_getActiveWorkflowListByDON:test_getActiveWorkflowListByDON_WhenLimitIsGreaterThanOrEqualToTotalMinusStart() (gas: 4502801) +WorkflowRegistry_getActiveWorkflowListByDON:test_getActiveWorkflowListByDON_WhenLimitIsLessThanTotalMinusStart() (gas: 4442398) +WorkflowRegistry_getActiveWorkflowListByDON:test_getActiveWorkflowListByDON_WhenLimitIsZero() (gas: 4389778) +WorkflowRegistry_getActiveWorkflowListByDON:test_getActiveWorkflowListByDON_WhenStartIsGreaterThanOrEqualToTotalActiveWorkflows() (gas: 4392049) +WorkflowRegistry_getActiveWorkflowListByDON:test_getActiveWorkflowListByDON_WhenTheDONFamilyHasNoWorkflowsRegistered() (gas: 18827) +WorkflowRegistry_getAllowedSigners:test_getAllowedSigners_WhenAPageIsRequested() (gas: 30667) WorkflowRegistry_getAllowedSigners:test_getAllowedSigners_WhenNoAllowedSignersAreConfigured() (gas: 395) WorkflowRegistry_getAllowedSigners:test_getAllowedSigners_WhenStartIs0AndLimitIsGreaterThanTheNumberOfSigners() (gas: 23573) -WorkflowRegistry_getAllowlistedRequests:test_getAllowlistedRequests_WhenNoRequestsAreAllowlisted() (gas: 15516) -WorkflowRegistry_getAllowlistedRequests:test_getAllowlistedRequests_WhenNoneOfTheRequestsHaveExpired() (gas: 1227673) -WorkflowRegistry_getAllowlistedRequests:test_getAllowlistedRequests_WhenSomeOfTheRequestsHaveExpired() (gas: 1204910) -WorkflowRegistry_getCapabilitiesRegistry:test_getCapabilitiesRegistry_WhenTheRegistryHasBeenSet() (gas: 64455) +WorkflowRegistry_getAllowlistedRequests:test_getAllowlistedRequests_WhenNoRequestsAreAllowlisted() (gas: 11016) +WorkflowRegistry_getAllowlistedRequests:test_getAllowlistedRequests_WhenNoneOfTheRequestsHaveExpired() (gas: 862485) +WorkflowRegistry_getAllowlistedRequests:test_getAllowlistedRequests_WhenSomeOfTheRequestsHaveExpired() (gas: 844222) +WorkflowRegistry_getCapabilitiesRegistry:test_getCapabilitiesRegistry_WhenTheRegistryHasBeenSet() (gas: 40859) WorkflowRegistry_getCapabilitiesRegistry:test_getCapabilitiesRegistry_WhenTheRegistryHasnNotBeenSetYet() (gas: 8349) -WorkflowRegistry_getDonConfigs:test_getDonConfigs_WhenThereAreDONConfigsSet() (gas: 741994) +WorkflowRegistry_getDonConfigs:test_getDonConfigs_WhenThereAreDONConfigsSet() (gas: 628762) WorkflowRegistry_getDonConfigs:test_getDonConfigs_WhenThereAreNoDONConfigs() (gas: 8751) -WorkflowRegistry_getEvents:test_getEvents_When0IsLessThanLimitWhichIsLessThanNMinusStart() (gas: 554518) -WorkflowRegistry_getEvents:test_getEvents_WhenLimitIs0() (gas: 532433) -WorkflowRegistry_getEvents:test_getEvents_WhenLimitIsGreaterThanNMinusStart() (gas: 554869) +WorkflowRegistry_getEvents:test_getEvents_When0IsLessThanLimitWhichIsLessThanNMinusStart() (gas: 443882) +WorkflowRegistry_getEvents:test_getEvents_WhenLimitIs0() (gas: 437797) +WorkflowRegistry_getEvents:test_getEvents_WhenLimitIsGreaterThanNMinusStart() (gas: 444233) WorkflowRegistry_getEvents:test_getEvents_WhenNoEventsHaveBeenRecorded() (gas: 8877) -WorkflowRegistry_getEvents:test_getEvents_WhenStartIsGreaterThanNumberOfEvents() (gas: 532207) -WorkflowRegistry_getLinkedOwners:test_getLinkedOwners_GivenThatBatchSizeIsEqualToTotalLinkedOwners() (gas: 735151) -WorkflowRegistry_getLinkedOwners:test_getLinkedOwners_GivenThatBatchSizeIsGreaterThanTotalLinkedOwners() (gas: 735152) -WorkflowRegistry_getLinkedOwners:test_getLinkedOwners_GivenThatBatchSizeIsLessThanTotalLinkedOwners() (gas: 729724) -WorkflowRegistry_getLinkedOwners:test_getLinkedOwners_GivenThatStartIndexIsEqualToTotalLinkedOwners() (gas: 716253) -WorkflowRegistry_getLinkedOwners:test_getLinkedOwners_GivenThatStartIndexIsGreaterThanTotalLinkedOwners() (gas: 716143) -WorkflowRegistry_getLinkedOwners:test_getLinkedOwners_WhenBatchSizeIsEqualToTotalLinkedOwners() (gas: 729862) -WorkflowRegistry_getLinkedOwners:test_getLinkedOwners_WhenBatchSizeIsGreaterThanTotalLinkedOwners() (gas: 730038) -WorkflowRegistry_getLinkedOwners:test_getLinkedOwners_WhenBatchSizeIsLessThanTotalLinkedOwners() (gas: 739891) -WorkflowRegistry_getLinkedOwners:test_getLinkedOwners_WhenThereAreNoLinkedOwners() (gas: 21758) +WorkflowRegistry_getEvents:test_getEvents_WhenStartIsGreaterThanNumberOfEvents() (gas: 437571) +WorkflowRegistry_getLinkedOwners:test_getLinkedOwners_GivenThatBatchSizeIsEqualToTotalLinkedOwners() (gas: 569983) +WorkflowRegistry_getLinkedOwners:test_getLinkedOwners_GivenThatBatchSizeIsGreaterThanTotalLinkedOwners() (gas: 569984) +WorkflowRegistry_getLinkedOwners:test_getLinkedOwners_GivenThatBatchSizeIsLessThanTotalLinkedOwners() (gas: 570056) +WorkflowRegistry_getLinkedOwners:test_getLinkedOwners_GivenThatStartIndexIsEqualToTotalLinkedOwners() (gas: 566585) +WorkflowRegistry_getLinkedOwners:test_getLinkedOwners_GivenThatStartIndexIsGreaterThanTotalLinkedOwners() (gas: 566475) +WorkflowRegistry_getLinkedOwners:test_getLinkedOwners_WhenBatchSizeIsEqualToTotalLinkedOwners() (gas: 568694) +WorkflowRegistry_getLinkedOwners:test_getLinkedOwners_WhenBatchSizeIsGreaterThanTotalLinkedOwners() (gas: 568870) +WorkflowRegistry_getLinkedOwners:test_getLinkedOwners_WhenBatchSizeIsLessThanTotalLinkedOwners() (gas: 572223) +WorkflowRegistry_getLinkedOwners:test_getLinkedOwners_WhenThereAreNoLinkedOwners() (gas: 12758) WorkflowRegistry_getMaxWorkflowsPerDON:test_getMaxWorkflowsPerDON_WhenDonLabelHasNeverBeenConfigured() (gas: 11584) -WorkflowRegistry_getMaxWorkflowsPerDON:test_getMaxWorkflowsPerDON_WhenDonLabelWasConfiguredToLimit() (gas: 269588) -WorkflowRegistry_getMaxWorkflowsPerUserDON:test_getMaxWorkflowsPerUserDON_WhenAUserOverrideExistsAndIsEnabled() (gas: 411970) -WorkflowRegistry_getMaxWorkflowsPerUserDON:test_getMaxWorkflowsPerUserDON_WhenGlobalDONLimitIsSetToL() (gas: 274138) +WorkflowRegistry_getMaxWorkflowsPerDON:test_getMaxWorkflowsPerDON_WhenDonLabelWasConfiguredToLimit() (gas: 245776) +WorkflowRegistry_getMaxWorkflowsPerUserDON:test_getMaxWorkflowsPerUserDON_WhenAUserOverrideExistsAndIsEnabled() (gas: 346978) +WorkflowRegistry_getMaxWorkflowsPerUserDON:test_getMaxWorkflowsPerUserDON_WhenGlobalDONLimitIsSetToL() (gas: 250326) WorkflowRegistry_getMaxWorkflowsPerUserDON:test_getMaxWorkflowsPerUserDON_WhenGlobalDONLimitIsUnset() (gas: 15976) WorkflowRegistry_getUserDONOverrides:test_getUserDONOverrides_WhenThereAreNoUserOverridesForASpecificDON() (gas: 11779) -WorkflowRegistry_getUserDONOverrides:test_getUserDONOverrides_WhenThereAreUserOverridesForASpecificDON() (gas: 1107215) -WorkflowRegistry_getWorkflow:test_getWorkflow_WhenTheWorkflowDoesNotExist() (gas: 36162) -WorkflowRegistry_getWorkflow:test_getWorkflow_WhenTheWorkflowExistsWithTheOwnerAndNameAndTag() (gas: 1202878) -WorkflowRegistry_getWorkflowListByDON:test_getWorkflowListByDON_ShouldIncludeBothActiveAndPausedWorkflows() (gas: 1605652) -WorkflowRegistry_getWorkflowListByDON:test_getWorkflowListByDON_ShouldOnlyReturnWorkflowsFromSpecifiedDON() (gas: 3970983) -WorkflowRegistry_getWorkflowListByDON:test_getWorkflowListByDON_ShouldReturnWorkflowsWithCorrectStatus() (gas: 3891657) -WorkflowRegistry_getWorkflowListByDON:test_getWorkflowListByDON_WhenLimitIsGreaterThanOrEqualToTotalMinusStart() (gas: 4206990) -WorkflowRegistry_getWorkflowListByDON:test_getWorkflowListByDON_WhenLimitIsLessThanTotalMinusStart() (gas: 3929370) -WorkflowRegistry_getWorkflowListByDON:test_getWorkflowListByDON_WhenLimitIsZero() (gas: 3754143) -WorkflowRegistry_getWorkflowListByDON:test_getWorkflowListByDON_WhenStartIsGreaterThanOrEqualToTotalWorkflows() (gas: 3763470) -WorkflowRegistry_getWorkflowListByDON:test_getWorkflowListByDON_WhenTheDONFamilyHasNoWorkflowsRegistered() (gas: 31583) +WorkflowRegistry_getUserDONOverrides:test_getUserDONOverrides_WhenThereAreUserOverridesForASpecificDON() (gas: 914847) +WorkflowRegistry_getWorkflow:test_getWorkflow_WhenTheWorkflowDoesNotExist() (gas: 33662) +WorkflowRegistry_getWorkflow:test_getWorkflow_WhenTheWorkflowExistsWithTheOwnerAndNameAndTag() (gas: 1082334) +WorkflowRegistry_getWorkflowListByDON:test_getWorkflowListByDON_ShouldIncludeBothActiveAndPausedWorkflows() (gas: 1452600) +WorkflowRegistry_getWorkflowListByDON:test_getWorkflowListByDON_ShouldOnlyReturnWorkflowsFromSpecifiedDON() (gas: 3471475) +WorkflowRegistry_getWorkflowListByDON:test_getWorkflowListByDON_ShouldReturnWorkflowsWithCorrectStatus() (gas: 3439149) +WorkflowRegistry_getWorkflowListByDON:test_getWorkflowListByDON_WhenLimitIsGreaterThanOrEqualToTotalMinusStart() (gas: 3559482) +WorkflowRegistry_getWorkflowListByDON:test_getWorkflowListByDON_WhenLimitIsLessThanTotalMinusStart() (gas: 3452362) +WorkflowRegistry_getWorkflowListByDON:test_getWorkflowListByDON_WhenLimitIsZero() (gas: 3387135) +WorkflowRegistry_getWorkflowListByDON:test_getWorkflowListByDON_WhenStartIsGreaterThanOrEqualToTotalWorkflows() (gas: 3389962) +WorkflowRegistry_getWorkflowListByDON:test_getWorkflowListByDON_WhenTheDONFamilyHasNoWorkflowsRegistered() (gas: 18583) WorkflowRegistry_isAllowedSigner:test_isAllowedSigner_WhenTheSignerAddressHasNeverBeenConfigured() (gas: 10916) WorkflowRegistry_isAllowedSigner:test_isAllowedSigner_WhenTheSignerIsConfigured() (gas: 10833) WorkflowRegistry_isOwnerLinked:test_isOwnerLinked_WhenTheSpecifiedOwnerHasNotLinked() (gas: 9875) -WorkflowRegistry_isOwnerLinked:test_isOwnerLinked_WhenTheSpecifiedOwnerIsLinked() (gas: 170586) -WorkflowRegistry_limitsScenario:test_limitsScenario_whenGlobalLimitEqualsSumOfPerUserLimits() (gas: 8249287) -WorkflowRegistry_limitsScenario:test_limitsScenario_whenGlobalLimitLowerThanSumOfPerUserLimits() (gas: 7451466) -WorkflowRegistry_linkOwner:test_WhenTheProofWasPreviouslyUsed() (gas: 336850) -WorkflowRegistry_linkOwner:test_linkOwner_WhenProofIsValid() (gas: 173768) -WorkflowRegistry_linkOwner:test_linkOwner_WhenTheProofContainsInvalidData() (gas: 64426) -WorkflowRegistry_linkOwner:test_linkOwner_WhenTheProofIsNotSignedByAnAllowedSigner() (gas: 63100) -WorkflowRegistry_linkOwner:test_linkOwner_WhenTheSignatureIsNotValid() (gas: 49629) -WorkflowRegistry_linkOwner:test_linkOwner_WhenTheTimestampHasExpired() (gas: 52669) -WorkflowRegistry_linkOwner:test_linkOwner_WhenTheTimestampIsExpired() (gas: 225942) -WorkflowRegistry_linkOwner:test_linkOwner_WhenTheTimestampIsStillValid() (gas: 227109) -WorkflowRegistry_pauseWorkflow:test_pauseWorkflow_WhenCallerIsNotLinkedAsAnOwner() (gas: 38621) -WorkflowRegistry_pauseWorkflow:test_pauseWorkflow_WhenNoWorkflowExistsForTheGivenWorkflowId() (gas: 201395) -WorkflowRegistry_pauseWorkflow:test_pauseWorkflow_WhenTheWorkflowExistsButOwnerIsNotCaller() (gas: 1300480) -WorkflowRegistry_pauseWorkflow:test_pauseWorkflow_WhenTheWorkflowExistsOwnerMatchesAndStatusIsACTIVE() (gas: 1259482) -WorkflowRegistry_pauseWorkflow:test_pauseWorkflow_WhenTheWorkflowExistsOwnerMatchesButStatusIsPAUSED() (gas: 917295) -WorkflowRegistry_setCapabilitiesRegistry:test_setCapabilitiesRegistry_WhenBothRegistryAndChainSelectorAreTheSameAsCurrent() (gas: 95893) -WorkflowRegistry_setCapabilitiesRegistry:test_setCapabilitiesRegistry_WhenBothRegistryAndChainSelectorDifferFromTheCurrentValues() (gas: 101283) -WorkflowRegistry_setCapabilitiesRegistry:test_setCapabilitiesRegistry_WhenTheCallerIsNOTTheContractOwner() (gas: 37688) -WorkflowRegistry_setCapabilitiesRegistry:test_setCapabilitiesRegistry_WhenThereAreNoExistingRegistries() (gas: 66942) -WorkflowRegistry_setConfig:test_setConfig_WhenAllConfigFieldsAreZero() (gas: 142776) -WorkflowRegistry_setConfig:test_setConfig_WhenConfigFieldsAreNon_zero() (gas: 78880) -WorkflowRegistry_setConfig:test_setConfig_WhenSomeConfigFieldsAreZero() (gas: 78771) -WorkflowRegistry_setConfig:test_setConfig_WhenTheCallerIsNOTTheContractOwner() (gas: 36749) -WorkflowRegistry_setDONLimit:test_setDONLimit_WhenNewLimitDoesNotEqualExistingLimit() (gas: 486384) -WorkflowRegistry_setDONLimit:test_setDONLimit_WhenNewLimitIsEqualToExistingLimit() (gas: 320926) -WorkflowRegistry_setDONLimit:test_setDONLimit_WhenNoPreviousLimitExistsForDonLabel() (gas: 290656) -WorkflowRegistry_setDONLimit:test_setDONLimit_WhenNooPreviousLimitExistsForDonLabel() (gas: 82323) -WorkflowRegistry_setDONLimit:test_setDONLimit_WhenPreviousLimitExistsForDonLabel() (gas: 420559) -WorkflowRegistry_setDONLimit:test_setDONLimit_WhenTheCallerIsNOTTheContractOwner() (gas: 39253) -WorkflowRegistry_setUserDONOverride:test_setUserDONOverride_WhenAPriorOverrideExistsForUserDonLabel() (gas: 452916) -WorkflowRegistry_setUserDONOverride:test_setUserDONOverride_WhenGlobalDONLimitIsNotSet() (gas: 45203) -WorkflowRegistry_setUserDONOverride:test_setUserDONOverride_WhenLimitIsGreaterThanGlobalDONLimit() (gas: 297879) -WorkflowRegistry_setUserDONOverride:test_setUserDONOverride_WhenNewLimitDoesNotEqualExistingOverrideValue() (gas: 458371) -WorkflowRegistry_setUserDONOverride:test_setUserDONOverride_WhenNewLimitIsEqualToExistingOverrideValue() (gas: 398827) -WorkflowRegistry_setUserDONOverride:test_setUserDONOverride_WhenNoPriorOverrideExists() (gas: 315814) -WorkflowRegistry_setUserDONOverride:test_setUserDONOverride_WhenNoPriorOverrideExistsForUserDonLabel() (gas: 399585) -WorkflowRegistry_setUserDONOverride:test_setUserDONOverride_WhenTheCallerIsNOTTheContractOwner() (gas: 39892) -WorkflowRegistry_setWorkflowOwnerConfig:test_setWorkflowOwnerConfig_WhenSettingANonEmptyConfigForTheFirstTime() (gas: 70152) -WorkflowRegistry_setWorkflowOwnerConfig:test_setWorkflowOwnerConfig_WhenSettingAnEmptyBlob() (gas: 108810) -WorkflowRegistry_setWorkflowOwnerConfig:test_setWorkflowOwnerConfig_WhenTheCallerIsNOTTheContractOwner() (gas: 39441) -WorkflowRegistry_setWorkflowOwnerConfig:test_setWorkflowOwnerConfig_WhenUpdatingToADifferentBlob() (gas: 119687) -WorkflowRegistry_totalEvents:test_totalEvents() (gas: 552589) -WorkflowRegistry_totalLinkedOwners:test_totalLinkedOwners() (gas: 439924) -WorkflowRegistry_unlinkOwner:test_unlinkOwner_AutomaticallyDeletesWorkflowsWhenCallerIsNotOwner() (gas: 4844409) -WorkflowRegistry_unlinkOwner:test_unlinkOwner_AutomaticallyDeletesWorkflowsWhenOwnerIsLinked() (gas: 4842827) -WorkflowRegistry_unlinkOwner:test_unlinkOwner_UnlinkOwnerWhenCallerIsNotOwnerGivenTheOwnerIsNotLinked() (gas: 59769) -WorkflowRegistry_unlinkOwner:test_unlinkOwner_UnlinkOwnerWhenCallerIsNotOwnerGivenTheProofDoesNotMatchTheStoredProof() (gas: 224179) -WorkflowRegistry_unlinkOwner:test_unlinkOwner_UnlinkOwnerWhenCallerIsNotOwnerWhenRequestTimestampHasExpired() (gas: 208975) -WorkflowRegistry_unlinkOwner:test_unlinkOwner_UnlinkOwnerWhenCallerIsNotOwnerWhenTheProofIsNotValid() (gas: 223657) -WorkflowRegistry_unlinkOwner:test_unlinkOwner_UnlinkOwnerWhenCallerIsNotOwnerWhenTheProofIsValid() (gas: 219438) -WorkflowRegistry_unlinkOwner:test_unlinkOwner_UnlinkOwnerWhenCallerIsOwnerGivenTheOwnerIsNotLinked() (gas: 58813) -WorkflowRegistry_unlinkOwner:test_unlinkOwner_UnlinkOwnerWhenCallerIsOwnerGivenTheProofDoesNotMatchTheStoredProof() (gas: 221950) -WorkflowRegistry_unlinkOwner:test_unlinkOwner_UnlinkOwnerWhenCallerIsOwnerWhenRequestTimestampHasExpired() (gas: 207230) -WorkflowRegistry_unlinkOwner:test_unlinkOwner_UnlinkOwnerWhenCallerIsOwnerWhenTheProofIsNotValid() (gas: 221814) -WorkflowRegistry_unlinkOwner:test_unlinkOwner_UnlinkOwnerWhenCallerIsOwnerWhenTheProofIsValid() (gas: 217495) -WorkflowRegistry_updateAllowedSigners:test_updateAllowedSigners_GivenSignerIsNotAlreadyAdded() (gas: 115069) -WorkflowRegistry_updateAllowedSigners:test_updateAllowedSigners_GivenTheSignerIsAlreadyAdded() (gas: 60766) -WorkflowRegistry_updateAllowedSigners:test_updateAllowedSigners_GivenTheSignerIsAlreadyRemoved() (gas: 67229) -WorkflowRegistry_updateAllowedSigners:test_updateAllowedSigners_GivenTheSignerIsNotAlreadyRemoved() (gas: 65934) -WorkflowRegistry_updateAllowedSigners:test_updateAllowedSigners_ShouldOnlyBeCalledByTheContractOwner() (gas: 36829) -WorkflowRegistry_updateAllowedSigners:test_updateAllowedSigners_WhenTheSignerIsTheZeroAddress() (gas: 54591) -WorkflowRegistry_upsertWorkflow:test_upsertWorkflow_RevertWhenDonFamilyIsChangedOnUpdateWorkflow() (gas: 1609772) -WorkflowRegistry_upsertWorkflow:test_upsertWorkflow_RevertWhenStatusIsChangedOnUpdateWorkflow() (gas: 1386461) -WorkflowRegistry_upsertWorkflow:test_upsertWorkflow_WhenAttributesLengthGreaterThanAllowed() (gas: 415589) -WorkflowRegistry_upsertWorkflow:test_upsertWorkflow_WhenBinaryUrlIsMissing() (gas: 217649) -WorkflowRegistry_upsertWorkflow:test_upsertWorkflow_WhenBinaryUrlLengthGreaterThanAllowed() (gas: 255711) -WorkflowRegistry_upsertWorkflow:test_upsertWorkflow_WhenConfigUrlLengthGreaterThanAllowed() (gas: 255636) -WorkflowRegistry_upsertWorkflow:test_upsertWorkflow_WhenKeepAliveIsTrue() (gas: 2156192) -WorkflowRegistry_upsertWorkflow:test_upsertWorkflow_WhenMsgSenderNotALinkedOwner() (gas: 58063) -WorkflowRegistry_upsertWorkflow:test_upsertWorkflow_WhenNewAttributesLengthGreaterThanAllowed() (gas: 1394796) -WorkflowRegistry_upsertWorkflow:test_upsertWorkflow_WhenNewBinaryUrlIsMissing() (gas: 1172248) -WorkflowRegistry_upsertWorkflow:test_upsertWorkflow_WhenNewBinaryUrlOrNewConfigUrlLengthGreaterThanAllowed() (gas: 1220243) -WorkflowRegistry_upsertWorkflow:test_upsertWorkflow_WhenNewWorkflowIdAlreadyExists() (gas: 1170985) -WorkflowRegistry_upsertWorkflow:test_upsertWorkflow_WhenNewWorkflowIdIsZero() (gas: 1167977) -WorkflowRegistry_upsertWorkflow:test_upsertWorkflow_WhenOwnerWouldExceedTheirEffectiveCap() (gas: 3092795) -WorkflowRegistry_upsertWorkflow:test_upsertWorkflow_WhenTagLengthGreaterThanAllowed() (gas: 245180) -WorkflowRegistry_upsertWorkflow:test_upsertWorkflow_WhenTagLengthIsZero() (gas: 218090) -WorkflowRegistry_upsertWorkflow:test_upsertWorkflow_WhenTheDonHasNoGlobalCapSet() (gas: 230690) -WorkflowRegistry_upsertWorkflow:test_upsertWorkflow_WhenThereAreMoreThanOneActiveWorkflowThatSharesTheKey() (gas: 2280861) -WorkflowRegistry_upsertWorkflow:test_upsertWorkflow_WhenThereAreNoActiveWorkflowsWithTheSameKey() (gas: 2289532) -WorkflowRegistry_upsertWorkflow:test_upsertWorkflow_WhenThereAreNoFailures() (gas: 1139483) -WorkflowRegistry_upsertWorkflow:test_upsertWorkflow_WhenThereAreNoValidationFailures() (gas: 1253102) -WorkflowRegistry_upsertWorkflow:test_upsertWorkflow_WhenWorkflowIdAlreadyExists() (gas: 666091) -WorkflowRegistry_upsertWorkflow:test_upsertWorkflow_WhenWorkflowIdIsZero() (gas: 213522) -WorkflowRegistry_upsertWorkflow:test_upsertWorkflow_WhenWorkflowNameLengthGreaterThanAllowed() (gas: 245216) -WorkflowRegistry_upsertWorkflow:test_upsertWorkflow_WhenWorkflowNameLengthIsZero() (gas: 217648) -WorkflowRegistrydeleteWorkflow:test_WhenCallerIsNotTheOwner() (gas: 795465) -WorkflowRegistrydeleteWorkflow:test_WhenCallerIsTheOwner() (gas: 757670) -WorkflowRegistrydeleteWorkflow:test_WhenTheOwnerIsNotLinked() (gas: 38131) -WorkflowRegistrydeleteWorkflow:test_WhenTheWorkflowDoesNotExist() (gas: 200864) -WorkflowRegistrydeleteWorkflow:test_deleteWorkflow_activeThenPausedWorkflowShouldNotLeaveAnyStaleEntries() (gas: 3122508) -WorkflowRegistrydeleteWorkflow:test_deleteWorkflow_pausedWorkflowShouldNotLeaveAnyStaleEntries() (gas: 3011828) \ No newline at end of file +WorkflowRegistry_isOwnerLinked:test_isOwnerLinked_WhenTheSpecifiedOwnerIsLinked() (gas: 145390) +WorkflowRegistry_limitsScenario:test_limitsScenario_whenGlobalLimitEqualsSumOfPerUserLimits() (gas: 7059707) +WorkflowRegistry_limitsScenario:test_limitsScenario_whenGlobalLimitLowerThanSumOfPerUserLimits() (gas: 6357842) +WorkflowRegistry_linkOwner:test_WhenTheProofWasPreviouslyUsed() (gas: 145658) +WorkflowRegistry_linkOwner:test_linkOwner_WhenProofIsValid() (gas: 148572) +WorkflowRegistry_linkOwner:test_linkOwner_WhenTheProofContainsInvalidData() (gas: 41242) +WorkflowRegistry_linkOwner:test_linkOwner_WhenTheProofIsNotSignedByAnAllowedSigner() (gas: 39928) +WorkflowRegistry_linkOwner:test_linkOwner_WhenTheSignatureIsNotValid() (gas: 27265) +WorkflowRegistry_linkOwner:test_linkOwner_WhenTheTimestampHasExpired() (gas: 29473) +WorkflowRegistry_linkOwner:test_linkOwner_WhenTheTimestampIsExpired() (gas: 158050) +WorkflowRegistry_linkOwner:test_linkOwner_WhenTheTimestampIsStillValid() (gas: 157217) +WorkflowRegistry_pauseWorkflow:test_pauseWorkflow_WhenCallerIsNotLinkedAsAnOwner() (gas: 17045) +WorkflowRegistry_pauseWorkflow:test_pauseWorkflow_WhenNoWorkflowExistsForTheGivenWorkflowId() (gas: 154623) +WorkflowRegistry_pauseWorkflow:test_pauseWorkflow_WhenTheWorkflowExistsButOwnerIsNotCaller() (gas: 1168876) +WorkflowRegistry_pauseWorkflow:test_pauseWorkflow_WhenTheWorkflowExistsOwnerMatchesAndStatusIsACTIVE() (gas: 950128) +WorkflowRegistry_pauseWorkflow:test_pauseWorkflow_WhenTheWorkflowExistsOwnerMatchesButStatusIsPAUSED() (gas: 817675) +WorkflowRegistry_setCapabilitiesRegistry:test_setCapabilitiesRegistry_WhenBothRegistryAndChainSelectorAreTheSameAsCurrent() (gas: 44201) +WorkflowRegistry_setCapabilitiesRegistry:test_setCapabilitiesRegistry_WhenBothRegistryAndChainSelectorDifferFromTheCurrentValues() (gas: 46791) +WorkflowRegistry_setCapabilitiesRegistry:test_setCapabilitiesRegistry_WhenTheCallerIsNOTTheContractOwner() (gas: 16092) +WorkflowRegistry_setCapabilitiesRegistry:test_setCapabilitiesRegistry_WhenThereAreNoExistingRegistries() (gas: 43346) +WorkflowRegistry_setConfig:test_setConfig_WhenAllConfigFieldsAreZero() (gas: 50320) +WorkflowRegistry_setConfig:test_setConfig_WhenConfigFieldsAreNon_zero() (gas: 37116) +WorkflowRegistry_setConfig:test_setConfig_WhenSomeConfigFieldsAreZero() (gas: 37055) +WorkflowRegistry_setConfig:test_setConfig_WhenTheCallerIsNOTTheContractOwner() (gas: 14985) +WorkflowRegistry_setDONLimit:test_setDONLimit_WhenNewLimitDoesNotEqualExistingLimit() (gas: 360848) +WorkflowRegistry_setDONLimit:test_setDONLimit_WhenNewLimitIsEqualToExistingLimit() (gas: 256302) +WorkflowRegistry_setDONLimit:test_setDONLimit_WhenNoPreviousLimitExistsForDonLabel() (gas: 254344) +WorkflowRegistry_setDONLimit:test_setDONLimit_WhenNooPreviousLimitExistsForDonLabel() (gas: 34235) +WorkflowRegistry_setDONLimit:test_setDONLimit_WhenPreviousLimitExistsForDonLabel() (gas: 317059) +WorkflowRegistry_setDONLimit:test_setDONLimit_WhenTheCallerIsNOTTheContractOwner() (gas: 17441) +WorkflowRegistry_setUserDONOverride:test_setUserDONOverride_WhenAPriorOverrideExistsForUserDonLabel() (gas: 284141) +WorkflowRegistry_setUserDONOverride:test_setUserDONOverride_WhenGlobalDONLimitIsNotSet() (gas: 23023) +WorkflowRegistry_setUserDONOverride:test_setUserDONOverride_WhenLimitIsGreaterThanGlobalDONLimit() (gas: 249887) +WorkflowRegistry_setUserDONOverride:test_setUserDONOverride_WhenNewLimitDoesNotEqualExistingOverrideValue() (gas: 359899) +WorkflowRegistry_setUserDONOverride:test_setUserDONOverride_WhenNewLimitIsEqualToExistingOverrideValue() (gas: 346335) +WorkflowRegistry_setUserDONOverride:test_setUserDONOverride_WhenNoPriorOverrideExists() (gas: 261334) +WorkflowRegistry_setUserDONOverride:test_setUserDONOverride_WhenNoPriorOverrideExistsForUserDonLabel() (gas: 347093) +WorkflowRegistry_setUserDONOverride:test_setUserDONOverride_WhenTheCallerIsNOTTheContractOwner() (gas: 17712) +WorkflowRegistry_setWorkflowOwnerConfig:test_setWorkflowOwnerConfig_WhenSettingANonEmptyConfigForTheFirstTime() (gas: 46228) +WorkflowRegistry_setWorkflowOwnerConfig:test_setWorkflowOwnerConfig_WhenSettingAnEmptyBlob() (gas: 38205) +WorkflowRegistry_setWorkflowOwnerConfig:test_setWorkflowOwnerConfig_WhenTheCallerIsNOTTheContractOwner() (gas: 17449) +WorkflowRegistry_setWorkflowOwnerConfig:test_setWorkflowOwnerConfig_WhenUpdatingToADifferentBlob() (gas: 54123) +WorkflowRegistry_totalEvents:test_totalEvents() (gas: 479401) +WorkflowRegistry_totalLinkedOwners:test_totalLinkedOwners() (gas: 354736) +WorkflowRegistry_unlinkOwner:test_unlinkOwner_AutomaticallyDeletesWorkflowsWhenCallerIsNotOwner() (gas: 3133073) +WorkflowRegistry_unlinkOwner:test_unlinkOwner_AutomaticallyDeletesWorkflowsWhenOwnerIsLinked() (gas: 3131808) +WorkflowRegistry_unlinkOwner:test_unlinkOwner_UnlinkOwnerWhenCallerIsNotOwnerGivenTheOwnerIsNotLinked() (gas: 36717) +WorkflowRegistry_unlinkOwner:test_unlinkOwner_UnlinkOwnerWhenCallerIsNotOwnerGivenTheProofDoesNotMatchTheStoredProof() (gas: 171931) +WorkflowRegistry_unlinkOwner:test_unlinkOwner_UnlinkOwnerWhenCallerIsNotOwnerWhenRequestTimestampHasExpired() (gas: 160739) +WorkflowRegistry_unlinkOwner:test_unlinkOwner_UnlinkOwnerWhenCallerIsNotOwnerWhenTheProofIsNotValid() (gas: 171409) +WorkflowRegistry_unlinkOwner:test_unlinkOwner_UnlinkOwnerWhenCallerIsNotOwnerWhenTheProofIsValid() (gas: 133637) +WorkflowRegistry_unlinkOwner:test_unlinkOwner_UnlinkOwnerWhenCallerIsOwnerGivenTheOwnerIsNotLinked() (gas: 35761) +WorkflowRegistry_unlinkOwner:test_unlinkOwner_UnlinkOwnerWhenCallerIsOwnerGivenTheProofDoesNotMatchTheStoredProof() (gas: 169702) +WorkflowRegistry_unlinkOwner:test_unlinkOwner_UnlinkOwnerWhenCallerIsOwnerWhenRequestTimestampHasExpired() (gas: 158982) +WorkflowRegistry_unlinkOwner:test_unlinkOwner_UnlinkOwnerWhenCallerIsOwnerWhenTheProofIsNotValid() (gas: 169566) +WorkflowRegistry_unlinkOwner:test_unlinkOwner_UnlinkOwnerWhenCallerIsOwnerWhenTheProofIsValid() (gas: 132083) +WorkflowRegistry_updateAllowedSigners:test_updateAllowedSigners_GivenSignerIsNotAlreadyAdded() (gas: 83933) +WorkflowRegistry_updateAllowedSigners:test_updateAllowedSigners_GivenTheSignerIsAlreadyAdded() (gas: 32130) +WorkflowRegistry_updateAllowedSigners:test_updateAllowedSigners_GivenTheSignerIsAlreadyRemoved() (gas: 36105) +WorkflowRegistry_updateAllowedSigners:test_updateAllowedSigners_GivenTheSignerIsNotAlreadyRemoved() (gas: 44910) +WorkflowRegistry_updateAllowedSigners:test_updateAllowedSigners_ShouldOnlyBeCalledByTheContractOwner() (gas: 15357) +WorkflowRegistry_updateAllowedSigners:test_updateAllowedSigners_WhenTheSignerIsTheZeroAddress() (gas: 27979) +WorkflowRegistry_upsertWorkflow:test_upsertWorkflow_RevertWhenDonFamilyIsChangedOnUpdateWorkflow() (gas: 1419108) +WorkflowRegistry_upsertWorkflow:test_upsertWorkflow_RevertWhenStatusIsChangedOnUpdateWorkflow() (gas: 1231389) +WorkflowRegistry_upsertWorkflow:test_upsertWorkflow_WhenAttributesLengthGreaterThanAllowed() (gas: 338177) +WorkflowRegistry_upsertWorkflow:test_upsertWorkflow_WhenBinaryUrlIsMissing() (gas: 167677) +WorkflowRegistry_upsertWorkflow:test_upsertWorkflow_WhenBinaryUrlLengthGreaterThanAllowed() (gas: 190859) +WorkflowRegistry_upsertWorkflow:test_upsertWorkflow_WhenConfigUrlLengthGreaterThanAllowed() (gas: 190772) +WorkflowRegistry_upsertWorkflow:test_upsertWorkflow_WhenKeepAliveIsTrue() (gas: 1892720) +WorkflowRegistry_upsertWorkflow:test_upsertWorkflow_WhenMsgSenderNotALinkedOwner() (gas: 33015) +WorkflowRegistry_upsertWorkflow:test_upsertWorkflow_WhenNewAttributesLengthGreaterThanAllowed() (gas: 1254572) +WorkflowRegistry_upsertWorkflow:test_upsertWorkflow_WhenNewBinaryUrlIsMissing() (gas: 1069476) +WorkflowRegistry_upsertWorkflow:test_upsertWorkflow_WhenNewBinaryUrlOrNewConfigUrlLengthGreaterThanAllowed() (gas: 1092591) +WorkflowRegistry_upsertWorkflow:test_upsertWorkflow_WhenNewWorkflowIdAlreadyExists() (gas: 1067929) +WorkflowRegistry_upsertWorkflow:test_upsertWorkflow_WhenNewWorkflowIdIsZero() (gas: 1067305) +WorkflowRegistry_upsertWorkflow:test_upsertWorkflow_WhenOwnerWouldExceedTheirEffectiveCap() (gas: 2438081) +WorkflowRegistry_upsertWorkflow:test_upsertWorkflow_WhenTagLengthGreaterThanAllowed() (gas: 182088) +WorkflowRegistry_upsertWorkflow:test_upsertWorkflow_WhenTagLengthIsZero() (gas: 168058) +WorkflowRegistry_upsertWorkflow:test_upsertWorkflow_WhenTheDonHasNoGlobalCapSet() (gas: 180470) +WorkflowRegistry_upsertWorkflow:test_upsertWorkflow_WhenThereAreMoreThanOneActiveWorkflowThatSharesTheKey() (gas: 1895101) +WorkflowRegistry_upsertWorkflow:test_upsertWorkflow_WhenThereAreNoActiveWorkflowsWithTheSameKey() (gas: 1962684) +WorkflowRegistry_upsertWorkflow:test_upsertWorkflow_WhenThereAreNoFailures() (gas: 1065451) +WorkflowRegistry_upsertWorkflow:test_upsertWorkflow_WhenThereAreNoValidationFailures() (gas: 1095546) +WorkflowRegistry_upsertWorkflow:test_upsertWorkflow_WhenWorkflowIdAlreadyExists() (gas: 586823) +WorkflowRegistry_upsertWorkflow:test_upsertWorkflow_WhenWorkflowIdIsZero() (gas: 163662) +WorkflowRegistry_upsertWorkflow:test_upsertWorkflow_WhenWorkflowNameLengthGreaterThanAllowed() (gas: 182196) +WorkflowRegistry_upsertWorkflow:test_upsertWorkflow_WhenWorkflowNameLengthIsZero() (gas: 167688) +WorkflowRegistrydeleteWorkflow:test_WhenCallerIsNotTheOwner() (gas: 687661) +WorkflowRegistrydeleteWorkflow:test_WhenCallerIsTheOwner() (gas: 486005) +WorkflowRegistrydeleteWorkflow:test_WhenTheOwnerIsNotLinked() (gas: 16555) +WorkflowRegistrydeleteWorkflow:test_WhenTheWorkflowDoesNotExist() (gas: 154092) +WorkflowRegistrydeleteWorkflow:test_deleteWorkflow_activeThenPausedWorkflowShouldNotLeaveAnyStaleEntries() (gas: 2133135) +WorkflowRegistrydeleteWorkflow:test_deleteWorkflow_pausedWorkflowShouldNotLeaveAnyStaleEntries() (gas: 1886015) \ No newline at end of file diff --git a/contracts/gas-snapshots/automation-cre.gas-snapshot b/contracts/gas-snapshots/automation-cre.gas-snapshot index e2646339d9..df4276677d 100644 --- a/contracts/gas-snapshots/automation-cre.gas-snapshot +++ b/contracts/gas-snapshots/automation-cre.gas-snapshot @@ -1,37 +1,37 @@ -AutomationReceiverTest:test_getBlockNumberCheck_ReflectsState() (gas: 301247) -AutomationReceiverTest:test_getters_ReflectState() (gas: 22447) -AutomationReceiverTest:test_isCallAllowed_ReflectsState() (gas: 71909) -AutomationReceiverTest:test_onReport_AllowedCallExecutes() (gas: 169979) -AutomationReceiverTest:test_onReport_BlockNumberCheckDisabledAllowsOutOfOrder() (gas: 221502) -AutomationReceiverTest:test_onReport_BlockNumberCheckEqualBlockAccepted() (gas: 298537) -AutomationReceiverTest:test_onReport_BlockNumberCheckSnapshotUsesCurrentBlock() (gas: 311746) -AutomationReceiverTest:test_onReport_BlockNumberCheckWithExplicitFloor() (gas: 437866) -AutomationReceiverTest:test_onReport_CombinedIdentityAccepted() (gas: 2395622) -AutomationReceiverTest:test_onReport_EIP150TermEnsuresFullGasForwardedAtHighLimit() (gas: 186098) -AutomationReceiverTest:test_onReport_FailingCallDoesNotRevert() (gas: 162056) -AutomationReceiverTest:test_onReport_GasLimitZeroPreservesUnboundedBehavior() (gas: 162059) -AutomationReceiverTest:test_onReport_GasOverheadCorrectlyCoversNoOpConsumer() (gas: 186542) -AutomationReceiverTest:test_onReport_GasOverheadCoversWorstCaseGasBurningConsumer() (gas: 378375) -AutomationReceiverTest:test_onReport_InsufficientGasDoesNotAdvanceBlockNumber() (gas: 369186) -AutomationReceiverTest:test_onReport_OwnerAndNameSufficeWithoutWorkflowId() (gas: 2348276) -AutomationReceiverTest:test_onReport_PausedNonRetryableConsumesReport() (gas: 153549) -AutomationReceiverTest:test_onReport_RequiredIncludesEIP150Buffer() (gas: 155872) -AutomationReceiverTest:test_onReport_SufficientGasWithLimitSucceeds() (gas: 186028) -AutomationReceiverTest:test_onReport_WorkflowIdAloneSuffices() (gas: 2278162) -AutomationReceiverTest:test_paused_ReflectsState() (gas: 112674) -AutomationReceiverTest:test_retryableWhilePaused_ReflectsMode() (gas: 148222) -AutomationReceiverTest:test_setBlockNumberCheck_IsPerPair() (gas: 96826) -AutomationReceiverTest:test_setCallAllowed_RevocationSkipsCodeCheck() (gas: 37014) -AutomationReceiverTest:test_setConsumerGasLimit_IsPerPair() (gas: 79310) -AutomationReceiverTest:test_setConsumerGasLimit_SetAndGet() (gas: 102010) +AutomationReceiverTest:test_getBlockNumberCheck_ReflectsState() (gas: 129124) +AutomationReceiverTest:test_getters_ReflectState() (gas: 13447) +AutomationReceiverTest:test_isCallAllowed_ReflectsState() (gas: 39661) +AutomationReceiverTest:test_onReport_AllowedCallExecutes() (gas: 111919) +AutomationReceiverTest:test_onReport_BlockNumberCheckDisabledAllowsOutOfOrder() (gas: 121378) +AutomationReceiverTest:test_onReport_BlockNumberCheckEqualBlockAccepted() (gas: 168525) +AutomationReceiverTest:test_onReport_BlockNumberCheckSnapshotUsesCurrentBlock() (gas: 168522) +AutomationReceiverTest:test_onReport_BlockNumberCheckWithExplicitFloor() (gas: 189978) +AutomationReceiverTest:test_onReport_CombinedIdentityAccepted() (gas: 2067844) +AutomationReceiverTest:test_onReport_EIP150TermEnsuresFullGasForwardedAtHighLimit() (gas: 108954) +AutomationReceiverTest:test_onReport_FailingCallDoesNotRevert() (gas: 89328) +AutomationReceiverTest:test_onReport_GasLimitZeroPreservesUnboundedBehavior() (gas: 89331) +AutomationReceiverTest:test_onReport_GasOverheadCorrectlyCoversNoOpConsumer() (gas: 109410) +AutomationReceiverTest:test_onReport_GasOverheadCoversWorstCaseGasBurningConsumer() (gas: 284043) +AutomationReceiverTest:test_onReport_InsufficientGasDoesNotAdvanceBlockNumber() (gas: 200202) +AutomationReceiverTest:test_onReport_OwnerAndNameSufficeWithoutWorkflowId() (gas: 2045714) +AutomationReceiverTest:test_onReport_PausedNonRetryableConsumesReport() (gas: 81333) +AutomationReceiverTest:test_onReport_RequiredIncludesEIP150Buffer() (gas: 83228) +AutomationReceiverTest:test_onReport_SufficientGasWithLimitSucceeds() (gas: 108896) +AutomationReceiverTest:test_onReport_WorkflowIdAloneSuffices() (gas: 2013124) +AutomationReceiverTest:test_paused_ReflectsState() (gas: 42352) +AutomationReceiverTest:test_retryableWhilePaused_ReflectsMode() (gas: 59677) +AutomationReceiverTest:test_setBlockNumberCheck_IsPerPair() (gas: 66426) +AutomationReceiverTest:test_setCallAllowed_RevocationSkipsCodeCheck() (gas: 13506) +AutomationReceiverTest:test_setConsumerGasLimit_IsPerPair() (gas: 44538) +AutomationReceiverTest:test_setConsumerGasLimit_SetAndGet() (gas: 29629) AutomationReceiverTest:test_supportsInterface_ERC165() (gas: 5779) AutomationReceiverTest:test_supportsInterface_IReceiver() (gas: 5708) AutomationReceiverTest:test_supportsInterface_ReturnsFalseForUnknown() (gas: 5736) -AutomationReceiverTest:test_unpause_ResumesDelivery() (gas: 290882) -ReceiverTemplateTest:test_getters_ReflectState() (gas: 1290731) -ReceiverTemplateTest:test_onReport_AcceptsWhenMetadataMatches() (gas: 1390055) -ReceiverTemplateTest:test_setExpectedAuthor_ClearingAuthorWhileNameSetDoesNotRevert() (gas: 1260330) -ReceiverTemplateTest:test_setExpectedWorkflowName_CanBeSetWithoutAuthor() (gas: 1199215) -ReceiverTemplateTest:test_setExpectedWorkflowName_ClearWithEmptyString() (gas: 1223472) -ReceiverTemplateTest:test_setForwarderAddress_ZeroSucceedsAtTemplateLevel() (gas: 1145560) -ReceiverTemplateTest:test_supportsInterface() (gas: 1123423) \ No newline at end of file +AutomationReceiverTest:test_unpause_ResumesDelivery() (gas: 148714) +ReceiverTemplateTest:test_getters_ReflectState() (gas: 1083915) +ReceiverTemplateTest:test_onReport_AcceptsWhenMetadataMatches() (gas: 1156615) +ReceiverTemplateTest:test_setExpectedAuthor_ClearingAuthorWhileNameSetDoesNotRevert() (gas: 1059738) +ReceiverTemplateTest:test_setExpectedWorkflowName_CanBeSetWithoutAuthor() (gas: 1054619) +ReceiverTemplateTest:test_setExpectedWorkflowName_ClearWithEmptyString() (gas: 1038444) +ReceiverTemplateTest:test_setForwarderAddress_ZeroSucceedsAtTemplateLevel() (gas: 986324) +ReceiverTemplateTest:test_supportsInterface() (gas: 1002479) \ No newline at end of file diff --git a/contracts/gas-snapshots/data-feeds.gas-snapshot b/contracts/gas-snapshots/data-feeds.gas-snapshot index 16e1b3d7ec..d0990dd84d 100644 --- a/contracts/gas-snapshots/data-feeds.gas-snapshot +++ b/contracts/gas-snapshots/data-feeds.gas-snapshot @@ -1,97 +1,97 @@ BundleAggregatorProxyTest:test_aggregator() (gas: 9785) BundleAggregatorProxyTest:test_bundleDecimals() (gas: 16300) -BundleAggregatorProxyTest:test_confirmAggregatorRevertNotProposed() (gas: 34359) -BundleAggregatorProxyTest:test_confirmAggregatorSuccess() (gas: 87417) +BundleAggregatorProxyTest:test_confirmAggregatorRevertNotProposed() (gas: 13155) +BundleAggregatorProxyTest:test_confirmAggregatorSuccess() (gas: 32435) BundleAggregatorProxyTest:test_description() (gas: 20305) BundleAggregatorProxyTest:test_latestBundle() (gas: 16946) BundleAggregatorProxyTest:test_latestBundleTimestamp() (gas: 15240) -BundleAggregatorProxyTest:test_proposeAggregator() (gas: 64146) +BundleAggregatorProxyTest:test_proposeAggregator() (gas: 40942) BundleAggregatorProxyTest:test_version() (gas: 10787) -DataFeedsCacheGasTest:test_bundleDecimals_proxy_gas() (gas: 24786) -DataFeedsCacheGasTest:test_decimals_proxy_gas() (gas: 19412) -DataFeedsCacheGasTest:test_description_proxy_gas() (gas: 23206) -DataFeedsCacheGasTest:test_getAnswer_proxy_gas() (gas: 21651) -DataFeedsCacheGasTest:test_getRoundData_proxy_gas() (gas: 22473) -DataFeedsCacheGasTest:test_getTimestamp_proxy_gas() (gas: 21656) -DataFeedsCacheGasTest:test_latestAnswer_proxy_gas() (gas: 21007) -DataFeedsCacheGasTest:test_latestBundleTimestamp_proxy_gas() (gas: 20984) -DataFeedsCacheGasTest:test_latestBundle_proxy_gas() (gas: 22635) -DataFeedsCacheGasTest:test_latestRoundData_proxy_gas() (gas: 24406) -DataFeedsCacheGasTest:test_latestRound_proxy_gas() (gas: 21128) -DataFeedsCacheGasTest:test_latestTimestamp_proxy_gas() (gas: 21127) -DataFeedsCacheGasTest:test_removeDataIdMappingsForProxies1feed_gas() (gas: 34569) -DataFeedsCacheGasTest:test_removeDataIdMappingsForProxies5feeds_gas() (gas: 57805) -DataFeedsCacheGasTest:test_updateDataIdMappingsForProxies1feed_gas() (gas: 67253) -DataFeedsCacheGasTest:test_updateDataIdMappingsForProxies5feeds_gas() (gas: 121189) -DataFeedsCacheGasTest:test_write_onReport_prices_1_gas() (gas: 97537) -DataFeedsCacheGasTest:test_write_onReport_prices_5_gas() (gas: 361062) -DataFeedsCacheGasTest:test_write_removeFeedConfigs_1_gas() (gas: 60735) -DataFeedsCacheGasTest:test_write_removeFeedConfigs_5_gas() (gas: 202622) -DataFeedsCacheGasTest:test_write_setBundleFeedConfigs_1_gas() (gas: 308360) -DataFeedsCacheGasTest:test_write_setBundleFeedConfigs_5_gas() (gas: 1325301) -DataFeedsCacheGasTest:test_write_setBundleFeedConfigs_with_delete_1_gas() (gas: 100792) -DataFeedsCacheGasTest:test_write_setBundleFeedConfigs_with_delete_5_gas() (gas: 330049) -DataFeedsCacheGasTest:test_write_setDecimalFeedConfigs_1_gas() (gas: 242784) -DataFeedsCacheGasTest:test_write_setDecimalFeedConfigs_5_gas() (gas: 1007119) -DataFeedsCacheGasTest:test_write_setDecimalFeedConfigs_with_delete_1_gas() (gas: 84774) -DataFeedsCacheGasTest:test_write_setDecimalFeedConfigs_with_delete_5_gas() (gas: 260776) +DataFeedsCacheGasTest:test_bundleDecimals_proxy_gas() (gas: 22286) +DataFeedsCacheGasTest:test_decimals_proxy_gas() (gas: 16912) +DataFeedsCacheGasTest:test_description_proxy_gas() (gas: 20706) +DataFeedsCacheGasTest:test_getAnswer_proxy_gas() (gas: 19151) +DataFeedsCacheGasTest:test_getRoundData_proxy_gas() (gas: 19973) +DataFeedsCacheGasTest:test_getTimestamp_proxy_gas() (gas: 19156) +DataFeedsCacheGasTest:test_latestAnswer_proxy_gas() (gas: 18507) +DataFeedsCacheGasTest:test_latestBundleTimestamp_proxy_gas() (gas: 18484) +DataFeedsCacheGasTest:test_latestBundle_proxy_gas() (gas: 20135) +DataFeedsCacheGasTest:test_latestRoundData_proxy_gas() (gas: 21906) +DataFeedsCacheGasTest:test_latestRound_proxy_gas() (gas: 18628) +DataFeedsCacheGasTest:test_latestTimestamp_proxy_gas() (gas: 18627) +DataFeedsCacheGasTest:test_removeDataIdMappingsForProxies1feed_gas() (gas: 17873) +DataFeedsCacheGasTest:test_removeDataIdMappingsForProxies5feeds_gas() (gas: 43203) +DataFeedsCacheGasTest:test_updateDataIdMappingsForProxies1feed_gas() (gas: 45277) +DataFeedsCacheGasTest:test_updateDataIdMappingsForProxies5feeds_gas() (gas: 97781) +DataFeedsCacheGasTest:test_write_onReport_prices_1_gas() (gas: 74765) +DataFeedsCacheGasTest:test_write_onReport_prices_5_gas() (gas: 336286) +DataFeedsCacheGasTest:test_write_removeFeedConfigs_1_gas() (gas: 52598) +DataFeedsCacheGasTest:test_write_removeFeedConfigs_5_gas() (gas: 232944) +DataFeedsCacheGasTest:test_write_setBundleFeedConfigs_1_gas() (gas: 284044) +DataFeedsCacheGasTest:test_write_setBundleFeedConfigs_5_gas() (gas: 1295817) +DataFeedsCacheGasTest:test_write_setBundleFeedConfigs_with_delete_1_gas() (gas: 91336) +DataFeedsCacheGasTest:test_write_setBundleFeedConfigs_with_delete_5_gas() (gas: 373668) +DataFeedsCacheGasTest:test_write_setDecimalFeedConfigs_1_gas() (gas: 219180) +DataFeedsCacheGasTest:test_write_setDecimalFeedConfigs_5_gas() (gas: 980459) +DataFeedsCacheGasTest:test_write_setDecimalFeedConfigs_with_delete_1_gas() (gas: 74514) +DataFeedsCacheGasTest:test_write_setDecimalFeedConfigs_with_delete_5_gas() (gas: 297007) DataFeedsCacheTest:testFuzzy_getDataType(bytes16,uint256) (runs: 256, μ: 9146, ~: 9146) DataFeedsCacheTest:testFuzzy_getDataTypeRevertOutOfBound(bytes16,uint256) (runs: 256, μ: 9269, ~: 9269) -DataFeedsCacheTest:testFuzzy_recoverTokensERC20Success(uint256) (runs: 256, μ: 148031, ~: 147925) -DataFeedsCacheTest:testFuzzy_recoverTokensNativeSuccess(uint256) (runs: 256, μ: 69693, ~: 69640) -DataFeedsCacheTest:test_bundleDecimals() (gas: 310041) -DataFeedsCacheTest:test_decimals() (gas: 244966) -DataFeedsCacheTest:test_description() (gas: 256447) -DataFeedsCacheTest:test_feedCanBeWrittenToByMultipleWorkflows() (gas: 252452) +DataFeedsCacheTest:testFuzzy_recoverTokensERC20Success(uint256) (runs: 256, μ: 76409, ~: 76409) +DataFeedsCacheTest:testFuzzy_recoverTokensNativeSuccess(uint256) (runs: 256, μ: 48096, ~: 48096) +DataFeedsCacheTest:test_bundleDecimals() (gas: 281597) +DataFeedsCacheTest:test_decimals() (gas: 221374) +DataFeedsCacheTest:test_description() (gas: 224355) +DataFeedsCacheTest:test_feedCanBeWrittenToByMultipleWorkflows() (gas: 216360) DataFeedsCacheTest:test_getDataIdForProxy() (gas: 12359) DataFeedsCacheTest:test_getDataType() (gas: 6039) -DataFeedsCacheTest:test_getFeedMetadata() (gas: 375969) +DataFeedsCacheTest:test_getFeedMetadata() (gas: 259937) DataFeedsCacheTest:test_getFeedMetadataRevertFeedNotConfigured() (gas: 13418) -DataFeedsCacheTest:test_getLatestAnswer1() (gas: 357938) -DataFeedsCacheTest:test_getLatestAnswer2() (gas: 637986) -DataFeedsCacheTest:test_getLatestBundle1() (gas: 488249) -DataFeedsCacheTest:test_getLatestBundle2() (gas: 895585) -DataFeedsCacheTest:test_getLatestByFeedId() (gas: 392046) +DataFeedsCacheTest:test_getLatestAnswer1() (gas: 307550) +DataFeedsCacheTest:test_getLatestAnswer2() (gas: 577830) +DataFeedsCacheTest:test_getLatestBundle1() (gas: 409053) +DataFeedsCacheTest:test_getLatestBundle2() (gas: 778129) +DataFeedsCacheTest:test_getLatestByFeedId() (gas: 315658) DataFeedsCacheTest:test_getWorkflowMetaData() (gas: 7015) -DataFeedsCacheTest:test_isFeedAdmin() (gas: 15614) -DataFeedsCacheTest:test_latestAnswer1() (gas: 364124) -DataFeedsCacheTest:test_latestAnswer2() (gas: 653197) -DataFeedsCacheTest:test_latestBundle1() (gas: 508012) -DataFeedsCacheTest:test_latestBundle2() (gas: 935461) -DataFeedsCacheTest:test_onReportInvalidPermission() (gas: 776625) -DataFeedsCacheTest:test_onReportRevertInvalidWorkflowName() (gas: 299248) -DataFeedsCacheTest:test_onReportRevertInvalidWorkflowOwner() (gas: 299278) -DataFeedsCacheTest:test_onReportStaleBundleReport() (gas: 916357) -DataFeedsCacheTest:test_onReportStaleDecimalReport() (gas: 726238) -DataFeedsCacheTest:test_onReportSuccess_BundleReportLength1() (gas: 452405) -DataFeedsCacheTest:test_onReportSuccess_BundleReportLength2() (gas: 819850) -DataFeedsCacheTest:test_onReportSuccess_DecimalReportLength1() (gas: 360124) -DataFeedsCacheTest:test_onReportSuccess_DecimalReportLength2() (gas: 631494) -DataFeedsCacheTest:test_onReportSuccess_EmptyBundleReport() (gas: 329695) -DataFeedsCacheTest:test_onReportSuccess_EmptyDecimalReport() (gas: 305467) -DataFeedsCacheTest:test_onReportSuccess_EmptyReport() (gas: 267030) -DataFeedsCacheTest:test_recoverTokensERC20RevertNoBalance() (gas: 41652) -DataFeedsCacheTest:test_recoverTokensNativeRevertNoBalance() (gas: 33033) -DataFeedsCacheTest:test_recoverTokensRevertUnauthorized() (gas: 35137) -DataFeedsCacheTest:test_removeDataIdMappingsForProxiesSuccess() (gas: 67778) -DataFeedsCacheTest:test_removeDataIdMappingsForProxiesSuccess_and_call_decimals() (gas: 72448) -DataFeedsCacheTest:test_removeFeedAdminSuccess() (gas: 78916) -DataFeedsCacheTest:test_removeFeedsRevertInvalidSender() (gas: 33698) -DataFeedsCacheTest:test_removeFeedsRevertNotConfiguredFeed() (gas: 65224) -DataFeedsCacheTest:test_removeFeedsSuccess() (gas: 356499) -DataFeedsCacheTest:test_setBundleFeedConfigsRevertInvalidConfigsLengthDecimals() (gas: 56747) -DataFeedsCacheTest:test_setBundleFeedConfigs_setAgainWithClear() (gas: 1019128) -DataFeedsCacheTest:test_setDecimalFeedConfigs_setAgainWithClear() (gas: 756093) -DataFeedsCacheTest:test_setFeedAdminRevertZeroAddress() (gas: 32675) -DataFeedsCacheTest:test_setFeedConfigsRevertEmptyConfig() (gas: 148937) -DataFeedsCacheTest:test_setFeedConfigsRevertInvalidConfigsLengthDescriptions() (gas: 96762) -DataFeedsCacheTest:test_setFeedConfigsRevertInvalidWorkflowMetadata() (gas: 234398) -DataFeedsCacheTest:test_setFeedConfigsRevertUnauthorizedFeedAdmin() (gas: 90823) -DataFeedsCacheTest:test_setFeedConfigsRevertZeroDataId() (gas: 90951) -DataFeedsCacheTest:test_setFeedConfigsSuccess() (gas: 244236) +DataFeedsCacheTest:test_isFeedAdmin() (gas: 11114) +DataFeedsCacheTest:test_latestAnswer1() (gas: 313736) +DataFeedsCacheTest:test_latestAnswer2() (gas: 588541) +DataFeedsCacheTest:test_latestBundle1() (gas: 418316) +DataFeedsCacheTest:test_latestBundle2() (gas: 795005) +DataFeedsCacheTest:test_onReportInvalidPermission() (gas: 675249) +DataFeedsCacheTest:test_onReportRevertInvalidWorkflowName() (gas: 252344) +DataFeedsCacheTest:test_onReportRevertInvalidWorkflowOwner() (gas: 252374) +DataFeedsCacheTest:test_onReportStaleBundleReport() (gas: 815321) +DataFeedsCacheTest:test_onReportStaleDecimalReport() (gas: 635670) +DataFeedsCacheTest:test_onReportSuccess_BundleReportLength1() (gas: 402709) +DataFeedsCacheTest:test_onReportSuccess_BundleReportLength2() (gas: 765894) +DataFeedsCacheTest:test_onReportSuccess_DecimalReportLength1() (gas: 309736) +DataFeedsCacheTest:test_onReportSuccess_DecimalReportLength2() (gas: 579838) +DataFeedsCacheTest:test_onReportSuccess_EmptyBundleReport() (gas: 251195) +DataFeedsCacheTest:test_onReportSuccess_EmptyDecimalReport() (gas: 239595) +DataFeedsCacheTest:test_onReportSuccess_EmptyReport() (gas: 221438) +DataFeedsCacheTest:test_recoverTokensERC20RevertNoBalance() (gas: 19928) +DataFeedsCacheTest:test_recoverTokensNativeRevertNoBalance() (gas: 11489) +DataFeedsCacheTest:test_recoverTokensRevertUnauthorized() (gas: 13353) +DataFeedsCacheTest:test_removeDataIdMappingsForProxiesSuccess() (gas: 22186) +DataFeedsCacheTest:test_removeDataIdMappingsForProxiesSuccess_and_call_decimals() (gas: 24856) +DataFeedsCacheTest:test_removeFeedAdminSuccess() (gas: 27000) +DataFeedsCacheTest:test_removeFeedsRevertInvalidSender() (gas: 12166) +DataFeedsCacheTest:test_removeFeedsRevertNotConfiguredFeed() (gas: 20120) +DataFeedsCacheTest:test_removeFeedsSuccess() (gas: 193040) +DataFeedsCacheTest:test_setBundleFeedConfigsRevertInvalidConfigsLengthDecimals() (gas: 32379) +DataFeedsCacheTest:test_setBundleFeedConfigs_setAgainWithClear() (gas: 949953) +DataFeedsCacheTest:test_setDecimalFeedConfigs_setAgainWithClear() (gas: 735308) +DataFeedsCacheTest:test_setFeedAdminRevertZeroAddress() (gas: 11343) +DataFeedsCacheTest:test_setFeedConfigsRevertEmptyConfig() (gas: 55621) +DataFeedsCacheTest:test_setFeedConfigsRevertInvalidConfigsLengthDescriptions() (gas: 48286) +DataFeedsCacheTest:test_setFeedConfigsRevertInvalidWorkflowMetadata() (gas: 94046) +DataFeedsCacheTest:test_setFeedConfigsRevertUnauthorizedFeedAdmin() (gas: 43047) +DataFeedsCacheTest:test_setFeedConfigsRevertZeroDataId() (gas: 43199) +DataFeedsCacheTest:test_setFeedConfigsSuccess() (gas: 220704) DataFeedsCacheTest:test_supportsInterface() (gas: 5794) -DataFeedsCacheTest:test_updateDataIdMappingsForProxiesRevertInvalidLengths() (gas: 34636) -DataFeedsCacheTest:test_updateDataIdMappingsForProxiesRevertUnauthorizedOwner() (gas: 35254) -DataFeedsCacheTest:test_updateDataIdMappingsForProxiesSuccess() (gas: 43427) -DataFeedsCacheTest:test_updateDataIdMappingsForProxies_and_RevertOnWrongCaller() (gas: 47900) -DataFeedsCacheTest:test_updateDataIdMappingsForProxies_and_call_decimals() (gas: 117086) \ No newline at end of file +DataFeedsCacheTest:test_updateDataIdMappingsForProxiesRevertInvalidLengths() (gas: 12232) +DataFeedsCacheTest:test_updateDataIdMappingsForProxiesRevertUnauthorizedOwner() (gas: 13158) +DataFeedsCacheTest:test_updateDataIdMappingsForProxiesSuccess() (gas: 21331) +DataFeedsCacheTest:test_updateDataIdMappingsForProxies_and_RevertOnWrongCaller() (gas: 25804) +DataFeedsCacheTest:test_updateDataIdMappingsForProxies_and_call_decimals() (gas: 53758) \ No newline at end of file diff --git a/contracts/gas-snapshots/l2ep.gas-snapshot b/contracts/gas-snapshots/l2ep.gas-snapshot index 9702d1d399..0328a5afec 100644 --- a/contracts/gas-snapshots/l2ep.gas-snapshot +++ b/contracts/gas-snapshots/l2ep.gas-snapshot @@ -1,114 +1,114 @@ -ArbitrumCrossDomainForwarder_AcceptL1Ownership:test_CallableByPendingL1Owner() (gas: 95585) -ArbitrumCrossDomainForwarder_AcceptL1Ownership:test_NotCallableByNonPendingOwners() (gas: 34018) -ArbitrumCrossDomainForwarder_Constructor:test_InitialState() (gas: 38637) -ArbitrumCrossDomainForwarder_Forward:test_Forward() (gas: 74617) -ArbitrumCrossDomainForwarder_Forward:test_ForwardRevert() (gas: 44246) -ArbitrumCrossDomainForwarder_Forward:test_NotCallableByUnknownAddress() (gas: 38063) -ArbitrumCrossDomainForwarder_TransferL1Ownership:test_CallableByL1Owner() (gas: 71366) -ArbitrumCrossDomainForwarder_TransferL1Ownership:test_CallableByL1OwnerOrZeroAddress() (gas: 46961) -ArbitrumCrossDomainForwarder_TransferL1Ownership:test_NotCallableByL2Owner() (gas: 48752) -ArbitrumCrossDomainForwarder_TransferL1Ownership:test_NotCallableByNonOwners() (gas: 34664) -ArbitrumCrossDomainGovernor_AcceptL1Ownership:test_CallableByPendingL1Owner() (gas: 95585) -ArbitrumCrossDomainGovernor_AcceptL1Ownership:test_NotCallableByNonPendingOwners() (gas: 34018) -ArbitrumCrossDomainGovernor_Constructor:test_InitialState() (gas: 38660) -ArbitrumCrossDomainGovernor_Forward:test_CallableByL2Owner() (gas: 76735) -ArbitrumCrossDomainGovernor_Forward:test_Forward() (gas: 74651) -ArbitrumCrossDomainGovernor_Forward:test_ForwardRevert() (gas: 46355) -ArbitrumCrossDomainGovernor_Forward:test_NotCallableByUnknownAddress() (gas: 40196) -ArbitrumCrossDomainGovernor_ForwardDelegate:test_BubbleUpRevert() (gas: 41160) -ArbitrumCrossDomainGovernor_ForwardDelegate:test_CallableByCrossDomainMessengerAddressOrL1Owner() (gas: 89666) -ArbitrumCrossDomainGovernor_ForwardDelegate:test_CallableByL2Owner() (gas: 91794) -ArbitrumCrossDomainGovernor_ForwardDelegate:test_NotCallableByUnknownAddress() (gas: 40251) -ArbitrumCrossDomainGovernor_ForwardDelegate:test_RevertsBatchWhenOneCallFails() (gas: 90691) -ArbitrumCrossDomainGovernor_TransferL1Ownership:test_CallableByL1Owner() (gas: 71366) -ArbitrumCrossDomainGovernor_TransferL1Ownership:test_CallableByL1OwnerOrZeroAddress() (gas: 46961) -ArbitrumCrossDomainGovernor_TransferL1Ownership:test_NotCallableByL2Owner() (gas: 48752) -ArbitrumCrossDomainGovernor_TransferL1Ownership:test_NotCallableByNonOwners() (gas: 34664) -ArbitrumSequencerUptimeFeed_AggregatorV3Interface:test_AggregatorV3Interface() (gas: 155627) +ArbitrumCrossDomainForwarder_AcceptL1Ownership:test_CallableByPendingL1Owner() (gas: 37299) +ArbitrumCrossDomainForwarder_AcceptL1Ownership:test_NotCallableByNonPendingOwners() (gas: 12954) +ArbitrumCrossDomainForwarder_Constructor:test_InitialState() (gas: 21137) +ArbitrumCrossDomainForwarder_Forward:test_Forward() (gas: 47761) +ArbitrumCrossDomainForwarder_Forward:test_ForwardRevert() (gas: 22090) +ArbitrumCrossDomainForwarder_Forward:test_NotCallableByUnknownAddress() (gas: 16083) +ArbitrumCrossDomainForwarder_TransferL1Ownership:test_CallableByL1Owner() (gas: 41434) +ArbitrumCrossDomainForwarder_TransferL1Ownership:test_CallableByL1OwnerOrZeroAddress() (gas: 19269) +ArbitrumCrossDomainForwarder_TransferL1Ownership:test_NotCallableByL2Owner() (gas: 18320) +ArbitrumCrossDomainForwarder_TransferL1Ownership:test_NotCallableByNonOwners() (gas: 13232) +ArbitrumCrossDomainGovernor_AcceptL1Ownership:test_CallableByPendingL1Owner() (gas: 37299) +ArbitrumCrossDomainGovernor_AcceptL1Ownership:test_NotCallableByNonPendingOwners() (gas: 12954) +ArbitrumCrossDomainGovernor_Constructor:test_InitialState() (gas: 21160) +ArbitrumCrossDomainGovernor_Forward:test_CallableByL2Owner() (gas: 49879) +ArbitrumCrossDomainGovernor_Forward:test_Forward() (gas: 47795) +ArbitrumCrossDomainGovernor_Forward:test_ForwardRevert() (gas: 24199) +ArbitrumCrossDomainGovernor_Forward:test_NotCallableByUnknownAddress() (gas: 18216) +ArbitrumCrossDomainGovernor_ForwardDelegate:test_BubbleUpRevert() (gas: 19272) +ArbitrumCrossDomainGovernor_ForwardDelegate:test_CallableByCrossDomainMessengerAddressOrL1Owner() (gas: 60718) +ArbitrumCrossDomainGovernor_ForwardDelegate:test_CallableByL2Owner() (gas: 62846) +ArbitrumCrossDomainGovernor_ForwardDelegate:test_NotCallableByUnknownAddress() (gas: 18271) +ArbitrumCrossDomainGovernor_ForwardDelegate:test_RevertsBatchWhenOneCallFails() (gas: 63919) +ArbitrumCrossDomainGovernor_TransferL1Ownership:test_CallableByL1Owner() (gas: 41434) +ArbitrumCrossDomainGovernor_TransferL1Ownership:test_CallableByL1OwnerOrZeroAddress() (gas: 19269) +ArbitrumCrossDomainGovernor_TransferL1Ownership:test_NotCallableByL2Owner() (gas: 18320) +ArbitrumCrossDomainGovernor_TransferL1Ownership:test_NotCallableByNonOwners() (gas: 13232) +ArbitrumSequencerUptimeFeed_AggregatorV3Interface:test_AggregatorV3Interface() (gas: 98747) ArbitrumSequencerUptimeFeed_AggregatorV3Interface:test_Return0WhenRoundDoesNotExistYet() (gas: 18270) ArbitrumSequencerUptimeFeed_Constants:test_InitialState() (gas: 5659) -ArbitrumSequencerUptimeFeed_ProtectReadsOnAggregatorV2V3InterfaceFunctions:test_AggregatorV2V3InterfaceAllowReadsIfConsumingContractIsWhitelisted() (gas: 726044) -ArbitrumSequencerUptimeFeed_ProtectReadsOnAggregatorV2V3InterfaceFunctions:test_AggregatorV2V3InterfaceDisallowReadsIfConsumingContractIsNotWhitelisted() (gas: 680223) -ArbitrumSequencerUptimeFeed_UpdateStatus:test_IgnoreOutOfOrderUpdates() (gas: 178163) -ArbitrumSequencerUptimeFeed_UpdateStatus:test_RevertIfNotL2CrossDomainMessengerAddr() (gas: 36786) -ArbitrumSequencerUptimeFeed_UpdateStatus:test_UpdateStatusWhenStatusChangeAndNoTimeChange() (gas: 235813) -ArbitrumSequencerUptimeFeed_UpdateStatus:test_UpdateStatusWhenStatusChangeAndTimeChange() (gas: 235896) -ArbitrumValidator_Validate:test_PostSequencerOffline() (gas: 118263) -BaseSequencerUptimeFeed_AggregatorV3Interface:test_AggregatorV3Interface_ReturnsValidData() (gas: 120058) -BaseSequencerUptimeFeed_AggregatorV3Interface:test_getAnswer_ReturnsValidAnswer() (gas: 90835) -BaseSequencerUptimeFeed_AggregatorV3Interface:test_getTimestamp_ReturnsValidTimestamp() (gas: 90697) -BaseSequencerUptimeFeed_Constructor:test_Constructor_InitialState() (gas: 27532) -BaseSequencerUptimeFeed_ProtectReadsOnAggregatorV2V3InterfaceFunctions:test_ProtectReads_AllowWhen_Whitelisted() (gas: 720815) -BaseSequencerUptimeFeed_ProtectReadsOnAggregatorV2V3InterfaceFunctions:test_ProtectReads_DisallowWhen_NotWhitelisted() (gas: 680234) -BaseSequencerUptimeFeed_UpdateStatus:test_updateStatus_IgnoreOutOfOrderUpdates() (gas: 159516) -BaseSequencerUptimeFeed_UpdateStatus:test_updateStatus_UpdateWhen_NoStatusChangeSameTimestamp() (gas: 215177) -BaseSequencerUptimeFeed_UpdateStatus:test_updateStatus_UpdateWhen_StatusChangeAndNoTimeChange() (gas: 215520) -BaseSequencerUptimeFeed_UpdateStatus:test_updateStatus_UpdateWhen_StatusChangeAndTimeChange() (gas: 215599) -BaseSequencerUptimeFeed_transferL1Sender:test_transferL1Sender_CorrectlyTransfersL1Sender() (gas: 1702935) -BaseValidator_Constructor:test_Constructor_EmitsWhen_ConstructorIsSuccessfull() (gas: 824310) -BaseValidator_GetAndSetGasLimit:test_GetAndSetGasLimit_CorrectlyHandlesGasLimit() (gas: 49176) -OptimismCrossDomainForwarder_AcceptL1Ownership:test_CallableByPendingL1Owner() (gas: 137532) -OptimismCrossDomainForwarder_AcceptL1Ownership:test_NotCallableByNonPendingOwners() (gas: 44049) -OptimismCrossDomainForwarder_Constructor:test_InitialState() (gas: 36473) -OptimismCrossDomainForwarder_Forward:test_Forward() (gas: 85903) -OptimismCrossDomainForwarder_Forward:test_ForwardRevert() (gas: 55518) -OptimismCrossDomainForwarder_Forward:test_NotCallableByUnknownAddress() (gas: 35875) -OptimismCrossDomainForwarder_TransferL1Ownership:test_CallableByL1Owner() (gas: 79695) -OptimismCrossDomainForwarder_TransferL1Ownership:test_CallableByL1OwnerOrZeroAddress() (gas: 57276) -OptimismCrossDomainForwarder_TransferL1Ownership:test_NotCallableByL2Owner() (gas: 46564) -OptimismCrossDomainForwarder_TransferL1Ownership:test_NotCallableByNonOwners() (gas: 32476) -OptimismCrossDomainGovernor_AcceptL1Ownership:test_CallableByPendingL1Owner() (gas: 137532) -OptimismCrossDomainGovernor_AcceptL1Ownership:test_NotCallableByNonPendingOwners() (gas: 44049) -OptimismCrossDomainGovernor_Constructor:test_InitialState() (gas: 36496) -OptimismCrossDomainGovernor_Forward:test_CallableByL2Owner() (gas: 74579) -OptimismCrossDomainGovernor_Forward:test_Forward() (gas: 85957) -OptimismCrossDomainGovernor_Forward:test_ForwardRevert() (gas: 55542) -OptimismCrossDomainGovernor_Forward:test_NotCallableByUnknownAddress() (gas: 38011) -OptimismCrossDomainGovernor_ForwardDelegate:test_BubbleUpRevert() (gas: 51824) -OptimismCrossDomainGovernor_ForwardDelegate:test_CallableByCrossDomainMessengerAddressOrL1Owner() (gas: 102684) -OptimismCrossDomainGovernor_ForwardDelegate:test_CallableByL2Owner() (gas: 102689) -OptimismCrossDomainGovernor_ForwardDelegate:test_NotCallableByUnknownAddress() (gas: 38066) -OptimismCrossDomainGovernor_ForwardDelegate:test_RevertsBatchWhenOneCallFails() (gas: 103415) -OptimismCrossDomainGovernor_TransferL1Ownership:test_CallableByL1Owner() (gas: 79695) -OptimismCrossDomainGovernor_TransferL1Ownership:test_CallableByL1OwnerOrZeroAddress() (gas: 57276) -OptimismCrossDomainGovernor_TransferL1Ownership:test_NotCallableByL2Owner() (gas: 46564) -OptimismCrossDomainGovernor_TransferL1Ownership:test_NotCallableByNonOwners() (gas: 32476) -OptimismSequencerUptimeFeed_Constructor:test_Constructor_InitialState() (gas: 1701316) -OptimismSequencerUptimeFeed_ValidateSender:test_ValidateSender_UpdateStatusWhen_StatusChangeAndNoTimeChange() (gas: 17874) -OptimismValidator_Validate:test_Validate_PostSequencerOffline() (gas: 124054) -OptimismValidator_Validate:test_Validate_PostSequencerStatus_NoStatusChange() (gas: 124036) -ScrollCrossDomainForwarder_AcceptL1Ownership:test_CallableByPendingL1Owner() (gas: 137896) -ScrollCrossDomainForwarder_AcceptL1Ownership:test_NotCallableByNonPendingOwners() (gas: 44227) -ScrollCrossDomainForwarder_Constructor:test_InitialState() (gas: 36465) -ScrollCrossDomainForwarder_Forward:test_Forward() (gas: 86095) -ScrollCrossDomainForwarder_Forward:test_ForwardRevert() (gas: 55702) -ScrollCrossDomainForwarder_Forward:test_NotCallableByUnknownAddress() (gas: 35875) -ScrollCrossDomainForwarder_TransferL1Ownership:test_CallableByL1Owner() (gas: 79886) -ScrollCrossDomainForwarder_TransferL1Ownership:test_CallableByL1OwnerOrZeroAddress() (gas: 57462) -ScrollCrossDomainForwarder_TransferL1Ownership:test_NotCallableByL2Owner() (gas: 46564) -ScrollCrossDomainForwarder_TransferL1Ownership:test_NotCallableByNonOwners() (gas: 32476) -ScrollCrossDomainGovernor_AcceptL1Ownership:test_CallableByPendingL1Owner() (gas: 137896) -ScrollCrossDomainGovernor_AcceptL1Ownership:test_NotCallableByNonPendingOwners() (gas: 44227) -ScrollCrossDomainGovernor_Constructor:test_InitialState() (gas: 36488) -ScrollCrossDomainGovernor_Forward:test_CallableByL2Owner() (gas: 74574) -ScrollCrossDomainGovernor_Forward:test_Forward() (gas: 86144) -ScrollCrossDomainGovernor_Forward:test_ForwardRevert() (gas: 55723) -ScrollCrossDomainGovernor_Forward:test_NotCallableByUnknownAddress() (gas: 38008) -ScrollCrossDomainGovernor_ForwardDelegate:test_BubbleUpRevert() (gas: 52010) -ScrollCrossDomainGovernor_ForwardDelegate:test_CallableByCrossDomainMessengerAddressOrL1Owner() (gas: 102876) -ScrollCrossDomainGovernor_ForwardDelegate:test_CallableByL2Owner() (gas: 102881) -ScrollCrossDomainGovernor_ForwardDelegate:test_NotCallableByUnknownAddress() (gas: 38063) -ScrollCrossDomainGovernor_ForwardDelegate:test_RevertsBatchWhenOneCallFails() (gas: 103608) -ScrollCrossDomainGovernor_TransferL1Ownership:test_CallableByL1Owner() (gas: 79886) -ScrollCrossDomainGovernor_TransferL1Ownership:test_CallableByL1OwnerOrZeroAddress() (gas: 57462) -ScrollCrossDomainGovernor_TransferL1Ownership:test_NotCallableByL2Owner() (gas: 46564) -ScrollCrossDomainGovernor_TransferL1Ownership:test_NotCallableByNonOwners() (gas: 32476) -ScrollSequencerUptimeFeed_Constructor:test_Constructor_InitialState_WhenValidL2XDomainMessenger() (gas: 1686185) -ScrollSequencerUptimeFeed_ValidateSender:test_ValidateSender_UpdateStatusWhen_StatusChangeAndNoTimeChange() (gas: 17864) -ScrollValidator_Validate:test_Validate_PostSequencerOffline() (gas: 127636) -ScrollValidator_Validate:test_Validate_PostSequencerStatus_NoStatusChange() (gas: 127622) +ArbitrumSequencerUptimeFeed_ProtectReadsOnAggregatorV2V3InterfaceFunctions:test_AggregatorV2V3InterfaceAllowReadsIfConsumingContractIsWhitelisted() (gas: 590570) +ArbitrumSequencerUptimeFeed_ProtectReadsOnAggregatorV2V3InterfaceFunctions:test_AggregatorV2V3InterfaceDisallowReadsIfConsumingContractIsNotWhitelisted() (gas: 561681) +ArbitrumSequencerUptimeFeed_UpdateStatus:test_IgnoreOutOfOrderUpdates() (gas: 98915) +ArbitrumSequencerUptimeFeed_UpdateStatus:test_RevertIfNotL2CrossDomainMessengerAddr() (gas: 15442) +ArbitrumSequencerUptimeFeed_UpdateStatus:test_UpdateStatusWhenStatusChangeAndNoTimeChange() (gas: 113165) +ArbitrumSequencerUptimeFeed_UpdateStatus:test_UpdateStatusWhenStatusChangeAndTimeChange() (gas: 113248) +ArbitrumValidator_Validate:test_PostSequencerOffline() (gas: 73243) +BaseSequencerUptimeFeed_AggregatorV3Interface:test_AggregatorV3Interface_ReturnsValidData() (gas: 63178) +BaseSequencerUptimeFeed_AggregatorV3Interface:test_getAnswer_ReturnsValidAnswer() (gas: 56955) +BaseSequencerUptimeFeed_AggregatorV3Interface:test_getTimestamp_ReturnsValidTimestamp() (gas: 56817) +BaseSequencerUptimeFeed_Constructor:test_Constructor_InitialState() (gas: 21032) +BaseSequencerUptimeFeed_ProtectReadsOnAggregatorV2V3InterfaceFunctions:test_ProtectReads_AllowWhen_Whitelisted() (gas: 585341) +BaseSequencerUptimeFeed_ProtectReadsOnAggregatorV2V3InterfaceFunctions:test_ProtectReads_DisallowWhen_NotWhitelisted() (gas: 561692) +BaseSequencerUptimeFeed_UpdateStatus:test_updateStatus_IgnoreOutOfOrderUpdates() (gas: 67768) +BaseSequencerUptimeFeed_UpdateStatus:test_updateStatus_UpdateWhen_NoStatusChangeSameTimestamp() (gas: 73417) +BaseSequencerUptimeFeed_UpdateStatus:test_updateStatus_UpdateWhen_StatusChangeAndNoTimeChange() (gas: 93972) +BaseSequencerUptimeFeed_UpdateStatus:test_updateStatus_UpdateWhen_StatusChangeAndTimeChange() (gas: 94051) +BaseSequencerUptimeFeed_transferL1Sender:test_transferL1Sender_CorrectlyTransfersL1Sender() (gas: 1478301) +BaseValidator_Constructor:test_Constructor_EmitsWhen_ConstructorIsSuccessfull() (gas: 715556) +BaseValidator_GetAndSetGasLimit:test_GetAndSetGasLimit_CorrectlyHandlesGasLimit() (gas: 19448) +OptimismCrossDomainForwarder_AcceptL1Ownership:test_CallableByPendingL1Owner() (gas: 46693) +OptimismCrossDomainForwarder_AcceptL1Ownership:test_NotCallableByNonPendingOwners() (gas: 22033) +OptimismCrossDomainForwarder_Constructor:test_InitialState() (gas: 20973) +OptimismCrossDomainForwarder_Forward:test_Forward() (gas: 58095) +OptimismCrossDomainForwarder_Forward:test_ForwardRevert() (gas: 32410) +OptimismCrossDomainForwarder_Forward:test_NotCallableByUnknownAddress() (gas: 13895) +OptimismCrossDomainForwarder_TransferL1Ownership:test_CallableByL1Owner() (gas: 48811) +OptimismCrossDomainForwarder_TransferL1Ownership:test_CallableByL1OwnerOrZeroAddress() (gas: 28632) +OptimismCrossDomainForwarder_TransferL1Ownership:test_NotCallableByL2Owner() (gas: 16132) +OptimismCrossDomainForwarder_TransferL1Ownership:test_NotCallableByNonOwners() (gas: 11044) +OptimismCrossDomainGovernor_AcceptL1Ownership:test_CallableByPendingL1Owner() (gas: 46693) +OptimismCrossDomainGovernor_AcceptL1Ownership:test_NotCallableByNonPendingOwners() (gas: 22033) +OptimismCrossDomainGovernor_Constructor:test_InitialState() (gas: 20996) +OptimismCrossDomainGovernor_Forward:test_CallableByL2Owner() (gas: 47723) +OptimismCrossDomainGovernor_Forward:test_Forward() (gas: 58149) +OptimismCrossDomainGovernor_Forward:test_ForwardRevert() (gas: 32434) +OptimismCrossDomainGovernor_Forward:test_NotCallableByUnknownAddress() (gas: 16031) +OptimismCrossDomainGovernor_ForwardDelegate:test_BubbleUpRevert() (gas: 28984) +OptimismCrossDomainGovernor_ForwardDelegate:test_CallableByCrossDomainMessengerAddressOrL1Owner() (gas: 72772) +OptimismCrossDomainGovernor_ForwardDelegate:test_CallableByL2Owner() (gas: 72777) +OptimismCrossDomainGovernor_ForwardDelegate:test_NotCallableByUnknownAddress() (gas: 16086) +OptimismCrossDomainGovernor_ForwardDelegate:test_RevertsBatchWhenOneCallFails() (gas: 75679) +OptimismCrossDomainGovernor_TransferL1Ownership:test_CallableByL1Owner() (gas: 48811) +OptimismCrossDomainGovernor_TransferL1Ownership:test_CallableByL1OwnerOrZeroAddress() (gas: 28632) +OptimismCrossDomainGovernor_TransferL1Ownership:test_NotCallableByL2Owner() (gas: 16132) +OptimismCrossDomainGovernor_TransferL1Ownership:test_NotCallableByNonOwners() (gas: 11044) +OptimismSequencerUptimeFeed_Constructor:test_Constructor_InitialState() (gas: 1529872) +OptimismSequencerUptimeFeed_ValidateSender:test_ValidateSender_UpdateStatusWhen_StatusChangeAndNoTimeChange() (gas: 15374) +OptimismValidator_Validate:test_Validate_PostSequencerOffline() (gas: 79034) +OptimismValidator_Validate:test_Validate_PostSequencerStatus_NoStatusChange() (gas: 79040) +ScrollCrossDomainForwarder_AcceptL1Ownership:test_CallableByPendingL1Owner() (gas: 46780) +ScrollCrossDomainForwarder_AcceptL1Ownership:test_NotCallableByNonPendingOwners() (gas: 22083) +ScrollCrossDomainForwarder_Constructor:test_InitialState() (gas: 20965) +ScrollCrossDomainForwarder_Forward:test_Forward() (gas: 58159) +ScrollCrossDomainForwarder_Forward:test_ForwardRevert() (gas: 32466) +ScrollCrossDomainForwarder_Forward:test_NotCallableByUnknownAddress() (gas: 13895) +ScrollCrossDomainForwarder_TransferL1Ownership:test_CallableByL1Owner() (gas: 48874) +ScrollCrossDomainForwarder_TransferL1Ownership:test_CallableByL1OwnerOrZeroAddress() (gas: 28690) +ScrollCrossDomainForwarder_TransferL1Ownership:test_NotCallableByL2Owner() (gas: 16132) +ScrollCrossDomainForwarder_TransferL1Ownership:test_NotCallableByNonOwners() (gas: 11044) +ScrollCrossDomainGovernor_AcceptL1Ownership:test_CallableByPendingL1Owner() (gas: 46780) +ScrollCrossDomainGovernor_AcceptL1Ownership:test_NotCallableByNonPendingOwners() (gas: 22083) +ScrollCrossDomainGovernor_Constructor:test_InitialState() (gas: 20988) +ScrollCrossDomainGovernor_Forward:test_CallableByL2Owner() (gas: 47718) +ScrollCrossDomainGovernor_Forward:test_Forward() (gas: 58208) +ScrollCrossDomainGovernor_Forward:test_ForwardRevert() (gas: 32487) +ScrollCrossDomainGovernor_Forward:test_NotCallableByUnknownAddress() (gas: 16028) +ScrollCrossDomainGovernor_ForwardDelegate:test_BubbleUpRevert() (gas: 29042) +ScrollCrossDomainGovernor_ForwardDelegate:test_CallableByCrossDomainMessengerAddressOrL1Owner() (gas: 72836) +ScrollCrossDomainGovernor_ForwardDelegate:test_CallableByL2Owner() (gas: 72841) +ScrollCrossDomainGovernor_ForwardDelegate:test_NotCallableByUnknownAddress() (gas: 16083) +ScrollCrossDomainGovernor_ForwardDelegate:test_RevertsBatchWhenOneCallFails() (gas: 75744) +ScrollCrossDomainGovernor_TransferL1Ownership:test_CallableByL1Owner() (gas: 48874) +ScrollCrossDomainGovernor_TransferL1Ownership:test_CallableByL1OwnerOrZeroAddress() (gas: 28690) +ScrollCrossDomainGovernor_TransferL1Ownership:test_NotCallableByL2Owner() (gas: 16132) +ScrollCrossDomainGovernor_TransferL1Ownership:test_NotCallableByNonOwners() (gas: 11044) +ScrollSequencerUptimeFeed_Constructor:test_Constructor_InitialState_WhenValidL2XDomainMessenger() (gas: 1510893) +ScrollSequencerUptimeFeed_ValidateSender:test_ValidateSender_UpdateStatusWhen_StatusChangeAndNoTimeChange() (gas: 15364) +ScrollValidator_Validate:test_Validate_PostSequencerOffline() (gas: 82616) +ScrollValidator_Validate:test_Validate_PostSequencerStatus_NoStatusChange() (gas: 82626) ZKSyncSequencerUptimeFeed_ValidateSender:test_ValidateSender_SuccessWhen_SenderIsValid() (gas: 12611) ZKSyncValidator_GetChainId:test_GetChainId_CorrectlyGetsTheChainId() (gas: 5530) -ZKSyncValidator_GetSetL2GasPerPubdataByteLimit:test_GetSetL2GasPerPubdataByteLimit_CorrectlyHandlesGasPerPubdataByteLimit() (gas: 45480) -ZKSyncValidator_Validate:test_Validate_PostSequencerOffline() (gas: 101459) -ZKSyncValidator_Validate:test_Validate_PostSequencerStatus_NoStatusChange() (gas: 101499) \ No newline at end of file +ZKSyncValidator_GetSetL2GasPerPubdataByteLimit:test_GetSetL2GasPerPubdataByteLimit_CorrectlyHandlesGasPerPubdataByteLimit() (gas: 15752) +ZKSyncValidator_Validate:test_Validate_PostSequencerOffline() (gas: 56439) +ZKSyncValidator_Validate:test_Validate_PostSequencerStatus_NoStatusChange() (gas: 56503) \ No newline at end of file diff --git a/contracts/gas-snapshots/llo-feeds.gas-snapshot b/contracts/gas-snapshots/llo-feeds.gas-snapshot index edbeb5cbb1..3d15813cbc 100644 --- a/contracts/gas-snapshots/llo-feeds.gas-snapshot +++ b/contracts/gas-snapshots/llo-feeds.gas-snapshot @@ -18,754 +18,754 @@ ByteUtilTest:test_readUint32MultiWord() (gas: 530) ByteUtilTest:test_readUint32WithEmptyArray() (gas: 3231) ByteUtilTest:test_readUint32WithNotEnoughBytes() (gas: 3272) ByteUtilTest:test_readZeroAddress() (gas: 497) -ChannelConfigStoreChannelAdderTest:testAddChannelDefinitions_AdderCanAddToMultipleDons() (gas: 304718) -ChannelConfigStoreChannelAdderTest:testAddChannelDefinitions_AdderCanAddToMultipleDons() (gas: 304718) -ChannelConfigStoreChannelAdderTest:testAddChannelDefinitions_MultipleAddersCanAddToDon() (gas: 335677) -ChannelConfigStoreChannelAdderTest:testAddChannelDefinitions_MultipleAddersCanAddToDon() (gas: 335677) -ChannelConfigStoreChannelAdderTest:testAddChannelDefinitions_OneAddressCanControlMultipleChannelAdders() (gas: 353027) -ChannelConfigStoreChannelAdderTest:testAddChannelDefinitions_OneAddressCanControlMultipleChannelAdders() (gas: 353027) -ChannelConfigStoreChannelAdderTest:testAddChannelDefinitions_RevertsWhenAdderNotAllowedForDon() (gas: 84169) -ChannelConfigStoreChannelAdderTest:testAddChannelDefinitions_RevertsWhenAdderNotAllowedForDon() (gas: 84169) -ChannelConfigStoreChannelAdderTest:testAddChannelDefinitions_RevertsWhenAdderRemovedFromDon() (gas: 234475) -ChannelConfigStoreChannelAdderTest:testAddChannelDefinitions_RevertsWhenAdderRemovedFromDon() (gas: 234475) -ChannelConfigStoreChannelAdderTest:testAddChannelDefinitions_RevertsWhenCallerNotMatchingChannelAdderId() (gas: 175211) -ChannelConfigStoreChannelAdderTest:testAddChannelDefinitions_RevertsWhenCallerNotMatchingChannelAdderId() (gas: 175211) -ChannelConfigStoreChannelAdderTest:testAddChannelDefinitions_RevertsWhenNoAddressSetForChannelAdderId() (gas: 127182) -ChannelConfigStoreChannelAdderTest:testAddChannelDefinitions_RevertsWhenNoAddressSetForChannelAdderId() (gas: 127182) -ChannelConfigStoreChannelAdderTest:testAddChannelDefinitions_SucceedsWithAuthorizedAdder() (gas: 183073) -ChannelConfigStoreChannelAdderTest:testAddChannelDefinitions_SucceedsWithAuthorizedAdder() (gas: 183073) -ChannelConfigStoreChannelAdderTest:testGetAllowedChannelAdders_ReturnsAllAllowedAdders() (gas: 184073) -ChannelConfigStoreChannelAdderTest:testGetAllowedChannelAdders_ReturnsAllAllowedAdders() (gas: 184073) +ChannelConfigStoreChannelAdderTest:testAddChannelDefinitions_AdderCanAddToMultipleDons() (gas: 183710) +ChannelConfigStoreChannelAdderTest:testAddChannelDefinitions_AdderCanAddToMultipleDons() (gas: 183710) +ChannelConfigStoreChannelAdderTest:testAddChannelDefinitions_MultipleAddersCanAddToDon() (gas: 186501) +ChannelConfigStoreChannelAdderTest:testAddChannelDefinitions_MultipleAddersCanAddToDon() (gas: 186501) +ChannelConfigStoreChannelAdderTest:testAddChannelDefinitions_OneAddressCanControlMultipleChannelAdders() (gas: 195351) +ChannelConfigStoreChannelAdderTest:testAddChannelDefinitions_OneAddressCanControlMultipleChannelAdders() (gas: 195351) +ChannelConfigStoreChannelAdderTest:testAddChannelDefinitions_RevertsWhenAdderNotAllowedForDon() (gas: 38489) +ChannelConfigStoreChannelAdderTest:testAddChannelDefinitions_RevertsWhenAdderNotAllowedForDon() (gas: 38489) +ChannelConfigStoreChannelAdderTest:testAddChannelDefinitions_RevertsWhenAdderRemovedFromDon() (gas: 88366) +ChannelConfigStoreChannelAdderTest:testAddChannelDefinitions_RevertsWhenAdderRemovedFromDon() (gas: 88366) +ChannelConfigStoreChannelAdderTest:testAddChannelDefinitions_RevertsWhenCallerNotMatchingChannelAdderId() (gas: 106035) +ChannelConfigStoreChannelAdderTest:testAddChannelDefinitions_RevertsWhenCallerNotMatchingChannelAdderId() (gas: 106035) +ChannelConfigStoreChannelAdderTest:testAddChannelDefinitions_RevertsWhenNoAddressSetForChannelAdderId() (gas: 83374) +ChannelConfigStoreChannelAdderTest:testAddChannelDefinitions_RevertsWhenNoAddressSetForChannelAdderId() (gas: 83374) +ChannelConfigStoreChannelAdderTest:testAddChannelDefinitions_SucceedsWithAuthorizedAdder() (gas: 111897) +ChannelConfigStoreChannelAdderTest:testAddChannelDefinitions_SucceedsWithAuthorizedAdder() (gas: 111897) +ChannelConfigStoreChannelAdderTest:testGetAllowedChannelAdders_ReturnsAllAllowedAdders() (gas: 128281) +ChannelConfigStoreChannelAdderTest:testGetAllowedChannelAdders_ReturnsAllAllowedAdders() (gas: 128281) ChannelConfigStoreChannelAdderTest:testGetAllowedChannelAdders_ReturnsEmptyArrayWhenNone() (gas: 8797) ChannelConfigStoreChannelAdderTest:testGetAllowedChannelAdders_ReturnsEmptyArrayWhenNone() (gas: 8797) ChannelConfigStoreChannelAdderTest:testGetChannelAdderAddress_ReturnsZeroAddressForUnsetId() (gas: 7845) ChannelConfigStoreChannelAdderTest:testGetChannelAdderAddress_ReturnsZeroAddressForUnsetId() (gas: 7845) ChannelConfigStoreChannelAdderTest:testIsChannelAdderAllowed_ReturnsFalseForNonAllowedAdder() (gas: 8135) ChannelConfigStoreChannelAdderTest:testIsChannelAdderAllowed_ReturnsFalseForNonAllowedAdder() (gas: 8135) -ChannelConfigStoreChannelAdderTest:testSetChannelAdderAddress() (gas: 60223) -ChannelConfigStoreChannelAdderTest:testSetChannelAdderAddress() (gas: 60223) -ChannelConfigStoreChannelAdderTest:testSetChannelAdderAddress_CanSetToZeroAddress() (gas: 81575) -ChannelConfigStoreChannelAdderTest:testSetChannelAdderAddress_CanSetToZeroAddress() (gas: 81575) -ChannelConfigStoreChannelAdderTest:testSetChannelAdderAddress_RevertsForReservedChannelAdderId() (gas: 56811) -ChannelConfigStoreChannelAdderTest:testSetChannelAdderAddress_RevertsForReservedChannelAdderId() (gas: 56811) -ChannelConfigStoreChannelAdderTest:testSetChannelAdderAddress_RevertsWhenCalledByNonOwner() (gas: 32455) -ChannelConfigStoreChannelAdderTest:testSetChannelAdderAddress_RevertsWhenCalledByNonOwner() (gas: 32455) -ChannelConfigStoreChannelAdderTest:testSetChannelAdderAddress_SucceedsAtMinimumAllowedId() (gas: 55950) -ChannelConfigStoreChannelAdderTest:testSetChannelAdderAddress_SucceedsAtMinimumAllowedId() (gas: 55950) -ChannelConfigStoreChannelAdderTest:testSetChannelAdderAddress_UpdatesExistingAddress() (gas: 98794) -ChannelConfigStoreChannelAdderTest:testSetChannelAdderAddress_UpdatesExistingAddress() (gas: 98794) -ChannelConfigStoreChannelAdderTest:testSetChannelAdder_AdderCanBeAllowedOnMultipleDons() (gas: 202846) -ChannelConfigStoreChannelAdderTest:testSetChannelAdder_AdderCanBeAllowedOnMultipleDons() (gas: 202846) -ChannelConfigStoreChannelAdderTest:testSetChannelAdder_AllowsChannelAdder() (gas: 106162) -ChannelConfigStoreChannelAdderTest:testSetChannelAdder_AllowsChannelAdder() (gas: 106162) -ChannelConfigStoreChannelAdderTest:testSetChannelAdder_AllowsMultipleAddersPerDon() (gas: 199862) -ChannelConfigStoreChannelAdderTest:testSetChannelAdder_AllowsMultipleAddersPerDon() (gas: 199862) -ChannelConfigStoreChannelAdderTest:testSetChannelAdder_RemovesChannelAdder() (gas: 139622) -ChannelConfigStoreChannelAdderTest:testSetChannelAdder_RemovesChannelAdder() (gas: 139622) -ChannelConfigStoreChannelAdderTest:testSetChannelAdder_RevertsForReservedChannelAdderId() (gas: 82316) -ChannelConfigStoreChannelAdderTest:testSetChannelAdder_RevertsForReservedChannelAdderId() (gas: 82316) -ChannelConfigStoreChannelAdderTest:testSetChannelAdder_RevertsWhenCalledByNonOwner() (gas: 32677) -ChannelConfigStoreChannelAdderTest:testSetChannelAdder_RevertsWhenCalledByNonOwner() (gas: 32677) -ChannelConfigStoreChannelAdderTest:testSetChannelAdder_SucceedsAtMinimumAllowedId() (gas: 101531) -ChannelConfigStoreChannelAdderTest:testSetChannelAdder_SucceedsAtMinimumAllowedId() (gas: 101531) -ChannelConfigStoreChannelAdderTest:testSetChannelDefinitions() (gas: 100066) -ChannelConfigStoreChannelAdderTest:testSetChannelDefinitions() (gas: 100066) +ChannelConfigStoreChannelAdderTest:testSetChannelAdderAddress() (gas: 36855) +ChannelConfigStoreChannelAdderTest:testSetChannelAdderAddress() (gas: 36855) +ChannelConfigStoreChannelAdderTest:testSetChannelAdderAddress_CanSetToZeroAddress() (gas: 27518) +ChannelConfigStoreChannelAdderTest:testSetChannelAdderAddress_CanSetToZeroAddress() (gas: 27518) +ChannelConfigStoreChannelAdderTest:testSetChannelAdderAddress_RevertsForReservedChannelAdderId() (gas: 14099) +ChannelConfigStoreChannelAdderTest:testSetChannelAdderAddress_RevertsForReservedChannelAdderId() (gas: 14099) +ChannelConfigStoreChannelAdderTest:testSetChannelAdderAddress_RevertsWhenCalledByNonOwner() (gas: 11087) +ChannelConfigStoreChannelAdderTest:testSetChannelAdderAddress_RevertsWhenCalledByNonOwner() (gas: 11087) +ChannelConfigStoreChannelAdderTest:testSetChannelAdderAddress_SucceedsAtMinimumAllowedId() (gas: 32582) +ChannelConfigStoreChannelAdderTest:testSetChannelAdderAddress_SucceedsAtMinimumAllowedId() (gas: 32582) +ChannelConfigStoreChannelAdderTest:testSetChannelAdderAddress_UpdatesExistingAddress() (gas: 40758) +ChannelConfigStoreChannelAdderTest:testSetChannelAdderAddress_UpdatesExistingAddress() (gas: 40758) +ChannelConfigStoreChannelAdderTest:testSetChannelAdder_AdderCanBeAllowedOnMultipleDons() (gas: 149354) +ChannelConfigStoreChannelAdderTest:testSetChannelAdder_AdderCanBeAllowedOnMultipleDons() (gas: 149354) +ChannelConfigStoreChannelAdderTest:testSetChannelAdder_AllowsChannelAdder() (gas: 82666) +ChannelConfigStoreChannelAdderTest:testSetChannelAdder_AllowsChannelAdder() (gas: 82666) +ChannelConfigStoreChannelAdderTest:testSetChannelAdder_AllowsMultipleAddersPerDon() (gas: 131070) +ChannelConfigStoreChannelAdderTest:testSetChannelAdder_AllowsMultipleAddersPerDon() (gas: 131070) +ChannelConfigStoreChannelAdderTest:testSetChannelAdder_RemovesChannelAdder() (gas: 66487) +ChannelConfigStoreChannelAdderTest:testSetChannelAdder_RemovesChannelAdder() (gas: 66487) +ChannelConfigStoreChannelAdderTest:testSetChannelAdder_RevertsForReservedChannelAdderId() (gas: 17864) +ChannelConfigStoreChannelAdderTest:testSetChannelAdder_RevertsForReservedChannelAdderId() (gas: 17864) +ChannelConfigStoreChannelAdderTest:testSetChannelAdder_RevertsWhenCalledByNonOwner() (gas: 11181) +ChannelConfigStoreChannelAdderTest:testSetChannelAdder_RevertsWhenCalledByNonOwner() (gas: 11181) +ChannelConfigStoreChannelAdderTest:testSetChannelAdder_SucceedsAtMinimumAllowedId() (gas: 78035) +ChannelConfigStoreChannelAdderTest:testSetChannelAdder_SucceedsAtMinimumAllowedId() (gas: 78035) +ChannelConfigStoreChannelAdderTest:testSetChannelDefinitions() (gas: 46934) +ChannelConfigStoreChannelAdderTest:testSetChannelDefinitions() (gas: 46934) ChannelConfigStoreChannelAdderTest:testSupportsInterface() (gas: 5622) ChannelConfigStoreChannelAdderTest:testSupportsInterface() (gas: 5622) ChannelConfigStoreChannelAdderTest:testTypeAndVersion() (gas: 9745) ChannelConfigStoreChannelAdderTest:testTypeAndVersion() (gas: 9745) -ChannelConfigStoreChannelAdderTest:test_revertsIfCalledByNonOwner() (gas: 33586) -ChannelConfigStoreChannelAdderTest:test_revertsIfCalledByNonOwner() (gas: 33586) -ChannelConfigStoreTest:testSetChannelDefinitions() (gas: 100022) -ChannelConfigStoreTest:testSetChannelDefinitions() (gas: 100022) +ChannelConfigStoreChannelAdderTest:test_revertsIfCalledByNonOwner() (gas: 11426) +ChannelConfigStoreChannelAdderTest:test_revertsIfCalledByNonOwner() (gas: 11426) +ChannelConfigStoreTest:testSetChannelDefinitions() (gas: 46890) +ChannelConfigStoreTest:testSetChannelDefinitions() (gas: 46890) ChannelConfigStoreTest:testSupportsInterface() (gas: 5588) ChannelConfigStoreTest:testSupportsInterface() (gas: 5588) ChannelConfigStoreTest:testTypeAndVersion() (gas: 9689) ChannelConfigStoreTest:testTypeAndVersion() (gas: 9689) -ChannelConfigStoreTest:test_revertsIfCalledByNonOwner() (gas: 33520) -ChannelConfigStoreTest:test_revertsIfCalledByNonOwner() (gas: 33520) -ConfiguratorPromoteStagingConfigTest:test_promotesStagingConfig() (gas: 238199) -ConfiguratorPromoteStagingConfigTest:test_promotesStagingConfig() (gas: 238199) -ConfiguratorPromoteStagingConfigTest:test_revertsIfCalledByNonOwner() (gas: 32666) -ConfiguratorPromoteStagingConfigTest:test_revertsIfCalledByNonOwner() (gas: 32666) -ConfiguratorPromoteStagingConfigTest:test_revertsIfIsGreenProductionDoesNotMatchContractState() (gas: 35139) -ConfiguratorPromoteStagingConfigTest:test_revertsIfIsGreenProductionDoesNotMatchContractState() (gas: 35139) -ConfiguratorPromoteStagingConfigTest:test_revertsIfNoConfigHasEverBeenSetWithThisConfigId() (gas: 35123) -ConfiguratorPromoteStagingConfigTest:test_revertsIfNoConfigHasEverBeenSetWithThisConfigId() (gas: 35123) -ConfiguratorPromoteStagingConfigTest:test_revertsIfProductionConfigDigestIsZero() (gas: 191301) -ConfiguratorPromoteStagingConfigTest:test_revertsIfProductionConfigDigestIsZero() (gas: 191301) -ConfiguratorPromoteStagingConfigTest:test_revertsIfStagingConfigDigestIsZero() (gas: 153194) -ConfiguratorPromoteStagingConfigTest:test_revertsIfStagingConfigDigestIsZero() (gas: 153194) -ConfiguratorSetProductionConfigTest:test_correctlyUpdatesTheConfig() (gas: 430945) -ConfiguratorSetProductionConfigTest:test_correctlyUpdatesTheConfig() (gas: 430945) -ConfiguratorSetProductionConfigTest:test_revertsIfCalledByNonOwner() (gas: 307279) -ConfiguratorSetProductionConfigTest:test_revertsIfCalledByNonOwner() (gas: 307279) -ConfiguratorSetProductionConfigTest:test_revertsIfFaultToleranceIsZero() (gas: 304881) -ConfiguratorSetProductionConfigTest:test_revertsIfFaultToleranceIsZero() (gas: 304881) -ConfiguratorSetProductionConfigTest:test_revertsIfNotEnoughSigners() (gas: 124119) -ConfiguratorSetProductionConfigTest:test_revertsIfNotEnoughSigners() (gas: 124119) -ConfiguratorSetProductionConfigTest:test_revertsIfOnchainConfigIsInvalid() (gas: 139109) -ConfiguratorSetProductionConfigTest:test_revertsIfOnchainConfigIsInvalid() (gas: 139109) -ConfiguratorSetProductionConfigTest:test_revertsIfSetWithTooManySigners() (gas: 143628) -ConfiguratorSetProductionConfigTest:test_revertsIfSetWithTooManySigners() (gas: 143628) -ConfiguratorSetProductionConfigTest:test_supportsHigherVersionsIgnoringExcessOnchainConfig() (gas: 158649) -ConfiguratorSetProductionConfigTest:test_supportsHigherVersionsIgnoringExcessOnchainConfig() (gas: 158649) -ConfiguratorSetStagingConfigTest:test_correctlyUpdatesTheConfig() (gas: 478338) -ConfiguratorSetStagingConfigTest:test_correctlyUpdatesTheConfig() (gas: 478338) -ConfiguratorSetStagingConfigTest:test_revertsIfCalledByNonOwner() (gas: 307248) -ConfiguratorSetStagingConfigTest:test_revertsIfCalledByNonOwner() (gas: 307248) -ConfiguratorSetStagingConfigTest:test_revertsIfFaultToleranceIsZero() (gas: 304850) -ConfiguratorSetStagingConfigTest:test_revertsIfFaultToleranceIsZero() (gas: 304850) -ConfiguratorSetStagingConfigTest:test_revertsIfNotEnoughSigners() (gas: 124088) -ConfiguratorSetStagingConfigTest:test_revertsIfNotEnoughSigners() (gas: 124088) -ConfiguratorSetStagingConfigTest:test_revertsIfOnchainConfigIsInvalid() (gas: 189869) -ConfiguratorSetStagingConfigTest:test_revertsIfOnchainConfigIsInvalid() (gas: 189869) -ConfiguratorSetStagingConfigTest:test_revertsIfSetWithTooManySigners() (gas: 143608) -ConfiguratorSetStagingConfigTest:test_revertsIfSetWithTooManySigners() (gas: 143608) +ChannelConfigStoreTest:test_revertsIfCalledByNonOwner() (gas: 11360) +ChannelConfigStoreTest:test_revertsIfCalledByNonOwner() (gas: 11360) +ConfiguratorPromoteStagingConfigTest:test_promotesStagingConfig() (gas: 98375) +ConfiguratorPromoteStagingConfigTest:test_promotesStagingConfig() (gas: 98375) +ConfiguratorPromoteStagingConfigTest:test_revertsIfCalledByNonOwner() (gas: 10962) +ConfiguratorPromoteStagingConfigTest:test_revertsIfCalledByNonOwner() (gas: 10962) +ConfiguratorPromoteStagingConfigTest:test_revertsIfIsGreenProductionDoesNotMatchContractState() (gas: 13423) +ConfiguratorPromoteStagingConfigTest:test_revertsIfIsGreenProductionDoesNotMatchContractState() (gas: 13423) +ConfiguratorPromoteStagingConfigTest:test_revertsIfNoConfigHasEverBeenSetWithThisConfigId() (gas: 13419) +ConfiguratorPromoteStagingConfigTest:test_revertsIfNoConfigHasEverBeenSetWithThisConfigId() (gas: 13419) +ConfiguratorPromoteStagingConfigTest:test_revertsIfProductionConfigDigestIsZero() (gas: 68521) +ConfiguratorPromoteStagingConfigTest:test_revertsIfProductionConfigDigestIsZero() (gas: 68521) +ConfiguratorPromoteStagingConfigTest:test_revertsIfStagingConfigDigestIsZero() (gas: 48258) +ConfiguratorPromoteStagingConfigTest:test_revertsIfStagingConfigDigestIsZero() (gas: 48258) +ConfiguratorSetProductionConfigTest:test_correctlyUpdatesTheConfig() (gas: 254697) +ConfiguratorSetProductionConfigTest:test_correctlyUpdatesTheConfig() (gas: 254697) +ConfiguratorSetProductionConfigTest:test_revertsIfCalledByNonOwner() (gas: 266559) +ConfiguratorSetProductionConfigTest:test_revertsIfCalledByNonOwner() (gas: 266559) +ConfiguratorSetProductionConfigTest:test_revertsIfFaultToleranceIsZero() (gas: 264173) +ConfiguratorSetProductionConfigTest:test_revertsIfFaultToleranceIsZero() (gas: 264173) +ConfiguratorSetProductionConfigTest:test_revertsIfNotEnoughSigners() (gas: 95951) +ConfiguratorSetProductionConfigTest:test_revertsIfNotEnoughSigners() (gas: 95951) +ConfiguratorSetProductionConfigTest:test_revertsIfOnchainConfigIsInvalid() (gas: 60885) +ConfiguratorSetProductionConfigTest:test_revertsIfOnchainConfigIsInvalid() (gas: 60885) +ConfiguratorSetProductionConfigTest:test_revertsIfSetWithTooManySigners() (gas: 107412) +ConfiguratorSetProductionConfigTest:test_revertsIfSetWithTooManySigners() (gas: 107412) +ConfiguratorSetProductionConfigTest:test_supportsHigherVersionsIgnoringExcessOnchainConfig() (gas: 125093) +ConfiguratorSetProductionConfigTest:test_supportsHigherVersionsIgnoringExcessOnchainConfig() (gas: 125093) +ConfiguratorSetStagingConfigTest:test_correctlyUpdatesTheConfig() (gas: 260962) +ConfiguratorSetStagingConfigTest:test_correctlyUpdatesTheConfig() (gas: 260962) +ConfiguratorSetStagingConfigTest:test_revertsIfCalledByNonOwner() (gas: 266528) +ConfiguratorSetStagingConfigTest:test_revertsIfCalledByNonOwner() (gas: 266528) +ConfiguratorSetStagingConfigTest:test_revertsIfFaultToleranceIsZero() (gas: 264142) +ConfiguratorSetStagingConfigTest:test_revertsIfFaultToleranceIsZero() (gas: 264142) +ConfiguratorSetStagingConfigTest:test_revertsIfNotEnoughSigners() (gas: 95920) +ConfiguratorSetStagingConfigTest:test_revertsIfNotEnoughSigners() (gas: 95920) +ConfiguratorSetStagingConfigTest:test_revertsIfOnchainConfigIsInvalid() (gas: 85217) +ConfiguratorSetStagingConfigTest:test_revertsIfOnchainConfigIsInvalid() (gas: 85217) +ConfiguratorSetStagingConfigTest:test_revertsIfSetWithTooManySigners() (gas: 107392) +ConfiguratorSetStagingConfigTest:test_revertsIfSetWithTooManySigners() (gas: 107392) ConfiguratorTest:testSupportsInterface() (gas: 5542) ConfiguratorTest:testSupportsInterface() (gas: 5542) ConfiguratorTest:testTypeAndVersion() (gas: 9683) ConfiguratorTest:testTypeAndVersion() (gas: 9683) -DestinationFeeManagerProcessFeeTest:test_DiscountIsAppliedForNative() (gas: 88385) -DestinationFeeManagerProcessFeeTest:test_DiscountIsReturnedForNative() (gas: 88313) -DestinationFeeManagerProcessFeeTest:test_DiscountIsReturnedForNativeWithSurcharge() (gas: 154311) -DestinationFeeManagerProcessFeeTest:test_GlobalDiscountCantBeSetToMoreThanMaximum() (gas: 49056) -DestinationFeeManagerProcessFeeTest:test_GlobalDiscountIsOverridenByIndividualDiscountLink() (gas: 155677) -DestinationFeeManagerProcessFeeTest:test_GlobalDiscountIsOverridenByIndividualDiscountNative() (gas: 158691) -DestinationFeeManagerProcessFeeTest:test_GlobalDiscountIsUpdatedAfterBeingSetToZeroLink() (gas: 146841) -DestinationFeeManagerProcessFeeTest:test_GlobalDiscountIsUpdatedAfterBeingSetToZeroNative() (gas: 152816) -DestinationFeeManagerProcessFeeTest:test_GlobalDiscountWithLink() (gas: 87070) -DestinationFeeManagerProcessFeeTest:test_GlobalDiscountWithNative() (gas: 90060) -DestinationFeeManagerProcessFeeTest:test_GlobalDiscountWithNativeAndLink() (gas: 157407) -DestinationFeeManagerProcessFeeTest:test_V1PayloadVerifies() (gas: 60074) -DestinationFeeManagerProcessFeeTest:test_V1PayloadVerifiesAndReturnsChange() (gas: 96068) -DestinationFeeManagerProcessFeeTest:test_V2PayloadVerifies() (gas: 219908) -DestinationFeeManagerProcessFeeTest:test_V2PayloadWithoutQuoteFails() (gas: 62913) -DestinationFeeManagerProcessFeeTest:test_V2PayloadWithoutZeroFee() (gas: 110543) -DestinationFeeManagerProcessFeeTest:test_WithdrawERC20() (gas: 171680) -DestinationFeeManagerProcessFeeTest:test_WithdrawNonAdminAddr() (gas: 119013) -DestinationFeeManagerProcessFeeTest:test_WithdrawUnwrappedNative() (gas: 66188) -DestinationFeeManagerProcessFeeTest:test_addVerifier() (gas: 288061) -DestinationFeeManagerProcessFeeTest:test_addVerifierExistingAddress() (gas: 80600) +DestinationFeeManagerProcessFeeTest:test_DiscountIsAppliedForNative() (gas: 52385) +DestinationFeeManagerProcessFeeTest:test_DiscountIsReturnedForNative() (gas: 52313) +DestinationFeeManagerProcessFeeTest:test_DiscountIsReturnedForNativeWithSurcharge() (gas: 78547) +DestinationFeeManagerProcessFeeTest:test_GlobalDiscountCantBeSetToMoreThanMaximum() (gas: 19544) +DestinationFeeManagerProcessFeeTest:test_GlobalDiscountIsOverridenByIndividualDiscountLink() (gas: 79177) +DestinationFeeManagerProcessFeeTest:test_GlobalDiscountIsOverridenByIndividualDiscountNative() (gas: 82191) +DestinationFeeManagerProcessFeeTest:test_GlobalDiscountIsUpdatedAfterBeingSetToZeroLink() (gas: 47878) +DestinationFeeManagerProcessFeeTest:test_GlobalDiscountIsUpdatedAfterBeingSetToZeroNative() (gas: 51058) +DestinationFeeManagerProcessFeeTest:test_GlobalDiscountWithLink() (gas: 51570) +DestinationFeeManagerProcessFeeTest:test_GlobalDiscountWithNative() (gas: 54560) +DestinationFeeManagerProcessFeeTest:test_GlobalDiscountWithNativeAndLink() (gas: 83407) +DestinationFeeManagerProcessFeeTest:test_V1PayloadVerifies() (gas: 29358) +DestinationFeeManagerProcessFeeTest:test_V1PayloadVerifiesAndReturnsChange() (gas: 60228) +DestinationFeeManagerProcessFeeTest:test_V2PayloadVerifies() (gas: 122744) +DestinationFeeManagerProcessFeeTest:test_V2PayloadWithoutQuoteFails() (gas: 29697) +DestinationFeeManagerProcessFeeTest:test_V2PayloadWithoutZeroFee() (gas: 77087) +DestinationFeeManagerProcessFeeTest:test_WithdrawERC20() (gas: 71724) +DestinationFeeManagerProcessFeeTest:test_WithdrawNonAdminAddr() (gas: 56357) +DestinationFeeManagerProcessFeeTest:test_WithdrawUnwrappedNative() (gas: 25416) +DestinationFeeManagerProcessFeeTest:test_addVerifier() (gas: 128921) +DestinationFeeManagerProcessFeeTest:test_addVerifierExistingAddress() (gas: 34192) DestinationFeeManagerProcessFeeTest:test_baseFeeIsAppliedForLink() (gas: 16665) DestinationFeeManagerProcessFeeTest:test_baseFeeIsAppliedForNative() (gas: 19670) -DestinationFeeManagerProcessFeeTest:test_correctDiscountIsAppliedWhenBothTokensAreDiscounted() (gas: 173969) -DestinationFeeManagerProcessFeeTest:test_discountAIsNotAppliedWhenSetForOtherUsers() (gas: 90532) -DestinationFeeManagerProcessFeeTest:test_discountFeeRoundsDownWhenUneven() (gas: 88611) -DestinationFeeManagerProcessFeeTest:test_discountIsAppliedForLink() (gas: 85398) -DestinationFeeManagerProcessFeeTest:test_discountIsAppliedWith100PercentSurcharge() (gas: 154340) -DestinationFeeManagerProcessFeeTest:test_discountIsNoLongerAppliedAfterRemoving() (gas: 145782) -DestinationFeeManagerProcessFeeTest:test_discountIsNotAppliedForInvalidTokenAddress() (gas: 47276) -DestinationFeeManagerProcessFeeTest:test_discountIsNotAppliedToOtherFeeds() (gas: 90580) -DestinationFeeManagerProcessFeeTest:test_discountIsReturnedForLink() (gas: 85370) +DestinationFeeManagerProcessFeeTest:test_correctDiscountIsAppliedWhenBothTokensAreDiscounted() (gas: 90469) +DestinationFeeManagerProcessFeeTest:test_discountAIsNotAppliedWhenSetForOtherUsers() (gas: 58532) +DestinationFeeManagerProcessFeeTest:test_discountFeeRoundsDownWhenUneven() (gas: 52587) +DestinationFeeManagerProcessFeeTest:test_discountIsAppliedForLink() (gas: 49398) +DestinationFeeManagerProcessFeeTest:test_discountIsAppliedWith100PercentSurcharge() (gas: 78576) +DestinationFeeManagerProcessFeeTest:test_discountIsNoLongerAppliedAfterRemoving() (gas: 47831) +DestinationFeeManagerProcessFeeTest:test_discountIsNotAppliedForInvalidTokenAddress() (gas: 17516) +DestinationFeeManagerProcessFeeTest:test_discountIsNotAppliedToOtherFeeds() (gas: 56580) +DestinationFeeManagerProcessFeeTest:test_discountIsReturnedForLink() (gas: 49370) DestinationFeeManagerProcessFeeTest:test_emptyQuoteRevertsWithError() (gas: 12253) -DestinationFeeManagerProcessFeeTest:test_eventIsEmittedAfterSurchargeIsSet() (gas: 70137) -DestinationFeeManagerProcessFeeTest:test_eventIsEmittedIfNotEnoughLink() (gas: 300204) -DestinationFeeManagerProcessFeeTest:test_eventIsEmittedUponWithdraw() (gas: 138969) -DestinationFeeManagerProcessFeeTest:test_feeIsUpdatedAfterDiscountIsRemoved() (gas: 151862) -DestinationFeeManagerProcessFeeTest:test_feeIsUpdatedAfterNewDiscountIsApplied() (gas: 159513) -DestinationFeeManagerProcessFeeTest:test_feeIsUpdatedAfterNewSurchargeIsApplied() (gas: 151424) -DestinationFeeManagerProcessFeeTest:test_feeIsZeroWith100PercentDiscount() (gas: 87741) +DestinationFeeManagerProcessFeeTest:test_eventIsEmittedAfterSurchargeIsSet() (gas: 41373) +DestinationFeeManagerProcessFeeTest:test_eventIsEmittedIfNotEnoughLink() (gas: 181640) +DestinationFeeManagerProcessFeeTest:test_eventIsEmittedUponWithdraw() (gas: 69085) +DestinationFeeManagerProcessFeeTest:test_feeIsUpdatedAfterDiscountIsRemoved() (gas: 51095) +DestinationFeeManagerProcessFeeTest:test_feeIsUpdatedAfterNewDiscountIsApplied() (gas: 67113) +DestinationFeeManagerProcessFeeTest:test_feeIsUpdatedAfterNewSurchargeIsApplied() (gas: 66296) +DestinationFeeManagerProcessFeeTest:test_feeIsZeroWith100PercentDiscount() (gas: 51741) DestinationFeeManagerProcessFeeTest:test_getBaseRewardWithLinkQuote() (gas: 16663) -DestinationFeeManagerProcessFeeTest:test_getLinkFeeIsRoundedUp() (gas: 85549) -DestinationFeeManagerProcessFeeTest:test_getLinkRewardIsSameAsFee() (gas: 101617) -DestinationFeeManagerProcessFeeTest:test_getLinkRewardWithNativeQuoteAndSurchargeWithLinkDiscount() (gas: 156506) -DestinationFeeManagerProcessFeeTest:test_getRewardWithLinkDiscount() (gas: 85394) -DestinationFeeManagerProcessFeeTest:test_getRewardWithLinkQuoteAndLinkDiscount() (gas: 85353) +DestinationFeeManagerProcessFeeTest:test_getLinkFeeIsRoundedUp() (gas: 49525) +DestinationFeeManagerProcessFeeTest:test_getLinkRewardIsSameAsFee() (gas: 55093) +DestinationFeeManagerProcessFeeTest:test_getLinkRewardWithNativeQuoteAndSurchargeWithLinkDiscount() (gas: 84718) +DestinationFeeManagerProcessFeeTest:test_getRewardWithLinkDiscount() (gas: 49394) +DestinationFeeManagerProcessFeeTest:test_getRewardWithLinkQuoteAndLinkDiscount() (gas: 49353) DestinationFeeManagerProcessFeeTest:test_getRewardWithNativeQuote() (gas: 19624) -DestinationFeeManagerProcessFeeTest:test_getRewardWithNativeQuoteAndSurcharge() (gas: 85622) -DestinationFeeManagerProcessFeeTest:test_linkAvailableForPaymentReturnsLinkBalance() (gas: 100061) -DestinationFeeManagerProcessFeeTest:test_nativeSurcharge0Percent() (gas: 65558) -DestinationFeeManagerProcessFeeTest:test_nativeSurcharge100Percent() (gas: 85602) -DestinationFeeManagerProcessFeeTest:test_nativeSurchargeCannotExceed100Percent() (gas: 45928) -DestinationFeeManagerProcessFeeTest:test_nativeSurchargeEventIsEmittedOnUpdate() (gas: 70139) -DestinationFeeManagerProcessFeeTest:test_noFeeIsAppliedWhenReportHasZeroFee() (gas: 87586) -DestinationFeeManagerProcessFeeTest:test_noFeeIsAppliedWhenReportHasZeroFeeAndDiscountAndSurchargeIsSet() (gas: 153540) -DestinationFeeManagerProcessFeeTest:test_nonAdminProxyUserCannotProcessFee() (gas: 58299) -DestinationFeeManagerProcessFeeTest:test_nonAdminUserCanNotSetDiscount() (gas: 49784) -DestinationFeeManagerProcessFeeTest:test_onlyCallableByOwnerReverts() (gas: 36655) -DestinationFeeManagerProcessFeeTest:test_onlyOwnerCanSetGlobalDiscount() (gas: 49429) -DestinationFeeManagerProcessFeeTest:test_payLinkDeficit() (gas: 398705) -DestinationFeeManagerProcessFeeTest:test_payLinkDeficitOnlyCallableByAdmin() (gas: 46424) -DestinationFeeManagerProcessFeeTest:test_payLinkDeficitPaysAllFeesProcessed() (gas: 511868) -DestinationFeeManagerProcessFeeTest:test_payLinkDeficitTwice() (gas: 446682) -DestinationFeeManagerProcessFeeTest:test_poolIdsCannotBeZeroAddress() (gas: 199021) -DestinationFeeManagerProcessFeeTest:test_processFeeAsProxy() (gas: 220514) -DestinationFeeManagerProcessFeeTest:test_processFeeDefaultReportsStillVerifiesWithEmptyQuote() (gas: 60619) -DestinationFeeManagerProcessFeeTest:test_processFeeEmitsEventIfNotEnoughLink() (gas: 314855) -DestinationFeeManagerProcessFeeTest:test_processFeeIfSubscriberIsSelf() (gas: 63821) -DestinationFeeManagerProcessFeeTest:test_processFeeNative() (gas: 342765) -DestinationFeeManagerProcessFeeTest:test_processFeeUsesCorrectDigest() (gas: 227974) -DestinationFeeManagerProcessFeeTest:test_processFeeWithDefaultReportPayloadAndQuoteStillVerifies() (gas: 62936) -DestinationFeeManagerProcessFeeTest:test_processFeeWithDiscountEmitsEvent() (gas: 444355) -DestinationFeeManagerProcessFeeTest:test_processFeeWithInvalidReportVersionFailsToDecode() (gas: 62982) -DestinationFeeManagerProcessFeeTest:test_processFeeWithNoDiscountDoesNotEmitEvent() (gas: 306698) -DestinationFeeManagerProcessFeeTest:test_processFeeWithUnwrappedNative() (gas: 297591) -DestinationFeeManagerProcessFeeTest:test_processFeeWithUnwrappedNativeLinkAddress() (gas: 205502) -DestinationFeeManagerProcessFeeTest:test_processFeeWithUnwrappedNativeLinkAddressExcessiveFee() (gas: 271005) -DestinationFeeManagerProcessFeeTest:test_processFeeWithUnwrappedNativeShortFunds() (gas: 159991) -DestinationFeeManagerProcessFeeTest:test_processFeeWithUnwrappedNativeWithExcessiveFee() (gas: 304554) -DestinationFeeManagerProcessFeeTest:test_processFeeWithWithCorruptQuotePayload() (gas: 111098) -DestinationFeeManagerProcessFeeTest:test_processFeeWithWithEmptyQuotePayload() (gas: 63518) -DestinationFeeManagerProcessFeeTest:test_processFeeWithWithZeroQuotePayload() (gas: 63574) -DestinationFeeManagerProcessFeeTest:test_processFeeWithZeroLinkNonZeroNativeWithLinkQuote() (gas: 68814) -DestinationFeeManagerProcessFeeTest:test_processFeeWithZeroLinkNonZeroNativeWithNativeQuote() (gas: 309494) -DestinationFeeManagerProcessFeeTest:test_processFeeWithZeroNativeNonZeroLinkReturnsChange() (gas: 91722) -DestinationFeeManagerProcessFeeTest:test_processFeeWithZeroNativeNonZeroLinkWithLinkQuote() (gas: 220464) -DestinationFeeManagerProcessFeeTest:test_processFeeWithZeroNativeNonZeroLinkWithNativeQuote() (gas: 71518) -DestinationFeeManagerProcessFeeTest:test_processMultipleLinkReports() (gas: 330214) -DestinationFeeManagerProcessFeeTest:test_processMultipleUnwrappedNativeReports() (gas: 380713) -DestinationFeeManagerProcessFeeTest:test_processMultipleV1Reports() (gas: 132151) -DestinationFeeManagerProcessFeeTest:test_processMultipleWrappedNativeReports() (gas: 421113) -DestinationFeeManagerProcessFeeTest:test_processPoolIdsPassedMismatched() (gas: 179767) -DestinationFeeManagerProcessFeeTest:test_processV1V2V3Reports() (gas: 383320) -DestinationFeeManagerProcessFeeTest:test_processV1V2V3ReportsWithUnwrapped() (gas: 372635) -DestinationFeeManagerProcessFeeTest:test_removeVerifierNonExistentAddress() (gas: 34038) -DestinationFeeManagerProcessFeeTest:test_removeVerifierZeroAaddress() (gas: 31892) +DestinationFeeManagerProcessFeeTest:test_getRewardWithNativeQuoteAndSurcharge() (gas: 52858) +DestinationFeeManagerProcessFeeTest:test_linkAvailableForPaymentReturnsLinkBalance() (gas: 52453) +DestinationFeeManagerProcessFeeTest:test_nativeSurcharge0Percent() (gas: 32866) +DestinationFeeManagerProcessFeeTest:test_nativeSurcharge100Percent() (gas: 52838) +DestinationFeeManagerProcessFeeTest:test_nativeSurchargeCannotExceed100Percent() (gas: 17152) +DestinationFeeManagerProcessFeeTest:test_nativeSurchargeEventIsEmittedOnUpdate() (gas: 41351) +DestinationFeeManagerProcessFeeTest:test_noFeeIsAppliedWhenReportHasZeroFee() (gas: 51586) +DestinationFeeManagerProcessFeeTest:test_noFeeIsAppliedWhenReportHasZeroFeeAndDiscountAndSurchargeIsSet() (gas: 77776) +DestinationFeeManagerProcessFeeTest:test_nonAdminProxyUserCannotProcessFee() (gas: 24207) +DestinationFeeManagerProcessFeeTest:test_nonAdminUserCanNotSetDiscount() (gas: 19784) +DestinationFeeManagerProcessFeeTest:test_onlyCallableByOwnerReverts() (gas: 15475) +DestinationFeeManagerProcessFeeTest:test_onlyOwnerCanSetGlobalDiscount() (gas: 19929) +DestinationFeeManagerProcessFeeTest:test_payLinkDeficit() (gas: 199273) +DestinationFeeManagerProcessFeeTest:test_payLinkDeficitOnlyCallableByAdmin() (gas: 17348) +DestinationFeeManagerProcessFeeTest:test_payLinkDeficitPaysAllFeesProcessed() (gas: 220152) +DestinationFeeManagerProcessFeeTest:test_payLinkDeficitTwice() (gas: 203594) +DestinationFeeManagerProcessFeeTest:test_poolIdsCannotBeZeroAddress() (gas: 117941) +DestinationFeeManagerProcessFeeTest:test_processFeeAsProxy() (gas: 123082) +DestinationFeeManagerProcessFeeTest:test_processFeeDefaultReportsStillVerifiesWithEmptyQuote() (gas: 29779) +DestinationFeeManagerProcessFeeTest:test_processFeeEmitsEventIfNotEnoughLink() (gas: 166315) +DestinationFeeManagerProcessFeeTest:test_processFeeIfSubscriberIsSelf() (gas: 30097) +DestinationFeeManagerProcessFeeTest:test_processFeeNative() (gas: 179125) +DestinationFeeManagerProcessFeeTest:test_processFeeUsesCorrectDigest() (gas: 124042) +DestinationFeeManagerProcessFeeTest:test_processFeeWithDefaultReportPayloadAndQuoteStillVerifies() (gas: 31856) +DestinationFeeManagerProcessFeeTest:test_processFeeWithDiscountEmitsEvent() (gas: 246015) +DestinationFeeManagerProcessFeeTest:test_processFeeWithInvalidReportVersionFailsToDecode() (gas: 30798) +DestinationFeeManagerProcessFeeTest:test_processFeeWithNoDiscountDoesNotEmitEvent() (gas: 173058) +DestinationFeeManagerProcessFeeTest:test_processFeeWithUnwrappedNative() (gas: 186659) +DestinationFeeManagerProcessFeeTest:test_processFeeWithUnwrappedNativeLinkAddress() (gas: 138170) +DestinationFeeManagerProcessFeeTest:test_processFeeWithUnwrappedNativeLinkAddressExcessiveFee() (gas: 162073) +DestinationFeeManagerProcessFeeTest:test_processFeeWithUnwrappedNativeShortFunds() (gas: 97159) +DestinationFeeManagerProcessFeeTest:test_processFeeWithUnwrappedNativeWithExcessiveFee() (gas: 193622) +DestinationFeeManagerProcessFeeTest:test_processFeeWithWithCorruptQuotePayload() (gas: 77374) +DestinationFeeManagerProcessFeeTest:test_processFeeWithWithEmptyQuotePayload() (gas: 30034) +DestinationFeeManagerProcessFeeTest:test_processFeeWithWithZeroQuotePayload() (gas: 30090) +DestinationFeeManagerProcessFeeTest:test_processFeeWithZeroLinkNonZeroNativeWithLinkQuote() (gas: 37638) +DestinationFeeManagerProcessFeeTest:test_processFeeWithZeroLinkNonZeroNativeWithNativeQuote() (gas: 159002) +DestinationFeeManagerProcessFeeTest:test_processFeeWithZeroNativeNonZeroLinkReturnsChange() (gas: 58046) +DestinationFeeManagerProcessFeeTest:test_processFeeWithZeroNativeNonZeroLinkWithLinkQuote() (gas: 123080) +DestinationFeeManagerProcessFeeTest:test_processFeeWithZeroNativeNonZeroLinkWithNativeQuote() (gas: 40342) +DestinationFeeManagerProcessFeeTest:test_processMultipleLinkReports() (gas: 232162) +DestinationFeeManagerProcessFeeTest:test_processMultipleUnwrappedNativeReports() (gas: 265949) +DestinationFeeManagerProcessFeeTest:test_processMultipleV1Reports() (gas: 80527) +DestinationFeeManagerProcessFeeTest:test_processMultipleWrappedNativeReports() (gas: 249129) +DestinationFeeManagerProcessFeeTest:test_processPoolIdsPassedMismatched() (gas: 98827) +DestinationFeeManagerProcessFeeTest:test_processV1V2V3Reports() (gas: 216876) +DestinationFeeManagerProcessFeeTest:test_processV1V2V3ReportsWithUnwrapped() (gas: 258551) +DestinationFeeManagerProcessFeeTest:test_removeVerifierNonExistentAddress() (gas: 12822) +DestinationFeeManagerProcessFeeTest:test_removeVerifierZeroAaddress() (gas: 10700) DestinationFeeManagerProcessFeeTest:test_reportWithNoExpiryOrFeeReturnsZero() (gas: 10850) -DestinationFeeManagerProcessFeeTest:test_revertOnSettingAnAddressZeroVerifier() (gas: 31816) -DestinationFeeManagerProcessFeeTest:test_rewardsAreCorrectlySentToEachAssociatedPoolWhenVerifyingInBulk() (gas: 406125) -DestinationFeeManagerProcessFeeTest:test_setDiscountOver100Percent() (gas: 49552) -DestinationFeeManagerProcessFeeTest:test_setRewardManagerZeroAddress() (gas: 31818) -DestinationFeeManagerProcessFeeTest:test_subscriberDiscountEventIsEmittedOnUpdate() (gas: 76303) -DestinationFeeManagerProcessFeeTest:test_surchargeFeeRoundsUpWhenUneven() (gas: 85957) -DestinationFeeManagerProcessFeeTest:test_surchargeIsApplied() (gas: 85858) -DestinationFeeManagerProcessFeeTest:test_surchargeIsAppliedForNativeFeeWithDiscount() (gas: 154747) -DestinationFeeManagerProcessFeeTest:test_surchargeIsNoLongerAppliedAfterRemoving() (gas: 144294) -DestinationFeeManagerProcessFeeTest:test_surchargeIsNotAppliedForLinkFee() (gas: 82655) -DestinationFeeManagerProcessFeeTest:test_surchargeIsNotAppliedWith100PercentDiscount() (gas: 153743) +DestinationFeeManagerProcessFeeTest:test_revertOnSettingAnAddressZeroVerifier() (gas: 10636) +DestinationFeeManagerProcessFeeTest:test_rewardsAreCorrectlySentToEachAssociatedPoolWhenVerifyingInBulk() (gas: 262573) +DestinationFeeManagerProcessFeeTest:test_setDiscountOver100Percent() (gas: 19540) +DestinationFeeManagerProcessFeeTest:test_setRewardManagerZeroAddress() (gas: 10626) +DestinationFeeManagerProcessFeeTest:test_subscriberDiscountEventIsEmittedOnUpdate() (gas: 46279) +DestinationFeeManagerProcessFeeTest:test_surchargeFeeRoundsUpWhenUneven() (gas: 53169) +DestinationFeeManagerProcessFeeTest:test_surchargeIsApplied() (gas: 53094) +DestinationFeeManagerProcessFeeTest:test_surchargeIsAppliedForNativeFeeWithDiscount() (gas: 78983) +DestinationFeeManagerProcessFeeTest:test_surchargeIsNoLongerAppliedAfterRemoving() (gas: 48618) +DestinationFeeManagerProcessFeeTest:test_surchargeIsNotAppliedForLinkFee() (gas: 51891) +DestinationFeeManagerProcessFeeTest:test_surchargeIsNotAppliedWith100PercentDiscount() (gas: 77979) DestinationFeeManagerProcessFeeTest:test_testRevertIfReportHasExpired() (gas: 14987) -DestinationRewardManagerClaimTest:test_claimAllRecipients() (gas: 470831) -DestinationRewardManagerClaimTest:test_claimMultipleRecipients() (gas: 249331) -DestinationRewardManagerClaimTest:test_claimRewardsWithDuplicatePoolIdsDoesNotPayoutTwice() (gas: 617025) -DestinationRewardManagerClaimTest:test_claimSingleRecipient() (gas: 128196) -DestinationRewardManagerClaimTest:test_claimUnevenAmountRoundsDown() (gas: 611309) -DestinationRewardManagerClaimTest:test_claimUnregisteredPoolId() (gas: 67784) -DestinationRewardManagerClaimTest:test_claimUnregisteredRecipient() (gas: 73836) -DestinationRewardManagerClaimTest:test_eventIsEmittedUponClaim() (gas: 115441) -DestinationRewardManagerClaimTest:test_eventIsNotEmittedUponUnsuccessfulClaim() (gas: 54052) -DestinationRewardManagerClaimTest:test_recipientsClaimMultipleDeposits() (gas: 963359) -DestinationRewardManagerClaimTest:test_singleRecipientClaimMultipleDeposits() (gas: 341908) -DestinationRewardManagerNoRecipientSet:test_claimAllRecipientsAfterRecipientsSet() (gas: 945048) -DestinationRewardManagerPayRecipientsTest:test_addFundsToPoolAsNonOwnerOrFeeManager() (gas: 33929) -DestinationRewardManagerPayRecipientsTest:test_addFundsToPoolAsOwner() (gas: 121457) -DestinationRewardManagerPayRecipientsTest:test_payAllRecipients() (gas: 299230) -DestinationRewardManagerPayRecipientsTest:test_payAllRecipientsFromNonAdminUser() (gas: 51288) -DestinationRewardManagerPayRecipientsTest:test_payAllRecipientsFromRecipientInPool() (gas: 295090) -DestinationRewardManagerPayRecipientsTest:test_payAllRecipientsWithAdditionalInvalidRecipient() (gas: 310786) -DestinationRewardManagerPayRecipientsTest:test_payAllRecipientsWithAdditionalUnregisteredRecipient() (gas: 318651) -DestinationRewardManagerPayRecipientsTest:test_payRecipientWithInvalidPool() (gas: 57970) -DestinationRewardManagerPayRecipientsTest:test_payRecipientsEmptyRecipientList() (gas: 56056) -DestinationRewardManagerPayRecipientsTest:test_payRecipientsWithInvalidPoolId() (gas: 63614) -DestinationRewardManagerPayRecipientsTest:test_paySingleRecipient() (gas: 118352) -DestinationRewardManagerPayRecipientsTest:test_paySubsetOfRecipientsInPool() (gas: 247119) -DestinationRewardManagerRecipientClaimDifferentWeightsTest:test_allRecipientsClaimingReceiveExpectedAmount() (gas: 474427) -DestinationRewardManagerRecipientClaimMultiplePoolsTest:test_claimAllRecipientsMultiplePools() (gas: 921938) -DestinationRewardManagerRecipientClaimMultiplePoolsTest:test_claimAllRecipientsSinglePool() (gas: 490213) -DestinationRewardManagerRecipientClaimMultiplePoolsTest:test_claimEmptyPoolWhenSecondPoolContainsFunds() (gas: 544364) -DestinationRewardManagerRecipientClaimMultiplePoolsTest:test_claimMultipleRecipientsMultiplePools() (gas: 462259) -DestinationRewardManagerRecipientClaimMultiplePoolsTest:test_claimMultipleRecipientsSinglePool() (gas: 249439) -DestinationRewardManagerRecipientClaimMultiplePoolsTest:test_claimSingleRecipientMultiplePools() (gas: 220249) -DestinationRewardManagerRecipientClaimMultiplePoolsTest:test_claimSingleUniqueRecipient() (gas: 181537) -DestinationRewardManagerRecipientClaimMultiplePoolsTest:test_claimUnevenAmountRoundsDown() (gas: 1195822) -DestinationRewardManagerRecipientClaimMultiplePoolsTest:test_claimUnregisteredRecipient() (gas: 137758) +DestinationRewardManagerClaimTest:test_claimAllRecipients() (gas: 275855) +DestinationRewardManagerClaimTest:test_claimMultipleRecipients() (gas: 153343) +DestinationRewardManagerClaimTest:test_claimRewardsWithDuplicatePoolIdsDoesNotPayoutTwice() (gas: 328505) +DestinationRewardManagerClaimTest:test_claimSingleRecipient() (gas: 88352) +DestinationRewardManagerClaimTest:test_claimUnevenAmountRoundsDown() (gas: 313709) +DestinationRewardManagerClaimTest:test_claimUnregisteredPoolId() (gas: 34440) +DestinationRewardManagerClaimTest:test_claimUnregisteredRecipient() (gas: 40492) +DestinationRewardManagerClaimTest:test_eventIsEmittedUponClaim() (gas: 86097) +DestinationRewardManagerClaimTest:test_eventIsNotEmittedUponUnsuccessfulClaim() (gas: 24708) +DestinationRewardManagerClaimTest:test_recipientsClaimMultipleDeposits() (gas: 383463) +DestinationRewardManagerClaimTest:test_singleRecipientClaimMultipleDeposits() (gas: 136376) +DestinationRewardManagerNoRecipientSet:test_claimAllRecipientsAfterRecipientsSet() (gas: 491680) +DestinationRewardManagerPayRecipientsTest:test_addFundsToPoolAsNonOwnerOrFeeManager() (gas: 11517) +DestinationRewardManagerPayRecipientsTest:test_addFundsToPoolAsOwner() (gas: 53958) +DestinationRewardManagerPayRecipientsTest:test_payAllRecipients() (gas: 251714) +DestinationRewardManagerPayRecipientsTest:test_payAllRecipientsFromNonAdminUser() (gas: 20472) +DestinationRewardManagerPayRecipientsTest:test_payAllRecipientsFromRecipientInPool() (gas: 247574) +DestinationRewardManagerPayRecipientsTest:test_payAllRecipientsWithAdditionalInvalidRecipient() (gas: 263142) +DestinationRewardManagerPayRecipientsTest:test_payAllRecipientsWithAdditionalUnregisteredRecipient() (gas: 266267) +DestinationRewardManagerPayRecipientsTest:test_payRecipientWithInvalidPool() (gas: 30758) +DestinationRewardManagerPayRecipientsTest:test_payRecipientsEmptyRecipientList() (gas: 27224) +DestinationRewardManagerPayRecipientsTest:test_payRecipientsWithInvalidPoolId() (gas: 33286) +DestinationRewardManagerPayRecipientsTest:test_paySingleRecipient() (gas: 86640) +DestinationRewardManagerPayRecipientsTest:test_paySubsetOfRecipientsInPool() (gas: 199671) +DestinationRewardManagerRecipientClaimDifferentWeightsTest:test_allRecipientsClaimingReceiveExpectedAmount() (gas: 279451) +DestinationRewardManagerRecipientClaimMultiplePoolsTest:test_claimAllRecipientsMultiplePools() (gas: 510086) +DestinationRewardManagerRecipientClaimMultiplePoolsTest:test_claimAllRecipientsSinglePool() (gas: 281937) +DestinationRewardManagerRecipientClaimMultiplePoolsTest:test_claimEmptyPoolWhenSecondPoolContainsFunds() (gas: 291744) +DestinationRewardManagerRecipientClaimMultiplePoolsTest:test_claimMultipleRecipientsMultiplePools() (gas: 261683) +DestinationRewardManagerRecipientClaimMultiplePoolsTest:test_claimMultipleRecipientsSinglePool() (gas: 153451) +DestinationRewardManagerRecipientClaimMultiplePoolsTest:test_claimSingleRecipientMultiplePools() (gas: 131961) +DestinationRewardManagerRecipientClaimMultiplePoolsTest:test_claimSingleUniqueRecipient() (gas: 105349) +DestinationRewardManagerRecipientClaimMultiplePoolsTest:test_claimUnevenAmountRoundsDown() (gas: 576622) +DestinationRewardManagerRecipientClaimMultiplePoolsTest:test_claimUnregisteredRecipient() (gas: 63570) DestinationRewardManagerRecipientClaimMultiplePoolsTest:test_getAvailableRewardsCursorAndTotalPoolsEqual() (gas: 10203) DestinationRewardManagerRecipientClaimMultiplePoolsTest:test_getAvailableRewardsCursorCannotBeGreaterThanTotalPools() (gas: 12747) DestinationRewardManagerRecipientClaimMultiplePoolsTest:test_getAvailableRewardsCursorSingleResult() (gas: 19607) DestinationRewardManagerRecipientClaimMultiplePoolsTest:test_getRewardsAvailableToRecipientInBothPools() (gas: 29075) -DestinationRewardManagerRecipientClaimMultiplePoolsTest:test_getRewardsAvailableToRecipientInBothPoolsWhereAlreadyClaimed() (gas: 261620) +DestinationRewardManagerRecipientClaimMultiplePoolsTest:test_getRewardsAvailableToRecipientInBothPoolsWhereAlreadyClaimed() (gas: 147332) DestinationRewardManagerRecipientClaimMultiplePoolsTest:test_getRewardsAvailableToRecipientInNoPools() (gas: 18533) DestinationRewardManagerRecipientClaimMultiplePoolsTest:test_getRewardsAvailableToRecipientInSinglePool() (gas: 24592) -DestinationRewardManagerRecipientClaimMultiplePoolsTest:test_recipientsClaimMultipleDeposits() (gas: 965109) -DestinationRewardManagerRecipientClaimMultiplePoolsTest:test_singleRecipientClaimMultipleDeposits() (gas: 341945) -DestinationRewardManagerRecipientClaimUnevenWeightTest:test_allRecipientsClaimingReceiveExpectedAmount() (gas: 394245) -DestinationRewardManagerRecipientClaimUnevenWeightTest:test_allRecipientsClaimingReceiveExpectedAmountWithSmallDeposit() (gas: 403746) -DestinationRewardManagerSetRecipientsTest:test_eventIsEmittedUponSetRecipients() (gas: 225480) -DestinationRewardManagerSetRecipientsTest:test_setRecipientContainsDuplicateRecipients() (gas: 162133) -DestinationRewardManagerSetRecipientsTest:test_setRewardRecipientFromManagerAddress() (gas: 281046) -DestinationRewardManagerSetRecipientsTest:test_setRewardRecipientFromNonOwnerOrFeeManagerAddress() (gas: 53112) -DestinationRewardManagerSetRecipientsTest:test_setRewardRecipientTwice() (gas: 269426) -DestinationRewardManagerSetRecipientsTest:test_setRewardRecipientWeights() (gas: 214169) -DestinationRewardManagerSetRecipientsTest:test_setRewardRecipientWithZeroAddress() (gas: 123763) -DestinationRewardManagerSetRecipientsTest:test_setRewardRecipientWithZeroWeight() (gas: 223109) -DestinationRewardManagerSetRecipientsTest:test_setRewardRecipients() (gas: 216868) -DestinationRewardManagerSetRecipientsTest:test_setRewardRecipientsIsEmpty() (gas: 119667) -DestinationRewardManagerSetRecipientsTest:test_setSingleRewardRecipient() (gas: 139946) -DestinationRewardManagerSetupTest:test_addFeeManagerExistingAddress() (gas: 81713) -DestinationRewardManagerSetupTest:test_addFeeManagerZeroAddress() (gas: 31795) -DestinationRewardManagerSetupTest:test_addRemoveFeeManager() (gas: 146060) -DestinationRewardManagerSetupTest:test_eventEmittedUponFeeManagerUpdate() (gas: 70485) -DestinationRewardManagerSetupTest:test_eventEmittedUponFeePaid() (gas: 351606) -DestinationRewardManagerSetupTest:test_rejectsZeroLinkAddressOnConstruction() (gas: 236941) -DestinationRewardManagerSetupTest:test_removeFeeManagerNonExistentAddress() (gas: 33994) -DestinationRewardManagerSetupTest:test_setFeeManagerZeroAddress() (gas: 45820) -DestinationRewardManagerUpdateRewardRecipientsMultiplePoolsTest:test_updatePrimaryRecipientWeights() (gas: 791677) -DestinationRewardManagerUpdateRewardRecipientsTest:test_eventIsEmittedUponUpdateRecipients() (gas: 329907) -DestinationRewardManagerUpdateRewardRecipientsTest:test_onlyAdminCanUpdateRecipients() (gas: 51321) -DestinationRewardManagerUpdateRewardRecipientsTest:test_partialUpdateRecipientWeights() (gas: 498669) -DestinationRewardManagerUpdateRewardRecipientsTest:test_updateAllRecipientsWithSameAddressAndWeight() (gas: 321213) -DestinationRewardManagerUpdateRewardRecipientsTest:test_updatePartialRecipientsToSubset() (gas: 268804) -DestinationRewardManagerUpdateRewardRecipientsTest:test_updatePartialRecipientsWithExcessiveWeight() (gas: 295635) -DestinationRewardManagerUpdateRewardRecipientsTest:test_updatePartialRecipientsWithSameAddressAndWeight() (gas: 196315) -DestinationRewardManagerUpdateRewardRecipientsTest:test_updatePartialRecipientsWithUnderWeightSet() (gas: 295709) -DestinationRewardManagerUpdateRewardRecipientsTest:test_updateRecipientWeights() (gas: 789858) -DestinationRewardManagerUpdateRewardRecipientsTest:test_updateRecipientWithNewZeroAddress() (gas: 307474) -DestinationRewardManagerUpdateRewardRecipientsTest:test_updateRecipientsContainsDuplicateRecipients() (gas: 327263) -DestinationRewardManagerUpdateRewardRecipientsTest:test_updateRecipientsToDifferentLargerSet() (gas: 415544) -DestinationRewardManagerUpdateRewardRecipientsTest:test_updateRecipientsToDifferentPartialSet() (gas: 323993) -DestinationRewardManagerUpdateRewardRecipientsTest:test_updateRecipientsToDifferentSet() (gas: 384884) -DestinationRewardManagerUpdateRewardRecipientsTest:test_updateRecipientsToDifferentSetWithInvalidWeights() (gas: 368586) -DestinationRewardManagerUpdateRewardRecipientsTest:test_updateRecipientsUpdateAndRemoveExistingForLargerSet() (gas: 448411) -DestinationRewardManagerUpdateRewardRecipientsTest:test_updateRecipientsUpdateAndRemoveExistingForSmallerSet() (gas: 304653) -DestinationVerifierBulkVerifyBillingReport:test_verifyWithBulkLink() (gas: 812222) -DestinationVerifierBulkVerifyBillingReport:test_verifyWithBulkNative() (gas: 805212) -DestinationVerifierBulkVerifyBillingReport:test_verifyWithBulkNativeUnwrapped() (gas: 771218) -DestinationVerifierBulkVerifyBillingReport:test_verifyWithBulkNativeUnwrappedReturnsChange() (gas: 771173) +DestinationRewardManagerRecipientClaimMultiplePoolsTest:test_recipientsClaimMultipleDeposits() (gas: 387913) +DestinationRewardManagerRecipientClaimMultiplePoolsTest:test_singleRecipientClaimMultipleDeposits() (gas: 136413) +DestinationRewardManagerRecipientClaimUnevenWeightTest:test_allRecipientsClaimingReceiveExpectedAmount() (gas: 198513) +DestinationRewardManagerRecipientClaimUnevenWeightTest:test_allRecipientsClaimingReceiveExpectedAmountWithSmallDeposit() (gas: 218386) +DestinationRewardManagerSetRecipientsTest:test_eventIsEmittedUponSetRecipients() (gas: 193864) +DestinationRewardManagerSetRecipientsTest:test_setRecipientContainsDuplicateRecipients() (gas: 128245) +DestinationRewardManagerSetRecipientsTest:test_setRewardRecipientFromManagerAddress() (gas: 213998) +DestinationRewardManagerSetRecipientsTest:test_setRewardRecipientFromNonOwnerOrFeeManagerAddress() (gas: 21496) +DestinationRewardManagerSetRecipientsTest:test_setRewardRecipientTwice() (gas: 195694) +DestinationRewardManagerSetRecipientsTest:test_setRewardRecipientWeights() (gas: 182793) +DestinationRewardManagerSetRecipientsTest:test_setRewardRecipientWithZeroAddress() (gas: 92387) +DestinationRewardManagerSetRecipientsTest:test_setRewardRecipientWithZeroWeight() (gas: 193497) +DestinationRewardManagerSetRecipientsTest:test_setRewardRecipients() (gas: 187752) +DestinationRewardManagerSetRecipientsTest:test_setRewardRecipientsIsEmpty() (gas: 89299) +DestinationRewardManagerSetRecipientsTest:test_setSingleRewardRecipient() (gas: 112534) +DestinationRewardManagerSetupTest:test_addFeeManagerExistingAddress() (gas: 35281) +DestinationRewardManagerSetupTest:test_addFeeManagerZeroAddress() (gas: 10603) +DestinationRewardManagerSetupTest:test_addRemoveFeeManager() (gas: 45186) +DestinationRewardManagerSetupTest:test_eventEmittedUponFeeManagerUpdate() (gas: 41553) +DestinationRewardManagerSetupTest:test_eventEmittedUponFeePaid() (gas: 261346) +DestinationRewardManagerSetupTest:test_rejectsZeroLinkAddressOnConstruction() (gas: 59481) +DestinationRewardManagerSetupTest:test_removeFeeManagerNonExistentAddress() (gas: 12778) +DestinationRewardManagerSetupTest:test_setFeeManagerZeroAddress() (gas: 17128) +DestinationRewardManagerUpdateRewardRecipientsMultiplePoolsTest:test_updatePrimaryRecipientWeights() (gas: 373641) +DestinationRewardManagerUpdateRewardRecipientsTest:test_eventIsEmittedUponUpdateRecipients() (gas: 279091) +DestinationRewardManagerUpdateRewardRecipientsTest:test_onlyAdminCanUpdateRecipients() (gas: 19705) +DestinationRewardManagerUpdateRewardRecipientsTest:test_partialUpdateRecipientWeights() (gas: 218957) +DestinationRewardManagerUpdateRewardRecipientsTest:test_updateAllRecipientsWithSameAddressAndWeight() (gas: 272897) +DestinationRewardManagerUpdateRewardRecipientsTest:test_updatePartialRecipientsToSubset() (gas: 254232) +DestinationRewardManagerUpdateRewardRecipientsTest:test_updatePartialRecipientsWithExcessiveWeight() (gas: 259219) +DestinationRewardManagerUpdateRewardRecipientsTest:test_updatePartialRecipientsWithSameAddressAndWeight() (gas: 148835) +DestinationRewardManagerUpdateRewardRecipientsTest:test_updatePartialRecipientsWithUnderWeightSet() (gas: 259293) +DestinationRewardManagerUpdateRewardRecipientsTest:test_updateRecipientWeights() (gas: 369122) +DestinationRewardManagerUpdateRewardRecipientsTest:test_updateRecipientWithNewZeroAddress() (gas: 270802) +DestinationRewardManagerUpdateRewardRecipientsTest:test_updateRecipientsContainsDuplicateRecipients() (gas: 288575) +DestinationRewardManagerUpdateRewardRecipientsTest:test_updateRecipientsToDifferentLargerSet() (gas: 407876) +DestinationRewardManagerUpdateRewardRecipientsTest:test_updateRecipientsToDifferentPartialSet() (gas: 318029) +DestinationRewardManagerUpdateRewardRecipientsTest:test_updateRecipientsToDifferentSet() (gas: 377784) +DestinationRewardManagerUpdateRewardRecipientsTest:test_updateRecipientsToDifferentSetWithInvalidWeights() (gas: 312122) +DestinationRewardManagerUpdateRewardRecipientsTest:test_updateRecipientsUpdateAndRemoveExistingForLargerSet() (gas: 399699) +DestinationRewardManagerUpdateRewardRecipientsTest:test_updateRecipientsUpdateAndRemoveExistingForSmallerSet() (gas: 289513) +DestinationVerifierBulkVerifyBillingReport:test_verifyWithBulkLink() (gas: 641794) +DestinationVerifierBulkVerifyBillingReport:test_verifyWithBulkNative() (gas: 643260) +DestinationVerifierBulkVerifyBillingReport:test_verifyWithBulkNativeUnwrapped() (gas: 664486) +DestinationVerifierBulkVerifyBillingReport:test_verifyWithBulkNativeUnwrappedReturnsChange() (gas: 664441) DestinationVerifierConstructorTest:test_falseIfIsNotCorrectInterface() (gas: 5649) -DestinationVerifierConstructorTest:test_revertsIfInitializedWithEmptyVerifierProxy() (gas: 298825) -DestinationVerifierConstructorTest:test_trueIfIsCorrectInterface() (gas: 11029) -DestinationVerifierConstructorTest:test_typeAndVersion() (gas: 2864572) -DestinationVerifierProxyInitializeVerifierTest:test_correctlySetsTheOwner() (gas: 976712) +DestinationVerifierConstructorTest:test_revertsIfInitializedWithEmptyVerifierProxy() (gas: 60885) +DestinationVerifierConstructorTest:test_trueIfIsCorrectInterface() (gas: 6529) +DestinationVerifierConstructorTest:test_typeAndVersion() (gas: 2624392) +DestinationVerifierProxyInitializeVerifierTest:test_correctlySetsTheOwner() (gas: 859400) DestinationVerifierProxyInitializeVerifierTest:test_correctlySetsVersion() (gas: 9842) -DestinationVerifierProxyInitializeVerifierTest:test_setVerifierCalledByNoOwner() (gas: 38915) -DestinationVerifierProxyInitializeVerifierTest:test_setVerifierOk() (gas: 67456) -DestinationVerifierProxyInitializeVerifierTest:test_setVerifierWhichDoesntHonourInterface() (gas: 37955) -DestinationVerifierSetAccessControllerTest:test_emitsTheCorrectEvent() (gas: 56607) -DestinationVerifierSetAccessControllerTest:test_revertsIfCalledByNonOwner() (gas: 38805) -DestinationVerifierSetAccessControllerTest:test_successfullySetsNewAccessController() (gas: 55323) -DestinationVerifierSetAccessControllerTest:test_successfullySetsNewAccessControllerIsEmpty() (gas: 35355) -DestinationVerifierSetConfigTest:test_NoDonConfigAlreadyExists() (gas: 2994401) -DestinationVerifierSetConfigTest:test_addressesAndWeightsDoNotProduceSideEffectsInDonConfigIds() (gas: 1458055) -DestinationVerifierSetConfigTest:test_donConfigIdIsSameForSignersInDifferentOrder() (gas: 1424730) -DestinationVerifierSetConfigTest:test_removeLatestConfig() (gas: 1311745) -DestinationVerifierSetConfigTest:test_removeLatestConfigWhenNoConfigShouldFail() (gas: 33934) -DestinationVerifierSetConfigTest:test_revertsIfCalledByNonOwner() (gas: 210572) -DestinationVerifierSetConfigTest:test_revertsIfDuplicateSigners() (gas: 204420) -DestinationVerifierSetConfigTest:test_revertsIfFaultToleranceIsZero() (gas: 201630) -DestinationVerifierSetConfigTest:test_revertsIfNotEnoughSigners() (gas: 33634) -DestinationVerifierSetConfigTest:test_revertsIfSetWithTooManySigners() (gas: 43788) -DestinationVerifierSetConfigTest:test_revertsIfSignerContainsZeroAddress() (gas: 356909) -DestinationVerifierSetConfigTest:test_setConfigActiveUnknownDonConfigId() (gas: 34446) -DestinationVerifierSetConfigTest:test_setConfigWithActivationTime() (gas: 1121413) -DestinationVerifierSetConfigTest:test_setConfigWithActivationTimeEarlierThanLatestConfigShouldFail() (gas: 2035499) -DestinationVerifierSetConfigTest:test_setConfigWithActivationTimeNoFutureTimeShouldFail() (gas: 292789) -DestinationVerifierSetConfigTest:test_setConfigWithActivationTimeTheSameAsLatestConfigShouldFail() (gas: 1418107) -FeeManagerProcessFeeTest:test_DiscountIsAppliedForNative() (gas: 88313) -FeeManagerProcessFeeTest:test_DiscountIsReturnedForNative() (gas: 88263) -FeeManagerProcessFeeTest:test_DiscountIsReturnedForNativeWithSurcharge() (gas: 154262) -FeeManagerProcessFeeTest:test_V1PayloadVerifies() (gas: 57184) -FeeManagerProcessFeeTest:test_V1PayloadVerifiesAndReturnsChange() (gas: 93233) -FeeManagerProcessFeeTest:test_V2PayloadVerifies() (gas: 212693) -FeeManagerProcessFeeTest:test_V2PayloadWithoutQuoteFails() (gas: 60093) -FeeManagerProcessFeeTest:test_V2PayloadWithoutZeroFee() (gas: 103286) -FeeManagerProcessFeeTest:test_WithdrawERC20() (gas: 171543) -FeeManagerProcessFeeTest:test_WithdrawNonAdminAddr() (gas: 118942) -FeeManagerProcessFeeTest:test_WithdrawUnwrappedNative() (gas: 66141) +DestinationVerifierProxyInitializeVerifierTest:test_setVerifierCalledByNoOwner() (gas: 17483) +DestinationVerifierProxyInitializeVerifierTest:test_setVerifierOk() (gas: 24524) +DestinationVerifierProxyInitializeVerifierTest:test_setVerifierWhichDoesntHonourInterface() (gas: 16535) +DestinationVerifierSetAccessControllerTest:test_emitsTheCorrectEvent() (gas: 35391) +DestinationVerifierSetAccessControllerTest:test_revertsIfCalledByNonOwner() (gas: 15089) +DestinationVerifierSetAccessControllerTest:test_successfullySetsNewAccessController() (gas: 32107) +DestinationVerifierSetAccessControllerTest:test_successfullySetsNewAccessControllerIsEmpty() (gas: 12163) +DestinationVerifierSetConfigTest:test_NoDonConfigAlreadyExists() (gas: 2877761) +DestinationVerifierSetConfigTest:test_addressesAndWeightsDoNotProduceSideEffectsInDonConfigIds() (gas: 1323263) +DestinationVerifierSetConfigTest:test_donConfigIdIsSameForSignersInDifferentOrder() (gas: 1290458) +DestinationVerifierSetConfigTest:test_removeLatestConfig() (gas: 786103) +DestinationVerifierSetConfigTest:test_removeLatestConfigWhenNoConfigShouldFail() (gas: 12870) +DestinationVerifierSetConfigTest:test_revertsIfCalledByNonOwner() (gas: 174936) +DestinationVerifierSetConfigTest:test_revertsIfDuplicateSigners() (gas: 171284) +DestinationVerifierSetConfigTest:test_revertsIfFaultToleranceIsZero() (gas: 168506) +DestinationVerifierSetConfigTest:test_revertsIfNotEnoughSigners() (gas: 11578) +DestinationVerifierSetConfigTest:test_revertsIfSetWithTooManySigners() (gas: 17928) +DestinationVerifierSetConfigTest:test_revertsIfSignerContainsZeroAddress() (gas: 324013) +DestinationVerifierSetConfigTest:test_setConfigActiveUnknownDonConfigId() (gas: 13102) +DestinationVerifierSetConfigTest:test_setConfigWithActivationTime() (gas: 1088137) +DestinationVerifierSetConfigTest:test_setConfigWithActivationTimeEarlierThanLatestConfigShouldFail() (gas: 1963051) +DestinationVerifierSetConfigTest:test_setConfigWithActivationTimeNoFutureTimeShouldFail() (gas: 259477) +DestinationVerifierSetConfigTest:test_setConfigWithActivationTimeTheSameAsLatestConfigShouldFail() (gas: 1283835) +FeeManagerProcessFeeTest:test_DiscountIsAppliedForNative() (gas: 52313) +FeeManagerProcessFeeTest:test_DiscountIsReturnedForNative() (gas: 52263) +FeeManagerProcessFeeTest:test_DiscountIsReturnedForNativeWithSurcharge() (gas: 78498) +FeeManagerProcessFeeTest:test_V1PayloadVerifies() (gas: 26980) +FeeManagerProcessFeeTest:test_V1PayloadVerifiesAndReturnsChange() (gas: 57917) +FeeManagerProcessFeeTest:test_V2PayloadVerifies() (gas: 116041) +FeeManagerProcessFeeTest:test_V2PayloadWithoutQuoteFails() (gas: 27389) +FeeManagerProcessFeeTest:test_V2PayloadWithoutZeroFee() (gas: 70342) +FeeManagerProcessFeeTest:test_WithdrawERC20() (gas: 71587) +FeeManagerProcessFeeTest:test_WithdrawNonAdminAddr() (gas: 56286) +FeeManagerProcessFeeTest:test_WithdrawUnwrappedNative() (gas: 25369) FeeManagerProcessFeeTest:test_baseFeeIsAppliedForLink() (gas: 14335) FeeManagerProcessFeeTest:test_baseFeeIsAppliedForNative() (gas: 17318) -FeeManagerProcessFeeTest:test_correctDiscountIsAppliedWhenBothTokensAreDiscounted() (gas: 173869) -FeeManagerProcessFeeTest:test_discountAIsNotAppliedWhenSetForOtherUsers() (gas: 88224) -FeeManagerProcessFeeTest:test_discountFeeRoundsDownWhenUneven() (gas: 88539) -FeeManagerProcessFeeTest:test_discountIsAppliedForLink() (gas: 85326) -FeeManagerProcessFeeTest:test_discountIsAppliedWith100PercentSurcharge() (gas: 154335) -FeeManagerProcessFeeTest:test_discountIsNoLongerAppliedAfterRemoving() (gas: 143468) -FeeManagerProcessFeeTest:test_discountIsNotAppliedForInvalidTokenAddress() (gas: 47320) -FeeManagerProcessFeeTest:test_discountIsNotAppliedToOtherFeeds() (gas: 88272) -FeeManagerProcessFeeTest:test_discountIsReturnedForLink() (gas: 85276) +FeeManagerProcessFeeTest:test_correctDiscountIsAppliedWhenBothTokensAreDiscounted() (gas: 90369) +FeeManagerProcessFeeTest:test_discountAIsNotAppliedWhenSetForOtherUsers() (gas: 56224) +FeeManagerProcessFeeTest:test_discountFeeRoundsDownWhenUneven() (gas: 52515) +FeeManagerProcessFeeTest:test_discountIsAppliedForLink() (gas: 49326) +FeeManagerProcessFeeTest:test_discountIsAppliedWith100PercentSurcharge() (gas: 78571) +FeeManagerProcessFeeTest:test_discountIsNoLongerAppliedAfterRemoving() (gas: 45980) +FeeManagerProcessFeeTest:test_discountIsNotAppliedForInvalidTokenAddress() (gas: 17560) +FeeManagerProcessFeeTest:test_discountIsNotAppliedToOtherFeeds() (gas: 54272) +FeeManagerProcessFeeTest:test_discountIsReturnedForLink() (gas: 49276) FeeManagerProcessFeeTest:test_emptyQuoteRevertsWithError() (gas: 12163) -FeeManagerProcessFeeTest:test_eventIsEmittedAfterSurchargeIsSet() (gas: 70114) -FeeManagerProcessFeeTest:test_eventIsEmittedIfNotEnoughLink() (gas: 288431) -FeeManagerProcessFeeTest:test_eventIsEmittedUponWithdraw() (gas: 138898) -FeeManagerProcessFeeTest:test_feeIsUpdatedAfterDiscountIsRemoved() (gas: 149482) -FeeManagerProcessFeeTest:test_feeIsUpdatedAfterNewDiscountIsApplied() (gas: 159435) -FeeManagerProcessFeeTest:test_feeIsUpdatedAfterNewSurchargeIsApplied() (gas: 146788) -FeeManagerProcessFeeTest:test_feeIsZeroWith100PercentDiscount() (gas: 87713) +FeeManagerProcessFeeTest:test_eventIsEmittedAfterSurchargeIsSet() (gas: 41350) +FeeManagerProcessFeeTest:test_eventIsEmittedIfNotEnoughLink() (gas: 172719) +FeeManagerProcessFeeTest:test_eventIsEmittedUponWithdraw() (gas: 69014) +FeeManagerProcessFeeTest:test_feeIsUpdatedAfterDiscountIsRemoved() (gas: 49191) +FeeManagerProcessFeeTest:test_feeIsUpdatedAfterNewDiscountIsApplied() (gas: 67035) +FeeManagerProcessFeeTest:test_feeIsUpdatedAfterNewSurchargeIsApplied() (gas: 63660) +FeeManagerProcessFeeTest:test_feeIsZeroWith100PercentDiscount() (gas: 51713) FeeManagerProcessFeeTest:test_getBaseRewardWithLinkQuote() (gas: 14333) -FeeManagerProcessFeeTest:test_getLinkFeeIsRoundedUp() (gas: 85521) -FeeManagerProcessFeeTest:test_getLinkRewardIsSameAsFee() (gas: 101473) -FeeManagerProcessFeeTest:test_getLinkRewardWithNativeQuoteAndSurchargeWithLinkDiscount() (gas: 154243) -FeeManagerProcessFeeTest:test_getRewardWithLinkDiscount() (gas: 85344) -FeeManagerProcessFeeTest:test_getRewardWithLinkQuoteAndLinkDiscount() (gas: 85325) +FeeManagerProcessFeeTest:test_getLinkFeeIsRoundedUp() (gas: 49497) +FeeManagerProcessFeeTest:test_getLinkRewardIsSameAsFee() (gas: 54949) +FeeManagerProcessFeeTest:test_getLinkRewardWithNativeQuoteAndSurchargeWithLinkDiscount() (gas: 82455) +FeeManagerProcessFeeTest:test_getRewardWithLinkDiscount() (gas: 49344) +FeeManagerProcessFeeTest:test_getRewardWithLinkQuoteAndLinkDiscount() (gas: 49325) FeeManagerProcessFeeTest:test_getRewardWithNativeQuote() (gas: 17316) -FeeManagerProcessFeeTest:test_getRewardWithNativeQuoteAndSurcharge() (gas: 83270) -FeeManagerProcessFeeTest:test_linkAvailableForPaymentReturnsLinkBalance() (gas: 100059) -FeeManagerProcessFeeTest:test_nativeSurcharge0Percent() (gas: 63208) -FeeManagerProcessFeeTest:test_nativeSurcharge100Percent() (gas: 83295) -FeeManagerProcessFeeTest:test_nativeSurchargeCannotExceed100Percent() (gas: 45951) -FeeManagerProcessFeeTest:test_nativeSurchargeEventIsEmittedOnUpdate() (gas: 70184) -FeeManagerProcessFeeTest:test_noFeeIsAppliedWhenReportHasZeroFee() (gas: 87558) -FeeManagerProcessFeeTest:test_noFeeIsAppliedWhenReportHasZeroFeeAndDiscountAndSurchargeIsSet() (gas: 153513) -FeeManagerProcessFeeTest:test_nonAdminProxyUserCannotProcessFee() (gas: 55475) -FeeManagerProcessFeeTest:test_nonAdminUserCanNotSetDiscount() (gas: 49806) -FeeManagerProcessFeeTest:test_payLinkDeficit() (gas: 391369) -FeeManagerProcessFeeTest:test_payLinkDeficitOnlyCallableByAdmin() (gas: 46489) -FeeManagerProcessFeeTest:test_payLinkDeficitPaysAllFeesProcessed() (gas: 499579) -FeeManagerProcessFeeTest:test_payLinkDeficitTwice() (gas: 439412) -FeeManagerProcessFeeTest:test_processFeeAsProxy() (gas: 213287) -FeeManagerProcessFeeTest:test_processFeeDefaultReportsStillVerifiesWithEmptyQuote() (gas: 57784) -FeeManagerProcessFeeTest:test_processFeeEmitsEventIfNotEnoughLink() (gas: 309831) -FeeManagerProcessFeeTest:test_processFeeIfSubscriberIsSelf() (gas: 61033) -FeeManagerProcessFeeTest:test_processFeeNative() (gas: 335547) -FeeManagerProcessFeeTest:test_processFeeUsesCorrectDigest() (gas: 220747) -FeeManagerProcessFeeTest:test_processFeeWithDefaultReportPayloadAndQuoteStillVerifies() (gas: 60098) -FeeManagerProcessFeeTest:test_processFeeWithDiscountEmitsEvent() (gas: 439136) -FeeManagerProcessFeeTest:test_processFeeWithInvalidReportVersionFailsToDecode() (gas: 60171) -FeeManagerProcessFeeTest:test_processFeeWithNoDiscountDoesNotEmitEvent() (gas: 299502) -FeeManagerProcessFeeTest:test_processFeeWithUnwrappedNative() (gas: 290373) -FeeManagerProcessFeeTest:test_processFeeWithUnwrappedNativeLinkAddress() (gas: 198258) -FeeManagerProcessFeeTest:test_processFeeWithUnwrappedNativeLinkAddressExcessiveFee() (gas: 263778) -FeeManagerProcessFeeTest:test_processFeeWithUnwrappedNativeShortFunds() (gas: 154949) -FeeManagerProcessFeeTest:test_processFeeWithUnwrappedNativeWithExcessiveFee() (gas: 297336) -FeeManagerProcessFeeTest:test_processFeeWithWithCorruptQuotePayload() (gas: 103853) -FeeManagerProcessFeeTest:test_processFeeWithWithEmptyQuotePayload() (gas: 60687) -FeeManagerProcessFeeTest:test_processFeeWithWithZeroQuotePayload() (gas: 60743) -FeeManagerProcessFeeTest:test_processFeeWithZeroLinkNonZeroNativeWithLinkQuote() (gas: 63625) -FeeManagerProcessFeeTest:test_processFeeWithZeroLinkNonZeroNativeWithNativeQuote() (gas: 302298) -FeeManagerProcessFeeTest:test_processFeeWithZeroNativeNonZeroLinkReturnsChange() (gas: 86622) -FeeManagerProcessFeeTest:test_processFeeWithZeroNativeNonZeroLinkWithLinkQuote() (gas: 213150) -FeeManagerProcessFeeTest:test_processFeeWithZeroNativeNonZeroLinkWithNativeQuote() (gas: 66396) -FeeManagerProcessFeeTest:test_processMultipleLinkReports() (gas: 316609) -FeeManagerProcessFeeTest:test_processMultipleUnwrappedNativeReports() (gas: 367182) -FeeManagerProcessFeeTest:test_processMultipleV1Reports() (gas: 122909) -FeeManagerProcessFeeTest:test_processMultipleWrappedNativeReports() (gas: 407538) -FeeManagerProcessFeeTest:test_processV1V2V3Reports() (gas: 369792) -FeeManagerProcessFeeTest:test_processV1V2V3ReportsWithUnwrapped() (gas: 359086) +FeeManagerProcessFeeTest:test_getRewardWithNativeQuoteAndSurcharge() (gas: 50506) +FeeManagerProcessFeeTest:test_linkAvailableForPaymentReturnsLinkBalance() (gas: 52451) +FeeManagerProcessFeeTest:test_nativeSurcharge0Percent() (gas: 30516) +FeeManagerProcessFeeTest:test_nativeSurcharge100Percent() (gas: 50531) +FeeManagerProcessFeeTest:test_nativeSurchargeCannotExceed100Percent() (gas: 17175) +FeeManagerProcessFeeTest:test_nativeSurchargeEventIsEmittedOnUpdate() (gas: 41396) +FeeManagerProcessFeeTest:test_noFeeIsAppliedWhenReportHasZeroFee() (gas: 51558) +FeeManagerProcessFeeTest:test_noFeeIsAppliedWhenReportHasZeroFeeAndDiscountAndSurchargeIsSet() (gas: 77749) +FeeManagerProcessFeeTest:test_nonAdminProxyUserCannotProcessFee() (gas: 21895) +FeeManagerProcessFeeTest:test_nonAdminUserCanNotSetDiscount() (gas: 19806) +FeeManagerProcessFeeTest:test_payLinkDeficit() (gas: 193814) +FeeManagerProcessFeeTest:test_payLinkDeficitOnlyCallableByAdmin() (gas: 17413) +FeeManagerProcessFeeTest:test_payLinkDeficitPaysAllFeesProcessed() (gas: 213857) +FeeManagerProcessFeeTest:test_payLinkDeficitTwice() (gas: 198188) +FeeManagerProcessFeeTest:test_processFeeAsProxy() (gas: 116379) +FeeManagerProcessFeeTest:test_processFeeDefaultReportsStillVerifiesWithEmptyQuote() (gas: 27468) +FeeManagerProcessFeeTest:test_processFeeEmitsEventIfNotEnoughLink() (gas: 161815) +FeeManagerProcessFeeTest:test_processFeeIfSubscriberIsSelf() (gas: 27833) +FeeManagerProcessFeeTest:test_processFeeNative() (gas: 172431) +FeeManagerProcessFeeTest:test_processFeeUsesCorrectDigest() (gas: 117339) +FeeManagerProcessFeeTest:test_processFeeWithDefaultReportPayloadAndQuoteStillVerifies() (gas: 29542) +FeeManagerProcessFeeTest:test_processFeeWithDiscountEmitsEvent() (gas: 241320) +FeeManagerProcessFeeTest:test_processFeeWithInvalidReportVersionFailsToDecode() (gas: 28511) +FeeManagerProcessFeeTest:test_processFeeWithNoDiscountDoesNotEmitEvent() (gas: 166386) +FeeManagerProcessFeeTest:test_processFeeWithUnwrappedNative() (gas: 179965) +FeeManagerProcessFeeTest:test_processFeeWithUnwrappedNativeLinkAddress() (gas: 131450) +FeeManagerProcessFeeTest:test_processFeeWithUnwrappedNativeLinkAddressExcessiveFee() (gas: 155370) +FeeManagerProcessFeeTest:test_processFeeWithUnwrappedNativeShortFunds() (gas: 92641) +FeeManagerProcessFeeTest:test_processFeeWithUnwrappedNativeWithExcessiveFee() (gas: 186928) +FeeManagerProcessFeeTest:test_processFeeWithWithCorruptQuotePayload() (gas: 70653) +FeeManagerProcessFeeTest:test_processFeeWithWithEmptyQuotePayload() (gas: 27727) +FeeManagerProcessFeeTest:test_processFeeWithWithZeroQuotePayload() (gas: 27783) +FeeManagerProcessFeeTest:test_processFeeWithZeroLinkNonZeroNativeWithLinkQuote() (gas: 32973) +FeeManagerProcessFeeTest:test_processFeeWithZeroLinkNonZeroNativeWithNativeQuote() (gas: 152330) +FeeManagerProcessFeeTest:test_processFeeWithZeroNativeNonZeroLinkReturnsChange() (gas: 53470) +FeeManagerProcessFeeTest:test_processFeeWithZeroNativeNonZeroLinkWithLinkQuote() (gas: 116290) +FeeManagerProcessFeeTest:test_processFeeWithZeroNativeNonZeroLinkWithNativeQuote() (gas: 35744) +FeeManagerProcessFeeTest:test_processMultipleLinkReports() (gas: 221409) +FeeManagerProcessFeeTest:test_processMultipleUnwrappedNativeReports() (gas: 255270) +FeeManagerProcessFeeTest:test_processMultipleV1Reports() (gas: 74137) +FeeManagerProcessFeeTest:test_processMultipleWrappedNativeReports() (gas: 238406) +FeeManagerProcessFeeTest:test_processV1V2V3Reports() (gas: 206200) +FeeManagerProcessFeeTest:test_processV1V2V3ReportsWithUnwrapped() (gas: 247854) FeeManagerProcessFeeTest:test_reportWithNoExpiryOrFeeReturnsZero() (gas: 10781) -FeeManagerProcessFeeTest:test_setDiscountOver100Percent() (gas: 49574) -FeeManagerProcessFeeTest:test_subscriberDiscountEventIsEmittedOnUpdate() (gas: 76279) -FeeManagerProcessFeeTest:test_surchargeFeeRoundsUpWhenUneven() (gas: 83671) -FeeManagerProcessFeeTest:test_surchargeIsApplied() (gas: 83528) -FeeManagerProcessFeeTest:test_surchargeIsAppliedForNativeFeeWithDiscount() (gas: 154697) -FeeManagerProcessFeeTest:test_surchargeIsNoLongerAppliedAfterRemoving() (gas: 139702) -FeeManagerProcessFeeTest:test_surchargeIsNotAppliedForLinkFee() (gas: 80370) -FeeManagerProcessFeeTest:test_surchargeIsNotAppliedWith100PercentDiscount() (gas: 153693) +FeeManagerProcessFeeTest:test_setDiscountOver100Percent() (gas: 19562) +FeeManagerProcessFeeTest:test_subscriberDiscountEventIsEmittedOnUpdate() (gas: 46255) +FeeManagerProcessFeeTest:test_surchargeFeeRoundsUpWhenUneven() (gas: 50883) +FeeManagerProcessFeeTest:test_surchargeIsApplied() (gas: 50764) +FeeManagerProcessFeeTest:test_surchargeIsAppliedForNativeFeeWithDiscount() (gas: 78933) +FeeManagerProcessFeeTest:test_surchargeIsNoLongerAppliedAfterRemoving() (gas: 46544) +FeeManagerProcessFeeTest:test_surchargeIsNotAppliedForLinkFee() (gas: 49606) +FeeManagerProcessFeeTest:test_surchargeIsNotAppliedWith100PercentDiscount() (gas: 77929) FeeManagerProcessFeeTest:test_testRevertIfReportHasExpired() (gas: 14941) -FeeManagerProcessFeeTestV051:test_DiscountIsAppliedForNative() (gas: 88318) -FeeManagerProcessFeeTestV051:test_DiscountIsReturnedForNative() (gas: 88311) -FeeManagerProcessFeeTestV051:test_DiscountIsReturnedForNativeWithSurcharge() (gas: 154332) -FeeManagerProcessFeeTestV051:test_GlobalDiscountCantBeSetToMoreThanMaximum() (gas: 49013) -FeeManagerProcessFeeTestV051:test_GlobalDiscountIsOverridenByIndividualDiscountLink() (gas: 155632) -FeeManagerProcessFeeTestV051:test_GlobalDiscountIsOverridenByIndividualDiscountNative() (gas: 158646) -FeeManagerProcessFeeTestV051:test_GlobalDiscountIsUpdatedAfterBeingSetToZeroLink() (gas: 146685) -FeeManagerProcessFeeTestV051:test_GlobalDiscountIsUpdatedAfterBeingSetToZeroNative() (gas: 152660) -FeeManagerProcessFeeTestV051:test_GlobalDiscountWithLink() (gas: 86981) -FeeManagerProcessFeeTestV051:test_GlobalDiscountWithNative() (gas: 89927) -FeeManagerProcessFeeTestV051:test_GlobalDiscountWithNativeAndLink() (gas: 157297) -FeeManagerProcessFeeTestV051:test_V1PayloadVerifies() (gas: 57184) -FeeManagerProcessFeeTestV051:test_V1PayloadVerifiesAndReturnsChange() (gas: 93259) -FeeManagerProcessFeeTestV051:test_V2PayloadVerifies() (gas: 214977) -FeeManagerProcessFeeTestV051:test_V2PayloadWithoutQuoteFails() (gas: 60093) -FeeManagerProcessFeeTestV051:test_V2PayloadWithoutZeroFee() (gas: 105570) -FeeManagerProcessFeeTestV051:test_WithdrawERC20() (gas: 171587) -FeeManagerProcessFeeTestV051:test_WithdrawNonAdminAddr() (gas: 118965) -FeeManagerProcessFeeTestV051:test_WithdrawUnwrappedNative() (gas: 66217) +FeeManagerProcessFeeTestV051:test_DiscountIsAppliedForNative() (gas: 52318) +FeeManagerProcessFeeTestV051:test_DiscountIsReturnedForNative() (gas: 52311) +FeeManagerProcessFeeTestV051:test_DiscountIsReturnedForNativeWithSurcharge() (gas: 78568) +FeeManagerProcessFeeTestV051:test_GlobalDiscountCantBeSetToMoreThanMaximum() (gas: 19501) +FeeManagerProcessFeeTestV051:test_GlobalDiscountIsOverridenByIndividualDiscountLink() (gas: 79132) +FeeManagerProcessFeeTestV051:test_GlobalDiscountIsOverridenByIndividualDiscountNative() (gas: 82146) +FeeManagerProcessFeeTestV051:test_GlobalDiscountIsUpdatedAfterBeingSetToZeroLink() (gas: 47753) +FeeManagerProcessFeeTestV051:test_GlobalDiscountIsUpdatedAfterBeingSetToZeroNative() (gas: 50933) +FeeManagerProcessFeeTestV051:test_GlobalDiscountWithLink() (gas: 51481) +FeeManagerProcessFeeTestV051:test_GlobalDiscountWithNative() (gas: 54427) +FeeManagerProcessFeeTestV051:test_GlobalDiscountWithNativeAndLink() (gas: 83297) +FeeManagerProcessFeeTestV051:test_V1PayloadVerifies() (gas: 26980) +FeeManagerProcessFeeTestV051:test_V1PayloadVerifiesAndReturnsChange() (gas: 57943) +FeeManagerProcessFeeTestV051:test_V2PayloadVerifies() (gas: 118325) +FeeManagerProcessFeeTestV051:test_V2PayloadWithoutQuoteFails() (gas: 27389) +FeeManagerProcessFeeTestV051:test_V2PayloadWithoutZeroFee() (gas: 72626) +FeeManagerProcessFeeTestV051:test_WithdrawERC20() (gas: 71631) +FeeManagerProcessFeeTestV051:test_WithdrawNonAdminAddr() (gas: 56309) +FeeManagerProcessFeeTestV051:test_WithdrawUnwrappedNative() (gas: 25445) FeeManagerProcessFeeTestV051:test_baseFeeIsAppliedForLink() (gas: 16619) FeeManagerProcessFeeTestV051:test_baseFeeIsAppliedForNative() (gas: 19624) -FeeManagerProcessFeeTestV051:test_correctDiscountIsAppliedWhenBothTokensAreDiscounted() (gas: 173921) -FeeManagerProcessFeeTestV051:test_discountAIsNotAppliedWhenSetForOtherUsers() (gas: 90508) -FeeManagerProcessFeeTestV051:test_discountFeeRoundsDownWhenUneven() (gas: 88542) -FeeManagerProcessFeeTestV051:test_discountIsAppliedForLink() (gas: 85374) -FeeManagerProcessFeeTestV051:test_discountIsAppliedWith100PercentSurcharge() (gas: 154383) -FeeManagerProcessFeeTestV051:test_discountIsNoLongerAppliedAfterRemoving() (gas: 145756) -FeeManagerProcessFeeTestV051:test_discountIsNotAppliedForInvalidTokenAddress() (gas: 47298) -FeeManagerProcessFeeTestV051:test_discountIsNotAppliedToOtherFeeds() (gas: 90512) -FeeManagerProcessFeeTestV051:test_discountIsReturnedForLink() (gas: 85346) +FeeManagerProcessFeeTestV051:test_correctDiscountIsAppliedWhenBothTokensAreDiscounted() (gas: 90421) +FeeManagerProcessFeeTestV051:test_discountAIsNotAppliedWhenSetForOtherUsers() (gas: 58508) +FeeManagerProcessFeeTestV051:test_discountFeeRoundsDownWhenUneven() (gas: 52518) +FeeManagerProcessFeeTestV051:test_discountIsAppliedForLink() (gas: 49374) +FeeManagerProcessFeeTestV051:test_discountIsAppliedWith100PercentSurcharge() (gas: 78619) +FeeManagerProcessFeeTestV051:test_discountIsNoLongerAppliedAfterRemoving() (gas: 47810) +FeeManagerProcessFeeTestV051:test_discountIsNotAppliedForInvalidTokenAddress() (gas: 17538) +FeeManagerProcessFeeTestV051:test_discountIsNotAppliedToOtherFeeds() (gas: 56512) +FeeManagerProcessFeeTestV051:test_discountIsReturnedForLink() (gas: 49346) FeeManagerProcessFeeTestV051:test_emptyQuoteRevertsWithError() (gas: 12162) -FeeManagerProcessFeeTestV051:test_eventIsEmittedAfterSurchargeIsSet() (gas: 70136) -FeeManagerProcessFeeTestV051:test_eventIsEmittedIfNotEnoughLink() (gas: 291851) -FeeManagerProcessFeeTestV051:test_eventIsEmittedUponWithdraw() (gas: 138920) -FeeManagerProcessFeeTestV051:test_feeIsUpdatedAfterDiscountIsRemoved() (gas: 151814) -FeeManagerProcessFeeTestV051:test_feeIsUpdatedAfterNewDiscountIsApplied() (gas: 159487) -FeeManagerProcessFeeTestV051:test_feeIsUpdatedAfterNewSurchargeIsApplied() (gas: 151422) -FeeManagerProcessFeeTestV051:test_feeIsZeroWith100PercentDiscount() (gas: 87717) +FeeManagerProcessFeeTestV051:test_eventIsEmittedAfterSurchargeIsSet() (gas: 41372) +FeeManagerProcessFeeTestV051:test_eventIsEmittedIfNotEnoughLink() (gas: 176139) +FeeManagerProcessFeeTestV051:test_eventIsEmittedUponWithdraw() (gas: 69036) +FeeManagerProcessFeeTestV051:test_feeIsUpdatedAfterDiscountIsRemoved() (gas: 51056) +FeeManagerProcessFeeTestV051:test_feeIsUpdatedAfterNewDiscountIsApplied() (gas: 67087) +FeeManagerProcessFeeTestV051:test_feeIsUpdatedAfterNewSurchargeIsApplied() (gas: 66294) +FeeManagerProcessFeeTestV051:test_feeIsZeroWith100PercentDiscount() (gas: 51717) FeeManagerProcessFeeTestV051:test_getBaseRewardWithLinkQuote() (gas: 16617) -FeeManagerProcessFeeTestV051:test_getLinkFeeIsRoundedUp() (gas: 85547) -FeeManagerProcessFeeTestV051:test_getLinkRewardIsSameAsFee() (gas: 101547) -FeeManagerProcessFeeTestV051:test_getLinkRewardWithNativeQuoteAndSurchargeWithLinkDiscount() (gas: 156527) -FeeManagerProcessFeeTestV051:test_getRewardWithLinkDiscount() (gas: 85370) -FeeManagerProcessFeeTestV051:test_getRewardWithLinkQuoteAndLinkDiscount() (gas: 85351) +FeeManagerProcessFeeTestV051:test_getLinkFeeIsRoundedUp() (gas: 49523) +FeeManagerProcessFeeTestV051:test_getLinkRewardIsSameAsFee() (gas: 55023) +FeeManagerProcessFeeTestV051:test_getLinkRewardWithNativeQuoteAndSurchargeWithLinkDiscount() (gas: 84739) +FeeManagerProcessFeeTestV051:test_getRewardWithLinkDiscount() (gas: 49370) +FeeManagerProcessFeeTestV051:test_getRewardWithLinkQuoteAndLinkDiscount() (gas: 49351) FeeManagerProcessFeeTestV051:test_getRewardWithNativeQuote() (gas: 19600) -FeeManagerProcessFeeTestV051:test_getRewardWithNativeQuoteAndSurcharge() (gas: 85598) -FeeManagerProcessFeeTestV051:test_linkAvailableForPaymentReturnsLinkBalance() (gas: 100059) -FeeManagerProcessFeeTestV051:test_nativeSurcharge0Percent() (gas: 65514) -FeeManagerProcessFeeTestV051:test_nativeSurcharge100Percent() (gas: 85623) -FeeManagerProcessFeeTestV051:test_nativeSurchargeCannotExceed100Percent() (gas: 45995) -FeeManagerProcessFeeTestV051:test_nativeSurchargeEventIsEmittedOnUpdate() (gas: 70206) -FeeManagerProcessFeeTestV051:test_noFeeIsAppliedWhenReportHasZeroFee() (gas: 87562) -FeeManagerProcessFeeTestV051:test_noFeeIsAppliedWhenReportHasZeroFeeAndDiscountAndSurchargeIsSet() (gas: 153561) -FeeManagerProcessFeeTestV051:test_nonAdminProxyUserCannotProcessFee() (gas: 55475) -FeeManagerProcessFeeTestV051:test_nonAdminUserCanNotSetDiscount() (gas: 49806) -FeeManagerProcessFeeTestV051:test_onlyOwnerCanSetGlobalDiscount() (gas: 49342) -FeeManagerProcessFeeTestV051:test_payLinkDeficit() (gas: 393675) -FeeManagerProcessFeeTestV051:test_payLinkDeficitOnlyCallableByAdmin() (gas: 46489) -FeeManagerProcessFeeTestV051:test_payLinkDeficitPaysAllFeesProcessed() (gas: 504169) -FeeManagerProcessFeeTestV051:test_payLinkDeficitTwice() (gas: 441696) -FeeManagerProcessFeeTestV051:test_processFeeAsProxy() (gas: 215571) -FeeManagerProcessFeeTestV051:test_processFeeDefaultReportsStillVerifiesWithEmptyQuote() (gas: 57784) -FeeManagerProcessFeeTestV051:test_processFeeEmitsEventIfNotEnoughLink() (gas: 312115) -FeeManagerProcessFeeTestV051:test_processFeeIfSubscriberIsSelf() (gas: 61033) -FeeManagerProcessFeeTestV051:test_processFeeNative() (gas: 337831) -FeeManagerProcessFeeTestV051:test_processFeeUsesCorrectDigest() (gas: 223031) -FeeManagerProcessFeeTestV051:test_processFeeWithDefaultReportPayloadAndQuoteStillVerifies() (gas: 60098) -FeeManagerProcessFeeTestV051:test_processFeeWithDiscountEmitsEvent() (gas: 439240) -FeeManagerProcessFeeTestV051:test_processFeeWithInvalidReportVersionFailsToDecode() (gas: 60171) -FeeManagerProcessFeeTestV051:test_processFeeWithNoDiscountDoesNotEmitEvent() (gas: 301786) -FeeManagerProcessFeeTestV051:test_processFeeWithUnwrappedNative() (gas: 292657) -FeeManagerProcessFeeTestV051:test_processFeeWithUnwrappedNativeLinkAddress() (gas: 200542) -FeeManagerProcessFeeTestV051:test_processFeeWithUnwrappedNativeLinkAddressExcessiveFee() (gas: 266088) -FeeManagerProcessFeeTestV051:test_processFeeWithUnwrappedNativeShortFunds() (gas: 157233) -FeeManagerProcessFeeTestV051:test_processFeeWithUnwrappedNativeWithExcessiveFee() (gas: 299646) -FeeManagerProcessFeeTestV051:test_processFeeWithWithCorruptQuotePayload() (gas: 106137) -FeeManagerProcessFeeTestV051:test_processFeeWithWithEmptyQuotePayload() (gas: 60687) -FeeManagerProcessFeeTestV051:test_processFeeWithWithZeroQuotePayload() (gas: 60743) -FeeManagerProcessFeeTestV051:test_processFeeWithZeroLinkNonZeroNativeWithLinkQuote() (gas: 65909) -FeeManagerProcessFeeTestV051:test_processFeeWithZeroLinkNonZeroNativeWithNativeQuote() (gas: 304582) -FeeManagerProcessFeeTestV051:test_processFeeWithZeroNativeNonZeroLinkReturnsChange() (gas: 88932) -FeeManagerProcessFeeTestV051:test_processFeeWithZeroNativeNonZeroLinkWithLinkQuote() (gas: 215434) -FeeManagerProcessFeeTestV051:test_processFeeWithZeroNativeNonZeroLinkWithNativeQuote() (gas: 68680) -FeeManagerProcessFeeTestV051:test_processMultipleLinkReports() (gas: 320055) -FeeManagerProcessFeeTestV051:test_processMultipleUnwrappedNativeReports() (gas: 370628) -FeeManagerProcessFeeTestV051:test_processMultipleV1Reports() (gas: 122935) -FeeManagerProcessFeeTestV051:test_processMultipleWrappedNativeReports() (gas: 410958) -FeeManagerProcessFeeTestV051:test_processV1V2V3Reports() (gas: 372928) -FeeManagerProcessFeeTestV051:test_processV1V2V3ReportsWithUnwrapped() (gas: 362222) +FeeManagerProcessFeeTestV051:test_getRewardWithNativeQuoteAndSurcharge() (gas: 52834) +FeeManagerProcessFeeTestV051:test_linkAvailableForPaymentReturnsLinkBalance() (gas: 52451) +FeeManagerProcessFeeTestV051:test_nativeSurcharge0Percent() (gas: 32822) +FeeManagerProcessFeeTestV051:test_nativeSurcharge100Percent() (gas: 52859) +FeeManagerProcessFeeTestV051:test_nativeSurchargeCannotExceed100Percent() (gas: 17219) +FeeManagerProcessFeeTestV051:test_nativeSurchargeEventIsEmittedOnUpdate() (gas: 41418) +FeeManagerProcessFeeTestV051:test_noFeeIsAppliedWhenReportHasZeroFee() (gas: 51562) +FeeManagerProcessFeeTestV051:test_noFeeIsAppliedWhenReportHasZeroFeeAndDiscountAndSurchargeIsSet() (gas: 77797) +FeeManagerProcessFeeTestV051:test_nonAdminProxyUserCannotProcessFee() (gas: 21895) +FeeManagerProcessFeeTestV051:test_nonAdminUserCanNotSetDiscount() (gas: 19806) +FeeManagerProcessFeeTestV051:test_onlyOwnerCanSetGlobalDiscount() (gas: 19842) +FeeManagerProcessFeeTestV051:test_payLinkDeficit() (gas: 195659) +FeeManagerProcessFeeTestV051:test_payLinkDeficitOnlyCallableByAdmin() (gas: 17413) +FeeManagerProcessFeeTestV051:test_payLinkDeficitPaysAllFeesProcessed() (gas: 215929) +FeeManagerProcessFeeTestV051:test_payLinkDeficitTwice() (gas: 200015) +FeeManagerProcessFeeTestV051:test_processFeeAsProxy() (gas: 118663) +FeeManagerProcessFeeTestV051:test_processFeeDefaultReportsStillVerifiesWithEmptyQuote() (gas: 27468) +FeeManagerProcessFeeTestV051:test_processFeeEmitsEventIfNotEnoughLink() (gas: 164099) +FeeManagerProcessFeeTestV051:test_processFeeIfSubscriberIsSelf() (gas: 27833) +FeeManagerProcessFeeTestV051:test_processFeeNative() (gas: 174715) +FeeManagerProcessFeeTestV051:test_processFeeUsesCorrectDigest() (gas: 119623) +FeeManagerProcessFeeTestV051:test_processFeeWithDefaultReportPayloadAndQuoteStillVerifies() (gas: 29542) +FeeManagerProcessFeeTestV051:test_processFeeWithDiscountEmitsEvent() (gas: 241424) +FeeManagerProcessFeeTestV051:test_processFeeWithInvalidReportVersionFailsToDecode() (gas: 28511) +FeeManagerProcessFeeTestV051:test_processFeeWithNoDiscountDoesNotEmitEvent() (gas: 168670) +FeeManagerProcessFeeTestV051:test_processFeeWithUnwrappedNative() (gas: 182249) +FeeManagerProcessFeeTestV051:test_processFeeWithUnwrappedNativeLinkAddress() (gas: 133734) +FeeManagerProcessFeeTestV051:test_processFeeWithUnwrappedNativeLinkAddressExcessiveFee() (gas: 157680) +FeeManagerProcessFeeTestV051:test_processFeeWithUnwrappedNativeShortFunds() (gas: 94925) +FeeManagerProcessFeeTestV051:test_processFeeWithUnwrappedNativeWithExcessiveFee() (gas: 189238) +FeeManagerProcessFeeTestV051:test_processFeeWithWithCorruptQuotePayload() (gas: 72937) +FeeManagerProcessFeeTestV051:test_processFeeWithWithEmptyQuotePayload() (gas: 27727) +FeeManagerProcessFeeTestV051:test_processFeeWithWithZeroQuotePayload() (gas: 27783) +FeeManagerProcessFeeTestV051:test_processFeeWithZeroLinkNonZeroNativeWithLinkQuote() (gas: 35257) +FeeManagerProcessFeeTestV051:test_processFeeWithZeroLinkNonZeroNativeWithNativeQuote() (gas: 154614) +FeeManagerProcessFeeTestV051:test_processFeeWithZeroNativeNonZeroLinkReturnsChange() (gas: 55780) +FeeManagerProcessFeeTestV051:test_processFeeWithZeroNativeNonZeroLinkWithLinkQuote() (gas: 118574) +FeeManagerProcessFeeTestV051:test_processFeeWithZeroNativeNonZeroLinkWithNativeQuote() (gas: 38028) +FeeManagerProcessFeeTestV051:test_processMultipleLinkReports() (gas: 224855) +FeeManagerProcessFeeTestV051:test_processMultipleUnwrappedNativeReports() (gas: 258716) +FeeManagerProcessFeeTestV051:test_processMultipleV1Reports() (gas: 74163) +FeeManagerProcessFeeTestV051:test_processMultipleWrappedNativeReports() (gas: 241826) +FeeManagerProcessFeeTestV051:test_processV1V2V3Reports() (gas: 209336) +FeeManagerProcessFeeTestV051:test_processV1V2V3ReportsWithUnwrapped() (gas: 250990) FeeManagerProcessFeeTestV051:test_reportWithNoExpiryOrFeeReturnsZero() (gas: 10759) -FeeManagerProcessFeeTestV051:test_setDiscountOver100Percent() (gas: 49596) -FeeManagerProcessFeeTestV051:test_subscriberDiscountEventIsEmittedOnUpdate() (gas: 76279) -FeeManagerProcessFeeTestV051:test_surchargeFeeRoundsUpWhenUneven() (gas: 85956) -FeeManagerProcessFeeTestV051:test_surchargeIsApplied() (gas: 85879) -FeeManagerProcessFeeTestV051:test_surchargeIsAppliedForNativeFeeWithDiscount() (gas: 154745) -FeeManagerProcessFeeTestV051:test_surchargeIsNoLongerAppliedAfterRemoving() (gas: 144314) -FeeManagerProcessFeeTestV051:test_surchargeIsNotAppliedForLinkFee() (gas: 82676) -FeeManagerProcessFeeTestV051:test_surchargeIsNotAppliedWith100PercentDiscount() (gas: 153741) +FeeManagerProcessFeeTestV051:test_setDiscountOver100Percent() (gas: 19584) +FeeManagerProcessFeeTestV051:test_subscriberDiscountEventIsEmittedOnUpdate() (gas: 46255) +FeeManagerProcessFeeTestV051:test_surchargeFeeRoundsUpWhenUneven() (gas: 53168) +FeeManagerProcessFeeTestV051:test_surchargeIsApplied() (gas: 53115) +FeeManagerProcessFeeTestV051:test_surchargeIsAppliedForNativeFeeWithDiscount() (gas: 78981) +FeeManagerProcessFeeTestV051:test_surchargeIsNoLongerAppliedAfterRemoving() (gas: 48634) +FeeManagerProcessFeeTestV051:test_surchargeIsNotAppliedForLinkFee() (gas: 51912) +FeeManagerProcessFeeTestV051:test_surchargeIsNotAppliedWith100PercentDiscount() (gas: 77977) FeeManagerProcessFeeTestV051:test_testRevertIfReportHasExpired() (gas: 14941) -FeeManagerProcessFeeTestV05:test_DiscountIsAppliedForNative() (gas: 88318) -FeeManagerProcessFeeTestV05:test_DiscountIsReturnedForNative() (gas: 88311) -FeeManagerProcessFeeTestV05:test_DiscountIsReturnedForNativeWithSurcharge() (gas: 154332) -FeeManagerProcessFeeTestV05:test_GlobalDiscountCantBeSetToMoreThanMaximum() (gas: 49013) -FeeManagerProcessFeeTestV05:test_GlobalDiscountIsOverridenByIndividualDiscountLink() (gas: 155632) -FeeManagerProcessFeeTestV05:test_GlobalDiscountIsOverridenByIndividualDiscountNative() (gas: 158646) -FeeManagerProcessFeeTestV05:test_GlobalDiscountIsUpdatedAfterBeingSetToZeroLink() (gas: 146685) -FeeManagerProcessFeeTestV05:test_GlobalDiscountIsUpdatedAfterBeingSetToZeroNative() (gas: 152660) -FeeManagerProcessFeeTestV05:test_GlobalDiscountWithLink() (gas: 86981) -FeeManagerProcessFeeTestV05:test_GlobalDiscountWithNative() (gas: 89927) -FeeManagerProcessFeeTestV05:test_GlobalDiscountWithNativeAndLink() (gas: 157297) -FeeManagerProcessFeeTestV05:test_V1PayloadVerifies() (gas: 57184) -FeeManagerProcessFeeTestV05:test_V1PayloadVerifiesAndReturnsChange() (gas: 93259) -FeeManagerProcessFeeTestV05:test_V2PayloadVerifies() (gas: 214977) -FeeManagerProcessFeeTestV05:test_V2PayloadWithoutQuoteFails() (gas: 60093) -FeeManagerProcessFeeTestV05:test_V2PayloadWithoutZeroFee() (gas: 105570) -FeeManagerProcessFeeTestV05:test_WithdrawERC20() (gas: 171587) -FeeManagerProcessFeeTestV05:test_WithdrawNonAdminAddr() (gas: 118965) -FeeManagerProcessFeeTestV05:test_WithdrawUnwrappedNative() (gas: 66217) +FeeManagerProcessFeeTestV05:test_DiscountIsAppliedForNative() (gas: 52318) +FeeManagerProcessFeeTestV05:test_DiscountIsReturnedForNative() (gas: 52311) +FeeManagerProcessFeeTestV05:test_DiscountIsReturnedForNativeWithSurcharge() (gas: 78568) +FeeManagerProcessFeeTestV05:test_GlobalDiscountCantBeSetToMoreThanMaximum() (gas: 19501) +FeeManagerProcessFeeTestV05:test_GlobalDiscountIsOverridenByIndividualDiscountLink() (gas: 79132) +FeeManagerProcessFeeTestV05:test_GlobalDiscountIsOverridenByIndividualDiscountNative() (gas: 82146) +FeeManagerProcessFeeTestV05:test_GlobalDiscountIsUpdatedAfterBeingSetToZeroLink() (gas: 47753) +FeeManagerProcessFeeTestV05:test_GlobalDiscountIsUpdatedAfterBeingSetToZeroNative() (gas: 50933) +FeeManagerProcessFeeTestV05:test_GlobalDiscountWithLink() (gas: 51481) +FeeManagerProcessFeeTestV05:test_GlobalDiscountWithNative() (gas: 54427) +FeeManagerProcessFeeTestV05:test_GlobalDiscountWithNativeAndLink() (gas: 83297) +FeeManagerProcessFeeTestV05:test_V1PayloadVerifies() (gas: 26980) +FeeManagerProcessFeeTestV05:test_V1PayloadVerifiesAndReturnsChange() (gas: 57943) +FeeManagerProcessFeeTestV05:test_V2PayloadVerifies() (gas: 118325) +FeeManagerProcessFeeTestV05:test_V2PayloadWithoutQuoteFails() (gas: 27389) +FeeManagerProcessFeeTestV05:test_V2PayloadWithoutZeroFee() (gas: 72626) +FeeManagerProcessFeeTestV05:test_WithdrawERC20() (gas: 71631) +FeeManagerProcessFeeTestV05:test_WithdrawNonAdminAddr() (gas: 56309) +FeeManagerProcessFeeTestV05:test_WithdrawUnwrappedNative() (gas: 25445) FeeManagerProcessFeeTestV05:test_baseFeeIsAppliedForLink() (gas: 16619) FeeManagerProcessFeeTestV05:test_baseFeeIsAppliedForNative() (gas: 19624) -FeeManagerProcessFeeTestV05:test_correctDiscountIsAppliedWhenBothTokensAreDiscounted() (gas: 173921) -FeeManagerProcessFeeTestV05:test_discountAIsNotAppliedWhenSetForOtherUsers() (gas: 90508) -FeeManagerProcessFeeTestV05:test_discountFeeRoundsDownWhenUneven() (gas: 88542) -FeeManagerProcessFeeTestV05:test_discountIsAppliedForLink() (gas: 85374) -FeeManagerProcessFeeTestV05:test_discountIsAppliedWith100PercentSurcharge() (gas: 154383) -FeeManagerProcessFeeTestV05:test_discountIsNoLongerAppliedAfterRemoving() (gas: 145756) -FeeManagerProcessFeeTestV05:test_discountIsNotAppliedForInvalidTokenAddress() (gas: 47298) -FeeManagerProcessFeeTestV05:test_discountIsNotAppliedToOtherFeeds() (gas: 90512) -FeeManagerProcessFeeTestV05:test_discountIsReturnedForLink() (gas: 85346) +FeeManagerProcessFeeTestV05:test_correctDiscountIsAppliedWhenBothTokensAreDiscounted() (gas: 90421) +FeeManagerProcessFeeTestV05:test_discountAIsNotAppliedWhenSetForOtherUsers() (gas: 58508) +FeeManagerProcessFeeTestV05:test_discountFeeRoundsDownWhenUneven() (gas: 52518) +FeeManagerProcessFeeTestV05:test_discountIsAppliedForLink() (gas: 49374) +FeeManagerProcessFeeTestV05:test_discountIsAppliedWith100PercentSurcharge() (gas: 78619) +FeeManagerProcessFeeTestV05:test_discountIsNoLongerAppliedAfterRemoving() (gas: 47810) +FeeManagerProcessFeeTestV05:test_discountIsNotAppliedForInvalidTokenAddress() (gas: 17538) +FeeManagerProcessFeeTestV05:test_discountIsNotAppliedToOtherFeeds() (gas: 56512) +FeeManagerProcessFeeTestV05:test_discountIsReturnedForLink() (gas: 49346) FeeManagerProcessFeeTestV05:test_emptyQuoteRevertsWithError() (gas: 12162) -FeeManagerProcessFeeTestV05:test_eventIsEmittedAfterSurchargeIsSet() (gas: 70136) -FeeManagerProcessFeeTestV05:test_eventIsEmittedIfNotEnoughLink() (gas: 291851) -FeeManagerProcessFeeTestV05:test_eventIsEmittedUponWithdraw() (gas: 138920) -FeeManagerProcessFeeTestV05:test_feeIsUpdatedAfterDiscountIsRemoved() (gas: 151814) -FeeManagerProcessFeeTestV05:test_feeIsUpdatedAfterNewDiscountIsApplied() (gas: 159487) -FeeManagerProcessFeeTestV05:test_feeIsUpdatedAfterNewSurchargeIsApplied() (gas: 151422) -FeeManagerProcessFeeTestV05:test_feeIsZeroWith100PercentDiscount() (gas: 87717) +FeeManagerProcessFeeTestV05:test_eventIsEmittedAfterSurchargeIsSet() (gas: 41372) +FeeManagerProcessFeeTestV05:test_eventIsEmittedIfNotEnoughLink() (gas: 176139) +FeeManagerProcessFeeTestV05:test_eventIsEmittedUponWithdraw() (gas: 69036) +FeeManagerProcessFeeTestV05:test_feeIsUpdatedAfterDiscountIsRemoved() (gas: 51056) +FeeManagerProcessFeeTestV05:test_feeIsUpdatedAfterNewDiscountIsApplied() (gas: 67087) +FeeManagerProcessFeeTestV05:test_feeIsUpdatedAfterNewSurchargeIsApplied() (gas: 66294) +FeeManagerProcessFeeTestV05:test_feeIsZeroWith100PercentDiscount() (gas: 51717) FeeManagerProcessFeeTestV05:test_getBaseRewardWithLinkQuote() (gas: 16617) -FeeManagerProcessFeeTestV05:test_getLinkFeeIsRoundedUp() (gas: 85547) -FeeManagerProcessFeeTestV05:test_getLinkRewardIsSameAsFee() (gas: 101547) -FeeManagerProcessFeeTestV05:test_getLinkRewardWithNativeQuoteAndSurchargeWithLinkDiscount() (gas: 156527) -FeeManagerProcessFeeTestV05:test_getRewardWithLinkDiscount() (gas: 85370) -FeeManagerProcessFeeTestV05:test_getRewardWithLinkQuoteAndLinkDiscount() (gas: 85351) +FeeManagerProcessFeeTestV05:test_getLinkFeeIsRoundedUp() (gas: 49523) +FeeManagerProcessFeeTestV05:test_getLinkRewardIsSameAsFee() (gas: 55023) +FeeManagerProcessFeeTestV05:test_getLinkRewardWithNativeQuoteAndSurchargeWithLinkDiscount() (gas: 84739) +FeeManagerProcessFeeTestV05:test_getRewardWithLinkDiscount() (gas: 49370) +FeeManagerProcessFeeTestV05:test_getRewardWithLinkQuoteAndLinkDiscount() (gas: 49351) FeeManagerProcessFeeTestV05:test_getRewardWithNativeQuote() (gas: 19600) -FeeManagerProcessFeeTestV05:test_getRewardWithNativeQuoteAndSurcharge() (gas: 85598) -FeeManagerProcessFeeTestV05:test_linkAvailableForPaymentReturnsLinkBalance() (gas: 100059) -FeeManagerProcessFeeTestV05:test_nativeSurcharge0Percent() (gas: 65514) -FeeManagerProcessFeeTestV05:test_nativeSurcharge100Percent() (gas: 85623) -FeeManagerProcessFeeTestV05:test_nativeSurchargeCannotExceed100Percent() (gas: 45995) -FeeManagerProcessFeeTestV05:test_nativeSurchargeEventIsEmittedOnUpdate() (gas: 70206) -FeeManagerProcessFeeTestV05:test_noFeeIsAppliedWhenReportHasZeroFee() (gas: 87562) -FeeManagerProcessFeeTestV05:test_noFeeIsAppliedWhenReportHasZeroFeeAndDiscountAndSurchargeIsSet() (gas: 153561) -FeeManagerProcessFeeTestV05:test_nonAdminProxyUserCannotProcessFee() (gas: 55475) -FeeManagerProcessFeeTestV05:test_nonAdminUserCanNotSetDiscount() (gas: 49806) -FeeManagerProcessFeeTestV05:test_onlyOwnerCanSetGlobalDiscount() (gas: 49342) -FeeManagerProcessFeeTestV05:test_payLinkDeficit() (gas: 393675) -FeeManagerProcessFeeTestV05:test_payLinkDeficitOnlyCallableByAdmin() (gas: 46489) -FeeManagerProcessFeeTestV05:test_payLinkDeficitPaysAllFeesProcessed() (gas: 504169) -FeeManagerProcessFeeTestV05:test_payLinkDeficitTwice() (gas: 441696) -FeeManagerProcessFeeTestV05:test_processFeeAsProxy() (gas: 215571) -FeeManagerProcessFeeTestV05:test_processFeeDefaultReportsStillVerifiesWithEmptyQuote() (gas: 57784) -FeeManagerProcessFeeTestV05:test_processFeeEmitsEventIfNotEnoughLink() (gas: 312115) -FeeManagerProcessFeeTestV05:test_processFeeIfSubscriberIsSelf() (gas: 61033) -FeeManagerProcessFeeTestV05:test_processFeeNative() (gas: 337831) -FeeManagerProcessFeeTestV05:test_processFeeUsesCorrectDigest() (gas: 223031) -FeeManagerProcessFeeTestV05:test_processFeeWithDefaultReportPayloadAndQuoteStillVerifies() (gas: 60098) -FeeManagerProcessFeeTestV05:test_processFeeWithDiscountEmitsEvent() (gas: 439240) -FeeManagerProcessFeeTestV05:test_processFeeWithInvalidReportVersionFailsToDecode() (gas: 60171) -FeeManagerProcessFeeTestV05:test_processFeeWithNoDiscountDoesNotEmitEvent() (gas: 301786) -FeeManagerProcessFeeTestV05:test_processFeeWithUnwrappedNative() (gas: 292657) -FeeManagerProcessFeeTestV05:test_processFeeWithUnwrappedNativeLinkAddress() (gas: 200542) -FeeManagerProcessFeeTestV05:test_processFeeWithUnwrappedNativeLinkAddressExcessiveFee() (gas: 266088) -FeeManagerProcessFeeTestV05:test_processFeeWithUnwrappedNativeShortFunds() (gas: 157233) -FeeManagerProcessFeeTestV05:test_processFeeWithUnwrappedNativeWithExcessiveFee() (gas: 299646) -FeeManagerProcessFeeTestV05:test_processFeeWithWithCorruptQuotePayload() (gas: 106137) -FeeManagerProcessFeeTestV05:test_processFeeWithWithEmptyQuotePayload() (gas: 60687) -FeeManagerProcessFeeTestV05:test_processFeeWithWithZeroQuotePayload() (gas: 60743) -FeeManagerProcessFeeTestV05:test_processFeeWithZeroLinkNonZeroNativeWithLinkQuote() (gas: 65909) -FeeManagerProcessFeeTestV05:test_processFeeWithZeroLinkNonZeroNativeWithNativeQuote() (gas: 304582) -FeeManagerProcessFeeTestV05:test_processFeeWithZeroNativeNonZeroLinkReturnsChange() (gas: 88932) -FeeManagerProcessFeeTestV05:test_processFeeWithZeroNativeNonZeroLinkWithLinkQuote() (gas: 215434) -FeeManagerProcessFeeTestV05:test_processFeeWithZeroNativeNonZeroLinkWithNativeQuote() (gas: 68680) -FeeManagerProcessFeeTestV05:test_processMultipleLinkReports() (gas: 320055) -FeeManagerProcessFeeTestV05:test_processMultipleUnwrappedNativeReports() (gas: 370628) -FeeManagerProcessFeeTestV05:test_processMultipleV1Reports() (gas: 122935) -FeeManagerProcessFeeTestV05:test_processMultipleWrappedNativeReports() (gas: 410958) -FeeManagerProcessFeeTestV05:test_processV1V2V3Reports() (gas: 372928) -FeeManagerProcessFeeTestV05:test_processV1V2V3ReportsWithUnwrapped() (gas: 362222) +FeeManagerProcessFeeTestV05:test_getRewardWithNativeQuoteAndSurcharge() (gas: 52834) +FeeManagerProcessFeeTestV05:test_linkAvailableForPaymentReturnsLinkBalance() (gas: 52451) +FeeManagerProcessFeeTestV05:test_nativeSurcharge0Percent() (gas: 32822) +FeeManagerProcessFeeTestV05:test_nativeSurcharge100Percent() (gas: 52859) +FeeManagerProcessFeeTestV05:test_nativeSurchargeCannotExceed100Percent() (gas: 17219) +FeeManagerProcessFeeTestV05:test_nativeSurchargeEventIsEmittedOnUpdate() (gas: 41418) +FeeManagerProcessFeeTestV05:test_noFeeIsAppliedWhenReportHasZeroFee() (gas: 51562) +FeeManagerProcessFeeTestV05:test_noFeeIsAppliedWhenReportHasZeroFeeAndDiscountAndSurchargeIsSet() (gas: 77797) +FeeManagerProcessFeeTestV05:test_nonAdminProxyUserCannotProcessFee() (gas: 21895) +FeeManagerProcessFeeTestV05:test_nonAdminUserCanNotSetDiscount() (gas: 19806) +FeeManagerProcessFeeTestV05:test_onlyOwnerCanSetGlobalDiscount() (gas: 19842) +FeeManagerProcessFeeTestV05:test_payLinkDeficit() (gas: 195659) +FeeManagerProcessFeeTestV05:test_payLinkDeficitOnlyCallableByAdmin() (gas: 17413) +FeeManagerProcessFeeTestV05:test_payLinkDeficitPaysAllFeesProcessed() (gas: 215929) +FeeManagerProcessFeeTestV05:test_payLinkDeficitTwice() (gas: 200015) +FeeManagerProcessFeeTestV05:test_processFeeAsProxy() (gas: 118663) +FeeManagerProcessFeeTestV05:test_processFeeDefaultReportsStillVerifiesWithEmptyQuote() (gas: 27468) +FeeManagerProcessFeeTestV05:test_processFeeEmitsEventIfNotEnoughLink() (gas: 164099) +FeeManagerProcessFeeTestV05:test_processFeeIfSubscriberIsSelf() (gas: 27833) +FeeManagerProcessFeeTestV05:test_processFeeNative() (gas: 174715) +FeeManagerProcessFeeTestV05:test_processFeeUsesCorrectDigest() (gas: 119623) +FeeManagerProcessFeeTestV05:test_processFeeWithDefaultReportPayloadAndQuoteStillVerifies() (gas: 29542) +FeeManagerProcessFeeTestV05:test_processFeeWithDiscountEmitsEvent() (gas: 241424) +FeeManagerProcessFeeTestV05:test_processFeeWithInvalidReportVersionFailsToDecode() (gas: 28511) +FeeManagerProcessFeeTestV05:test_processFeeWithNoDiscountDoesNotEmitEvent() (gas: 168670) +FeeManagerProcessFeeTestV05:test_processFeeWithUnwrappedNative() (gas: 182249) +FeeManagerProcessFeeTestV05:test_processFeeWithUnwrappedNativeLinkAddress() (gas: 133734) +FeeManagerProcessFeeTestV05:test_processFeeWithUnwrappedNativeLinkAddressExcessiveFee() (gas: 157680) +FeeManagerProcessFeeTestV05:test_processFeeWithUnwrappedNativeShortFunds() (gas: 94925) +FeeManagerProcessFeeTestV05:test_processFeeWithUnwrappedNativeWithExcessiveFee() (gas: 189238) +FeeManagerProcessFeeTestV05:test_processFeeWithWithCorruptQuotePayload() (gas: 72937) +FeeManagerProcessFeeTestV05:test_processFeeWithWithEmptyQuotePayload() (gas: 27727) +FeeManagerProcessFeeTestV05:test_processFeeWithWithZeroQuotePayload() (gas: 27783) +FeeManagerProcessFeeTestV05:test_processFeeWithZeroLinkNonZeroNativeWithLinkQuote() (gas: 35257) +FeeManagerProcessFeeTestV05:test_processFeeWithZeroLinkNonZeroNativeWithNativeQuote() (gas: 154614) +FeeManagerProcessFeeTestV05:test_processFeeWithZeroNativeNonZeroLinkReturnsChange() (gas: 55780) +FeeManagerProcessFeeTestV05:test_processFeeWithZeroNativeNonZeroLinkWithLinkQuote() (gas: 118574) +FeeManagerProcessFeeTestV05:test_processFeeWithZeroNativeNonZeroLinkWithNativeQuote() (gas: 38028) +FeeManagerProcessFeeTestV05:test_processMultipleLinkReports() (gas: 224855) +FeeManagerProcessFeeTestV05:test_processMultipleUnwrappedNativeReports() (gas: 258716) +FeeManagerProcessFeeTestV05:test_processMultipleV1Reports() (gas: 74163) +FeeManagerProcessFeeTestV05:test_processMultipleWrappedNativeReports() (gas: 241826) +FeeManagerProcessFeeTestV05:test_processV1V2V3Reports() (gas: 209336) +FeeManagerProcessFeeTestV05:test_processV1V2V3ReportsWithUnwrapped() (gas: 250990) FeeManagerProcessFeeTestV05:test_reportWithNoExpiryOrFeeReturnsZero() (gas: 10759) -FeeManagerProcessFeeTestV05:test_setDiscountOver100Percent() (gas: 49596) -FeeManagerProcessFeeTestV05:test_subscriberDiscountEventIsEmittedOnUpdate() (gas: 76279) -FeeManagerProcessFeeTestV05:test_surchargeFeeRoundsUpWhenUneven() (gas: 85956) -FeeManagerProcessFeeTestV05:test_surchargeIsApplied() (gas: 85879) -FeeManagerProcessFeeTestV05:test_surchargeIsAppliedForNativeFeeWithDiscount() (gas: 154745) -FeeManagerProcessFeeTestV05:test_surchargeIsNoLongerAppliedAfterRemoving() (gas: 144314) -FeeManagerProcessFeeTestV05:test_surchargeIsNotAppliedForLinkFee() (gas: 82676) -FeeManagerProcessFeeTestV05:test_surchargeIsNotAppliedWith100PercentDiscount() (gas: 153741) +FeeManagerProcessFeeTestV05:test_setDiscountOver100Percent() (gas: 19584) +FeeManagerProcessFeeTestV05:test_subscriberDiscountEventIsEmittedOnUpdate() (gas: 46255) +FeeManagerProcessFeeTestV05:test_surchargeFeeRoundsUpWhenUneven() (gas: 53168) +FeeManagerProcessFeeTestV05:test_surchargeIsApplied() (gas: 53115) +FeeManagerProcessFeeTestV05:test_surchargeIsAppliedForNativeFeeWithDiscount() (gas: 78981) +FeeManagerProcessFeeTestV05:test_surchargeIsNoLongerAppliedAfterRemoving() (gas: 48634) +FeeManagerProcessFeeTestV05:test_surchargeIsNotAppliedForLinkFee() (gas: 51912) +FeeManagerProcessFeeTestV05:test_surchargeIsNotAppliedWith100PercentDiscount() (gas: 77977) FeeManagerProcessFeeTestV05:test_testRevertIfReportHasExpired() (gas: 14941) -MultiVerifierBillingTests:test_multipleFeeManagersAndVerifiers() (gas: 5596776) -NoOpFeeManagerIntegrationTestV051:test_verificationWorkflowCompatibility() (gas: 663484) -NoOpFeeManagerTest:test_adminFunctionsDoNotRevert() (gas: 143914) -NoOpFeeManagerTest:test_discountGettersMatchFeeManagerSignature() (gas: 35341) -NoOpFeeManagerTest:test_discountGettersReturn100Percent() (gas: 15565) +MultiVerifierBillingTests:test_multipleFeeManagersAndVerifiers() (gas: 4594820) +NoOpFeeManagerIntegrationTestV051:test_verificationWorkflowCompatibility() (gas: 369140) +NoOpFeeManagerTest:test_adminFunctionsDoNotRevert() (gas: 12766) +NoOpFeeManagerTest:test_discountGettersMatchFeeManagerSignature() (gas: 20341) +NoOpFeeManagerTest:test_discountGettersReturn100Percent() (gas: 9065) NoOpFeeManagerTest:test_getFeeAndReward() (gas: 9728) NoOpFeeManagerTest:test_linkAvailableForPayment() (gas: 5525) -NoOpFeeManagerTest:test_processFeeBulkRefundsETH() (gas: 76369) -NoOpFeeManagerTest:test_processFeeRefundsETH() (gas: 74867) -NoOpFeeManagerTest:test_supportsInterface() (gas: 16523) +NoOpFeeManagerTest:test_processFeeBulkRefundsETH() (gas: 51353) +NoOpFeeManagerTest:test_processFeeRefundsETH() (gas: 50399) +NoOpFeeManagerTest:test_supportsInterface() (gas: 7523) NoOpFeeManagerTest:test_typeAndVersion() (gas: 9688) -NoOpFeeManagerTestV051:test_adminFunctionsDoNotRevert() (gas: 143937) -NoOpFeeManagerTestV051:test_constructorParameters() (gas: 22839) -NoOpFeeManagerTestV051:test_discountGettersMatchFeeManagerSignature() (gas: 35385) -NoOpFeeManagerTestV051:test_discountGettersReturn100Percent() (gas: 15542) +NoOpFeeManagerTestV051:test_adminFunctionsDoNotRevert() (gas: 12789) +NoOpFeeManagerTestV051:test_constructorParameters() (gas: 13839) +NoOpFeeManagerTestV051:test_discountGettersMatchFeeManagerSignature() (gas: 20385) +NoOpFeeManagerTestV051:test_discountGettersReturn100Percent() (gas: 9042) NoOpFeeManagerTestV051:test_getFeeAndReward() (gas: 9788) NoOpFeeManagerTestV051:test_linkAvailableForPayment() (gas: 5569) NoOpFeeManagerTestV051:test_nativeSurchargeReturnsZero() (gas: 5529) -NoOpFeeManagerTestV051:test_processFeeBulkRefundsETH() (gas: 76435) -NoOpFeeManagerTestV051:test_processFeeRefundsETH() (gas: 74912) -NoOpFeeManagerTestV051:test_supportsInterface_BackwardCompatibility() (gas: 11263) +NoOpFeeManagerTestV051:test_processFeeBulkRefundsETH() (gas: 51419) +NoOpFeeManagerTestV051:test_processFeeRefundsETH() (gas: 50444) +NoOpFeeManagerTestV051:test_supportsInterface_BackwardCompatibility() (gas: 6763) NoOpFeeManagerTestV051:test_supportsInterface_ERC165() (gas: 5725) NoOpFeeManagerTestV051:test_supportsInterface_IFeeManager() (gas: 5687) NoOpFeeManagerTestV051:test_supportsInterface_IVerifierFeeManager() (gas: 5703) NoOpFeeManagerTestV051:test_supportsInterface_UnsupportedInterface() (gas: 5773) NoOpFeeManagerTestV051:test_typeAndVersion() (gas: 9710) -RewardManagerClaimTest:test_claimAllRecipients() (gas: 470739) -RewardManagerClaimTest:test_claimAllRecipients() (gas: 470739) -RewardManagerClaimTest:test_claimAllRecipients() (gas: 470739) -RewardManagerClaimTest:test_claimMultipleRecipients() (gas: 249285) -RewardManagerClaimTest:test_claimMultipleRecipients() (gas: 249285) -RewardManagerClaimTest:test_claimMultipleRecipients() (gas: 249285) -RewardManagerClaimTest:test_claimRewardsWithDuplicatePoolIdsDoesNotPayoutTwice() (gas: 616867) -RewardManagerClaimTest:test_claimRewardsWithDuplicatePoolIdsDoesNotPayoutTwice() (gas: 616867) -RewardManagerClaimTest:test_claimRewardsWithDuplicatePoolIdsDoesNotPayoutTwice() (gas: 616867) -RewardManagerClaimTest:test_claimSingleRecipient() (gas: 128173) -RewardManagerClaimTest:test_claimSingleRecipient() (gas: 128173) -RewardManagerClaimTest:test_claimSingleRecipient() (gas: 128173) -RewardManagerClaimTest:test_claimUnevenAmountRoundsDown() (gas: 611151) -RewardManagerClaimTest:test_claimUnevenAmountRoundsDown() (gas: 611151) -RewardManagerClaimTest:test_claimUnevenAmountRoundsDown() (gas: 611151) -RewardManagerClaimTest:test_claimUnregisteredPoolId() (gas: 67761) -RewardManagerClaimTest:test_claimUnregisteredPoolId() (gas: 67761) -RewardManagerClaimTest:test_claimUnregisteredPoolId() (gas: 67761) -RewardManagerClaimTest:test_claimUnregisteredRecipient() (gas: 73813) -RewardManagerClaimTest:test_claimUnregisteredRecipient() (gas: 73813) -RewardManagerClaimTest:test_claimUnregisteredRecipient() (gas: 73813) -RewardManagerClaimTest:test_eventIsEmittedUponClaim() (gas: 115418) -RewardManagerClaimTest:test_eventIsEmittedUponClaim() (gas: 115418) -RewardManagerClaimTest:test_eventIsEmittedUponClaim() (gas: 115418) -RewardManagerClaimTest:test_eventIsNotEmittedUponUnsuccessfulClaim() (gas: 54029) -RewardManagerClaimTest:test_eventIsNotEmittedUponUnsuccessfulClaim() (gas: 54029) -RewardManagerClaimTest:test_eventIsNotEmittedUponUnsuccessfulClaim() (gas: 54029) -RewardManagerClaimTest:test_recipientsClaimMultipleDeposits() (gas: 963109) -RewardManagerClaimTest:test_recipientsClaimMultipleDeposits() (gas: 963109) -RewardManagerClaimTest:test_recipientsClaimMultipleDeposits() (gas: 963109) -RewardManagerClaimTest:test_singleRecipientClaimMultipleDeposits() (gas: 341796) -RewardManagerClaimTest:test_singleRecipientClaimMultipleDeposits() (gas: 341796) -RewardManagerClaimTest:test_singleRecipientClaimMultipleDeposits() (gas: 341796) -RewardManagerNoRecipientSet:test_claimAllRecipientsAfterRecipientsSet() (gas: 942701) -RewardManagerNoRecipientSet:test_claimAllRecipientsAfterRecipientsSet() (gas: 942701) -RewardManagerNoRecipientSet:test_claimAllRecipientsAfterRecipientsSet() (gas: 942701) -RewardManagerPayRecipientsTest:test_addFundsToPoolAsNonOwnerOrFeeManager() (gas: 33863) -RewardManagerPayRecipientsTest:test_addFundsToPoolAsNonOwnerOrFeeManager() (gas: 33863) -RewardManagerPayRecipientsTest:test_addFundsToPoolAsNonOwnerOrFeeManager() (gas: 33863) -RewardManagerPayRecipientsTest:test_addFundsToPoolAsOwner() (gas: 121391) -RewardManagerPayRecipientsTest:test_addFundsToPoolAsOwner() (gas: 121391) -RewardManagerPayRecipientsTest:test_addFundsToPoolAsOwner() (gas: 121391) -RewardManagerPayRecipientsTest:test_payAllRecipients() (gas: 296988) -RewardManagerPayRecipientsTest:test_payAllRecipients() (gas: 296988) -RewardManagerPayRecipientsTest:test_payAllRecipients() (gas: 296988) -RewardManagerPayRecipientsTest:test_payAllRecipientsFromNonAdminUser() (gas: 51291) -RewardManagerPayRecipientsTest:test_payAllRecipientsFromNonAdminUser() (gas: 51291) -RewardManagerPayRecipientsTest:test_payAllRecipientsFromNonAdminUser() (gas: 51291) -RewardManagerPayRecipientsTest:test_payAllRecipientsFromRecipientInPool() (gas: 297212) -RewardManagerPayRecipientsTest:test_payAllRecipientsFromRecipientInPool() (gas: 297212) -RewardManagerPayRecipientsTest:test_payAllRecipientsFromRecipientInPool() (gas: 297212) -RewardManagerPayRecipientsTest:test_payAllRecipientsWithAdditionalInvalidRecipient() (gas: 308544) -RewardManagerPayRecipientsTest:test_payAllRecipientsWithAdditionalInvalidRecipient() (gas: 308544) -RewardManagerPayRecipientsTest:test_payAllRecipientsWithAdditionalInvalidRecipient() (gas: 308544) -RewardManagerPayRecipientsTest:test_payAllRecipientsWithAdditionalUnregisteredRecipient() (gas: 316409) -RewardManagerPayRecipientsTest:test_payAllRecipientsWithAdditionalUnregisteredRecipient() (gas: 316409) -RewardManagerPayRecipientsTest:test_payAllRecipientsWithAdditionalUnregisteredRecipient() (gas: 316409) -RewardManagerPayRecipientsTest:test_payRecipientWithInvalidPool() (gas: 55728) -RewardManagerPayRecipientsTest:test_payRecipientWithInvalidPool() (gas: 55728) -RewardManagerPayRecipientsTest:test_payRecipientWithInvalidPool() (gas: 55728) -RewardManagerPayRecipientsTest:test_payRecipientsEmptyRecipientList() (gas: 53814) -RewardManagerPayRecipientsTest:test_payRecipientsEmptyRecipientList() (gas: 53814) -RewardManagerPayRecipientsTest:test_payRecipientsEmptyRecipientList() (gas: 53814) -RewardManagerPayRecipientsTest:test_payRecipientsWithInvalidPoolId() (gas: 61372) -RewardManagerPayRecipientsTest:test_payRecipientsWithInvalidPoolId() (gas: 61372) -RewardManagerPayRecipientsTest:test_payRecipientsWithInvalidPoolId() (gas: 61372) -RewardManagerPayRecipientsTest:test_paySingleRecipient() (gas: 116110) -RewardManagerPayRecipientsTest:test_paySingleRecipient() (gas: 116110) -RewardManagerPayRecipientsTest:test_paySingleRecipient() (gas: 116110) -RewardManagerPayRecipientsTest:test_paySubsetOfRecipientsInPool() (gas: 244877) -RewardManagerPayRecipientsTest:test_paySubsetOfRecipientsInPool() (gas: 244877) -RewardManagerPayRecipientsTest:test_paySubsetOfRecipientsInPool() (gas: 244877) -RewardManagerRecipientClaimDifferentWeightsTest:test_allRecipientsClaimingReceiveExpectedAmount() (gas: 474335) -RewardManagerRecipientClaimDifferentWeightsTest:test_allRecipientsClaimingReceiveExpectedAmount() (gas: 474335) -RewardManagerRecipientClaimDifferentWeightsTest:test_allRecipientsClaimingReceiveExpectedAmount() (gas: 474335) -RewardManagerRecipientClaimMultiplePoolsTest:test_claimAllRecipientsMultiplePools() (gas: 921754) -RewardManagerRecipientClaimMultiplePoolsTest:test_claimAllRecipientsMultiplePools() (gas: 921754) -RewardManagerRecipientClaimMultiplePoolsTest:test_claimAllRecipientsMultiplePools() (gas: 921754) -RewardManagerRecipientClaimMultiplePoolsTest:test_claimAllRecipientsSinglePool() (gas: 490121) -RewardManagerRecipientClaimMultiplePoolsTest:test_claimAllRecipientsSinglePool() (gas: 490121) -RewardManagerRecipientClaimMultiplePoolsTest:test_claimAllRecipientsSinglePool() (gas: 490121) -RewardManagerRecipientClaimMultiplePoolsTest:test_claimEmptyPoolWhenSecondPoolContainsFunds() (gas: 544249) -RewardManagerRecipientClaimMultiplePoolsTest:test_claimEmptyPoolWhenSecondPoolContainsFunds() (gas: 544249) -RewardManagerRecipientClaimMultiplePoolsTest:test_claimEmptyPoolWhenSecondPoolContainsFunds() (gas: 544249) -RewardManagerRecipientClaimMultiplePoolsTest:test_claimMultipleRecipientsMultiplePools() (gas: 462167) -RewardManagerRecipientClaimMultiplePoolsTest:test_claimMultipleRecipientsMultiplePools() (gas: 462167) -RewardManagerRecipientClaimMultiplePoolsTest:test_claimMultipleRecipientsMultiplePools() (gas: 462167) -RewardManagerRecipientClaimMultiplePoolsTest:test_claimMultipleRecipientsSinglePool() (gas: 249393) -RewardManagerRecipientClaimMultiplePoolsTest:test_claimMultipleRecipientsSinglePool() (gas: 249393) -RewardManagerRecipientClaimMultiplePoolsTest:test_claimMultipleRecipientsSinglePool() (gas: 249393) -RewardManagerRecipientClaimMultiplePoolsTest:test_claimSingleRecipientMultiplePools() (gas: 220203) -RewardManagerRecipientClaimMultiplePoolsTest:test_claimSingleRecipientMultiplePools() (gas: 220203) -RewardManagerRecipientClaimMultiplePoolsTest:test_claimSingleRecipientMultiplePools() (gas: 220203) -RewardManagerRecipientClaimMultiplePoolsTest:test_claimSingleUniqueRecipient() (gas: 181491) -RewardManagerRecipientClaimMultiplePoolsTest:test_claimSingleUniqueRecipient() (gas: 181491) -RewardManagerRecipientClaimMultiplePoolsTest:test_claimSingleUniqueRecipient() (gas: 181491) -RewardManagerRecipientClaimMultiplePoolsTest:test_claimUnevenAmountRoundsDown() (gas: 1195506) -RewardManagerRecipientClaimMultiplePoolsTest:test_claimUnevenAmountRoundsDown() (gas: 1195506) -RewardManagerRecipientClaimMultiplePoolsTest:test_claimUnevenAmountRoundsDown() (gas: 1195506) -RewardManagerRecipientClaimMultiplePoolsTest:test_claimUnregisteredRecipient() (gas: 137712) -RewardManagerRecipientClaimMultiplePoolsTest:test_claimUnregisteredRecipient() (gas: 137712) -RewardManagerRecipientClaimMultiplePoolsTest:test_claimUnregisteredRecipient() (gas: 137712) +RewardManagerClaimTest:test_claimAllRecipients() (gas: 275763) +RewardManagerClaimTest:test_claimAllRecipients() (gas: 275763) +RewardManagerClaimTest:test_claimAllRecipients() (gas: 275763) +RewardManagerClaimTest:test_claimMultipleRecipients() (gas: 153297) +RewardManagerClaimTest:test_claimMultipleRecipients() (gas: 153297) +RewardManagerClaimTest:test_claimMultipleRecipients() (gas: 153297) +RewardManagerClaimTest:test_claimRewardsWithDuplicatePoolIdsDoesNotPayoutTwice() (gas: 328347) +RewardManagerClaimTest:test_claimRewardsWithDuplicatePoolIdsDoesNotPayoutTwice() (gas: 328347) +RewardManagerClaimTest:test_claimRewardsWithDuplicatePoolIdsDoesNotPayoutTwice() (gas: 328347) +RewardManagerClaimTest:test_claimSingleRecipient() (gas: 88329) +RewardManagerClaimTest:test_claimSingleRecipient() (gas: 88329) +RewardManagerClaimTest:test_claimSingleRecipient() (gas: 88329) +RewardManagerClaimTest:test_claimUnevenAmountRoundsDown() (gas: 313551) +RewardManagerClaimTest:test_claimUnevenAmountRoundsDown() (gas: 313551) +RewardManagerClaimTest:test_claimUnevenAmountRoundsDown() (gas: 313551) +RewardManagerClaimTest:test_claimUnregisteredPoolId() (gas: 34417) +RewardManagerClaimTest:test_claimUnregisteredPoolId() (gas: 34417) +RewardManagerClaimTest:test_claimUnregisteredPoolId() (gas: 34417) +RewardManagerClaimTest:test_claimUnregisteredRecipient() (gas: 40469) +RewardManagerClaimTest:test_claimUnregisteredRecipient() (gas: 40469) +RewardManagerClaimTest:test_claimUnregisteredRecipient() (gas: 40469) +RewardManagerClaimTest:test_eventIsEmittedUponClaim() (gas: 86074) +RewardManagerClaimTest:test_eventIsEmittedUponClaim() (gas: 86074) +RewardManagerClaimTest:test_eventIsEmittedUponClaim() (gas: 86074) +RewardManagerClaimTest:test_eventIsNotEmittedUponUnsuccessfulClaim() (gas: 24685) +RewardManagerClaimTest:test_eventIsNotEmittedUponUnsuccessfulClaim() (gas: 24685) +RewardManagerClaimTest:test_eventIsNotEmittedUponUnsuccessfulClaim() (gas: 24685) +RewardManagerClaimTest:test_recipientsClaimMultipleDeposits() (gas: 383213) +RewardManagerClaimTest:test_recipientsClaimMultipleDeposits() (gas: 383213) +RewardManagerClaimTest:test_recipientsClaimMultipleDeposits() (gas: 383213) +RewardManagerClaimTest:test_singleRecipientClaimMultipleDeposits() (gas: 136264) +RewardManagerClaimTest:test_singleRecipientClaimMultipleDeposits() (gas: 136264) +RewardManagerClaimTest:test_singleRecipientClaimMultipleDeposits() (gas: 136264) +RewardManagerNoRecipientSet:test_claimAllRecipientsAfterRecipientsSet() (gas: 489333) +RewardManagerNoRecipientSet:test_claimAllRecipientsAfterRecipientsSet() (gas: 489333) +RewardManagerNoRecipientSet:test_claimAllRecipientsAfterRecipientsSet() (gas: 489333) +RewardManagerPayRecipientsTest:test_addFundsToPoolAsNonOwnerOrFeeManager() (gas: 11451) +RewardManagerPayRecipientsTest:test_addFundsToPoolAsNonOwnerOrFeeManager() (gas: 11451) +RewardManagerPayRecipientsTest:test_addFundsToPoolAsNonOwnerOrFeeManager() (gas: 11451) +RewardManagerPayRecipientsTest:test_addFundsToPoolAsOwner() (gas: 53905) +RewardManagerPayRecipientsTest:test_addFundsToPoolAsOwner() (gas: 53905) +RewardManagerPayRecipientsTest:test_addFundsToPoolAsOwner() (gas: 53905) +RewardManagerPayRecipientsTest:test_payAllRecipients() (gas: 249472) +RewardManagerPayRecipientsTest:test_payAllRecipients() (gas: 249472) +RewardManagerPayRecipientsTest:test_payAllRecipients() (gas: 249472) +RewardManagerPayRecipientsTest:test_payAllRecipientsFromNonAdminUser() (gas: 20475) +RewardManagerPayRecipientsTest:test_payAllRecipientsFromNonAdminUser() (gas: 20475) +RewardManagerPayRecipientsTest:test_payAllRecipientsFromNonAdminUser() (gas: 20475) +RewardManagerPayRecipientsTest:test_payAllRecipientsFromRecipientInPool() (gas: 249696) +RewardManagerPayRecipientsTest:test_payAllRecipientsFromRecipientInPool() (gas: 249696) +RewardManagerPayRecipientsTest:test_payAllRecipientsFromRecipientInPool() (gas: 249696) +RewardManagerPayRecipientsTest:test_payAllRecipientsWithAdditionalInvalidRecipient() (gas: 260900) +RewardManagerPayRecipientsTest:test_payAllRecipientsWithAdditionalInvalidRecipient() (gas: 260900) +RewardManagerPayRecipientsTest:test_payAllRecipientsWithAdditionalInvalidRecipient() (gas: 260900) +RewardManagerPayRecipientsTest:test_payAllRecipientsWithAdditionalUnregisteredRecipient() (gas: 264025) +RewardManagerPayRecipientsTest:test_payAllRecipientsWithAdditionalUnregisteredRecipient() (gas: 264025) +RewardManagerPayRecipientsTest:test_payAllRecipientsWithAdditionalUnregisteredRecipient() (gas: 264025) +RewardManagerPayRecipientsTest:test_payRecipientWithInvalidPool() (gas: 28516) +RewardManagerPayRecipientsTest:test_payRecipientWithInvalidPool() (gas: 28516) +RewardManagerPayRecipientsTest:test_payRecipientWithInvalidPool() (gas: 28516) +RewardManagerPayRecipientsTest:test_payRecipientsEmptyRecipientList() (gas: 24982) +RewardManagerPayRecipientsTest:test_payRecipientsEmptyRecipientList() (gas: 24982) +RewardManagerPayRecipientsTest:test_payRecipientsEmptyRecipientList() (gas: 24982) +RewardManagerPayRecipientsTest:test_payRecipientsWithInvalidPoolId() (gas: 31044) +RewardManagerPayRecipientsTest:test_payRecipientsWithInvalidPoolId() (gas: 31044) +RewardManagerPayRecipientsTest:test_payRecipientsWithInvalidPoolId() (gas: 31044) +RewardManagerPayRecipientsTest:test_paySingleRecipient() (gas: 84398) +RewardManagerPayRecipientsTest:test_paySingleRecipient() (gas: 84398) +RewardManagerPayRecipientsTest:test_paySingleRecipient() (gas: 84398) +RewardManagerPayRecipientsTest:test_paySubsetOfRecipientsInPool() (gas: 197429) +RewardManagerPayRecipientsTest:test_paySubsetOfRecipientsInPool() (gas: 197429) +RewardManagerPayRecipientsTest:test_paySubsetOfRecipientsInPool() (gas: 197429) +RewardManagerRecipientClaimDifferentWeightsTest:test_allRecipientsClaimingReceiveExpectedAmount() (gas: 279359) +RewardManagerRecipientClaimDifferentWeightsTest:test_allRecipientsClaimingReceiveExpectedAmount() (gas: 279359) +RewardManagerRecipientClaimDifferentWeightsTest:test_allRecipientsClaimingReceiveExpectedAmount() (gas: 279359) +RewardManagerRecipientClaimMultiplePoolsTest:test_claimAllRecipientsMultiplePools() (gas: 509902) +RewardManagerRecipientClaimMultiplePoolsTest:test_claimAllRecipientsMultiplePools() (gas: 509902) +RewardManagerRecipientClaimMultiplePoolsTest:test_claimAllRecipientsMultiplePools() (gas: 509902) +RewardManagerRecipientClaimMultiplePoolsTest:test_claimAllRecipientsSinglePool() (gas: 281845) +RewardManagerRecipientClaimMultiplePoolsTest:test_claimAllRecipientsSinglePool() (gas: 281845) +RewardManagerRecipientClaimMultiplePoolsTest:test_claimAllRecipientsSinglePool() (gas: 281845) +RewardManagerRecipientClaimMultiplePoolsTest:test_claimEmptyPoolWhenSecondPoolContainsFunds() (gas: 291629) +RewardManagerRecipientClaimMultiplePoolsTest:test_claimEmptyPoolWhenSecondPoolContainsFunds() (gas: 291629) +RewardManagerRecipientClaimMultiplePoolsTest:test_claimEmptyPoolWhenSecondPoolContainsFunds() (gas: 291629) +RewardManagerRecipientClaimMultiplePoolsTest:test_claimMultipleRecipientsMultiplePools() (gas: 261591) +RewardManagerRecipientClaimMultiplePoolsTest:test_claimMultipleRecipientsMultiplePools() (gas: 261591) +RewardManagerRecipientClaimMultiplePoolsTest:test_claimMultipleRecipientsMultiplePools() (gas: 261591) +RewardManagerRecipientClaimMultiplePoolsTest:test_claimMultipleRecipientsSinglePool() (gas: 153405) +RewardManagerRecipientClaimMultiplePoolsTest:test_claimMultipleRecipientsSinglePool() (gas: 153405) +RewardManagerRecipientClaimMultiplePoolsTest:test_claimMultipleRecipientsSinglePool() (gas: 153405) +RewardManagerRecipientClaimMultiplePoolsTest:test_claimSingleRecipientMultiplePools() (gas: 131915) +RewardManagerRecipientClaimMultiplePoolsTest:test_claimSingleRecipientMultiplePools() (gas: 131915) +RewardManagerRecipientClaimMultiplePoolsTest:test_claimSingleRecipientMultiplePools() (gas: 131915) +RewardManagerRecipientClaimMultiplePoolsTest:test_claimSingleUniqueRecipient() (gas: 105303) +RewardManagerRecipientClaimMultiplePoolsTest:test_claimSingleUniqueRecipient() (gas: 105303) +RewardManagerRecipientClaimMultiplePoolsTest:test_claimSingleUniqueRecipient() (gas: 105303) +RewardManagerRecipientClaimMultiplePoolsTest:test_claimUnevenAmountRoundsDown() (gas: 576306) +RewardManagerRecipientClaimMultiplePoolsTest:test_claimUnevenAmountRoundsDown() (gas: 576306) +RewardManagerRecipientClaimMultiplePoolsTest:test_claimUnevenAmountRoundsDown() (gas: 576306) +RewardManagerRecipientClaimMultiplePoolsTest:test_claimUnregisteredRecipient() (gas: 63524) +RewardManagerRecipientClaimMultiplePoolsTest:test_claimUnregisteredRecipient() (gas: 63524) +RewardManagerRecipientClaimMultiplePoolsTest:test_claimUnregisteredRecipient() (gas: 63524) RewardManagerRecipientClaimMultiplePoolsTest:test_getAvailableRewardsCursorAndTotalPoolsEqual() (gas: 10180) RewardManagerRecipientClaimMultiplePoolsTest:test_getAvailableRewardsCursorAndTotalPoolsEqual() (gas: 10180) RewardManagerRecipientClaimMultiplePoolsTest:test_getAvailableRewardsCursorAndTotalPoolsEqual() (gas: 10180) @@ -778,417 +778,417 @@ RewardManagerRecipientClaimMultiplePoolsTest:test_getAvailableRewardsCursorSingl RewardManagerRecipientClaimMultiplePoolsTest:test_getRewardsAvailableToRecipientInBothPools() (gas: 29052) RewardManagerRecipientClaimMultiplePoolsTest:test_getRewardsAvailableToRecipientInBothPools() (gas: 29052) RewardManagerRecipientClaimMultiplePoolsTest:test_getRewardsAvailableToRecipientInBothPools() (gas: 29052) -RewardManagerRecipientClaimMultiplePoolsTest:test_getRewardsAvailableToRecipientInBothPoolsWhereAlreadyClaimed() (gas: 261528) -RewardManagerRecipientClaimMultiplePoolsTest:test_getRewardsAvailableToRecipientInBothPoolsWhereAlreadyClaimed() (gas: 261528) -RewardManagerRecipientClaimMultiplePoolsTest:test_getRewardsAvailableToRecipientInBothPoolsWhereAlreadyClaimed() (gas: 261528) +RewardManagerRecipientClaimMultiplePoolsTest:test_getRewardsAvailableToRecipientInBothPoolsWhereAlreadyClaimed() (gas: 147240) +RewardManagerRecipientClaimMultiplePoolsTest:test_getRewardsAvailableToRecipientInBothPoolsWhereAlreadyClaimed() (gas: 147240) +RewardManagerRecipientClaimMultiplePoolsTest:test_getRewardsAvailableToRecipientInBothPoolsWhereAlreadyClaimed() (gas: 147240) RewardManagerRecipientClaimMultiplePoolsTest:test_getRewardsAvailableToRecipientInNoPools() (gas: 18510) RewardManagerRecipientClaimMultiplePoolsTest:test_getRewardsAvailableToRecipientInNoPools() (gas: 18510) RewardManagerRecipientClaimMultiplePoolsTest:test_getRewardsAvailableToRecipientInNoPools() (gas: 18510) RewardManagerRecipientClaimMultiplePoolsTest:test_getRewardsAvailableToRecipientInSinglePool() (gas: 24569) RewardManagerRecipientClaimMultiplePoolsTest:test_getRewardsAvailableToRecipientInSinglePool() (gas: 24569) RewardManagerRecipientClaimMultiplePoolsTest:test_getRewardsAvailableToRecipientInSinglePool() (gas: 24569) -RewardManagerRecipientClaimMultiplePoolsTest:test_recipientsClaimMultipleDeposits() (gas: 964859) -RewardManagerRecipientClaimMultiplePoolsTest:test_recipientsClaimMultipleDeposits() (gas: 964859) -RewardManagerRecipientClaimMultiplePoolsTest:test_recipientsClaimMultipleDeposits() (gas: 964859) -RewardManagerRecipientClaimMultiplePoolsTest:test_singleRecipientClaimMultipleDeposits() (gas: 341833) -RewardManagerRecipientClaimMultiplePoolsTest:test_singleRecipientClaimMultipleDeposits() (gas: 341833) -RewardManagerRecipientClaimMultiplePoolsTest:test_singleRecipientClaimMultipleDeposits() (gas: 341833) -RewardManagerRecipientClaimUnevenWeightTest:test_allRecipientsClaimingReceiveExpectedAmount() (gas: 394133) -RewardManagerRecipientClaimUnevenWeightTest:test_allRecipientsClaimingReceiveExpectedAmount() (gas: 394133) -RewardManagerRecipientClaimUnevenWeightTest:test_allRecipientsClaimingReceiveExpectedAmount() (gas: 394133) -RewardManagerRecipientClaimUnevenWeightTest:test_allRecipientsClaimingReceiveExpectedAmountWithSmallDeposit() (gas: 403634) -RewardManagerRecipientClaimUnevenWeightTest:test_allRecipientsClaimingReceiveExpectedAmountWithSmallDeposit() (gas: 403634) -RewardManagerRecipientClaimUnevenWeightTest:test_allRecipientsClaimingReceiveExpectedAmountWithSmallDeposit() (gas: 403634) -RewardManagerSetRecipientsTest:test_eventIsEmittedUponSetRecipients() (gas: 223317) -RewardManagerSetRecipientsTest:test_eventIsEmittedUponSetRecipients() (gas: 223317) -RewardManagerSetRecipientsTest:test_eventIsEmittedUponSetRecipients() (gas: 223317) -RewardManagerSetRecipientsTest:test_setRecipientContainsDuplicateRecipients() (gas: 159970) -RewardManagerSetRecipientsTest:test_setRecipientContainsDuplicateRecipients() (gas: 159970) -RewardManagerSetRecipientsTest:test_setRecipientContainsDuplicateRecipients() (gas: 159970) -RewardManagerSetRecipientsTest:test_setRewardRecipientFromManagerAddress() (gas: 262928) -RewardManagerSetRecipientsTest:test_setRewardRecipientFromManagerAddress() (gas: 262928) -RewardManagerSetRecipientsTest:test_setRewardRecipientFromManagerAddress() (gas: 262928) -RewardManagerSetRecipientsTest:test_setRewardRecipientFromNonOwnerOrFeeManagerAddress() (gas: 53068) -RewardManagerSetRecipientsTest:test_setRewardRecipientFromNonOwnerOrFeeManagerAddress() (gas: 53068) -RewardManagerSetRecipientsTest:test_setRewardRecipientFromNonOwnerOrFeeManagerAddress() (gas: 53068) -RewardManagerSetRecipientsTest:test_setRewardRecipientTwice() (gas: 265100) -RewardManagerSetRecipientsTest:test_setRewardRecipientTwice() (gas: 265100) -RewardManagerSetRecipientsTest:test_setRewardRecipientTwice() (gas: 265100) -RewardManagerSetRecipientsTest:test_setRewardRecipientWeights() (gas: 212006) -RewardManagerSetRecipientsTest:test_setRewardRecipientWeights() (gas: 212006) -RewardManagerSetRecipientsTest:test_setRewardRecipientWeights() (gas: 212006) -RewardManagerSetRecipientsTest:test_setRewardRecipientWithZeroAddress() (gas: 121600) -RewardManagerSetRecipientsTest:test_setRewardRecipientWithZeroAddress() (gas: 121600) -RewardManagerSetRecipientsTest:test_setRewardRecipientWithZeroAddress() (gas: 121600) -RewardManagerSetRecipientsTest:test_setRewardRecipientWithZeroWeight() (gas: 220946) -RewardManagerSetRecipientsTest:test_setRewardRecipientWithZeroWeight() (gas: 220946) -RewardManagerSetRecipientsTest:test_setRewardRecipientWithZeroWeight() (gas: 220946) -RewardManagerSetRecipientsTest:test_setRewardRecipients() (gas: 214705) -RewardManagerSetRecipientsTest:test_setRewardRecipients() (gas: 214705) -RewardManagerSetRecipientsTest:test_setRewardRecipients() (gas: 214705) -RewardManagerSetRecipientsTest:test_setRewardRecipientsIsEmpty() (gas: 117504) -RewardManagerSetRecipientsTest:test_setRewardRecipientsIsEmpty() (gas: 117504) -RewardManagerSetRecipientsTest:test_setRewardRecipientsIsEmpty() (gas: 117504) -RewardManagerSetRecipientsTest:test_setSingleRewardRecipient() (gas: 137783) -RewardManagerSetRecipientsTest:test_setSingleRewardRecipient() (gas: 137783) -RewardManagerSetRecipientsTest:test_setSingleRewardRecipient() (gas: 137783) -RewardManagerSetupTest:test_eventEmittedUponFeeManagerUpdate() (gas: 50292) -RewardManagerSetupTest:test_eventEmittedUponFeeManagerUpdate() (gas: 50292) -RewardManagerSetupTest:test_eventEmittedUponFeeManagerUpdate() (gas: 50292) -RewardManagerSetupTest:test_eventEmittedUponFeePaid() (gas: 349377) -RewardManagerSetupTest:test_eventEmittedUponFeePaid() (gas: 349377) -RewardManagerSetupTest:test_eventEmittedUponFeePaid() (gas: 349377) -RewardManagerSetupTest:test_rejectsZeroLinkAddressOnConstruction() (gas: 232555) -RewardManagerSetupTest:test_rejectsZeroLinkAddressOnConstruction() (gas: 232555) -RewardManagerSetupTest:test_rejectsZeroLinkAddressOnConstruction() (gas: 232555) -RewardManagerSetupTest:test_setFeeManagerZeroAddress() (gas: 45797) -RewardManagerSetupTest:test_setFeeManagerZeroAddress() (gas: 45797) -RewardManagerSetupTest:test_setFeeManagerZeroAddress() (gas: 45797) -RewardManagerUpdateRewardRecipientsMultiplePoolsTest:test_updatePrimaryRecipientWeights() (gas: 791563) -RewardManagerUpdateRewardRecipientsMultiplePoolsTest:test_updatePrimaryRecipientWeights() (gas: 791563) -RewardManagerUpdateRewardRecipientsMultiplePoolsTest:test_updatePrimaryRecipientWeights() (gas: 791563) -RewardManagerUpdateRewardRecipientsTest:test_eventIsEmittedUponUpdateRecipients() (gas: 329951) -RewardManagerUpdateRewardRecipientsTest:test_eventIsEmittedUponUpdateRecipients() (gas: 329951) -RewardManagerUpdateRewardRecipientsTest:test_eventIsEmittedUponUpdateRecipients() (gas: 329951) -RewardManagerUpdateRewardRecipientsTest:test_onlyAdminCanUpdateRecipients() (gas: 51365) -RewardManagerUpdateRewardRecipientsTest:test_onlyAdminCanUpdateRecipients() (gas: 51365) -RewardManagerUpdateRewardRecipientsTest:test_onlyAdminCanUpdateRecipients() (gas: 51365) -RewardManagerUpdateRewardRecipientsTest:test_partialUpdateRecipientWeights() (gas: 498601) -RewardManagerUpdateRewardRecipientsTest:test_partialUpdateRecipientWeights() (gas: 498601) -RewardManagerUpdateRewardRecipientsTest:test_partialUpdateRecipientWeights() (gas: 498601) -RewardManagerUpdateRewardRecipientsTest:test_updateAllRecipientsWithSameAddressAndWeight() (gas: 321257) -RewardManagerUpdateRewardRecipientsTest:test_updateAllRecipientsWithSameAddressAndWeight() (gas: 321257) -RewardManagerUpdateRewardRecipientsTest:test_updateAllRecipientsWithSameAddressAndWeight() (gas: 321257) -RewardManagerUpdateRewardRecipientsTest:test_updatePartialRecipientsToSubset() (gas: 268848) -RewardManagerUpdateRewardRecipientsTest:test_updatePartialRecipientsToSubset() (gas: 268848) -RewardManagerUpdateRewardRecipientsTest:test_updatePartialRecipientsToSubset() (gas: 268848) -RewardManagerUpdateRewardRecipientsTest:test_updatePartialRecipientsWithExcessiveWeight() (gas: 295679) -RewardManagerUpdateRewardRecipientsTest:test_updatePartialRecipientsWithExcessiveWeight() (gas: 295679) -RewardManagerUpdateRewardRecipientsTest:test_updatePartialRecipientsWithExcessiveWeight() (gas: 295679) -RewardManagerUpdateRewardRecipientsTest:test_updatePartialRecipientsWithSameAddressAndWeight() (gas: 196359) -RewardManagerUpdateRewardRecipientsTest:test_updatePartialRecipientsWithSameAddressAndWeight() (gas: 196359) -RewardManagerUpdateRewardRecipientsTest:test_updatePartialRecipientsWithSameAddressAndWeight() (gas: 196359) -RewardManagerUpdateRewardRecipientsTest:test_updatePartialRecipientsWithUnderWeightSet() (gas: 295753) -RewardManagerUpdateRewardRecipientsTest:test_updatePartialRecipientsWithUnderWeightSet() (gas: 295753) -RewardManagerUpdateRewardRecipientsTest:test_updatePartialRecipientsWithUnderWeightSet() (gas: 295753) -RewardManagerUpdateRewardRecipientsTest:test_updateRecipientWeights() (gas: 789744) -RewardManagerUpdateRewardRecipientsTest:test_updateRecipientWeights() (gas: 789744) -RewardManagerUpdateRewardRecipientsTest:test_updateRecipientWeights() (gas: 789744) -RewardManagerUpdateRewardRecipientsTest:test_updateRecipientWithNewZeroAddress() (gas: 307518) -RewardManagerUpdateRewardRecipientsTest:test_updateRecipientWithNewZeroAddress() (gas: 307518) -RewardManagerUpdateRewardRecipientsTest:test_updateRecipientWithNewZeroAddress() (gas: 307518) -RewardManagerUpdateRewardRecipientsTest:test_updateRecipientsContainsDuplicateRecipients() (gas: 327307) -RewardManagerUpdateRewardRecipientsTest:test_updateRecipientsContainsDuplicateRecipients() (gas: 327307) -RewardManagerUpdateRewardRecipientsTest:test_updateRecipientsContainsDuplicateRecipients() (gas: 327307) -RewardManagerUpdateRewardRecipientsTest:test_updateRecipientsToDifferentLargerSet() (gas: 415588) -RewardManagerUpdateRewardRecipientsTest:test_updateRecipientsToDifferentLargerSet() (gas: 415588) -RewardManagerUpdateRewardRecipientsTest:test_updateRecipientsToDifferentLargerSet() (gas: 415588) -RewardManagerUpdateRewardRecipientsTest:test_updateRecipientsToDifferentPartialSet() (gas: 324037) -RewardManagerUpdateRewardRecipientsTest:test_updateRecipientsToDifferentPartialSet() (gas: 324037) -RewardManagerUpdateRewardRecipientsTest:test_updateRecipientsToDifferentPartialSet() (gas: 324037) -RewardManagerUpdateRewardRecipientsTest:test_updateRecipientsToDifferentSet() (gas: 384928) -RewardManagerUpdateRewardRecipientsTest:test_updateRecipientsToDifferentSet() (gas: 384928) -RewardManagerUpdateRewardRecipientsTest:test_updateRecipientsToDifferentSet() (gas: 384928) -RewardManagerUpdateRewardRecipientsTest:test_updateRecipientsToDifferentSetWithInvalidWeights() (gas: 368630) -RewardManagerUpdateRewardRecipientsTest:test_updateRecipientsToDifferentSetWithInvalidWeights() (gas: 368630) -RewardManagerUpdateRewardRecipientsTest:test_updateRecipientsToDifferentSetWithInvalidWeights() (gas: 368630) -RewardManagerUpdateRewardRecipientsTest:test_updateRecipientsUpdateAndRemoveExistingForLargerSet() (gas: 448455) -RewardManagerUpdateRewardRecipientsTest:test_updateRecipientsUpdateAndRemoveExistingForLargerSet() (gas: 448455) -RewardManagerUpdateRewardRecipientsTest:test_updateRecipientsUpdateAndRemoveExistingForLargerSet() (gas: 448455) -RewardManagerUpdateRewardRecipientsTest:test_updateRecipientsUpdateAndRemoveExistingForSmallerSet() (gas: 304697) -RewardManagerUpdateRewardRecipientsTest:test_updateRecipientsUpdateAndRemoveExistingForSmallerSet() (gas: 304697) -RewardManagerUpdateRewardRecipientsTest:test_updateRecipientsUpdateAndRemoveExistingForSmallerSet() (gas: 304697) -VerificationdeactivateConfigWhenThereAreMultipleDigestsTest:test_correctlyRemovesAMiddleDigest() (gas: 48229) -VerificationdeactivateConfigWhenThereAreMultipleDigestsTest:test_correctlyRemovesTheFirstDigest() (gas: 48231) -VerificationdeactivateConfigWhenThereAreMultipleDigestsTest:test_correctlyUnsetsDigestsInSequence() (gas: 141289) -VerificationdeactivateConfigWhenThereAreMultipleDigestsTest:test_revertsIfCalledByNonOwner() (gas: 39208) -VerificationdeactivateConfigWhenThereAreMultipleDigestsTest:test_revertsIfRemovingAnEmptyDigest() (gas: 32599) -VerificationdeactivateConfigWhenThereAreMultipleDigestsTest:test_revertsIfRemovingAnNonExistentDigest() (gas: 35205) -VerificationdeactivateConfigWhenThereAreMultipleDigestsTestV051:test_revertsIfCalledByNonOwner() (gas: 38647) -VerificationdeactivateConfigWhenThereAreMultipleDigestsTestV051:test_revertsIfRemovingAnEmptyDigest() (gas: 32061) -VerificationdeactivateConfigWhenThereAreMultipleDigestsTestV051:test_revertsIfRemovingAnNonExistentDigest() (gas: 34497) -VerificationdeactivateConfigWhenThereAreMultipleDigestsTestV05:test_revertsIfCalledByNonOwner() (gas: 38669) -VerificationdeactivateConfigWhenThereAreMultipleDigestsTestV05:test_revertsIfRemovingAnEmptyDigest() (gas: 32083) -VerificationdeactivateConfigWhenThereAreMultipleDigestsTestV05:test_revertsIfRemovingAnNonExistentDigest() (gas: 34519) -VerifierActivateConfigTest:test_revertsIfDigestIsEmpty() (gas: 32654) -VerifierActivateConfigTest:test_revertsIfDigestNotSet() (gas: 35314) -VerifierActivateConfigTest:test_revertsIfNotOwner() (gas: 41422) -VerifierActivateConfigTestV051:test_revertsIfDigestIsEmpty() (gas: 32095) -VerifierActivateConfigTestV051:test_revertsIfDigestNotSet() (gas: 34574) -VerifierActivateConfigTestV051:test_revertsIfNotOwner() (gas: 40863) -VerifierActivateConfigTestV05:test_revertsIfDigestIsEmpty() (gas: 32095) -VerifierActivateConfigTestV05:test_revertsIfDigestNotSet() (gas: 34574) -VerifierActivateConfigTestV05:test_revertsIfNotOwner() (gas: 40863) -VerifierActivateConfigWithDeactivatedConfigTest:test_allowsVerification() (gas: 154137) -VerifierActivateConfigWithDeactivatedConfigTestV051:test_allowsVerification() (gas: 150868) -VerifierActivateConfigWithDeactivatedConfigTestV05:test_allowsVerification() (gas: 150722) -VerifierActivateFeedTest:test_revertsIfNoFeedExistsActivate() (gas: 34755) -VerifierActivateFeedTest:test_revertsIfNoFeedExistsDeactivate() (gas: 34778) -VerifierActivateFeedTest:test_revertsIfNotOwnerActivateFeed() (gas: 38673) -VerifierActivateFeedTest:test_revertsIfNotOwnerDeactivateFeed() (gas: 38728) -VerifierBillingTests:test_rewardsAreDistributedAccordingToWeights() (gas: 2062313) -VerifierBillingTests:test_rewardsAreDistributedAccordingToWeightsMultipleWeigths() (gas: 6917359) -VerifierBillingTests:test_rewardsAreDistributedAccordingToWeightsUsingHistoricalConfigs() (gas: 3058437) -VerifierBillingTests:test_verifyWithLinkV3Report() (gas: 1833611) -VerifierBillingTests:test_verifyWithNativeERC20() (gas: 1643540) -VerifierBillingTests:test_verifyWithNativeUnwrapped() (gas: 1481451) -VerifierBillingTests:test_verifyWithNativeUnwrappedReturnsChange() (gas: 1488475) -VerifierBulkVerifyBillingReport:test_verifyMultiVersions() (gas: 616978) -VerifierBulkVerifyBillingReport:test_verifyMultiVersionsReturnsVerifiedReports() (gas: 601276) -VerifierBulkVerifyBillingReport:test_verifyWithBulkLink() (gas: 729178) -VerifierBulkVerifyBillingReport:test_verifyWithBulkNative() (gas: 724318) -VerifierBulkVerifyBillingReport:test_verifyWithBulkNativeUnwrapped() (gas: 676589) -VerifierBulkVerifyBillingReport:test_verifyWithBulkNativeUnwrappedReturnsChange() (gas: 683595) -VerifierBulkVerifyBillingReportV051:test_verifyMultiVersions() (gas: 614598) -VerifierBulkVerifyBillingReportV051:test_verifyMultiVersionsReturnsVerifiedReports() (gas: 598896) -VerifierBulkVerifyBillingReportV051:test_verifyWithBulkLink() (gas: 728862) -VerifierBulkVerifyBillingReportV051:test_verifyWithBulkNative() (gas: 724002) -VerifierBulkVerifyBillingReportV051:test_verifyWithBulkNativeUnwrapped() (gas: 676273) -VerifierBulkVerifyBillingReportV051:test_verifyWithBulkNativeUnwrappedReturnsChange() (gas: 683375) -VerifierBulkVerifyBillingReportV05:test_verifyMultiVersions() (gas: 614110) -VerifierBulkVerifyBillingReportV05:test_verifyMultiVersionsReturnsVerifiedReports() (gas: 598408) -VerifierBulkVerifyBillingReportV05:test_verifyWithBulkLink() (gas: 728082) -VerifierBulkVerifyBillingReportV05:test_verifyWithBulkNative() (gas: 723222) -VerifierBulkVerifyBillingReportV05:test_verifyWithBulkNativeUnwrapped() (gas: 675493) -VerifierBulkVerifyBillingReportV05:test_verifyWithBulkNativeUnwrappedReturnsChange() (gas: 682595) -VerifierConstructorTest:test_revertsIfInitializedWithEmptyVerifierProxy() (gas: 243284) -VerifierConstructorTest:test_setsTheCorrectProperties() (gas: 2005455) -VerifierConstructorTestV051:test_revertsIfInitializedWithEmptyVerifierProxy() (gas: 224204) -VerifierConstructorTestV051:test_setsTheCorrectProperties() (gas: 1730475) -VerifierConstructorTestV05:test_revertsIfInitializedWithEmptyVerifierProxy() (gas: 221749) -VerifierConstructorTestV05:test_setsTheCorrectProperties() (gas: 1697003) -VerifierDeactivateFeedWithVerifyTest:test_currentReportAllowsVerification() (gas: 256775) -VerifierDeactivateFeedWithVerifyTest:test_currentReportFailsVerification() (gas: 150026) -VerifierDeactivateFeedWithVerifyTest:test_previousReportAllowsVerification() (gas: 156143) -VerifierDeactivateFeedWithVerifyTest:test_previousReportFailsVerification() (gas: 98353) -VerifierInterfacesTest:test_DestinationContractInterfaces() (gas: 794353) -VerifierProxyAccessControlledVerificationTest:test_proxiesToTheVerifierIfHasAccess() (gas: 259227) -VerifierProxyAccessControlledVerificationTest:test_revertsIfNoAccess() (gas: 154145) -VerifierProxyAccessControlledVerificationTestV051:test_proxiesToTheVerifierIfHasAccess() (gas: 256929) -VerifierProxyAccessControlledVerificationTestV051:test_revertsIfNoAccess() (gas: 154181) -VerifierProxyAccessControlledVerificationTestV05:test_proxiesToTheVerifierIfHasAccess() (gas: 256783) -VerifierProxyAccessControlledVerificationTestV05:test_revertsIfNoAccess() (gas: 154181) -VerifierProxyConstructorTest:test_correctlySetsTheCorrectAccessControllerInterface() (gas: 1643056) -VerifierProxyConstructorTest:test_correctlySetsTheCorrectAccessControllerInterface() (gas: 1643056) -VerifierProxyConstructorTest:test_correctlySetsTheOwner() (gas: 1623178) -VerifierProxyConstructorTest:test_correctlySetsTheOwner() (gas: 1623178) +RewardManagerRecipientClaimMultiplePoolsTest:test_recipientsClaimMultipleDeposits() (gas: 387663) +RewardManagerRecipientClaimMultiplePoolsTest:test_recipientsClaimMultipleDeposits() (gas: 387663) +RewardManagerRecipientClaimMultiplePoolsTest:test_recipientsClaimMultipleDeposits() (gas: 387663) +RewardManagerRecipientClaimMultiplePoolsTest:test_singleRecipientClaimMultipleDeposits() (gas: 136301) +RewardManagerRecipientClaimMultiplePoolsTest:test_singleRecipientClaimMultipleDeposits() (gas: 136301) +RewardManagerRecipientClaimMultiplePoolsTest:test_singleRecipientClaimMultipleDeposits() (gas: 136301) +RewardManagerRecipientClaimUnevenWeightTest:test_allRecipientsClaimingReceiveExpectedAmount() (gas: 198401) +RewardManagerRecipientClaimUnevenWeightTest:test_allRecipientsClaimingReceiveExpectedAmount() (gas: 198401) +RewardManagerRecipientClaimUnevenWeightTest:test_allRecipientsClaimingReceiveExpectedAmount() (gas: 198401) +RewardManagerRecipientClaimUnevenWeightTest:test_allRecipientsClaimingReceiveExpectedAmountWithSmallDeposit() (gas: 218274) +RewardManagerRecipientClaimUnevenWeightTest:test_allRecipientsClaimingReceiveExpectedAmountWithSmallDeposit() (gas: 218274) +RewardManagerRecipientClaimUnevenWeightTest:test_allRecipientsClaimingReceiveExpectedAmountWithSmallDeposit() (gas: 218274) +RewardManagerSetRecipientsTest:test_eventIsEmittedUponSetRecipients() (gas: 191701) +RewardManagerSetRecipientsTest:test_eventIsEmittedUponSetRecipients() (gas: 191701) +RewardManagerSetRecipientsTest:test_eventIsEmittedUponSetRecipients() (gas: 191701) +RewardManagerSetRecipientsTest:test_setRecipientContainsDuplicateRecipients() (gas: 126082) +RewardManagerSetRecipientsTest:test_setRecipientContainsDuplicateRecipients() (gas: 126082) +RewardManagerSetRecipientsTest:test_setRecipientContainsDuplicateRecipients() (gas: 126082) +RewardManagerSetRecipientsTest:test_setRewardRecipientFromManagerAddress() (gas: 193880) +RewardManagerSetRecipientsTest:test_setRewardRecipientFromManagerAddress() (gas: 193880) +RewardManagerSetRecipientsTest:test_setRewardRecipientFromManagerAddress() (gas: 193880) +RewardManagerSetRecipientsTest:test_setRewardRecipientFromNonOwnerOrFeeManagerAddress() (gas: 21452) +RewardManagerSetRecipientsTest:test_setRewardRecipientFromNonOwnerOrFeeManagerAddress() (gas: 21452) +RewardManagerSetRecipientsTest:test_setRewardRecipientFromNonOwnerOrFeeManagerAddress() (gas: 21452) +RewardManagerSetRecipientsTest:test_setRewardRecipientTwice() (gas: 193368) +RewardManagerSetRecipientsTest:test_setRewardRecipientTwice() (gas: 193368) +RewardManagerSetRecipientsTest:test_setRewardRecipientTwice() (gas: 193368) +RewardManagerSetRecipientsTest:test_setRewardRecipientWeights() (gas: 180630) +RewardManagerSetRecipientsTest:test_setRewardRecipientWeights() (gas: 180630) +RewardManagerSetRecipientsTest:test_setRewardRecipientWeights() (gas: 180630) +RewardManagerSetRecipientsTest:test_setRewardRecipientWithZeroAddress() (gas: 90224) +RewardManagerSetRecipientsTest:test_setRewardRecipientWithZeroAddress() (gas: 90224) +RewardManagerSetRecipientsTest:test_setRewardRecipientWithZeroAddress() (gas: 90224) +RewardManagerSetRecipientsTest:test_setRewardRecipientWithZeroWeight() (gas: 191334) +RewardManagerSetRecipientsTest:test_setRewardRecipientWithZeroWeight() (gas: 191334) +RewardManagerSetRecipientsTest:test_setRewardRecipientWithZeroWeight() (gas: 191334) +RewardManagerSetRecipientsTest:test_setRewardRecipients() (gas: 185589) +RewardManagerSetRecipientsTest:test_setRewardRecipients() (gas: 185589) +RewardManagerSetRecipientsTest:test_setRewardRecipients() (gas: 185589) +RewardManagerSetRecipientsTest:test_setRewardRecipientsIsEmpty() (gas: 87136) +RewardManagerSetRecipientsTest:test_setRewardRecipientsIsEmpty() (gas: 87136) +RewardManagerSetRecipientsTest:test_setRewardRecipientsIsEmpty() (gas: 87136) +RewardManagerSetRecipientsTest:test_setSingleRewardRecipient() (gas: 110371) +RewardManagerSetRecipientsTest:test_setSingleRewardRecipient() (gas: 110371) +RewardManagerSetRecipientsTest:test_setSingleRewardRecipient() (gas: 110371) +RewardManagerSetupTest:test_eventEmittedUponFeeManagerUpdate() (gas: 21360) +RewardManagerSetupTest:test_eventEmittedUponFeeManagerUpdate() (gas: 21360) +RewardManagerSetupTest:test_eventEmittedUponFeeManagerUpdate() (gas: 21360) +RewardManagerSetupTest:test_eventEmittedUponFeePaid() (gas: 259117) +RewardManagerSetupTest:test_eventEmittedUponFeePaid() (gas: 259117) +RewardManagerSetupTest:test_eventEmittedUponFeePaid() (gas: 259117) +RewardManagerSetupTest:test_rejectsZeroLinkAddressOnConstruction() (gas: 59411) +RewardManagerSetupTest:test_rejectsZeroLinkAddressOnConstruction() (gas: 59411) +RewardManagerSetupTest:test_rejectsZeroLinkAddressOnConstruction() (gas: 59411) +RewardManagerSetupTest:test_setFeeManagerZeroAddress() (gas: 17105) +RewardManagerSetupTest:test_setFeeManagerZeroAddress() (gas: 17105) +RewardManagerSetupTest:test_setFeeManagerZeroAddress() (gas: 17105) +RewardManagerUpdateRewardRecipientsMultiplePoolsTest:test_updatePrimaryRecipientWeights() (gas: 373527) +RewardManagerUpdateRewardRecipientsMultiplePoolsTest:test_updatePrimaryRecipientWeights() (gas: 373527) +RewardManagerUpdateRewardRecipientsMultiplePoolsTest:test_updatePrimaryRecipientWeights() (gas: 373527) +RewardManagerUpdateRewardRecipientsTest:test_eventIsEmittedUponUpdateRecipients() (gas: 279135) +RewardManagerUpdateRewardRecipientsTest:test_eventIsEmittedUponUpdateRecipients() (gas: 279135) +RewardManagerUpdateRewardRecipientsTest:test_eventIsEmittedUponUpdateRecipients() (gas: 279135) +RewardManagerUpdateRewardRecipientsTest:test_onlyAdminCanUpdateRecipients() (gas: 19749) +RewardManagerUpdateRewardRecipientsTest:test_onlyAdminCanUpdateRecipients() (gas: 19749) +RewardManagerUpdateRewardRecipientsTest:test_onlyAdminCanUpdateRecipients() (gas: 19749) +RewardManagerUpdateRewardRecipientsTest:test_partialUpdateRecipientWeights() (gas: 218889) +RewardManagerUpdateRewardRecipientsTest:test_partialUpdateRecipientWeights() (gas: 218889) +RewardManagerUpdateRewardRecipientsTest:test_partialUpdateRecipientWeights() (gas: 218889) +RewardManagerUpdateRewardRecipientsTest:test_updateAllRecipientsWithSameAddressAndWeight() (gas: 272941) +RewardManagerUpdateRewardRecipientsTest:test_updateAllRecipientsWithSameAddressAndWeight() (gas: 272941) +RewardManagerUpdateRewardRecipientsTest:test_updateAllRecipientsWithSameAddressAndWeight() (gas: 272941) +RewardManagerUpdateRewardRecipientsTest:test_updatePartialRecipientsToSubset() (gas: 254276) +RewardManagerUpdateRewardRecipientsTest:test_updatePartialRecipientsToSubset() (gas: 254276) +RewardManagerUpdateRewardRecipientsTest:test_updatePartialRecipientsToSubset() (gas: 254276) +RewardManagerUpdateRewardRecipientsTest:test_updatePartialRecipientsWithExcessiveWeight() (gas: 259263) +RewardManagerUpdateRewardRecipientsTest:test_updatePartialRecipientsWithExcessiveWeight() (gas: 259263) +RewardManagerUpdateRewardRecipientsTest:test_updatePartialRecipientsWithExcessiveWeight() (gas: 259263) +RewardManagerUpdateRewardRecipientsTest:test_updatePartialRecipientsWithSameAddressAndWeight() (gas: 148879) +RewardManagerUpdateRewardRecipientsTest:test_updatePartialRecipientsWithSameAddressAndWeight() (gas: 148879) +RewardManagerUpdateRewardRecipientsTest:test_updatePartialRecipientsWithSameAddressAndWeight() (gas: 148879) +RewardManagerUpdateRewardRecipientsTest:test_updatePartialRecipientsWithUnderWeightSet() (gas: 259337) +RewardManagerUpdateRewardRecipientsTest:test_updatePartialRecipientsWithUnderWeightSet() (gas: 259337) +RewardManagerUpdateRewardRecipientsTest:test_updatePartialRecipientsWithUnderWeightSet() (gas: 259337) +RewardManagerUpdateRewardRecipientsTest:test_updateRecipientWeights() (gas: 369008) +RewardManagerUpdateRewardRecipientsTest:test_updateRecipientWeights() (gas: 369008) +RewardManagerUpdateRewardRecipientsTest:test_updateRecipientWeights() (gas: 369008) +RewardManagerUpdateRewardRecipientsTest:test_updateRecipientWithNewZeroAddress() (gas: 270846) +RewardManagerUpdateRewardRecipientsTest:test_updateRecipientWithNewZeroAddress() (gas: 270846) +RewardManagerUpdateRewardRecipientsTest:test_updateRecipientWithNewZeroAddress() (gas: 270846) +RewardManagerUpdateRewardRecipientsTest:test_updateRecipientsContainsDuplicateRecipients() (gas: 288619) +RewardManagerUpdateRewardRecipientsTest:test_updateRecipientsContainsDuplicateRecipients() (gas: 288619) +RewardManagerUpdateRewardRecipientsTest:test_updateRecipientsContainsDuplicateRecipients() (gas: 288619) +RewardManagerUpdateRewardRecipientsTest:test_updateRecipientsToDifferentLargerSet() (gas: 407920) +RewardManagerUpdateRewardRecipientsTest:test_updateRecipientsToDifferentLargerSet() (gas: 407920) +RewardManagerUpdateRewardRecipientsTest:test_updateRecipientsToDifferentLargerSet() (gas: 407920) +RewardManagerUpdateRewardRecipientsTest:test_updateRecipientsToDifferentPartialSet() (gas: 318073) +RewardManagerUpdateRewardRecipientsTest:test_updateRecipientsToDifferentPartialSet() (gas: 318073) +RewardManagerUpdateRewardRecipientsTest:test_updateRecipientsToDifferentPartialSet() (gas: 318073) +RewardManagerUpdateRewardRecipientsTest:test_updateRecipientsToDifferentSet() (gas: 377828) +RewardManagerUpdateRewardRecipientsTest:test_updateRecipientsToDifferentSet() (gas: 377828) +RewardManagerUpdateRewardRecipientsTest:test_updateRecipientsToDifferentSet() (gas: 377828) +RewardManagerUpdateRewardRecipientsTest:test_updateRecipientsToDifferentSetWithInvalidWeights() (gas: 312166) +RewardManagerUpdateRewardRecipientsTest:test_updateRecipientsToDifferentSetWithInvalidWeights() (gas: 312166) +RewardManagerUpdateRewardRecipientsTest:test_updateRecipientsToDifferentSetWithInvalidWeights() (gas: 312166) +RewardManagerUpdateRewardRecipientsTest:test_updateRecipientsUpdateAndRemoveExistingForLargerSet() (gas: 399743) +RewardManagerUpdateRewardRecipientsTest:test_updateRecipientsUpdateAndRemoveExistingForLargerSet() (gas: 399743) +RewardManagerUpdateRewardRecipientsTest:test_updateRecipientsUpdateAndRemoveExistingForLargerSet() (gas: 399743) +RewardManagerUpdateRewardRecipientsTest:test_updateRecipientsUpdateAndRemoveExistingForSmallerSet() (gas: 289557) +RewardManagerUpdateRewardRecipientsTest:test_updateRecipientsUpdateAndRemoveExistingForSmallerSet() (gas: 289557) +RewardManagerUpdateRewardRecipientsTest:test_updateRecipientsUpdateAndRemoveExistingForSmallerSet() (gas: 289557) +VerificationdeactivateConfigWhenThereAreMultipleDigestsTest:test_correctlyRemovesAMiddleDigest() (gas: 24177) +VerificationdeactivateConfigWhenThereAreMultipleDigestsTest:test_correctlyRemovesTheFirstDigest() (gas: 24167) +VerificationdeactivateConfigWhenThereAreMultipleDigestsTest:test_correctlyUnsetsDigestsInSequence() (gas: 44109) +VerificationdeactivateConfigWhenThereAreMultipleDigestsTest:test_revertsIfCalledByNonOwner() (gas: 15016) +VerificationdeactivateConfigWhenThereAreMultipleDigestsTest:test_revertsIfRemovingAnEmptyDigest() (gas: 10907) +VerificationdeactivateConfigWhenThereAreMultipleDigestsTest:test_revertsIfRemovingAnNonExistentDigest() (gas: 13381) +VerificationdeactivateConfigWhenThereAreMultipleDigestsTestV051:test_revertsIfCalledByNonOwner() (gas: 14955) +VerificationdeactivateConfigWhenThereAreMultipleDigestsTestV051:test_revertsIfRemovingAnEmptyDigest() (gas: 10869) +VerificationdeactivateConfigWhenThereAreMultipleDigestsTestV051:test_revertsIfRemovingAnNonExistentDigest() (gas: 13173) +VerificationdeactivateConfigWhenThereAreMultipleDigestsTestV05:test_revertsIfCalledByNonOwner() (gas: 14977) +VerificationdeactivateConfigWhenThereAreMultipleDigestsTestV05:test_revertsIfRemovingAnEmptyDigest() (gas: 10891) +VerificationdeactivateConfigWhenThereAreMultipleDigestsTestV05:test_revertsIfRemovingAnNonExistentDigest() (gas: 13195) +VerifierActivateConfigTest:test_revertsIfDigestIsEmpty() (gas: 10962) +VerifierActivateConfigTest:test_revertsIfDigestNotSet() (gas: 13394) +VerifierActivateConfigTest:test_revertsIfNotOwner() (gas: 17182) +VerifierActivateConfigTestV051:test_revertsIfDigestIsEmpty() (gas: 10903) +VerifierActivateConfigTestV051:test_revertsIfDigestNotSet() (gas: 13154) +VerifierActivateConfigTestV051:test_revertsIfNotOwner() (gas: 17123) +VerifierActivateConfigTestV05:test_revertsIfDigestIsEmpty() (gas: 10903) +VerifierActivateConfigTestV05:test_revertsIfDigestNotSet() (gas: 13154) +VerifierActivateConfigTestV05:test_revertsIfNotOwner() (gas: 17123) +VerifierActivateConfigWithDeactivatedConfigTest:test_allowsVerification() (gas: 97157) +VerifierActivateConfigWithDeactivatedConfigTestV051:test_allowsVerification() (gas: 94328) +VerifierActivateConfigWithDeactivatedConfigTestV05:test_allowsVerification() (gas: 94182) +VerifierActivateFeedTest:test_revertsIfNoFeedExistsActivate() (gas: 13179) +VerifierActivateFeedTest:test_revertsIfNoFeedExistsDeactivate() (gas: 13202) +VerifierActivateFeedTest:test_revertsIfNotOwnerActivateFeed() (gas: 17109) +VerifierActivateFeedTest:test_revertsIfNotOwnerDeactivateFeed() (gas: 17164) +VerifierBillingTests:test_rewardsAreDistributedAccordingToWeights() (gas: 1733961) +VerifierBillingTests:test_rewardsAreDistributedAccordingToWeightsMultipleWeigths() (gas: 4466027) +VerifierBillingTests:test_rewardsAreDistributedAccordingToWeightsUsingHistoricalConfigs() (gas: 2102489) +VerifierBillingTests:test_verifyWithLinkV3Report() (gas: 1592103) +VerifierBillingTests:test_verifyWithNativeERC20() (gas: 1466756) +VerifierBillingTests:test_verifyWithNativeUnwrapped() (gas: 1377955) +VerifierBillingTests:test_verifyWithNativeUnwrappedReturnsChange() (gas: 1384979) +VerifierBulkVerifyBillingReport:test_verifyMultiVersions() (gas: 475414) +VerifierBulkVerifyBillingReport:test_verifyMultiVersionsReturnsVerifiedReports() (gas: 474712) +VerifierBulkVerifyBillingReport:test_verifyWithBulkLink() (gas: 556758) +VerifierBulkVerifyBillingReport:test_verifyWithBulkNative() (gas: 560386) +VerifierBulkVerifyBillingReport:test_verifyWithBulkNativeUnwrapped() (gas: 567877) +VerifierBulkVerifyBillingReport:test_verifyWithBulkNativeUnwrappedReturnsChange() (gas: 574883) +VerifierBulkVerifyBillingReportV051:test_verifyMultiVersions() (gas: 473046) +VerifierBulkVerifyBillingReportV051:test_verifyMultiVersionsReturnsVerifiedReports() (gas: 472344) +VerifierBulkVerifyBillingReportV051:test_verifyWithBulkLink() (gas: 556562) +VerifierBulkVerifyBillingReportV051:test_verifyWithBulkNative() (gas: 560190) +VerifierBulkVerifyBillingReportV051:test_verifyWithBulkNativeUnwrapped() (gas: 567681) +VerifierBulkVerifyBillingReportV051:test_verifyWithBulkNativeUnwrappedReturnsChange() (gas: 574783) +VerifierBulkVerifyBillingReportV05:test_verifyMultiVersions() (gas: 472558) +VerifierBulkVerifyBillingReportV05:test_verifyMultiVersionsReturnsVerifiedReports() (gas: 471856) +VerifierBulkVerifyBillingReportV05:test_verifyWithBulkLink() (gas: 555782) +VerifierBulkVerifyBillingReportV05:test_verifyWithBulkNative() (gas: 559410) +VerifierBulkVerifyBillingReportV05:test_verifyWithBulkNativeUnwrapped() (gas: 566901) +VerifierBulkVerifyBillingReportV05:test_verifyWithBulkNativeUnwrappedReturnsChange() (gas: 574003) +VerifierConstructorTest:test_revertsIfInitializedWithEmptyVerifierProxy() (gas: 59960) +VerifierConstructorTest:test_setsTheCorrectProperties() (gas: 1810891) +VerifierConstructorTestV051:test_revertsIfInitializedWithEmptyVerifierProxy() (gas: 59692) +VerifierConstructorTestV051:test_setsTheCorrectProperties() (gas: 1561223) +VerifierConstructorTestV05:test_revertsIfInitializedWithEmptyVerifierProxy() (gas: 59657) +VerifierConstructorTestV05:test_setsTheCorrectProperties() (gas: 1530171) +VerifierDeactivateFeedWithVerifyTest:test_currentReportAllowsVerification() (gas: 192007) +VerifierDeactivateFeedWithVerifyTest:test_currentReportFailsVerification() (gas: 113322) +VerifierDeactivateFeedWithVerifyTest:test_previousReportAllowsVerification() (gas: 99651) +VerifierDeactivateFeedWithVerifyTest:test_previousReportFailsVerification() (gas: 69925) +VerifierInterfacesTest:test_DestinationContractInterfaces() (gas: 627433) +VerifierProxyAccessControlledVerificationTest:test_proxiesToTheVerifierIfHasAccess() (gas: 205719) +VerifierProxyAccessControlledVerificationTest:test_revertsIfNoAccess() (gas: 112257) +VerifierProxyAccessControlledVerificationTestV051:test_proxiesToTheVerifierIfHasAccess() (gas: 203385) +VerifierProxyAccessControlledVerificationTestV051:test_revertsIfNoAccess() (gas: 112257) +VerifierProxyAccessControlledVerificationTestV05:test_proxiesToTheVerifierIfHasAccess() (gas: 203239) +VerifierProxyAccessControlledVerificationTestV05:test_revertsIfNoAccess() (gas: 112257) +VerifierProxyConstructorTest:test_correctlySetsTheCorrectAccessControllerInterface() (gas: 1482500) +VerifierProxyConstructorTest:test_correctlySetsTheCorrectAccessControllerInterface() (gas: 1482500) +VerifierProxyConstructorTest:test_correctlySetsTheOwner() (gas: 1462646) +VerifierProxyConstructorTest:test_correctlySetsTheOwner() (gas: 1462646) VerifierProxyConstructorTest:test_correctlySetsVersion() (gas: 9767) VerifierProxyConstructorTest:test_correctlySetsVersion() (gas: 9767) -VerifierProxyConstructorTestV051:test_correctlySetsTheCorrectAccessControllerInterface() (gas: 1889453) -VerifierProxyConstructorTestV051:test_correctlySetsTheOwner() (gas: 1869487) +VerifierProxyConstructorTestV051:test_correctlySetsTheCorrectAccessControllerInterface() (gas: 1712817) +VerifierProxyConstructorTestV051:test_correctlySetsTheOwner() (gas: 1692875) VerifierProxyConstructorTestV051:test_correctlySetsVersion() (gas: 9767) -VerifierProxyInitializeVerifierTest:test_revertsIfDigestAlreadySet() (gas: 108985) -VerifierProxyInitializeVerifierTest:test_revertsIfNotCorrectVerifier() (gas: 35453) -VerifierProxyInitializeVerifierTest:test_revertsIfNotOwner() (gas: 38600) -VerifierProxyInitializeVerifierTest:test_revertsIfVerifierAlreadyInitialized() (gas: 91417) -VerifierProxyInitializeVerifierTest:test_revertsIfZeroAddress() (gas: 32148) -VerifierProxyInitializeVerifierTest:test_setFeeManagerWhichDoesntHonourIERC165Interface() (gas: 35088) -VerifierProxyInitializeVerifierTest:test_setFeeManagerWhichDoesntHonourInterface() (gas: 37722) -VerifierProxyInitializeVerifierTest:test_setFeeManagerZeroAddress() (gas: 32103) -VerifierProxyInitializeVerifierTest:test_updatesVerifierIfVerifier() (gas: 88016) -VerifierProxyInitializeVerifierTestV051:test_revertsIfDigestAlreadySet() (gas: 101296) -VerifierProxyInitializeVerifierTestV051:test_revertsIfNotCorrectVerifier() (gas: 35475) -VerifierProxyInitializeVerifierTestV051:test_revertsIfNotOwner() (gas: 38622) -VerifierProxyInitializeVerifierTestV051:test_revertsIfVerifierAlreadyInitialized() (gas: 91461) -VerifierProxyInitializeVerifierTestV051:test_revertsIfZeroAddress() (gas: 32170) -VerifierProxyInitializeVerifierTestV051:test_setFeeManagerWhichDoesntHonourIERC165Interface() (gas: 35088) -VerifierProxyInitializeVerifierTestV051:test_setFeeManagerWhichDoesntHonourInterface() (gas: 37722) -VerifierProxyInitializeVerifierTestV051:test_setFeeManagerZeroAddress() (gas: 32103) -VerifierProxyInitializeVerifierTestV051:test_updatesVerifierIfVerifier() (gas: 80352) -VerifierProxyInitializeVerifierTestV05:test_revertsIfDigestAlreadySet() (gas: 101252) -VerifierProxyInitializeVerifierTestV05:test_revertsIfNotCorrectVerifier() (gas: 35453) -VerifierProxyInitializeVerifierTestV05:test_revertsIfNotOwner() (gas: 38600) -VerifierProxyInitializeVerifierTestV05:test_revertsIfVerifierAlreadyInitialized() (gas: 91417) -VerifierProxyInitializeVerifierTestV05:test_revertsIfZeroAddress() (gas: 32148) -VerifierProxyInitializeVerifierTestV05:test_setFeeManagerWhichDoesntHonourIERC165Interface() (gas: 35088) -VerifierProxyInitializeVerifierTestV05:test_setFeeManagerWhichDoesntHonourInterface() (gas: 37722) -VerifierProxyInitializeVerifierTestV05:test_setFeeManagerZeroAddress() (gas: 32103) -VerifierProxyInitializeVerifierTestV05:test_updatesVerifierIfVerifier() (gas: 80286) -VerifierProxySetAccessControllerTest:test_emitsTheCorrectEvent() (gas: 56564) -VerifierProxySetAccessControllerTest:test_emitsTheCorrectEvent() (gas: 56564) -VerifierProxySetAccessControllerTest:test_revertsIfCalledByNonOwner() (gas: 38741) -VerifierProxySetAccessControllerTest:test_revertsIfCalledByNonOwner() (gas: 38741) -VerifierProxySetAccessControllerTest:test_successfullySetsNewAccessController() (gas: 55306) -VerifierProxySetAccessControllerTest:test_successfullySetsNewAccessController() (gas: 55306) -VerifierProxySetAccessControllerTest:test_successfullySetsNewAccessControllerIsEmpty() (gas: 35426) -VerifierProxySetAccessControllerTest:test_successfullySetsNewAccessControllerIsEmpty() (gas: 35426) -VerifierProxySetAccessControllerTestV051:test_emitsTheCorrectEvent() (gas: 56564) -VerifierProxySetAccessControllerTestV051:test_revertsIfCalledByNonOwner() (gas: 38741) -VerifierProxySetAccessControllerTestV051:test_successfullySetsNewAccessController() (gas: 55328) -VerifierProxySetAccessControllerTestV051:test_successfullySetsNewAccessControllerIsEmpty() (gas: 35448) -VerifierProxyUnsetVerifierTest:test_revertsIfDigestDoesNotExist() (gas: 34341) -VerifierProxyUnsetVerifierTest:test_revertsIfDigestDoesNotExist() (gas: 34341) -VerifierProxyUnsetVerifierTest:test_revertsIfNotAdmin() (gas: 38665) -VerifierProxyUnsetVerifierTest:test_revertsIfNotAdmin() (gas: 38665) -VerifierProxyUnsetVerifierTestV051:test_revertsIfDigestDoesNotExist() (gas: 34363) -VerifierProxyUnsetVerifierTestV051:test_revertsIfNotAdmin() (gas: 38687) -VerifierProxyUnsetVerifierWithPreviouslySetVerifierTest:test_correctlyUnsetsVerifier() (gas: 31488) -VerifierProxyUnsetVerifierWithPreviouslySetVerifierTest:test_correctlyUnsetsVerifier() (gas: 31488) -VerifierProxyUnsetVerifierWithPreviouslySetVerifierTest:test_emitsAnEventAfterUnsettingVerifier() (gas: 34749) -VerifierProxyUnsetVerifierWithPreviouslySetVerifierTest:test_emitsAnEventAfterUnsettingVerifier() (gas: 34749) -VerifierProxyUnsetVerifierWithPreviouslySetVerifierTestV051:test_correctlyUnsetsVerifier() (gas: 31532) -VerifierProxyUnsetVerifierWithPreviouslySetVerifierTestV051:test_emitsAnEventAfterUnsettingVerifier() (gas: 34771) -VerifierProxyVerifyTest:test_proxiesToTheCorrectVerifier() (gas: 238442) -VerifierProxyVerifyTest:test_revertsIfNoVerifierConfigured() (gas: 153665) -VerifierProxyVerifyTestV051:test_proxiesToTheCorrectVerifier() (gas: 236144) -VerifierProxyVerifyTestV051:test_revertsIfNoVerifierConfigured() (gas: 153665) -VerifierProxyVerifyTestV05:test_proxiesToTheCorrectVerifier() (gas: 235998) -VerifierProxyVerifyTestV05:test_revertsIfNoVerifierConfigured() (gas: 153665) -VerifierSetAccessControllerTest:test_revertsIfCalledByNonOwner() (gas: 41084) -VerifierSetAccessControllerTest:test_setFeeManagerWhichDoesntHonourInterface() (gas: 37692) -VerifierSetAccessControllerTest:test_successfullySetsNewFeeManager() (gas: 67320) -VerifierSetConfigFromSourceMultipleDigestsTest:test_correctlySetsConfigWhenDigestsAreRemoved() (gas: 600192) -VerifierSetConfigFromSourceMultipleDigestsTest:test_correctlyUpdatesDigestsOnMultipleVerifiersInTheProxy() (gas: 1080551) -VerifierSetConfigFromSourceMultipleDigestsTest:test_correctlyUpdatesTheDigestInTheProxy() (gas: 560087) -VerifierSetConfigFromSourceTest:test_revertsIfCalledByNonOwner() (gas: 282777) -VerifierSetConfigTest:test_correctlyUpdatesTheConfig() (gas: 1130921) -VerifierSetConfigTest:test_revertsIfCalledByNonOwner() (gas: 282090) -VerifierSetConfigTest:test_revertsIfDuplicateSigners() (gas: 286199) -VerifierSetConfigTest:test_revertsIfFaultToleranceIsZero() (gas: 211135) -VerifierSetConfigTest:test_revertsIfNotEnoughSigners() (gas: 39390) -VerifierSetConfigTest:test_revertsIfSetWithTooManySigners() (gas: 49522) -VerifierSetConfigTest:test_revertsIfSignerContainsZeroAddress() (gas: 262389) -VerifierSetConfigTestV051:test_correctlyUpdatesTheConfig() (gas: 1081054) -VerifierSetConfigTestV051:test_revertsIfCalledByNonOwner() (gas: 312012) -VerifierSetConfigTestV051:test_revertsIfDuplicateSigners() (gas: 277411) -VerifierSetConfigTestV051:test_revertsIfFaultToleranceIsZero() (gas: 241045) -VerifierSetConfigTestV051:test_revertsIfNotEnoughSigners() (gas: 38941) -VerifierSetConfigTestV051:test_revertsIfSetWithTooManySigners() (gas: 67799) -VerifierSetConfigTestV051:test_revertsIfSignerContainsZeroAddress() (gas: 253686) -VerifierSetConfigTestV05:test_correctlyUpdatesTheConfig() (gas: 1080908) -VerifierSetConfigTestV05:test_revertsIfCalledByNonOwner() (gas: 312034) -VerifierSetConfigTestV05:test_revertsIfDuplicateSigners() (gas: 277425) -VerifierSetConfigTestV05:test_revertsIfFaultToleranceIsZero() (gas: 241067) -VerifierSetConfigTestV05:test_revertsIfNotEnoughSigners() (gas: 38963) -VerifierSetConfigTestV05:test_revertsIfSetWithTooManySigners() (gas: 67821) -VerifierSetConfigTestV05:test_revertsIfSignerContainsZeroAddress() (gas: 253704) -VerifierSetConfigWhenThereAreMultipleDigestsTest05:test_configDigestMatchesConfiguratorDigest() (gas: 700649) -VerifierSetConfigWhenThereAreMultipleDigestsTest05:test_correctlySetsConfigWhenDigestsAreRemoved() (gas: 577748) -VerifierSetConfigWhenThereAreMultipleDigestsTest05:test_correctlyUpdatesDigestsOnMultipleVerifiersInTheProxy() (gas: 1060777) -VerifierSetConfigWhenThereAreMultipleDigestsTest05:test_correctlyUpdatesTheDigestInTheProxy() (gas: 548901) -VerifierSetConfigWhenThereAreMultipleDigestsTest05:test_incrementalConfigUpdates() (gas: 1520720) -VerifierSetConfigWhenThereAreMultipleDigestsTest05:test_revertsIfDuplicateConfigIsSet() (gas: 605228) -VerifierSetConfigWhenThereAreMultipleDigestsTest:test_correctlySetsConfigWhenDigestsAreRemoved() (gas: 599269) -VerifierSetConfigWhenThereAreMultipleDigestsTest:test_correctlyUpdatesDigestsOnMultipleVerifiersInTheProxy() (gas: 1079128) -VerifierSetConfigWhenThereAreMultipleDigestsTest:test_correctlyUpdatesTheDigestInTheProxy() (gas: 559371) -VerifierSetConfigWhenThereAreMultipleDigestsTestV051:test_configDigestMatchesConfiguratorDigest() (gas: 700649) -VerifierSetConfigWhenThereAreMultipleDigestsTestV051:test_correctlySetsConfigWhenDigestsAreRemoved() (gas: 577786) -VerifierSetConfigWhenThereAreMultipleDigestsTestV051:test_correctlyUpdatesDigestsOnMultipleVerifiersInTheProxy() (gas: 1060941) -VerifierSetConfigWhenThereAreMultipleDigestsTestV051:test_correctlyUpdatesTheDigestInTheProxy() (gas: 548983) -VerifierSetConfigWhenThereAreMultipleDigestsTestV051:test_incrementalConfigUpdates() (gas: 1520900) -VerifierSetConfigWhenThereAreMultipleDigestsTestV051:test_revertsIfDuplicateConfigIsSet() (gas: 605266) +VerifierProxyInitializeVerifierTest:test_revertsIfDigestAlreadySet() (gas: 54117) +VerifierProxyInitializeVerifierTest:test_revertsIfNotCorrectVerifier() (gas: 13613) +VerifierProxyInitializeVerifierTest:test_revertsIfNotOwner() (gas: 17168) +VerifierProxyInitializeVerifierTest:test_revertsIfVerifierAlreadyInitialized() (gas: 42053) +VerifierProxyInitializeVerifierTest:test_revertsIfZeroAddress() (gas: 10956) +VerifierProxyInitializeVerifierTest:test_setFeeManagerWhichDoesntHonourIERC165Interface() (gas: 13884) +VerifierProxyInitializeVerifierTest:test_setFeeManagerWhichDoesntHonourInterface() (gas: 16290) +VerifierProxyInitializeVerifierTest:test_setFeeManagerZeroAddress() (gas: 10911) +VerifierProxyInitializeVerifierTest:test_updatesVerifierIfVerifier() (gas: 53436) +VerifierProxyInitializeVerifierTestV051:test_revertsIfDigestAlreadySet() (gas: 48428) +VerifierProxyInitializeVerifierTestV051:test_revertsIfNotCorrectVerifier() (gas: 13635) +VerifierProxyInitializeVerifierTestV051:test_revertsIfNotOwner() (gas: 17190) +VerifierProxyInitializeVerifierTestV051:test_revertsIfVerifierAlreadyInitialized() (gas: 42097) +VerifierProxyInitializeVerifierTestV051:test_revertsIfZeroAddress() (gas: 10978) +VerifierProxyInitializeVerifierTestV051:test_setFeeManagerWhichDoesntHonourIERC165Interface() (gas: 13884) +VerifierProxyInitializeVerifierTestV051:test_setFeeManagerWhichDoesntHonourInterface() (gas: 16290) +VerifierProxyInitializeVerifierTestV051:test_setFeeManagerZeroAddress() (gas: 10911) +VerifierProxyInitializeVerifierTestV051:test_updatesVerifierIfVerifier() (gas: 47772) +VerifierProxyInitializeVerifierTestV05:test_revertsIfDigestAlreadySet() (gas: 48384) +VerifierProxyInitializeVerifierTestV05:test_revertsIfNotCorrectVerifier() (gas: 13613) +VerifierProxyInitializeVerifierTestV05:test_revertsIfNotOwner() (gas: 17168) +VerifierProxyInitializeVerifierTestV05:test_revertsIfVerifierAlreadyInitialized() (gas: 42053) +VerifierProxyInitializeVerifierTestV05:test_revertsIfZeroAddress() (gas: 10956) +VerifierProxyInitializeVerifierTestV05:test_setFeeManagerWhichDoesntHonourIERC165Interface() (gas: 13884) +VerifierProxyInitializeVerifierTestV05:test_setFeeManagerWhichDoesntHonourInterface() (gas: 16290) +VerifierProxyInitializeVerifierTestV05:test_setFeeManagerZeroAddress() (gas: 10911) +VerifierProxyInitializeVerifierTestV05:test_updatesVerifierIfVerifier() (gas: 47706) +VerifierProxySetAccessControllerTest:test_emitsTheCorrectEvent() (gas: 35348) +VerifierProxySetAccessControllerTest:test_emitsTheCorrectEvent() (gas: 35348) +VerifierProxySetAccessControllerTest:test_revertsIfCalledByNonOwner() (gas: 15025) +VerifierProxySetAccessControllerTest:test_revertsIfCalledByNonOwner() (gas: 15025) +VerifierProxySetAccessControllerTest:test_successfullySetsNewAccessController() (gas: 32090) +VerifierProxySetAccessControllerTest:test_successfullySetsNewAccessController() (gas: 32090) +VerifierProxySetAccessControllerTest:test_successfullySetsNewAccessControllerIsEmpty() (gas: 12234) +VerifierProxySetAccessControllerTest:test_successfullySetsNewAccessControllerIsEmpty() (gas: 12234) +VerifierProxySetAccessControllerTestV051:test_emitsTheCorrectEvent() (gas: 35348) +VerifierProxySetAccessControllerTestV051:test_revertsIfCalledByNonOwner() (gas: 15025) +VerifierProxySetAccessControllerTestV051:test_successfullySetsNewAccessController() (gas: 32112) +VerifierProxySetAccessControllerTestV051:test_successfullySetsNewAccessControllerIsEmpty() (gas: 12256) +VerifierProxyUnsetVerifierTest:test_revertsIfDigestDoesNotExist() (gas: 13149) +VerifierProxyUnsetVerifierTest:test_revertsIfDigestDoesNotExist() (gas: 13149) +VerifierProxyUnsetVerifierTest:test_revertsIfNotAdmin() (gas: 14973) +VerifierProxyUnsetVerifierTest:test_revertsIfNotAdmin() (gas: 14973) +VerifierProxyUnsetVerifierTestV051:test_revertsIfDigestDoesNotExist() (gas: 13171) +VerifierProxyUnsetVerifierTestV051:test_revertsIfNotAdmin() (gas: 14995) +VerifierProxyUnsetVerifierWithPreviouslySetVerifierTest:test_correctlyUnsetsVerifier() (gas: 12724) +VerifierProxyUnsetVerifierWithPreviouslySetVerifierTest:test_correctlyUnsetsVerifier() (gas: 12724) +VerifierProxyUnsetVerifierWithPreviouslySetVerifierTest:test_emitsAnEventAfterUnsettingVerifier() (gas: 17985) +VerifierProxyUnsetVerifierWithPreviouslySetVerifierTest:test_emitsAnEventAfterUnsettingVerifier() (gas: 17985) +VerifierProxyUnsetVerifierWithPreviouslySetVerifierTestV051:test_correctlyUnsetsVerifier() (gas: 12768) +VerifierProxyUnsetVerifierWithPreviouslySetVerifierTestV051:test_emitsAnEventAfterUnsettingVerifier() (gas: 18007) +VerifierProxyVerifyTest:test_proxiesToTheCorrectVerifier() (gas: 201554) +VerifierProxyVerifyTest:test_revertsIfNoVerifierConfigured() (gas: 117265) +VerifierProxyVerifyTestV051:test_proxiesToTheCorrectVerifier() (gas: 199220) +VerifierProxyVerifyTestV051:test_revertsIfNoVerifierConfigured() (gas: 117265) +VerifierProxyVerifyTestV05:test_proxiesToTheCorrectVerifier() (gas: 199074) +VerifierProxyVerifyTestV05:test_revertsIfNoVerifierConfigured() (gas: 117265) +VerifierSetAccessControllerTest:test_revertsIfCalledByNonOwner() (gas: 17152) +VerifierSetAccessControllerTest:test_setFeeManagerWhichDoesntHonourInterface() (gas: 16272) +VerifierSetAccessControllerTest:test_successfullySetsNewFeeManager() (gas: 41888) +VerifierSetConfigFromSourceMultipleDigestsTest:test_correctlySetsConfigWhenDigestsAreRemoved() (gas: 538740) +VerifierSetConfigFromSourceMultipleDigestsTest:test_correctlyUpdatesDigestsOnMultipleVerifiersInTheProxy() (gas: 964683) +VerifierSetConfigFromSourceMultipleDigestsTest:test_correctlyUpdatesTheDigestInTheProxy() (gas: 520403) +VerifierSetConfigFromSourceTest:test_revertsIfCalledByNonOwner() (gas: 183217) +VerifierSetConfigTest:test_correctlyUpdatesTheConfig() (gas: 1057885) +VerifierSetConfigTest:test_revertsIfCalledByNonOwner() (gas: 182986) +VerifierSetConfigTest:test_revertsIfDuplicateSigners() (gas: 251595) +VerifierSetConfigTest:test_revertsIfFaultToleranceIsZero() (gas: 176543) +VerifierSetConfigTest:test_revertsIfNotEnoughSigners() (gas: 15842) +VerifierSetConfigTest:test_revertsIfSetWithTooManySigners() (gas: 22182) +VerifierSetConfigTest:test_revertsIfSignerContainsZeroAddress() (gas: 228025) +VerifierSetConfigTestV051:test_correctlyUpdatesTheConfig() (gas: 1019486) +VerifierSetConfigTestV051:test_revertsIfCalledByNonOwner() (gas: 213876) +VerifierSetConfigTestV051:test_revertsIfDuplicateSigners() (gas: 243775) +VerifierSetConfigTestV051:test_revertsIfFaultToleranceIsZero() (gas: 207433) +VerifierSetConfigTestV051:test_revertsIfNotEnoughSigners() (gas: 16385) +VerifierSetConfigTestV051:test_revertsIfSetWithTooManySigners() (gas: 41439) +VerifierSetConfigTestV051:test_revertsIfSignerContainsZeroAddress() (gas: 220290) +VerifierSetConfigTestV05:test_correctlyUpdatesTheConfig() (gas: 1019340) +VerifierSetConfigTestV05:test_revertsIfCalledByNonOwner() (gas: 213898) +VerifierSetConfigTestV05:test_revertsIfDuplicateSigners() (gas: 243789) +VerifierSetConfigTestV05:test_revertsIfFaultToleranceIsZero() (gas: 207455) +VerifierSetConfigTestV05:test_revertsIfNotEnoughSigners() (gas: 16407) +VerifierSetConfigTestV05:test_revertsIfSetWithTooManySigners() (gas: 41461) +VerifierSetConfigTestV05:test_revertsIfSignerContainsZeroAddress() (gas: 220308) +VerifierSetConfigWhenThereAreMultipleDigestsTest05:test_configDigestMatchesConfiguratorDigest() (gas: 581521) +VerifierSetConfigWhenThereAreMultipleDigestsTest05:test_correctlySetsConfigWhenDigestsAreRemoved() (gas: 524424) +VerifierSetConfigWhenThereAreMultipleDigestsTest05:test_correctlyUpdatesDigestsOnMultipleVerifiersInTheProxy() (gas: 958257) +VerifierSetConfigWhenThereAreMultipleDigestsTest05:test_correctlyUpdatesTheDigestInTheProxy() (gas: 517141) +VerifierSetConfigWhenThereAreMultipleDigestsTest05:test_incrementalConfigUpdates() (gas: 1424440) +VerifierSetConfigWhenThereAreMultipleDigestsTest05:test_revertsIfDuplicateConfigIsSet() (gas: 545708) +VerifierSetConfigWhenThereAreMultipleDigestsTest:test_correctlySetsConfigWhenDigestsAreRemoved() (gas: 538489) +VerifierSetConfigWhenThereAreMultipleDigestsTest:test_correctlyUpdatesDigestsOnMultipleVerifiersInTheProxy() (gas: 964172) +VerifierSetConfigWhenThereAreMultipleDigestsTest:test_correctlyUpdatesTheDigestInTheProxy() (gas: 520143) +VerifierSetConfigWhenThereAreMultipleDigestsTestV051:test_configDigestMatchesConfiguratorDigest() (gas: 581521) +VerifierSetConfigWhenThereAreMultipleDigestsTestV051:test_correctlySetsConfigWhenDigestsAreRemoved() (gas: 524462) +VerifierSetConfigWhenThereAreMultipleDigestsTestV051:test_correctlyUpdatesDigestsOnMultipleVerifiersInTheProxy() (gas: 958421) +VerifierSetConfigWhenThereAreMultipleDigestsTestV051:test_correctlyUpdatesTheDigestInTheProxy() (gas: 517223) +VerifierSetConfigWhenThereAreMultipleDigestsTestV051:test_incrementalConfigUpdates() (gas: 1424620) +VerifierSetConfigWhenThereAreMultipleDigestsTestV051:test_revertsIfDuplicateConfigIsSet() (gas: 545746) VerifierSupportsInterfaceTest:test_falseIfIsNotCorrectInterface() (gas: 5590) VerifierSupportsInterfaceTest:test_falseIfIsNotCorrectInterface() (gas: 5590) VerifierSupportsInterfaceTest:test_trueIfIsCorrectInterface() (gas: 5633) VerifierSupportsInterfaceTest:test_trueIfIsCorrectInterface() (gas: 5633) VerifierSupportsInterfaceTestV051:test_falseIfIsNotCorrectInterface() (gas: 5590) VerifierSupportsInterfaceTestV051:test_trueIfIsCorrectInterface() (gas: 5633) -VerifierTestBillingReport:test_verifyWithLink() (gas: 377129) -VerifierTestBillingReport:test_verifyWithNative() (gas: 417507) -VerifierTestBillingReport:test_verifyWithNativeUnwrapped() (gas: 360114) -VerifierTestBillingReport:test_verifyWithNativeUnwrappedReturnsChange() (gas: 367137) -VerifierTestBillingReportV051:test_verifyWithLink() (gas: 377055) -VerifierTestBillingReportV051:test_verifyWithNative() (gas: 417433) -VerifierTestBillingReportV051:test_verifyWithNativeUnwrapped() (gas: 360040) -VerifierTestBillingReportV051:test_verifyWithNativeUnwrappedReturnsChange() (gas: 367159) -VerifierTestBillingReportV05:test_verifyWithLink() (gas: 376909) -VerifierTestBillingReportV05:test_verifyWithNative() (gas: 417287) -VerifierTestBillingReportV05:test_verifyWithNativeUnwrapped() (gas: 359894) -VerifierTestBillingReportV05:test_verifyWithNativeUnwrappedReturnsChange() (gas: 367013) -VerifierUpdateConfigTest:test_updateConfig() (gas: 621280) -VerifierUpdateConfigTest:test_updateConfigRevertsIfCalledByNonOwner() (gas: 572864) -VerifierUpdateConfigTest:test_updateConfigRevertsIfDigestNotSet() (gas: 125620) -VerifierUpdateConfigTest:test_updateConfigRevertsIfFIsZero() (gas: 561540) -VerifierUpdateConfigTest:test_updateConfigRevertsIfFTooHigh() (gas: 562485) -VerifierUpdateConfigTest:test_updateConfigRevertsIfPrevSignersLengthMismatch() (gas: 589690) -VerifierUpdateConfigTest:test_updateConfigWithDifferentSigners() (gas: 768013) -VerifierUpdateConfigTestV051:test_updateConfig() (gas: 621475) -VerifierUpdateConfigTestV051:test_updateConfigRevertsIfCalledByNonOwner() (gas: 572969) -VerifierUpdateConfigTestV051:test_updateConfigRevertsIfDigestNotSet() (gas: 125665) -VerifierUpdateConfigTestV051:test_updateConfigRevertsIfFIsZero() (gas: 561645) -VerifierUpdateConfigTestV051:test_updateConfigRevertsIfFTooHigh() (gas: 562590) -VerifierUpdateConfigTestV051:test_updateConfigRevertsIfPrevSignersLengthMismatch() (gas: 589795) -VerifierUpdateConfigTestV051:test_updateConfigWithDifferentSigners() (gas: 768318) -VerifierVerifyBulkTest:test_revertsVerifyBulkIfNoAccess() (gas: 167555) -VerifierVerifyBulkTest:test_verifyBulkSingleCaseWithSingleConfig() (gas: 840414) -VerifierVerifyBulkTest:test_verifyBulkWithSingleConfigOneVerifyFails() (gas: 831087) -VerifierVerifyMultipleConfigDigestTest:test_canVerifyNewerReportsWithNewerConfigs() (gas: 177203) -VerifierVerifyMultipleConfigDigestTest:test_canVerifyOlderReportsWithOlderConfigs() (gas: 238151) -VerifierVerifyMultipleConfigDigestTest:test_revertsIfAReportIsVerifiedWithAnExistingButIncorrectDigest() (gas: 122132) -VerifierVerifyMultipleConfigDigestTest:test_revertsIfVerifyingWithAnUnsetDigest() (gas: 197667) -VerifierVerifyMultipleConfigDigestTestV051:test_canVerifyNewerReportsWithNewerConfigs() (gas: 174904) -VerifierVerifyMultipleConfigDigestTestV051:test_canVerifyOlderReportsWithOlderConfigs() (gas: 235853) -VerifierVerifyMultipleConfigDigestTestV051:test_revertsIfAReportIsVerifiedWithAnExistingButIncorrectDigest() (gas: 119954) -VerifierVerifyMultipleConfigDigestTestV051:test_revertsIfVerifyingWithAnUnsetDigest() (gas: 192300) -VerifierVerifyMultipleConfigDigestTestV051:test_verifyAfterConfigUpdate() (gas: 991256) -VerifierVerifyMultipleConfigDigestTestV051:test_verifyAfterConfigUpdateWithExistingSigners() (gas: 755827) -VerifierVerifyMultipleConfigDigestTestV05:test_canVerifyNewerReportsWithNewerConfigs() (gas: 174758) -VerifierVerifyMultipleConfigDigestTestV05:test_canVerifyOlderReportsWithOlderConfigs() (gas: 235707) -VerifierVerifyMultipleConfigDigestTestV05:test_revertsIfAReportIsVerifiedWithAnExistingButIncorrectDigest() (gas: 119838) -VerifierVerifyMultipleConfigDigestTestV05:test_revertsIfVerifyingWithAnUnsetDigest() (gas: 192206) -VerifierVerifyMultipleConfigDigestTestV05:test_verifyAfterConfigUpdate() (gas: 990689) -VerifierVerifyMultipleConfigDigestTestV05:test_verifyAfterConfigUpdateWithExistingSigners() (gas: 755486) -VerifierVerifySingleConfigDigestTest:test_emitsAnEventIfReportVerified() (gas: 227964) -VerifierVerifySingleConfigDigestTest:test_returnsThePriceAndBlockNumIfReportVerified() (gas: 238133) -VerifierVerifySingleConfigDigestTest:test_revertsIfConfigDigestNotSet() (gas: 155168) -VerifierVerifySingleConfigDigestTest:test_revertsIfDuplicateSignersHaveSigned() (gas: 221377) -VerifierVerifySingleConfigDigestTest:test_revertsIfMismatchedSignatureLengthV03() (gas: 81536) -VerifierVerifySingleConfigDigestTest:test_revertsIfReportHasUnconfiguredFeedID() (gas: 143101) -VerifierVerifySingleConfigDigestTest:test_revertsIfVerifiedByNonProxy() (gas: 137522) -VerifierVerifySingleConfigDigestTest:test_revertsIfVerifiedWithIncorrectAddresses() (gas: 223130) -VerifierVerifySingleConfigDigestTest:test_revertsIfWrongNumberOfSigners() (gas: 148054) -VerifierVerifySingleConfigDigestTest:test_setsTheCorrectEpoch() (gas: 235338) -VerifierVerifySingleConfigDigestTestV051:test_emitsAnEventIfReportVerified() (gas: 225699) -VerifierVerifySingleConfigDigestTestV051:test_returnsThePriceAndBlockNumIfReportVerified() (gas: 235868) -VerifierVerifySingleConfigDigestTestV051:test_revertsIfConfigDigestNotSet() (gas: 152822) -VerifierVerifySingleConfigDigestTestV051:test_revertsIfDuplicateSignersHaveSigned() (gas: 218962) -VerifierVerifySingleConfigDigestTestV051:test_revertsIfMismatchedSignatureLength() (gas: 79322) -VerifierVerifySingleConfigDigestTestV051:test_revertsIfReportHasUnconfiguredConfigDigest() (gas: 143801) -VerifierVerifySingleConfigDigestTestV051:test_revertsIfVerifiedByNonProxy() (gas: 137629) -VerifierVerifySingleConfigDigestTestV051:test_revertsIfVerifiedWithIncorrectAddresses() (gas: 220703) -VerifierVerifySingleConfigDigestTestV051:test_revertsIfWrongNumberOfSigners() (gas: 145876) -VerifierVerifySingleConfigDigestTestV05:test_emitsAnEventIfReportVerified() (gas: 225553) -VerifierVerifySingleConfigDigestTestV05:test_returnsThePriceAndBlockNumIfReportVerified() (gas: 235722) -VerifierVerifySingleConfigDigestTestV05:test_revertsIfConfigDigestNotSet() (gas: 152706) -VerifierVerifySingleConfigDigestTestV05:test_revertsIfDuplicateSignersHaveSigned() (gas: 218846) -VerifierVerifySingleConfigDigestTestV05:test_revertsIfMismatchedSignatureLength() (gas: 79206) -VerifierVerifySingleConfigDigestTestV05:test_revertsIfReportHasUnconfiguredConfigDigest() (gas: 143685) -VerifierVerifySingleConfigDigestTestV05:test_revertsIfVerifiedByNonProxy() (gas: 137513) -VerifierVerifySingleConfigDigestTestV05:test_revertsIfVerifiedWithIncorrectAddresses() (gas: 220587) -VerifierVerifySingleConfigDigestTestV05:test_revertsIfWrongNumberOfSigners() (gas: 145760) -VerifierVerifyTest:test_canVerifyNewerReportsWithNewerConfigs() (gas: 994469) -VerifierVerifyTest:test_canVerifyOlderV3ReportsWithOlderConfigs() (gas: 1091096) -VerifierVerifyTest:test_failToVerifyReportIfDupSigners() (gas: 507012) -VerifierVerifyTest:test_failToVerifyReportIfNoSigners() (gas: 478616) -VerifierVerifyTest:test_failToVerifyReportIfNotEnoughSigners() (gas: 491968) -VerifierVerifyTest:test_failToVerifyReportIfSignerNotInConfig() (gas: 523098) -VerifierVerifyTest:test_revertsVerifyIfNoAccess() (gas: 148903) -VerifierVerifyTest:test_rollingOutConfiguration() (gas: 2415240) -VerifierVerifyTest:test_scenarioRollingNewChainWithHistoricConfigs() (gas: 1246532) -VerifierVerifyTest:test_verifyFailsWhenReportIsOlderThanConfig() (gas: 2443931) -VerifierVerifyTest:test_verifyReport() (gas: 1590329) -VerifierVerifyTest:test_verifyTooglingActiveFlagsDonConfigs() (gas: 2330836) -Verifier_accessControlledVerifyV03:testVerifyWithAccessControl_gas() (gas: 248965) -Verifier_accessControlledVerifyV051:testVerifyWithAccessControl_gas() (gas: 246667) -Verifier_accessControlledVerifyV05:testVerifyWithAccessControl_gas() (gas: 246521) -Verifier_bulkVerifyWithFeeV03:testBulkVerifyProxyWithLinkFeeSuccess_gas() (gas: 613225) -Verifier_bulkVerifyWithFeeV03:testBulkVerifyProxyWithNativeFeeSuccess_gas() (gas: 631821) -Verifier_bulkVerifyWithFeeV051:testBulkVerifyProxyWithLinkFeeSuccess_gas() (gas: 612917) -Verifier_bulkVerifyWithFeeV051:testBulkVerifyProxyWithNativeFeeSuccess_gas() (gas: 631513) -Verifier_bulkVerifyWithFeeV05:testBulkVerifyProxyWithLinkFeeSuccess_gas() (gas: 612137) -Verifier_bulkVerifyWithFeeV05:testBulkVerifyProxyWithNativeFeeSuccess_gas() (gas: 630733) -Verifier_setConfigV03:testSetConfigSuccess_gas() (gas: 957229) -Verifier_setConfigV051:testSetConfigSuccess_gas() (gas: 928925) -Verifier_setConfigV05:testSetConfigSuccess_gas() (gas: 928801) -Verifier_verifyV03:testVerifyProxySuccess_gas() (gas: 235630) -Verifier_verifyV03:testVerifySuccess_gas() (gas: 223332) -Verifier_verifyV051:testVerifyProxySuccess_gas() (gas: 233332) -Verifier_verifyV051:testVerifySuccess_gas() (gas: 221034) -Verifier_verifyV05:testVerifyProxySuccess_gas() (gas: 233186) -Verifier_verifyV05:testVerifySuccess_gas() (gas: 220888) -Verifier_verifyWithFeeV03:testVerifyProxyWithLinkFeeSuccess_gas() (gas: 271079) -Verifier_verifyWithFeeV03:testVerifyProxyWithNativeFeeSuccess_gas() (gas: 284756) -Verifier_verifyWithFeeV051:testVerifyProxyWithLinkFeeSuccess_gas() (gas: 271005) -Verifier_verifyWithFeeV051:testVerifyProxyWithNativeFeeSuccess_gas() (gas: 284682) -Verifier_verifyWithFeeV05:testVerifyProxyWithLinkFeeSuccess_gas() (gas: 270859) -Verifier_verifyWithFeeV05:testVerifyProxyWithNativeFeeSuccess_gas() (gas: 284536) \ No newline at end of file +VerifierTestBillingReport:test_verifyWithLink() (gas: 274865) +VerifierTestBillingReport:test_verifyWithNative() (gas: 315543) +VerifierTestBillingReport:test_verifyWithNativeUnwrapped() (gas: 317858) +VerifierTestBillingReport:test_verifyWithNativeUnwrappedReturnsChange() (gas: 324881) +VerifierTestBillingReportV051:test_verifyWithLink() (gas: 274815) +VerifierTestBillingReportV051:test_verifyWithNative() (gas: 315493) +VerifierTestBillingReportV051:test_verifyWithNativeUnwrapped() (gas: 317808) +VerifierTestBillingReportV051:test_verifyWithNativeUnwrappedReturnsChange() (gas: 324927) +VerifierTestBillingReportV05:test_verifyWithLink() (gas: 274669) +VerifierTestBillingReportV05:test_verifyWithNative() (gas: 315347) +VerifierTestBillingReportV05:test_verifyWithNativeUnwrapped() (gas: 317662) +VerifierTestBillingReportV05:test_verifyWithNativeUnwrappedReturnsChange() (gas: 324781) +VerifierUpdateConfigTest:test_updateConfig() (gas: 673580) +VerifierUpdateConfigTest:test_updateConfigRevertsIfCalledByNonOwner() (gas: 505312) +VerifierUpdateConfigTest:test_updateConfigRevertsIfDigestNotSet() (gas: 92340) +VerifierUpdateConfigTest:test_updateConfigRevertsIfFIsZero() (gas: 500500) +VerifierUpdateConfigTest:test_updateConfigRevertsIfFTooHigh() (gas: 501433) +VerifierUpdateConfigTest:test_updateConfigRevertsIfPrevSignersLengthMismatch() (gas: 526466) +VerifierUpdateConfigTest:test_updateConfigWithDifferentSigners() (gas: 801254) +VerifierUpdateConfigTestV051:test_updateConfig() (gas: 673808) +VerifierUpdateConfigTestV051:test_updateConfigRevertsIfCalledByNonOwner() (gas: 505417) +VerifierUpdateConfigTestV051:test_updateConfigRevertsIfDigestNotSet() (gas: 92385) +VerifierUpdateConfigTestV051:test_updateConfigRevertsIfFIsZero() (gas: 500605) +VerifierUpdateConfigTestV051:test_updateConfigRevertsIfFTooHigh() (gas: 501538) +VerifierUpdateConfigTestV051:test_updateConfigRevertsIfPrevSignersLengthMismatch() (gas: 526571) +VerifierUpdateConfigTestV051:test_updateConfigWithDifferentSigners() (gas: 801498) +VerifierVerifyBulkTest:test_revertsVerifyBulkIfNoAccess() (gas: 112799) +VerifierVerifyBulkTest:test_verifyBulkSingleCaseWithSingleConfig() (gas: 714286) +VerifierVerifyBulkTest:test_verifyBulkWithSingleConfigOneVerifyFails() (gas: 698191) +VerifierVerifyMultipleConfigDigestTest:test_canVerifyNewerReportsWithNewerConfigs() (gas: 131203) +VerifierVerifyMultipleConfigDigestTest:test_canVerifyOlderReportsWithOlderConfigs() (gas: 187055) +VerifierVerifyMultipleConfigDigestTest:test_revertsIfAReportIsVerifiedWithAnExistingButIncorrectDigest() (gas: 88180) +VerifierVerifyMultipleConfigDigestTest:test_revertsIfVerifyingWithAnUnsetDigest() (gas: 128007) +VerifierVerifyMultipleConfigDigestTestV051:test_canVerifyNewerReportsWithNewerConfigs() (gas: 128892) +VerifierVerifyMultipleConfigDigestTestV051:test_canVerifyOlderReportsWithOlderConfigs() (gas: 184721) +VerifierVerifyMultipleConfigDigestTestV051:test_revertsIfAReportIsVerifiedWithAnExistingButIncorrectDigest() (gas: 85978) +VerifierVerifyMultipleConfigDigestTestV051:test_revertsIfVerifyingWithAnUnsetDigest() (gas: 123104) +VerifierVerifyMultipleConfigDigestTestV051:test_verifyAfterConfigUpdate() (gas: 904360) +VerifierVerifyMultipleConfigDigestTestV051:test_verifyAfterConfigUpdateWithExistingSigners() (gas: 743779) +VerifierVerifyMultipleConfigDigestTestV05:test_canVerifyNewerReportsWithNewerConfigs() (gas: 128746) +VerifierVerifyMultipleConfigDigestTestV05:test_canVerifyOlderReportsWithOlderConfigs() (gas: 184575) +VerifierVerifyMultipleConfigDigestTestV05:test_revertsIfAReportIsVerifiedWithAnExistingButIncorrectDigest() (gas: 85862) +VerifierVerifyMultipleConfigDigestTestV05:test_revertsIfVerifyingWithAnUnsetDigest() (gas: 123010) +VerifierVerifyMultipleConfigDigestTestV05:test_verifyAfterConfigUpdate() (gas: 903907) +VerifierVerifyMultipleConfigDigestTestV05:test_verifyAfterConfigUpdateWithExistingSigners() (gas: 743434) +VerifierVerifySingleConfigDigestTest:test_emitsAnEventIfReportVerified() (gas: 186868) +VerifierVerifySingleConfigDigestTest:test_returnsThePriceAndBlockNumIfReportVerified() (gas: 187037) +VerifierVerifySingleConfigDigestTest:test_revertsIfConfigDigestNotSet() (gas: 116096) +VerifierVerifySingleConfigDigestTest:test_revertsIfDuplicateSignersHaveSigned() (gas: 182305) +VerifierVerifySingleConfigDigestTest:test_revertsIfMismatchedSignatureLengthV03() (gas: 53108) +VerifierVerifySingleConfigDigestTest:test_revertsIfReportHasUnconfiguredFeedID() (gas: 103921) +VerifierVerifySingleConfigDigestTest:test_revertsIfVerifiedByNonProxy() (gas: 100926) +VerifierVerifySingleConfigDigestTest:test_revertsIfVerifiedWithIncorrectAddresses() (gas: 184034) +VerifierVerifySingleConfigDigestTest:test_revertsIfWrongNumberOfSigners() (gas: 109982) +VerifierVerifySingleConfigDigestTest:test_setsTheCorrectEpoch() (gas: 194206) +VerifierVerifySingleConfigDigestTestV051:test_emitsAnEventIfReportVerified() (gas: 184567) +VerifierVerifySingleConfigDigestTestV051:test_returnsThePriceAndBlockNumIfReportVerified() (gas: 184736) +VerifierVerifySingleConfigDigestTestV051:test_revertsIfConfigDigestNotSet() (gas: 113750) +VerifierVerifySingleConfigDigestTestV051:test_revertsIfDuplicateSignersHaveSigned() (gas: 179830) +VerifierVerifySingleConfigDigestTestV051:test_revertsIfMismatchedSignatureLength() (gas: 50894) +VerifierVerifySingleConfigDigestTestV051:test_revertsIfReportHasUnconfiguredConfigDigest() (gas: 104633) +VerifierVerifySingleConfigDigestTestV051:test_revertsIfVerifiedByNonProxy() (gas: 100997) +VerifierVerifySingleConfigDigestTestV051:test_revertsIfVerifiedWithIncorrectAddresses() (gas: 181559) +VerifierVerifySingleConfigDigestTestV051:test_revertsIfWrongNumberOfSigners() (gas: 107768) +VerifierVerifySingleConfigDigestTestV05:test_emitsAnEventIfReportVerified() (gas: 184421) +VerifierVerifySingleConfigDigestTestV05:test_returnsThePriceAndBlockNumIfReportVerified() (gas: 184590) +VerifierVerifySingleConfigDigestTestV05:test_revertsIfConfigDigestNotSet() (gas: 113634) +VerifierVerifySingleConfigDigestTestV05:test_revertsIfDuplicateSignersHaveSigned() (gas: 179714) +VerifierVerifySingleConfigDigestTestV05:test_revertsIfMismatchedSignatureLength() (gas: 50778) +VerifierVerifySingleConfigDigestTestV05:test_revertsIfReportHasUnconfiguredConfigDigest() (gas: 104517) +VerifierVerifySingleConfigDigestTestV05:test_revertsIfVerifiedByNonProxy() (gas: 100881) +VerifierVerifySingleConfigDigestTestV05:test_revertsIfVerifiedWithIncorrectAddresses() (gas: 181443) +VerifierVerifySingleConfigDigestTestV05:test_revertsIfWrongNumberOfSigners() (gas: 107652) +VerifierVerifyTest:test_canVerifyNewerReportsWithNewerConfigs() (gas: 862929) +VerifierVerifyTest:test_canVerifyOlderV3ReportsWithOlderConfigs() (gas: 809672) +VerifierVerifyTest:test_failToVerifyReportIfDupSigners() (gas: 450716) +VerifierVerifyTest:test_failToVerifyReportIfNoSigners() (gas: 426452) +VerifierVerifyTest:test_failToVerifyReportIfNotEnoughSigners() (gas: 434768) +VerifierVerifyTest:test_failToVerifyReportIfSignerNotInConfig() (gas: 456802) +VerifierVerifyTest:test_revertsVerifyIfNoAccess() (gas: 109387) +VerifierVerifyTest:test_rollingOutConfiguration() (gas: 1496956) +VerifierVerifyTest:test_scenarioRollingNewChainWithHistoricConfigs() (gas: 975976) +VerifierVerifyTest:test_verifyFailsWhenReportIsOlderThanConfig() (gas: 2303123) +VerifierVerifyTest:test_verifyReport() (gas: 1431517) +VerifierVerifyTest:test_verifyTooglingActiveFlagsDonConfigs() (gas: 1912420) +Verifier_accessControlledVerifyV03:testVerifyWithAccessControl_gas() (gas: 212077) +Verifier_accessControlledVerifyV051:testVerifyWithAccessControl_gas() (gas: 209743) +Verifier_accessControlledVerifyV05:testVerifyWithAccessControl_gas() (gas: 209597) +Verifier_bulkVerifyWithFeeV03:testBulkVerifyProxyWithLinkFeeSuccess_gas() (gas: 519313) +Verifier_bulkVerifyWithFeeV03:testBulkVerifyProxyWithNativeFeeSuccess_gas() (gas: 542709) +Verifier_bulkVerifyWithFeeV051:testBulkVerifyProxyWithLinkFeeSuccess_gas() (gas: 519125) +Verifier_bulkVerifyWithFeeV051:testBulkVerifyProxyWithNativeFeeSuccess_gas() (gas: 542521) +Verifier_bulkVerifyWithFeeV05:testBulkVerifyProxyWithLinkFeeSuccess_gas() (gas: 518345) +Verifier_bulkVerifyWithFeeV05:testBulkVerifyProxyWithNativeFeeSuccess_gas() (gas: 541741) +Verifier_setConfigV03:testSetConfigSuccess_gas() (gas: 922625) +Verifier_setConfigV051:testSetConfigSuccess_gas() (gas: 895289) +Verifier_setConfigV05:testSetConfigSuccess_gas() (gas: 895165) +Verifier_verifyV03:testVerifyProxySuccess_gas() (gas: 198742) +Verifier_verifyV03:testVerifySuccess_gas() (gas: 186736) +Verifier_verifyV051:testVerifyProxySuccess_gas() (gas: 196408) +Verifier_verifyV051:testVerifySuccess_gas() (gas: 184402) +Verifier_verifyV05:testVerifyProxySuccess_gas() (gas: 196262) +Verifier_verifyV05:testVerifySuccess_gas() (gas: 184256) +Verifier_verifyWithFeeV03:testVerifyProxyWithLinkFeeSuccess_gas() (gas: 238823) +Verifier_verifyWithFeeV03:testVerifyProxyWithNativeFeeSuccess_gas() (gas: 257300) +Verifier_verifyWithFeeV051:testVerifyProxyWithLinkFeeSuccess_gas() (gas: 238773) +Verifier_verifyWithFeeV051:testVerifyProxyWithNativeFeeSuccess_gas() (gas: 257250) +Verifier_verifyWithFeeV05:testVerifyProxyWithLinkFeeSuccess_gas() (gas: 238627) +Verifier_verifyWithFeeV05:testVerifyProxyWithNativeFeeSuccess_gas() (gas: 257104) \ No newline at end of file diff --git a/contracts/gas-snapshots/operatorforwarder.gas-snapshot b/contracts/gas-snapshots/operatorforwarder.gas-snapshot index 64734fa38c..18b9dd0e07 100644 --- a/contracts/gas-snapshots/operatorforwarder.gas-snapshot +++ b/contracts/gas-snapshots/operatorforwarder.gas-snapshot @@ -1,11 +1,11 @@ -FactoryTest:test_DeployNewForwarderAndTransferOwnership_Success() (gas: 1155912) -FactoryTest:test_DeployNewForwarder_Success() (gas: 1072948) -FactoryTest:test_DeployNewOperatorAndForwarder_Success() (gas: 4148189) -FactoryTest:test_DeployNewOperator_Success() (gas: 3045248) -ForwarderTest:test_OwnerForward_Success() (gas: 95288) -ForwarderTest:test_SetAuthorizedSenders_Success() (gas: 358445) -ForwarderTest:test_TransferOwnershipWithMessage_Success() (gas: 135510) -OperatorTest:test_CancelOracleRequest_Success() (gas: 544239) -OperatorTest:test_FulfillOracleRequest_Success() (gas: 567107) -OperatorTest:test_NotAuthorizedSender_Revert() (gas: 425413) -OperatorTest:test_OracleRequest_Success() (gas: 441898) \ No newline at end of file +FactoryTest:test_DeployNewForwarderAndTransferOwnership_Success() (gas: 1059400) +FactoryTest:test_DeployNewForwarder_Success() (gas: 1045384) +FactoryTest:test_DeployNewOperatorAndForwarder_Success() (gas: 4068661) +FactoryTest:test_DeployNewOperator_Success() (gas: 3017684) +ForwarderTest:test_OwnerForward_Success() (gas: 30112) +ForwarderTest:test_SetAuthorizedSenders_Success() (gas: 159219) +ForwarderTest:test_TransferOwnershipWithMessage_Success() (gas: 35159) +OperatorTest:test_CancelOracleRequest_Success() (gas: 273009) +OperatorTest:test_FulfillOracleRequest_Success() (gas: 329828) +OperatorTest:test_NotAuthorizedSender_Revert() (gas: 247065) +OperatorTest:test_OracleRequest_Success() (gas: 249277) \ No newline at end of file diff --git a/contracts/gas-snapshots/payments.gas-snapshot b/contracts/gas-snapshots/payments.gas-snapshot index 6a6e26a55e..7167b77bbf 100644 --- a/contracts/gas-snapshots/payments.gas-snapshot +++ b/contracts/gas-snapshots/payments.gas-snapshot @@ -1,23 +1,23 @@ BaseTest:test_baseTest() (gas: 166) EmergencyPauseUnitTest:test_baseTest() (gas: 188) EmergencyPauseUnitTest:test_baseUnitTest() (gas: 186) -EmergencyPauseUnitTest:test_emergencyPause() (gas: 69117) +EmergencyPauseUnitTest:test_emergencyPause() (gas: 44053) EmergencyUnpauseUnitTest:test_baseTest() (gas: 188) EmergencyUnpauseUnitTest:test_baseUnitTest() (gas: 164) -EmergencyUnpauseUnitTest:test_emergencyUnpause() (gas: 91456) +EmergencyUnpauseUnitTest:test_emergencyUnpause() (gas: 35890) EmergencyWithdrawer_EmergencyWithdrawIntegrationTest:test_baseTest() (gas: 166) EmergencyWithdrawer_EmergencyWithdrawIntegrationTest:test_baseUnitTest() (gas: 186) -EmergencyWithdrawer_EmergencyWithdrawIntegrationTest:test_emergencyWithdraw_MultipleAssets() (gas: 733329) -EmergencyWithdrawer_EmergencyWithdrawIntegrationTest:test_emergencyWithdraw_SingleAsset() (gas: 382714) +EmergencyWithdrawer_EmergencyWithdrawIntegrationTest:test_emergencyWithdraw_MultipleAssets() (gas: 420921) +EmergencyWithdrawer_EmergencyWithdrawIntegrationTest:test_emergencyWithdraw_SingleAsset() (gas: 222935) EmergencyWithdrawer_EmergencyWithdrawNativeIntegrationTest:test_baseTest() (gas: 164) EmergencyWithdrawer_EmergencyWithdrawNativeIntegrationTest:test_baseUnitTest() (gas: 184) -EmergencyWithdrawer_EmergencyWithdrawNativeIntegrationTest:test_emergencyWithdrawNative() (gas: 54169) +EmergencyWithdrawer_EmergencyWithdrawNativeIntegrationTest:test_emergencyWithdrawNative() (gas: 32537) GrantRoleUnitTests:test_baseTest() (gas: 188) GrantRoleUnitTests:test_baseUnitTest() (gas: 186) -GrantRoleUnitTests:test_grantRole_ShouldEnumerateRoleAfterGranting() (gas: 179944) +GrantRoleUnitTests:test_grantRole_ShouldEnumerateRoleAfterGranting() (gas: 121500) PaymentTokenOnRamp_constructor:test_baseTest() (gas: 166) PaymentTokenOnRamp_constructor:test_baseUnitTest() (gas: 186) -PaymentTokenOnRamp_constructor:test_constructor() (gas: 2983530) +PaymentTokenOnRamp_constructor:test_constructor() (gas: 2722522) PaymentTokenOnRamp_constructor:test_supportsInterface() (gas: 5663) PaymentTokenOnRamp_getSubmittedPaymentRequestsUnitTest:test_baseTest() (gas: 166) PaymentTokenOnRamp_getSubmittedPaymentRequestsUnitTest:test_baseUnitTest() (gas: 164) @@ -28,20 +28,20 @@ PaymentTokenOnRamp_getSubmittedPaymentRequestsUnitTest:test_getSubmittedPaymentR PaymentTokenOnRamp_getSubmittedPaymentRequestsUnitTest:test_getSubmittedPaymentRequests_StartPlusLimitLteTotalRequests() (gas: 26435) PaymentTokenOnRamp_setFeeAggregatorUnitTest:test_baseTest() (gas: 166) PaymentTokenOnRamp_setFeeAggregatorUnitTest:test_baseUnitTest() (gas: 186) -PaymentTokenOnRamp_setFeeAggregatorUnitTest:test_setFeeAggregator_UpdatesFeeAggregator() (gas: 42574) +PaymentTokenOnRamp_setFeeAggregatorUnitTest:test_setFeeAggregator_UpdatesFeeAggregator() (gas: 19142) PaymentTokenOnRamp_submitPaymentRequestsUnitTest:test_baseTest() (gas: 188) PaymentTokenOnRamp_submitPaymentRequestsUnitTest:test_baseUnitTest() (gas: 186) -PaymentTokenOnRamp_submitPaymentRequestsUnitTest:test_submitPaymentRequests_MultipleRequests() (gas: 262303) -PaymentTokenOnRamp_submitPaymentRequestsUnitTest:test_submitPaymentRequests_SingleRequestWithMultipleTokens() (gas: 182107) -PaymentTokenOnRamp_submitPaymentRequestsUnitTest:test_submitPaymentRequests_SingleRequestWithSingleToken() (gas: 156826) +PaymentTokenOnRamp_submitPaymentRequestsUnitTest:test_submitPaymentRequests_MultipleRequests() (gas: 228059) +PaymentTokenOnRamp_submitPaymentRequestsUnitTest:test_submitPaymentRequests_SingleRequestWithMultipleTokens() (gas: 167863) +PaymentTokenOnRamp_submitPaymentRequestsUnitTest:test_submitPaymentRequests_SingleRequestWithSingleToken() (gas: 133526) PaymentTokenOnRamp_withdrawFeeTokensTest:test_baseTest() (gas: 188) PaymentTokenOnRamp_withdrawFeeTokensTest:test_baseUnitTest() (gas: 186) -PaymentTokenOnRamp_withdrawFeeTokensTest:test_withdrawFeeTokens_MultipleTokens() (gas: 130242) -PaymentTokenOnRamp_withdrawFeeTokensTest:test_withdrawFeeTokens_SingleToken() (gas: 82303) -PaymentTokenOnRamp_withdrawFeeTokensTest:test_withdrawFeeTokens_ZeroAmount() (gas: 64845) +PaymentTokenOnRamp_withdrawFeeTokensTest:test_withdrawFeeTokens_MultipleTokens() (gas: 94262) +PaymentTokenOnRamp_withdrawFeeTokensTest:test_withdrawFeeTokens_SingleToken() (gas: 56891) +PaymentTokenOnRamp_withdrawFeeTokensTest:test_withdrawFeeTokens_ZeroAmount() (gas: 36633) RevokeRoleUnitTests:test_baseTest() (gas: 188) RevokeRoleUnitTests:test_baseUnitTest() (gas: 164) -RevokeRoleUnitTests:test_revokeRole_ShouldEnumerateRoleAfterRevoking() (gas: 201900) +RevokeRoleUnitTests:test_revokeRole_ShouldEnumerateRoleAfterRevoking() (gas: 96834) SupportsInterfaceUnitTests:test_baseTest() (gas: 166) SupportsInterfaceUnitTests:test_baseUnitTest() (gas: 186) -SupportsInterfaceUnitTests:test_supportsInterface() (gas: 32621) \ No newline at end of file +SupportsInterfaceUnitTests:test_supportsInterface() (gas: 17121) \ No newline at end of file From 0349bc35dd0090f12bcd5ca7485db6506150418b Mon Sep 17 00:00:00 2001 From: Rens Rooimans Date: Fri, 21 Aug 2026 12:05:11 +0200 Subject: [PATCH 9/9] fix vrf version --- .../v0.8.6/contracts/L2/predeploys/OVM_GasPriceOracle.sol | 2 +- contracts/src/v0.8/vrf/BatchVRFCoordinatorV2.sol | 2 +- contracts/src/v0.8/vrf/ChainSpecificUtil_v0_8_6.sol | 2 +- contracts/src/v0.8/vrf/VRFSubscriptionBalanceMonitor.sol | 2 +- contracts/src/v0.8/vrf/test/ChainSpecificUtil.t.sol | 2 +- contracts/src/v0.8/vrf/test/VRFCoordinatorV2Mock.t.sol | 6 +++--- .../testhelpers/VRFSubscriptionBalanceMonitorExposed.sol | 3 +-- contracts/src/v0.8/vrf/testhelpers/VRFv2Consumer.sol | 2 +- 8 files changed, 10 insertions(+), 11 deletions(-) diff --git a/contracts/src/v0.8/vendor/@eth-optimism/contracts/v0.8.6/contracts/L2/predeploys/OVM_GasPriceOracle.sol b/contracts/src/v0.8/vendor/@eth-optimism/contracts/v0.8.6/contracts/L2/predeploys/OVM_GasPriceOracle.sol index dc2b5f547d..cbf30d8eb8 100644 --- a/contracts/src/v0.8/vendor/@eth-optimism/contracts/v0.8.6/contracts/L2/predeploys/OVM_GasPriceOracle.sol +++ b/contracts/src/v0.8/vendor/@eth-optimism/contracts/v0.8.6/contracts/L2/predeploys/OVM_GasPriceOracle.sol @@ -1,5 +1,5 @@ // SPDX-License-Identifier: MIT -pragma solidity 0.8.6; +pragma solidity ^0.8.6; /* External Imports */ import { Ownable } from "@openzeppelin/contracts@4.9.6/access/Ownable.sol"; diff --git a/contracts/src/v0.8/vrf/BatchVRFCoordinatorV2.sol b/contracts/src/v0.8/vrf/BatchVRFCoordinatorV2.sol index 0141427654..c47fc62459 100644 --- a/contracts/src/v0.8/vrf/BatchVRFCoordinatorV2.sol +++ b/contracts/src/v0.8/vrf/BatchVRFCoordinatorV2.sol @@ -1,6 +1,6 @@ // SPDX-License-Identifier: MIT // solhint-disable-next-line one-contract-per-file -pragma solidity 0.8.6; +pragma solidity ^0.8.6; import {VRFTypes} from "./VRFTypes.sol"; diff --git a/contracts/src/v0.8/vrf/ChainSpecificUtil_v0_8_6.sol b/contracts/src/v0.8/vrf/ChainSpecificUtil_v0_8_6.sol index b89ac2ec77..a17b7d9eec 100644 --- a/contracts/src/v0.8/vrf/ChainSpecificUtil_v0_8_6.sol +++ b/contracts/src/v0.8/vrf/ChainSpecificUtil_v0_8_6.sol @@ -1,5 +1,5 @@ // SPDX-License-Identifier: MIT -pragma solidity 0.8.6; +pragma solidity ^0.8.6; import {ArbGasInfo} from "../vendor/@arbitrum/nitro-contracts/src/precompiles/ArbGasInfo.sol"; import {ArbSys} from "../vendor/@arbitrum/nitro-contracts/src/precompiles/ArbSys.sol"; diff --git a/contracts/src/v0.8/vrf/VRFSubscriptionBalanceMonitor.sol b/contracts/src/v0.8/vrf/VRFSubscriptionBalanceMonitor.sol index 4f0eca3eda..c03179a733 100644 --- a/contracts/src/v0.8/vrf/VRFSubscriptionBalanceMonitor.sol +++ b/contracts/src/v0.8/vrf/VRFSubscriptionBalanceMonitor.sol @@ -1,5 +1,5 @@ // SPDX-License-Identifier: MIT -pragma solidity 0.8.6; +pragma solidity ^0.8.6; import {IAutomationCompatible} from "../automation-cre/interfaces/IAutomationCompatible.sol"; diff --git a/contracts/src/v0.8/vrf/test/ChainSpecificUtil.t.sol b/contracts/src/v0.8/vrf/test/ChainSpecificUtil.t.sol index d1ffc980fc..870f599822 100644 --- a/contracts/src/v0.8/vrf/test/ChainSpecificUtil.t.sol +++ b/contracts/src/v0.8/vrf/test/ChainSpecificUtil.t.sol @@ -1,4 +1,4 @@ -pragma solidity 0.8.6; +pragma solidity ^0.8.6; import {ChainSpecificUtil} from "../ChainSpecificUtil_v0_8_6.sol"; import "./BaseTest.t.sol"; diff --git a/contracts/src/v0.8/vrf/test/VRFCoordinatorV2Mock.t.sol b/contracts/src/v0.8/vrf/test/VRFCoordinatorV2Mock.t.sol index 22cababc4d..2e08b3471c 100644 --- a/contracts/src/v0.8/vrf/test/VRFCoordinatorV2Mock.t.sol +++ b/contracts/src/v0.8/vrf/test/VRFCoordinatorV2Mock.t.sol @@ -1,4 +1,4 @@ -pragma solidity 0.8.6; +pragma solidity ^0.8.6; import {MockV3Aggregator} from "../../shared/mocks/MockV3Aggregator.sol"; import {VRF} from "../VRF.sol"; @@ -308,7 +308,7 @@ contract VRFCoordinatorV2MockTest is BaseTest { ); vm.expectEmit(true, false, false, true); - emit RandomWordsFulfilled(reqId, 1, 100_090_236_000_000_000, true); + emit RandomWordsFulfilled(reqId, 1, 100_090_192_000_000_000, true); s_vrfCoordinatorV2Mock.fulfillRandomWords(reqId, consumerAddr); vm.stopPrank(); @@ -345,7 +345,7 @@ contract VRFCoordinatorV2MockTest is BaseTest { uint256[] memory words2 = new uint256[](2); words1[0] = 2533; words1[1] = 1768; - emit RandomWordsFulfilled(reqId, 1, 100_072_314_000_000_000, true); + emit RandomWordsFulfilled(reqId, 1, 100_072_264_000_000_000, true); s_vrfCoordinatorV2Mock.fulfillRandomWordsWithOverride(reqId, consumerAddr, words2); vm.stopPrank(); diff --git a/contracts/src/v0.8/vrf/testhelpers/VRFSubscriptionBalanceMonitorExposed.sol b/contracts/src/v0.8/vrf/testhelpers/VRFSubscriptionBalanceMonitorExposed.sol index 3c42a16ffa..148b504f1c 100644 --- a/contracts/src/v0.8/vrf/testhelpers/VRFSubscriptionBalanceMonitorExposed.sol +++ b/contracts/src/v0.8/vrf/testhelpers/VRFSubscriptionBalanceMonitorExposed.sol @@ -1,6 +1,5 @@ // SPDX-License-Identifier: MIT - -pragma solidity 0.8.6; +pragma solidity ^0.8.6; import {VRFSubscriptionBalanceMonitor} from "../VRFSubscriptionBalanceMonitor.sol"; diff --git a/contracts/src/v0.8/vrf/testhelpers/VRFv2Consumer.sol b/contracts/src/v0.8/vrf/testhelpers/VRFv2Consumer.sol index b41b1a38ed..4be4ecb37f 100644 --- a/contracts/src/v0.8/vrf/testhelpers/VRFv2Consumer.sol +++ b/contracts/src/v0.8/vrf/testhelpers/VRFv2Consumer.sol @@ -1,6 +1,6 @@ // SPDX-License-Identifier: MIT // An example of a consumer contract that relies on a subscription for funding. -pragma solidity 0.8.6; +pragma solidity ^0.8.6; import "../../shared/access/ConfirmedOwner.sol"; import "../VRFConsumerBaseV2.sol";