Source Code
Overview
MON Balance
MON Value
$0.00Loading...
Loading
Contract Name:
LaunchpadGovernanceFactory
Compiler Version
v0.8.26+commit.8a97fa7a
Optimization Enabled:
Yes with 0 runs
Other Settings:
cancun EvmVersion
Contract Source Code (Solidity Standard Json-Input format)
// SPDX-License-Identifier: BUSL-1.1
pragma solidity ^0.8.24;
import { IGovernanceFactory } from "src/interfaces/IGovernanceFactory.sol";
import { DEAD_ADDRESS } from "src/types/Constants.sol";
/**
* @title LaunchpadGovernanceFactory
* @notice A governance factory that returns a multisig instead of deploying actual governance contracts
* @dev This is used for tokens that do not require on-chain governance, but want to sweep unused funds
*/
contract LaunchpadGovernanceFactory is IGovernanceFactory {
/// @inheritdoc IGovernanceFactory
function create(
address,
bytes calldata data
) external pure returns (address governance, address timelockController) {
address multisig = abi.decode(data, (address));
return (DEAD_ADDRESS, multisig);
}
}// SPDX-License-Identifier: MIT
pragma solidity ^0.8.24;
interface IGovernanceFactory {
function create(
address asset,
bytes calldata governanceData
) external returns (address governance, address timelockController);
}// SPDX-License-Identifier: MIT pragma solidity ^0.8.24; /// @dev Empty address used to indicate no pool address exists (because Uniswap V4 is a singleton) address constant EMPTY_ADDRESS = address(0); /// @dev Dead address used for NoOp governance address constant DEAD_ADDRESS = address(0xdead);
{
"remappings": [
"ds-test/=lib/v4-core/lib/forge-std/lib/ds-test/src/",
"erc4626-tests/=lib/v4-core/lib/openzeppelin-contracts/lib/erc4626-tests/",
"forge-gas-snapshot/=lib/v4-core/lib/forge-gas-snapshot/src/",
"forge-std/=lib/forge-std/src/",
"hardhat/=lib/v4-core/node_modules/hardhat/",
"permit2/=lib/v4-periphery/lib/permit2/",
"@solmate/=lib/v4-core/lib/solmate/src/",
"@solady/=lib/solady/src/",
"src:@openzeppelin/=lib/v4-core/lib/openzeppelin-contracts/contracts/",
"test:@openzeppelin/=lib/v4-core/lib/openzeppelin-contracts/contracts/",
"@v4-periphery/=lib/v4-periphery/src/",
"@v4-periphery-test/=lib/v4-periphery/test/",
"@v4-core-test/=lib/v4-periphery/lib/v4-core/test/",
"@v4-core/=lib/v4-periphery/lib/v4-core/src/",
"@v3-periphery/=lib/v3-periphery/contracts/",
"@v3-core/=lib/v3-core/contracts/",
"@uniswap/v3-core/=lib/v3-core/",
"@universal-router/=lib/universal-router/contracts/",
"@uniswap/v2-core/contracts/interfaces/=src/interfaces/",
"@ensdomains/=lib/v4-core/node_modules/@ensdomains/",
"@openzeppelin/=lib/v4-core/lib/openzeppelin-contracts/",
"@uniswap/v3-periphery/=lib/universal-router/lib/v3-periphery/",
"@uniswap/v4-core/=lib/v4-periphery/lib/v4-core/",
"@uniswap/v4-periphery/=lib/universal-router/lib/v4-periphery/",
"openzeppelin-contracts/=lib/v4-core/lib/openzeppelin-contracts/",
"solady/=lib/solady/src/",
"solmate/=lib/universal-router/lib/solmate/",
"universal-router/=lib/universal-router/",
"v3-core/=lib/v3-core/",
"v3-periphery/=lib/v3-periphery/contracts/",
"v4-core/=lib/v4-core/src/",
"v4-periphery/=lib/v4-periphery/",
"view-quoter-v4/=lib/view-quoter-v4/src/"
],
"optimizer": {
"enabled": true,
"runs": 0
},
"metadata": {
"useLiteralContent": false,
"bytecodeHash": "none",
"appendCBOR": true
},
"outputSelection": {
"*": {
"*": [
"evm.bytecode",
"evm.deployedBytecode",
"devdoc",
"userdoc",
"metadata",
"abi"
]
}
},
"evmVersion": "cancun",
"viaIR": true
}Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
Contract ABI
API[{"inputs":[{"internalType":"address","name":"","type":"address"},{"internalType":"bytes","name":"data","type":"bytes"}],"name":"create","outputs":[{"internalType":"address","name":"governance","type":"address"},{"internalType":"address","name":"timelockController","type":"address"}],"stateMutability":"pure","type":"function"}]Contract Creation Code
6080806040523460135760b8908160188239f35b5f80fdfe60808060405260043610156011575f80fd5b5f3560e01c63a3f697ba146023575f80fd5b3460a757604036600319011260a7576004356001600160a01b0381160360a7576024356001600160401b03811160a7573660238201121560a75760048101356001600160401b03811160a757810136602482011160a7576020908290031260a757602401359060018060a01b03821680920360a75760409161dead82526020820152f35b5f80fdfea164736f6c634300081a000a
Deployed Bytecode
0x60808060405260043610156011575f80fd5b5f3560e01c63a3f697ba146023575f80fd5b3460a757604036600319011260a7576004356001600160a01b0381160360a7576024356001600160401b03811160a7573660238201121560a75760048101356001600160401b03811160a757810136602482011160a7576020908290031260a757602401359060018060a01b03821680920360a75760409161dead82526020820152f35b5f80fdfea164736f6c634300081a000a
Loading...
Loading
Loading...
Loading
Loading...
Loading
Net Worth in USD
$0.00
Net Worth in MON
Multichain Portfolio | 35 Chains
| Chain | Token | Portfolio % | Price | Amount | Value |
|---|
Loading...
Loading
Loading...
Loading
A contract address hosts a smart contract, which is a set of code stored on the blockchain that runs when predetermined conditions are met. Learn more about addresses in our Knowledge Base.