Warning! Contract bytecode has been changed and doesn't match the verified one. Therefore, interaction with this smart contract may be risky.
- Contract name:
- Deployer
- Optimization enabled
- true
- Compiler version
- v0.8.28+commit.7893614a
- Optimization runs
- 50
- EVM Version
- paris
- Verified at
- 2024-11-06T18:31:45.168651Z
contracts/deployment/Deployer.sol
contract Deployer { function deployAndCall(bytes memory bytecode, bytes memory cd) external returns (address) { address deployed; bool success; assembly ("memory-safe") { deployed := create(0, add(bytecode, 32), mload(bytecode)) success := call(gas(), deployed, 0, add(cd, 32), mload(cd), 0, 0) } require(deployed != address(0) && success); return deployed; } }
Compiler Settings
{"viaIR":true,"remappings":["@prb/test/=lib/prb-math/lib/prb-test/src/","ds-test/=lib/solmate/lib/ds-test/src/","forge-std/=lib/forge-std/src/","openzeppelin/=lib/openzeppelin-contracts/contracts/","@openzeppelin/=lib/openzeppelin-contracts/","openzeppelin-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts/","@prb/math/=lib/prb-math/","prb-test/=lib/prb-math/lib/prb-test/src/","solmate/=lib/solmate/src/","lzapp/=lib/solidity-examples/contracts/","algebra-core/=lib/Algebra/src/core/contracts/","algebra-plugin/=lib/Algebra/src/plugin/contracts/","algebra-periphery/=lib/Algebra/src/periphery/contracts/","algebra-farming/=lib/Algebra/src/farming/contracts/","@cryptoalgebra/integral-base-plugin/=lib/Algebra/src/plugin/","@cryptoalgebra/integral-core/=lib/Algebra/src/core/","@cryptoalgebra/integral-periphery/=lib/Algebra/src/periphery/","Algebra/=lib/Algebra/src/","erc4626-tests/=lib/openzeppelin-contracts-upgradeable/lib/erc4626-tests/","openzeppelin-contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/","openzeppelin-contracts/=lib/openzeppelin-contracts/","prb-math/=lib/prb-math/src/"],"outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"optimizer":{"runs":50,"enabled":true},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"libraries":{},"evmVersion":"paris"}
Contract ABI
[{"type":"function","stateMutability":"nonpayable","outputs":[{"type":"address","name":"","internalType":"address"}],"name":"deployAndCall","inputs":[{"type":"bytes","name":"bytecode","internalType":"bytes"},{"type":"bytes","name":"cd","internalType":"bytes"}]}]
Contract Creation Code
0x60808060405234601557610174908161001b8239f35b600080fdfe6080604052600436101561001257600080fd5b60003560e01c630d4fc63e1461002757600080fd5b346100b45760403660031901126100b4576004356001600160401b0381116100b4576100579036906004016100c1565b6024356001600160401b0381116100b4576000610079819236906004016100c1565b9260208151910182f09260208151910182855af16001600160a01b039091169081151590816100b9575b50156100b457602090604051908152f35b600080fd5b9050386100a3565b81601f820112156100b4578035906001600160401b0382116101285760405192601f8301601f19908116603f011684016001600160401b0381118582101761012857604052828452602083830101116100b457816000926020809301838601378301015290565b634e487b7160e01b600052604160045260246000fdfea2646970667358221220681820c93aa644ae802496ce983fe1e70abfe718ae0ea3b99fa0a8c34341eb8364736f6c634300081c0033
Deployed ByteCode
0x6080604052600436101561001257600080fd5b60003560e01c630d4fc63e1461002757600080fd5b346100b45760403660031901126100b4576004356001600160401b0381116100b4576100579036906004016100c1565b6024356001600160401b0381116100b4576000610079819236906004016100c1565b9260208151910182f09260208151910182855af16001600160a01b039091169081151590816100b9575b50156100b457602090604051908152f35b600080fd5b9050386100a3565b81601f820112156100b4578035906001600160401b0382116101285760405192601f8301601f19908116603f011684016001600160401b0381118582101761012857604052828452602083830101116100b457816000926020809301838601378301015290565b634e487b7160e01b600052604160045260246000fdfea2646970667358221220681820c93aa644ae802496ce983fe1e70abfe718ae0ea3b99fa0a8c34341eb8364736f6c634300081c0033