|
| 1 | +// SPDX-License-Identifier: MIT |
| 2 | +pragma solidity >=0.6.2 <0.9.0; |
| 3 | + |
| 4 | +import {IMulticall3} from "./interfaces/IMulticall3.sol"; |
| 5 | +import {Vm} from "./Vm.sol"; |
| 6 | + |
| 7 | +library StdConstants { |
| 8 | + /// @dev Cheat code address. |
| 9 | + /// Calculated as `address(uint160(uint256(keccak256("hevm cheat code"))))`. |
| 10 | + Vm internal constant VM = Vm(0x7109709ECfa91a80626fF3989D68f67F5b1DD12D); |
| 11 | + /// @dev console.sol and console2.sol work by executing a staticcall to this address. |
| 12 | + /// Calculated as `address(uint160(uint88(bytes11("console.log"))))`. |
| 13 | + address internal constant CONSOLE = 0x000000000000000000636F6e736F6c652e6c6f67; |
| 14 | + /// @dev Used when deploying with create2. |
| 15 | + /// Taken from https://github.com/Arachnid/deterministic-deployment-proxy. |
| 16 | + address internal constant CREATE2_FACTORY = 0x4e59b44847b379578588920cA78FbF26c0B4956C; |
| 17 | + /// @dev The default address for tx.origin and msg.sender. |
| 18 | + /// Calculated as `address(uint160(uint256(keccak256("foundry default caller"))))`. |
| 19 | + address internal constant DEFAULT_SENDER = 0x1804c8AB1F12E6bbf3894d4083f33e07309d1f38; |
| 20 | + /// @dev The address of the first contract `CREATE`d by a running test contract. |
| 21 | + /// When running tests, each test contract is `CREATE`d by `DEFAULT_SENDER` with nonce 1. |
| 22 | + /// Calculated as `VM.computeCreateAddress(VM.computeCreateAddress(DEFAULT_SENDER, 1), 1)`. |
| 23 | + address internal constant DEFAULT_TEST_CONTRACT = 0x5615dEB798BB3E4dFa0139dFa1b3D433Cc23b72f; |
| 24 | + /// @dev Deterministic deployment address of the Multicall3 contract. |
| 25 | + /// Taken from https://www.multicall3.com. |
| 26 | + IMulticall3 internal constant MULTICALL3_ADDRESS = IMulticall3(0xcA11bde05977b3631167028862bE2a173976CA11); |
| 27 | + /// @dev The order of the secp256k1 curve. |
| 28 | + uint256 internal constant SECP256K1_ORDER = |
| 29 | + 115792089237316195423570985008687907852837564279074904382605163141518161494337; |
| 30 | +} |
0 commit comments