const hre = require("hardhat"); async function main() { const [deployer] = await hre.ethers.getSigners(); console.log("Deploying CCIPWETH9Bridge to Mainnet with account:", deployer.address); const CCIPRouter = process.env.CCIP_ETH_ROUTER || "0x80226fc0Ee2b096224EeAc085Bb9a8cba1146f7D"; const WETH9 = process.env.WETH9_ADDRESS || "0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2"; const Chain138Selector = process.env.CHAIN138_SELECTOR || "0x000000000000000000000000000000000000008A"; const CCIPWETH9Bridge = await hre.ethers.getContractFactory("CCIPWETH9Bridge"); const bridge = await CCIPWETH9Bridge.deploy(CCIPRouter, WETH9, Chain138Selector); await bridge.waitForDeployment(); const address = await bridge.getAddress(); console.log("CCIPWETH9Bridge deployed to:", address); // Verify on Etherscan if (process.env.ETHERSCAN_API_KEY) { console.log("Verifying on Etherscan..."); await hre.run("verify:verify", { address: address, constructorArguments: [CCIPRouter, WETH9, Chain138Selector], }); } } main().catch((error) => { console.error(error); process.exitCode = 1; });