瀏覽代碼

chore(eth): deploy stable contracts on testnets (#1146)

* chore(eth): deploy stable contracts on testnets

* chore(eth): address feedbacks

* Add op sepolia

---------

Co-authored-by: Amin Moghaddam <amin@pyth.network>
Ali Behjati 2 年之前
父節點
當前提交
2c93737366
共有 53 個文件被更改,包括 452 次插入424 次删除
  1. 3 2
      contract_manager/scripts/fetch_account_balance.ts
  2. 2 4
      contract_manager/src/chains.ts
  3. 9 87
      contract_manager/store/chains/EvmChains.yaml
  4. 110 113
      contract_manager/store/contracts/EvmContracts.yaml
  5. 66 15
      governance/xc_admin/packages/xc_admin_common/src/chains.ts
  6. 0 4
      target_chains/ethereum/contracts/README.md
  7. 0 2
      target_chains/ethereum/contracts/create-env.js
  8. 8 0
      target_chains/ethereum/contracts/deploy.sh
  9. 2 3
      target_chains/ethereum/contracts/deploy/zkSyncDeploy.ts
  10. 1 3
      target_chains/ethereum/contracts/deploy/zkSyncDeployNewPythImpl.ts
  11. 2 4
      target_chains/ethereum/contracts/migrations/prod-receiver/2_deploy_wormhole_receiver.js
  12. 1 3
      target_chains/ethereum/contracts/migrations/prod-receiver/3_deploy_pyth.js
  13. 5 5
      target_chains/ethereum/contracts/networks/10200.json
  14. 5 5
      target_chains/ethereum/contracts/networks/1073.json
  15. 5 5
      target_chains/ethereum/contracts/networks/1112.json
  16. 5 5
      target_chains/ethereum/contracts/networks/1115.json
  17. 5 5
      target_chains/ethereum/contracts/networks/11155111.json
  18. 5 5
      target_chains/ethereum/contracts/networks/11155420.json
  19. 5 5
      target_chains/ethereum/contracts/networks/1261120.json
  20. 8 3
      target_chains/ethereum/contracts/networks/1313161555.json
  21. 5 5
      target_chains/ethereum/contracts/networks/1442.json
  22. 5 5
      target_chains/ethereum/contracts/networks/15557.json
  23. 3 8
      target_chains/ethereum/contracts/networks/1663.json
  24. 10 0
      target_chains/ethereum/contracts/networks/200.json
  25. 16 0
      target_chains/ethereum/contracts/networks/2021.json
  26. 5 5
      target_chains/ethereum/contracts/networks/2221.json
  27. 5 5
      target_chains/ethereum/contracts/networks/245022926.json
  28. 2 2
      target_chains/ethereum/contracts/networks/280.json
  29. 5 5
      target_chains/ethereum/contracts/networks/2888.json
  30. 5 5
      target_chains/ethereum/contracts/networks/322.json
  31. 5 5
      target_chains/ethereum/contracts/networks/338.json
  32. 5 5
      target_chains/ethereum/contracts/networks/3441005.json
  33. 8 3
      target_chains/ethereum/contracts/networks/4002.json
  34. 5 5
      target_chains/ethereum/contracts/networks/412346.json
  35. 13 3
      target_chains/ethereum/contracts/networks/420.json
  36. 16 0
      target_chains/ethereum/contracts/networks/421614.json
  37. 8 3
      target_chains/ethereum/contracts/networks/43113.json
  38. 8 3
      target_chains/ethereum/contracts/networks/44787.json
  39. 5 5
      target_chains/ethereum/contracts/networks/5001.json
  40. 5 5
      target_chains/ethereum/contracts/networks/534351.json
  41. 5 5
      target_chains/ethereum/contracts/networks/59140.json
  42. 5 5
      target_chains/ethereum/contracts/networks/7001.json
  43. 5 5
      target_chains/ethereum/contracts/networks/71.json
  44. 5 5
      target_chains/ethereum/contracts/networks/7701.json
  45. 8 3
      target_chains/ethereum/contracts/networks/80001.json
  46. 5 5
      target_chains/ethereum/contracts/networks/83.json
  47. 8 3
      target_chains/ethereum/contracts/networks/84531.json
  48. 5 5
      target_chains/ethereum/contracts/networks/88882.json
  49. 5 5
      target_chains/ethereum/contracts/networks/89.json
  50. 5 5
      target_chains/ethereum/contracts/networks/9000.json
  51. 8 3
      target_chains/ethereum/contracts/networks/97.json
  52. 2 3
      target_chains/ethereum/contracts/scripts/contractManagerConfig.js
  53. 0 17
      target_chains/ethereum/contracts/scripts/loadEnv.js

+ 3 - 2
contract_manager/scripts/fetch_account_balance.ts

@@ -11,7 +11,8 @@ const parser = yargs(hideBin(process.argv))
       desc: "Private key to use to sign transaction",
     },
     chain: {
-      type: "string",
+      type: "array",
+      string: true,
       desc: "Chain to get the balance for. If not provided the balance for all chains is returned.",
     },
   });
@@ -44,7 +45,7 @@ async function getBalance(
 async function main() {
   const argv = await parser.argv;
   const chains = argv.chain
-    ? [argv.chain]
+    ? argv.chain
     : Object.keys(DefaultStore.chains).filter((chain) => chain !== "global");
 
   const privateKey = toPrivateKey(argv["private-key"]);

+ 2 - 4
contract_manager/src/chains.ts

@@ -314,11 +314,11 @@ export class EvmChain extends Chain {
   constructor(
     id: string,
     mainnet: boolean,
-    wormholeChainName: string,
     private rpcUrl: string,
     private networkId: number
   ) {
-    super(id, mainnet, wormholeChainName);
+    // On EVM networks we use the chain id as the wormhole chain name
+    super(id, mainnet, id);
   }
 
   static fromJson(parsed: ChainConfig & { networkId: number }): EvmChain {
@@ -326,7 +326,6 @@ export class EvmChain extends Chain {
     return new EvmChain(
       parsed.id,
       parsed.mainnet,
-      parsed.wormholeChainName,
       parsed.rpcUrl,
       parsed.networkId
     );
@@ -367,7 +366,6 @@ export class EvmChain extends Chain {
   toJson(): KeyValueConfig {
     return {
       id: this.id,
-      wormholeChainName: this.wormholeChainName,
       mainnet: this.mainnet,
       rpcUrl: this.rpcUrl,
       networkId: this.networkId,

+ 9 - 87
contract_manager/store/chains/EvmChains.yaml

@@ -1,437 +1,359 @@
 - id: linea_goerli
-  wormholeChainName: linea
   mainnet: false
-  rpcUrl: https://rpc.goerli.linea.build
+  rpcUrl: https://linea-goerli.blastapi.io/$ENV_BLAST_API_KEY
   networkId: 59140
   type: EvmChain
 - id: kava
-  wormholeChainName: kava
   mainnet: true
   rpcUrl: https://evm.kava.io
   networkId: 2222
   type: EvmChain
 - id: evmos
-  wormholeChainName: evmos
   mainnet: true
   rpcUrl: https://evmos-evm.publicnode.com
   networkId: 9001
   type: EvmChain
-- id: goerli
-  wormholeChainName: ethereum
-  mainnet: false
-  rpcUrl: https://rpc.goerli.eth.gateway.fm
-  networkId: 5
-  type: EvmChain
 - id: canto
-  wormholeChainName: canto
   mainnet: true
   rpcUrl: https://canto.slingshot.finance
   networkId: 7700
   type: EvmChain
 - id: fuji
-  wormholeChainName: avalanche
   mainnet: false
   rpcUrl: https://api.avax-test.network/ext/bc/C/rpc
   networkId: 43113
   type: EvmChain
 - id: base_goerli
-  wormholeChainName: base
   mainnet: false
   rpcUrl: https://goerli.base.org
   networkId: 84531
   type: EvmChain
 - id: avalanche
-  wormholeChainName: avalanche
   mainnet: true
   rpcUrl: https://api.avax.network/ext/bc/C/rpc
   networkId: 43114
   type: EvmChain
 - id: cronos_testnet
-  wormholeChainName: cronos
   mainnet: false
   rpcUrl: https://evm-t3.cronos.org
   networkId: 338
   type: EvmChain
 - id: zksync_goerli
-  wormholeChainName: zksync
   mainnet: false
   rpcUrl: https://zksync2-testnet.zksync.dev
   networkId: 280
   type: EvmChain
 - id: canto_testnet
-  wormholeChainName: canto
   mainnet: false
   rpcUrl: https://canto-testnet.plexnode.wtf
   networkId: 7701
   type: EvmChain
 - id: polygon_zkevm_testnet
-  wormholeChainName: polygon_zkevm
   mainnet: false
   rpcUrl: https://rpc.public.zkevm-test.net/
   networkId: 1442
   type: EvmChain
 - id: aurora_testnet
-  wormholeChainName: aurora
   mainnet: false
   rpcUrl: https://testnet.aurora.dev
   networkId: 1313161555
   type: EvmChain
 - id: mantle_testnet
-  wormholeChainName: mantle
   mainnet: false
   rpcUrl: https://rpc.testnet.mantle.xyz/
   networkId: 5001
   type: EvmChain
 - id: gnosis
-  wormholeChainName: gnosis
   mainnet: true
   rpcUrl: https://rpc.gnosischain.com
   networkId: 100
   type: EvmChain
 - id: fantom_testnet
-  wormholeChainName: fantom
   mainnet: false
-  rpcUrl: https://rpc.ankr.com/fantom_testnet
+  rpcUrl: https://fantom-testnet.blastapi.io/$ENV_BLAST_API_KEY
   networkId: 4002
   type: EvmChain
 - id: neon
-  wormholeChainName: neon
   mainnet: true
   rpcUrl: https://neon-proxy-mainnet.solana.p2p.org
   networkId: 245022934
   type: EvmChain
 - id: fantom
-  wormholeChainName: fantom
   mainnet: true
   rpcUrl: https://rpc.ankr.com/fantom
   networkId: 250
   type: EvmChain
 - id: mumbai
-  wormholeChainName: polygon
   mainnet: false
-  rpcUrl: https://polygon-testnet-rpc.allthatnode.com:8545
+  rpcUrl: https://polygon-testnet.blastapi.io/$ENV_BLAST_API_KEY
   networkId: 80001
   type: EvmChain
 - id: neon_devnet
-  wormholeChainName: neon
   mainnet: false
   rpcUrl: https://devnet.neonevm.org
   networkId: 245022926
   type: EvmChain
 - id: meter
-  wormholeChainName: meter
   mainnet: true
   rpcUrl: https://rpc-meter.jellypool.xyz
   networkId: 82
   type: EvmChain
 - id: chiado
-  wormholeChainName: gnosis
   mainnet: false
   rpcUrl: https://rpc.chiadochain.net
   networkId: 10200
   type: EvmChain
 - id: mantle
-  wormholeChainName: mantle
   mainnet: true
   rpcUrl: https://rpc.mantle.xyz/
   networkId: 5000
   type: EvmChain
 - id: kava_testnet
-  wormholeChainName: kava
   mainnet: false
   rpcUrl: https://evm.testnet.kava.io
   networkId: 2221
   type: EvmChain
 - id: evmos_testnet
-  wormholeChainName: evmos
   mainnet: false
-  rpcUrl: https://eth.bd.evmos.dev:8545/
+  rpcUrl: https://jsonrpc-evmos-testnet.mzonder.com
   networkId: 9000
   type: EvmChain
 - id: cronos
-  wormholeChainName: cronos
   mainnet: true
   rpcUrl: https://cronosrpc-1.xstaking.sg
   networkId: 25
   type: EvmChain
 - id: ethereum
-  wormholeChainName: ethereum
   mainnet: true
   rpcUrl: https://eth.llamarpc.com
   networkId: 1
   type: EvmChain
-- id: bnb_testnet
-  wormholeChainName: bsc
+- id: bsc_testnet
   mainnet: false
   rpcUrl: https://rpc.ankr.com/bsc_testnet_chapel
   networkId: 97
   type: EvmChain
 - id: wemix
-  wormholeChainName: wemix
   mainnet: true
   rpcUrl: https://api.wemix.com
   networkId: 1111
   type: EvmChain
 - id: aurora
-  wormholeChainName: aurora
   mainnet: true
   rpcUrl: https://mainnet.aurora.dev
   networkId: 1313161554
   type: EvmChain
-- id: bnb
-  wormholeChainName: bsc
+- id: bsc
   mainnet: true
   rpcUrl: https://rpc.ankr.com/bsc
   networkId: 56
   type: EvmChain
 - id: eos
-  wormholeChainName: eos
   mainnet: true
   rpcUrl: https://api.evm.eosnetwork.com
   networkId: 17777
   type: EvmChain
 - id: conflux_espace_testnet
-  wormholeChainName: conflux_espace
   mainnet: false
   rpcUrl: https://evmtestnet.confluxrpc.com
   networkId: 71
   type: EvmChain
 - id: conflux_espace
-  wormholeChainName: conflux_espace
   mainnet: true
   rpcUrl: https://evm.confluxrpc.org
   networkId: 1030
   type: EvmChain
 - id: optimism_goerli
-  wormholeChainName: optimism
   mainnet: false
   rpcUrl: https://rpc.ankr.com/optimism_testnet
   networkId: 420
   type: EvmChain
 - id: celo
-  wormholeChainName: celo
   mainnet: true
   rpcUrl: https://forno.celo.org
   networkId: 42220
   type: EvmChain
 - id: polygon
-  wormholeChainName: polygon
   mainnet: true
   rpcUrl: https://polygon-rpc.com
   networkId: 137
   type: EvmChain
 - id: wemix_testnet
-  wormholeChainName: wemix
   mainnet: false
   rpcUrl: https://api.test.wemix.com
   networkId: 1112
   type: EvmChain
 - id: kcc
-  wormholeChainName: kcc
   mainnet: true
   rpcUrl: https://rpc-mainnet.kcc.network
   networkId: 321
   type: EvmChain
 - id: polygon_zkevm
-  wormholeChainName: polygon_zkevm
   mainnet: true
   rpcUrl: https://zkevm-rpc.com
   networkId: 1101
   type: EvmChain
 - id: celo_alfajores_testnet
-  wormholeChainName: celo
   mainnet: false
   rpcUrl: https://alfajores-forno.celo-testnet.org
   networkId: 44787
   type: EvmChain
 - id: syndr_nitro_testnet
-  wormholeChainName: syndr
   mainnet: false
   rpcUrl: https://syndr-nitro-testnet.calderachain.xyz/http
   networkId: 412346
   type: EvmChain
 - id: zksync
-  wormholeChainName: zksync
   mainnet: true
   rpcUrl: https://zksync2-mainnet.zksync.io
   networkId: 324
   type: EvmChain
 - id: base
-  wormholeChainName: base
   mainnet: true
   rpcUrl: https://developer-access-mainnet.base.org/
   networkId: 8453
   type: EvmChain
 - id: arbitrum
-  wormholeChainName: arbitrum
   mainnet: true
   rpcUrl: https://arb1.arbitrum.io/rpc
   networkId: 42161
   type: EvmChain
 - id: optimism
-  wormholeChainName: optimism
   mainnet: true
   rpcUrl: https://rpc.ankr.com/optimism
   networkId: 10
   type: EvmChain
 - id: kcc_testnet
-  wormholeChainName: kcc
   mainnet: false
   rpcUrl: https://rpc-testnet.kcc.network
   networkId: 322
   type: EvmChain
 - id: eos_testnet
-  wormholeChainName: eos
   mainnet: false
   rpcUrl: https://api.testnet.evm.eosnetwork.com
   networkId: 15557
   type: EvmChain
 - id: meter_testnet
-  wormholeChainName: meter
   mainnet: false
   rpcUrl: https://rpctest.meter.io
   networkId: 83
   type: EvmChain
 - id: linea
-  wormholeChainName: linea
   mainnet: true
   rpcUrl: https://linea.rpc.thirdweb.com
   networkId: 59144
   type: EvmChain
 - id: shimmer_testnet
-  wormholeChainName: shimmer
   mainnet: false
   rpcUrl: https://json-rpc.evm.testnet.shimmer.network
   networkId: 1073
   type: EvmChain
 - id: scroll_sepolia
-  wormholeChainName: scroll
   mainnet: false
   rpcUrl: https://sepolia-rpc.scroll.io/
   networkId: 534351
   type: EvmChain
 - id: scroll
-  wormholeChainName: scroll
   mainnet: true
   rpcUrl: https://rpc.scroll.io
   networkId: 534352
   type: EvmChain
 - id: saigon
-  wormholeChainName: ronin
   mainnet: false
   rpcUrl: https://api-gateway.skymavis.com/rpc/testnet?apikey=$ENV_RONIN_API_KEY
   networkId: 2021
   type: EvmChain
 - id: ronin
-  wormholeChainName: ronin
   mainnet: true
   rpcUrl: https://api-gateway.skymavis.com/rpc?apikey=$ENV_RONIN_API_KEY
   networkId: 2020
   type: EvmChain
 - id: horizen_eon
-  wormholeChainName: horizen
   mainnet: true
   rpcUrl: https://eon-rpc.horizenlabs.io/ethv1
   networkId: 7332
   type: EvmChain
 - id: horizen_gobi
-  wormholeChainName: horizen
   mainnet: false
-  rpcUrl: https://gobi-rpc.horizenlabs.io/ethv1
+  rpcUrl: https://rpc.ankr.com/horizen_gobi_testnet
   networkId: 1663
   type: EvmChain
 - id: sepolia
-  wormholeChainName: ethereum
   mainnet: false
-  rpcUrl: https://ethereum-sepolia.blockpi.network/v1/rpc/public
+  rpcUrl: https://eth-sepolia.blastapi.io/$ENV_BLAST_API_KEY
   networkId: 11155111
   type: EvmChain
 - id: shimmer
-  wormholeChainName: shimmer
   mainnet: true
   rpcUrl: https://json-rpc.evm.shimmer.network
   networkId: 148
   type: EvmChain
 - id: arbitrum_sepolia
-  wormholeChainName: arbitrum
   mainnet: false
   rpcUrl: https://sepolia-rollup.arbitrum.io/rpc
   networkId: 421614
   type: EvmChain
 - id: boba
-  wormholeChainName: boba
   mainnet: true
   rpcUrl: https://replica.boba.network
   networkId: 288
   type: EvmChain
 - id: boba_goerli
-  wormholeChainName: boba
   mainnet: false
   rpcUrl: https://goerli.boba.network
   networkId: 2888
   type: EvmChain
 - id: manta
-  wormholeChainName: manta
   mainnet: true
   rpcUrl: https://pacific-rpc.manta.network/http
   networkId: 169
   type: EvmChain
 - id: manta_testnet
-  wormholeChainName: manta
   mainnet: false
   rpcUrl: https://pacific-rpc.testnet.manta.network/http
   networkId: 3441005
   type: EvmChain
 - id: optimism_sepolia
-  wormholeChainName: optimism
   mainnet: false
   rpcUrl: https://sepolia.optimism.io
   networkId: 11155420
   type: EvmChain
 - id: chiliz_spicy
-  wormholeChainName: chiliz
   mainnet: false
   rpcUrl: https://spicy-rpc.chiliz.com
   networkId: 88882
   type: EvmChain
 - id: chiliz
-  wormholeChainName: chiliz
   mainnet: true
   rpcUrl: https://rpc.ankr.com/chiliz
   networkId: 88888
   type: EvmChain
 - id: zetachain_testnet
-  wormholeChainName: zetachain
   mainnet: false
-  rpcUrl: https://rpc.ankr.com/zetachain_evm_athens_testnet
+  rpcUrl: https://zetachain-athens-evm.blockpi.network/v1/rpc/public
   networkId: 7001
   type: EvmChain
 - id: astar_testnet
-  wormholeChainName: astar
   mainnet: false
   rpcUrl: https://rpc.zkatana.gelato.digital
   networkId: 1261120
   type: EvmChain
 - id: coredao_testnet
-  wormholeChainName: coredao
   mainnet: false
   rpcUrl: https://rpc.test.btcs.network
   networkId: 1115
   type: EvmChain
 - id: coredao
-  wormholeChainName: coredao
   mainnet: true
   rpcUrl: https://rpc3.coredao.org
   networkId: 1116
   type: EvmChain
 - id: tomochain
-  wormholeChainName: tomochain
   mainnet: true
   rpcUrl: https://rpc.tomochain.com
   networkId: 88
   type: EvmChain
 - id: tomochain_testnet
-  wormholeChainName: tomochain
   mainnet: false
   rpcUrl: https://rpc.testnet.tomochain.com
   networkId: 89

+ 110 - 113
contract_manager/store/contracts/EvmContracts.yaml

@@ -19,54 +19,24 @@
 - chain: arbitrum
   address: "0xff1a0f4744e8582DF1aE09D5611b887B6a12925C"
   type: EvmContract
-- chain: chiado
-  address: "0xdDAf6D29b8bc81c1F0798a5e4c264ae89c16a72B"
-  type: EvmContract
-- chain: kcc_testnet
-  address: "0x15D35b8985e350f783fe3d95401401E194ff1E6f"
-  type: EvmContract
 - chain: gnosis
   address: "0x2880aB155794e7179c9eE2e38200202908C17B43"
   type: EvmContract
-- chain: mantle_testnet
-  address: "0xA2aa501b19aff244D90cc15a4Cf739D2725B5729"
-  type: EvmContract
-- chain: syndr_nitro_testnet
-  address: "0xA2aa501b19aff244D90cc15a4Cf739D2725B5729"
-  type: EvmContract
-- chain: bnb_testnet
-  address: "0xd7308b14BF4008e7C7196eC35610B1427C5702EA"
-  type: EvmContract
 - chain: polygon_zkevm
   address: "0xC5E56d6b40F3e3B5fbfa266bCd35C37426537c65"
   type: EvmContract
 - chain: conflux_espace
   address: "0xe9d69CdD6Fe41e7B621B4A688C5D1a68cB5c8ADc"
   type: EvmContract
-- chain: cronos_testnet
-  address: "0xBAEA4A1A2Eaa4E9bb78f2303C213Da152933170E"
-  type: EvmContract
-- chain: kava_testnet
-  address: "0x98046Bd286715D3B0BC227Dd7a956b83D8978603"
-  type: EvmContract
-- chain: bnb
+- chain: bsc
   address: "0x4D7E825f80bDf85e913E0DD2A2D54927e9dE1594"
   type: EvmContract
-- chain: neon_devnet
-  address: "0x2FF312f50689ad279ABb164dB255Eb568733BD6c"
-  type: EvmContract
-- chain: base_goerli
-  address: "0x5955C1478F0dAD753C7E2B4dD1b4bC530C64749f"
-  type: EvmContract
 - chain: kava
   address: "0xA2aa501b19aff244D90cc15a4Cf739D2725B5729"
   type: EvmContract
 - chain: avalanche
   address: "0x4305FB66699C3B2702D4d05CF36551390A4c69C6"
   type: EvmContract
-- chain: linea_goerli
-  address: "0xA2aa501b19aff244D90cc15a4Cf739D2725B5729"
-  type: EvmContract
 - chain: canto
   address: "0x98046Bd286715D3B0BC227Dd7a956b83D8978603"
   type: EvmContract
@@ -76,66 +46,21 @@
 - chain: neon
   address: "0x7f2dB085eFC3560AFF33865dD727225d91B4f9A5"
   type: EvmContract
-- chain: celo_alfajores_testnet
-  address: "0xff1a0f4744e8582DF1aE09D5611b887B6a12925C"
-  type: EvmContract
-- chain: fuji
-  address: "0xff1a0f4744e8582DF1aE09D5611b887B6a12925C"
-  type: EvmContract
 - chain: mantle
   address: "0xA2aa501b19aff244D90cc15a4Cf739D2725B5729"
   type: EvmContract
-- chain: goerli
-  address: "0xff1a0f4744e8582DF1aE09D5611b887B6a12925C"
-  type: EvmContract
 - chain: meter
   address: "0xbFe3f445653f2136b2FD1e6DdDb5676392E3AF16"
   type: EvmContract
-- chain: meter_testnet
-  address: "0x5fF5B9039FbD8256864A4460B7EA77093A65B1b5"
-  type: EvmContract
 - chain: kcc
   address: "0xE0d0e68297772Dd5a1f1D99897c581E2082dbA5B"
   type: EvmContract
-- chain: evmos_testnet
-  address: "0x354bF866A4B006C9AF9d9e06d9364217A8616E12"
-  type: EvmContract
-- chain: zksync_goerli
-  address: "0xC38B1dd611889Abc95d4E0a472A667c3671c08DE"
-  type: EvmContract
-- chain: fantom_testnet
-  address: "0xff1a0f4744e8582DF1aE09D5611b887B6a12925C"
-  type: EvmContract
 - chain: eos
   address: "0xA2aa501b19aff244D90cc15a4Cf739D2725B5729"
   type: EvmContract
-- chain: wemix_testnet
-  address: "0xA2aa501b19aff244D90cc15a4Cf739D2725B5729"
-  type: EvmContract
 - chain: celo
   address: "0xff1a0f4744e8582DF1aE09D5611b887B6a12925C"
   type: EvmContract
-- chain: eos_testnet
-  address: "0xA2aa501b19aff244D90cc15a4Cf739D2725B5729"
-  type: EvmContract
-- chain: mumbai
-  address: "0xff1a0f4744e8582DF1aE09D5611b887B6a12925C"
-  type: EvmContract
-- chain: aurora_testnet
-  address: "0x4305FB66699C3B2702D4d05CF36551390A4c69C6"
-  type: EvmContract
-- chain: optimism_goerli
-  address: "0xff1a0f4744e8582DF1aE09D5611b887B6a12925C"
-  type: EvmContract
-- chain: conflux_espace_testnet
-  address: "0xA2aa501b19aff244D90cc15a4Cf739D2725B5729"
-  type: EvmContract
-- chain: polygon_zkevm_testnet
-  address: "0xd54bf1758b1C932F86B178F8b1D5d1A7e2F62C2E"
-  type: EvmContract
-- chain: canto_testnet
-  address: "0xA2aa501b19aff244D90cc15a4Cf739D2725B5729"
-  type: EvmContract
 - chain: wemix
   address: "0xA2aa501b19aff244D90cc15a4Cf739D2725B5729"
   type: EvmContract
@@ -148,72 +73,144 @@
 - chain: zksync
   address: "0xf087c864AEccFb6A2Bf1Af6A0382B0d0f6c5D834"
   type: EvmContract
-- chain: scroll_sepolia
+- chain: ronin
+  address: "0x2880aB155794e7179c9eE2e38200202908C17B43"
+  type: EvmContract
+- chain: horizen_eon
   address: "0xA2aa501b19aff244D90cc15a4Cf739D2725B5729"
   type: EvmContract
-- chain: saigon
+- chain: shimmer
   address: "0xA2aa501b19aff244D90cc15a4Cf739D2725B5729"
   type: EvmContract
-- chain: ronin
-  address: "0x2880aB155794e7179c9eE2e38200202908C17B43"
+- chain: boba
+  address: "0x4374e5a8b9C22271E9EB878A2AA31DE97DF15DAF"
   type: EvmContract
-- chain: horizen_gobi
+- chain: manta
   address: "0xA2aa501b19aff244D90cc15a4Cf739D2725B5729"
   type: EvmContract
-- chain: horizen_eon
+- chain: scroll
   address: "0xA2aa501b19aff244D90cc15a4Cf739D2725B5729"
   type: EvmContract
-- chain: sepolia
-  address: "0x2880aB155794e7179c9eE2e38200202908C17B43"
-  type: EvmContract
-- chain: shimmer
+- chain: chiliz
   address: "0xA2aa501b19aff244D90cc15a4Cf739D2725B5729"
   type: EvmContract
-- chain: arbitrum_sepolia
+- chain: coredao
   address: "0xA2aa501b19aff244D90cc15a4Cf739D2725B5729"
   type: EvmContract
-- chain: boba_goerli
+- chain: tomochain
   address: "0xA2aa501b19aff244D90cc15a4Cf739D2725B5729"
   type: EvmContract
-- chain: boba
+- chain: base_goerli
+  address: "0xEbe57e8045F2F230872523bbff7374986E45C486"
+  type: EvmContract
+- chain: arbitrum_sepolia
   address: "0x4374e5a8b9C22271E9EB878A2AA31DE97DF15DAF"
   type: EvmContract
-- chain: manta_testnet
-  address: "0xA2aa501b19aff244D90cc15a4Cf739D2725B5729"
+- chain: fuji
+  address: "0x23f0e8FAeE7bbb405E7A7C3d60138FCfd43d7509"
   type: EvmContract
-- chain: manta
-  address: "0xA2aa501b19aff244D90cc15a4Cf739D2725B5729"
+- chain: canto_testnet
+  address: "0x26DD80569a8B23768A1d80869Ed7339e07595E85"
   type: EvmContract
-- chain: optimism_sepolia
-  address: "0x2880aB155794e7179c9eE2e38200202908C17B43"
+- chain: polygon_zkevm_testnet
+  address: "0xFf255f800044225f54Af4510332Aa3D67CC77635"
   type: EvmContract
-- chain: chiliz_spicy
-  address: "0xA2aa501b19aff244D90cc15a4Cf739D2725B5729"
+- chain: aurora_testnet
+  address: "0x74f09cb3c7e2A01865f424FD14F6dc9A14E3e94E"
   type: EvmContract
-- chain: scroll
-  address: "0xA2aa501b19aff244D90cc15a4Cf739D2725B5729"
+- chain: mantle_testnet
+  address: "0xDd24F84d36BF92C65F92307595335bdFab5Bbd21"
   type: EvmContract
-- chain: zetachain_testnet
-  address: "0x87047526937246727E4869C5f76A347160e08672"
+- chain: chiado
+  address: "0x98046Bd286715D3B0BC227Dd7a956b83D8978603"
   type: EvmContract
-- chain: astar_testnet
-  address: "0xA2aa501b19aff244D90cc15a4Cf739D2725B5729"
+- chain: kava_testnet
+  address: "0xfA25E653b44586dBbe27eE9d252192F0e4956683"
   type: EvmContract
-- chain: chiliz
-  address: "0xA2aa501b19aff244D90cc15a4Cf739D2725B5729"
+- chain: conflux_espace_testnet
+  address: "0xDd24F84d36BF92C65F92307595335bdFab5Bbd21"
   type: EvmContract
-- chain: coredao_testnet
-  address: "0xA2aa501b19aff244D90cc15a4Cf739D2725B5729"
+- chain: celo_alfajores_testnet
+  address: "0x74f09cb3c7e2A01865f424FD14F6dc9A14E3e94E"
   type: EvmContract
-- chain: coredao
-  address: "0xA2aa501b19aff244D90cc15a4Cf739D2725B5729"
+- chain: bsc_testnet
+  address: "0x5744Cbf430D99456a0A8771208b674F27f8EF0Fb"
+  type: EvmContract
+- chain: syndr_nitro_testnet
+  address: "0xEbe57e8045F2F230872523bbff7374986E45C486"
+  type: EvmContract
+- chain: kcc_testnet
+  address: "0x74f09cb3c7e2A01865f424FD14F6dc9A14E3e94E"
+  type: EvmContract
+- chain: eos_testnet
+  address: "0x0708325268dF9F66270F1401206434524814508b"
+  type: EvmContract
+- chain: meter_testnet
+  address: "0x5a71C07a0588074443545eE0c08fb0375564c3E4"
+  type: EvmContract
+- chain: optimism_goerli
+  address: "0xDd24F84d36BF92C65F92307595335bdFab5Bbd21"
   type: EvmContract
 - chain: shimmer_testnet
-  address: "0xA2aa501b19aff244D90cc15a4Cf739D2725B5729"
+  address: "0x8D254a21b3C86D32F7179855531CE99164721933"
   type: EvmContract
-- chain: tomochain_testnet
+- chain: scroll_sepolia
+  address: "0x41c9e39574F40Ad34c79f1C99B66A45eFB830d4c"
+  type: EvmContract
+- chain: saigon
+  address: "0xEbe57e8045F2F230872523bbff7374986E45C486"
+  type: EvmContract
+- chain: boba_goerli
+  address: "0x8D254a21b3C86D32F7179855531CE99164721933"
+  type: EvmContract
+- chain: manta_testnet
+  address: "0x41c9e39574F40Ad34c79f1C99B66A45eFB830d4c"
+  type: EvmContract
+- chain: chiliz_spicy
   address: "0x23f0e8FAeE7bbb405E7A7C3d60138FCfd43d7509"
   type: EvmContract
-- chain: tomochain
-  address: "0xA2aa501b19aff244D90cc15a4Cf739D2725B5729"
+- chain: astar_testnet
+  address: "0x8D254a21b3C86D32F7179855531CE99164721933"
+  type: EvmContract
+- chain: coredao_testnet
+  address: "0x8D254a21b3C86D32F7179855531CE99164721933"
+  type: EvmContract
+- chain: tomochain_testnet
+  address: "0x5D289Ad1CE59fCC25b6892e7A303dfFf3a9f7167"
+  type: EvmContract
+- chain: cronos_testnet
+  address: "0x36825bf3Fbdf5a29E2d5148bfe7Dcf7B5639e320"
+  type: EvmContract
+- chain: wemix_testnet
+  address: "0x26DD80569a8B23768A1d80869Ed7339e07595E85"
+  type: EvmContract
+- chain: mumbai
+  address: "0xFC6bd9F9f0c6481c6Af3A7Eb46b296A5B85ed379"
+  type: EvmContract
+- chain: fantom_testnet
+  address: "0x5744Cbf430D99456a0A8771208b674F27f8EF0Fb"
+  type: EvmContract
+- chain: sepolia
+  address: "0x26DD80569a8B23768A1d80869Ed7339e07595E85"
+  type: EvmContract
+- chain: sepolia
+  address: "0xDd24F84d36BF92C65F92307595335bdFab5Bbd21"
+  type: EvmContract
+- chain: linea_goerli
+  address: "0xdF21D137Aadc95588205586636710ca2890538d5"
+  type: EvmContract
+- chain: evmos_testnet
+  address: "0x74f09cb3c7e2A01865f424FD14F6dc9A14E3e94E"
+  type: EvmContract
+- chain: zetachain_testnet
+  address: "0x0708325268dF9F66270F1401206434524814508b"
+  type: EvmContract
+- chain: neon_devnet
+  address: "0x0708325268dF9F66270F1401206434524814508b"
+  type: EvmContract
+- chain: zksync_goerli
+  address: "0x8739d5024B5143278E2b15Bd9e7C26f6CEc658F1"
+  type: EvmContract
+- chain: optimism_sepolia
+  address: "0x0708325268dF9F66270F1401206434524814508b"
   type: EvmContract

+ 66 - 15
governance/xc_admin/packages/xc_admin_common/src/chains.ts

@@ -3,16 +3,26 @@ import { CHAINS as WORMHOLE_CHAINS } from "@certusone/wormhole-sdk";
 // PYTH will have:
 // 1. Mainnet Deployment - which will have pyth mainnet governance and data sources
 // 2. Testnet Stable Deployment - which will also have pyth mainnet governance and data sources
-// 3. Testnet Edge Deployment - which will have pyth testnet governance and data sources.
-// Different chains will have different chain ids i.e., mainnet and testnet will have different chain ids.
-// Though stable and edge contracts on testnet will share the same chain id. They are governed by different
-// sources hence there is no chance of collision.
+// Different chains will have different chain ids i.e., mainnet and testnet will have different chain ids
+// to avoid collision of governance messages.
 
-// If there is already a chain id in wormhole sdk. Use that for Mainnet
-// Else add a chain id for mainnet too.
-// Add an id for the testnet
-// Currently we are deploying this for cosmos chains only. But this will be for all the chains in future.
+// For evm networks, always add a new chain id, for the other networks If there is already a chain id in wormhole sdk,
+// use that for mainnet, and else add a chain id for mainnet too. Also add an id for testnet.
 export const RECEIVER_CHAINS = {
+  unset: 0, // The global chain id. For messages that are not chain specific.
+
+  // On the following networks we use our own version of Wormhole receiver contract
+  ethereum: 2,
+  bsc: 4,
+  polygon: 5,
+  avalanche: 6,
+  aurora: 9,
+  fantom: 10,
+  celo: 14,
+  injective: 19,
+  arbitrum: 23,
+  optimism: 24,
+
   cronos: 60001,
   kcc: 60002,
   zksync: 60003,
@@ -25,24 +35,18 @@ export const RECEIVER_CHAINS = {
   meter: 60010,
   mantle: 60011,
   conflux_espace: 60012,
-  injective_testnet: 60013,
   osmosis: 60014,
-  osmosis_testnet_4: 60015,
-  osmosis_testnet_5: 60016,
   sei_pacific_1: 60017,
-  sei_testnet_atlantic_2: 60018,
   neutron: 60019,
   juno: 60020,
-  juno_testnet: 60021,
   kava: 60022,
   wemix: 60023,
   linea: 60024,
-  neutron_testnet_pion_1: 60025,
   eos: 60026,
   syndr: 60027,
   scroll: 60028,
   ronin: 60029,
-  horizen: 60030,
+  horizen_eon: 60030,
   boba: 60031,
   manta: 60032,
   chiliz: 60033,
@@ -50,6 +54,53 @@ export const RECEIVER_CHAINS = {
   astar: 60035,
   coredao: 60036,
   tomochain: 60037,
+
+  // Testnets as a separate chain ids (to use stable data sources and governance for them)
+  injective_testnet: 60013,
+  osmosis_testnet_4: 60015,
+  osmosis_testnet_5: 60016,
+  sei_testnet_atlantic_2: 60018,
+  juno_testnet: 60021,
+  neutron_testnet_pion_1: 60025,
+
+  linea_goerli: 50001,
+  fuji: 50002, // Avalanche testnet
+  base_goerli: 50003,
+  cronos_testnet: 50004,
+  zksync_goerli: 50005,
+  canto_testnet: 50006,
+  polygon_zkevm_testnet: 50007,
+  aurora_testnet: 50008,
+  mantle_testnet: 50009,
+  fantom_testnet: 50010,
+  mumbai: 50011, // Polygon testnet
+  neon_devnet: 50012,
+  chiado: 50013, // Gnosis testnet
+  kava_testnet: 50014,
+  evmos_testnet: 50015,
+  bsc_testnet: 50016,
+  conflux_espace_testnet: 50017,
+  optimism_goerli: 50018,
+  wemix_testnet: 50019,
+  celo_alfajores_testnet: 50020,
+  syndr_nitro_testnet: 50021,
+  kcc_testnet: 50022,
+  eos_testnet: 50023,
+  meter_testnet: 50024,
+  shimmer_testnet: 50025,
+  scroll_sepolia: 50026,
+  saigon: 50027, // Ronin testnet
+  horizen_gobi: 50028,
+  sepolia: 50029, // Ethereum latest testnet
+  arbitrum_sepolia: 50030, // Arbitrum latest testnet
+  boba_goerli: 50031,
+  manta_testnet: 50032,
+  optimism_sepolia: 50033,
+  chiliz_spicy: 50034, // Chiliz testnet
+  zetachain_testnet: 50035,
+  astar_testnet: 50036,
+  coredao_testnet: 50037,
+  tomochain_testnet: 50038,
 };
 
 // If there is any overlapping value the receiver chain will replace the wormhole

+ 0 - 4
target_chains/ethereum/contracts/README.md

@@ -11,10 +11,6 @@ npm ci
 npx lerna run build --scope="@pythnetwork/pyth-evm-contract" --include-dependencies
 ```
 
-## Deployment
-
-Please refer to [Deploying.md](./Deploying.md) for more information.
-
 ## Foundry
 
 Foundry can be installed by the official installer, or by running our helper script which will automatically pull the correct installation script individually for Foundry and the Solidity compiler for your current OS. This may work better if you are running into networking/firewall issues using Foundry's Solidity installer. To use helper script, run the command below from this directory:

+ 0 - 2
target_chains/ethereum/contracts/create-env.js

@@ -20,10 +20,8 @@ async function main() {
     `.env`,
     `MIGRATIONS_DIR=./migrations/prod-receiver\n` +
       `MIGRATIONS_NETWORK=${chain.getId()}\n` +
-      `WORMHOLE_CHAIN_NAME=${chain.wormholeChainName}\n` +
       `VALID_TIME_PERIOD_SECONDS=60\n` +
       `SINGLE_UPDATE_FEE_IN_WEI=1\n` +
-      `CLUSTER=${chain.isMainnet() ? "mainnet" : "testnet"}\n` +
       `NETWORK_ID=${chain.networkId}\n` +
       `RPC_URL=${chain.getRpcUrl()}\n`
   );

+ 8 - 0
target_chains/ethereum/contracts/deploy.sh

@@ -29,6 +29,9 @@ echo "Adding network metadata to the contract"
 # Merge the network addresses into the artifacts, if some contracts are already deployed.
 npx apply-registry
 
+# The channel to use for the price sources. Can be `stable` or `beta`.
+export CHANNEL=stable
+
 while [[ $# -ne 0 ]]; do
     NETWORK=$1
     shift
@@ -51,6 +54,11 @@ while [[ $# -ne 0 ]]; do
         npx truffle migrate --network $MIGRATIONS_NETWORK --compile-none
         echo "Deployment to $NETWORK finished successfully"
     fi
+
+    if [[ $CHANNEL == stable ]]; then
+        echo "=========== Syncing guardian sets to ${NETWORK} ==========="
+        npm run receiver-submit-guardian-sets -- --network $NETWORK
+    fi
 done
 
 echo "=========== Finished ==========="

+ 2 - 3
target_chains/ethereum/contracts/deploy/zkSyncDeploy.ts

@@ -1,13 +1,12 @@
+require("dotenv").config({ path: ".env" });
 import { utils, Wallet } from "zksync-web3";
 import { HardhatRuntimeEnvironment } from "hardhat/types";
 import { Deployer } from "@matterlabs/hardhat-zksync-deploy";
-import loadEnv from "../scripts/loadEnv";
 import { CHAINS } from "xc_admin_common";
 import { assert } from "chai";
 import { writeFileSync } from "fs";
 
 const { getDefaultConfig } = require("../scripts/contractManagerConfig");
-loadEnv("./");
 
 function envOrErr(name: string): string {
   const res = process.env[name];
@@ -48,7 +47,7 @@ export default async function (hre: HardhatRuntimeEnvironment) {
     emitterChainIds,
   } = getDefaultConfig(envOrErr("MIGRATIONS_NETWORK"));
 
-  const chainName = envOrErr("WORMHOLE_CHAIN_NAME");
+  const chainName = envOrErr("MIGRATIONS_NETWORK");
   const wormholeReceiverChainId = CHAINS[chainName];
   assert(wormholeReceiverChainId !== undefined);
 

+ 1 - 3
target_chains/ethereum/contracts/deploy/zkSyncDeployNewPythImpl.ts

@@ -1,13 +1,11 @@
+require("dotenv").config({ path: ".env" });
 import { utils, Wallet } from "zksync-web3";
 import { HardhatRuntimeEnvironment } from "hardhat/types";
 import { Deployer } from "@matterlabs/hardhat-zksync-deploy";
-import loadEnv from "../scripts/loadEnv";
 import { assert } from "chai";
 import { writeFileSync } from "fs";
 import { ethers } from "ethers";
 
-loadEnv("./");
-
 function envOrErr(name: string): string {
   const res = process.env[name];
   if (res === undefined) {

+ 2 - 4
target_chains/ethereum/contracts/migrations/prod-receiver/2_deploy_wormhole_receiver.js

@@ -1,6 +1,4 @@
-const loadEnv = require("../../scripts/loadEnv");
-loadEnv("../../");
-
+require("dotenv").config({ path: ".env" });
 const tdr = require("truffle-deploy-registry");
 const governance = require("xc_admin_common");
 const { assert } = require("chai");
@@ -12,7 +10,7 @@ const { getDefaultConfig } = require("../../scripts/contractManagerConfig");
 
 // CONFIG
 
-const chainName = process.env.WORMHOLE_CHAIN_NAME;
+const chainName = process.env.MIGRATIONS_NETWORK;
 assert(chainName !== undefined);
 
 const wormholeReceiverChainId = governance.CHAINS[chainName];

+ 1 - 3
target_chains/ethereum/contracts/migrations/prod-receiver/3_deploy_pyth.js

@@ -1,6 +1,4 @@
-const loadEnv = require("../../scripts/loadEnv");
-loadEnv("../../");
-
+require("dotenv").config({ path: ".env" });
 const PythUpgradable = artifacts.require("PythUpgradable");
 const WormholeReceiver = artifacts.require("WormholeReceiver");
 

+ 5 - 5
target_chains/ethereum/contracts/networks/10200.json

@@ -1,16 +1,16 @@
 [
   {
     "contractName": "Migrations",
-    "address": "0x5e92a04Cb8591cb7d9FD40B77B474cde0fE44D36"
+    "address": "0x35a58BeeE77a2Ad547FcDed7e8CB1c6e19746b13"
   },
   {
     "contractName": "WormholeReceiver",
-    "address": "0x556c444542f27137519eCF07A49E29a0e70E55Aa",
-    "transactionHash": "0x81fb99aeb0091777b2855a20b3b41ea3686d5bc8c7672ed753af9d8a3d15954e"
+    "address": "0x87047526937246727E4869C5f76A347160e08672",
+    "transactionHash": "0xbc6d1cc33f3077a6b5099060beef717cc833844ddafea072041f86737380574c"
   },
   {
     "contractName": "PythUpgradable",
-    "address": "0xdDAf6D29b8bc81c1F0798a5e4c264ae89c16a72B",
-    "transactionHash": "0xcdfe6e47a60d81de9167f2d6e5735083524d22c5d5d2852668df1f83b0985917"
+    "address": "0x98046Bd286715D3B0BC227Dd7a956b83D8978603",
+    "transactionHash": "0xeb4346bd2b13abcf532137f2191206a30d5d7eae22344322fd4f570fa33730f0"
   }
 ]

+ 5 - 5
target_chains/ethereum/contracts/networks/1073.json

@@ -1,16 +1,16 @@
 [
   {
     "contractName": "Migrations",
-    "address": "0xf5BBe9558F4Bf37F1eB82fb2CEdb1C775FA56832"
+    "address": "0xe9d69CdD6Fe41e7B621B4A688C5D1a68cB5c8ADc"
   },
   {
     "contractName": "WormholeReceiver",
-    "address": "0x8250f4aF4B972684F7b336503E2D6dFeDeB1487a",
-    "transactionHash": "0xd7729425584db58c3e9ed30428b43022d2e1d5cc912818108691068d69cc2780"
+    "address": "0x98046Bd286715D3B0BC227Dd7a956b83D8978603",
+    "transactionHash": "0xa12c1634163715bf649e58ba87bec9599a1787f9c5fbdd22f30ff828822d05c3"
   },
   {
     "contractName": "PythUpgradable",
-    "address": "0xA2aa501b19aff244D90cc15a4Cf739D2725B5729",
-    "transactionHash": "0x5f79ed2a8e6ef2d10b8be0e0f8bd5eac1206bfa1fe578ee812be775eb72a0a79"
+    "address": "0x8D254a21b3C86D32F7179855531CE99164721933",
+    "transactionHash": "0x8bbcc6cc84f444f48239896e1a18cb2550d95c1c7efbbdcd832c3f5092137bcd"
   }
 ]

+ 5 - 5
target_chains/ethereum/contracts/networks/1112.json

@@ -1,16 +1,16 @@
 [
   {
     "contractName": "Migrations",
-    "address": "0xf5BBe9558F4Bf37F1eB82fb2CEdb1C775FA56832"
+    "address": "0x98046Bd286715D3B0BC227Dd7a956b83D8978603"
   },
   {
     "contractName": "WormholeReceiver",
-    "address": "0x8250f4aF4B972684F7b336503E2D6dFeDeB1487a",
-    "transactionHash": "0x8afe07593eded6e9a061dd8ec59458dcf36033307afc21f68cd016be46de2d20"
+    "address": "0x41c9e39574F40Ad34c79f1C99B66A45eFB830d4c",
+    "transactionHash": "0xc6531878453796022bd14c286ba9a26208b6557f50590c0f01f042278448e348"
   },
   {
     "contractName": "PythUpgradable",
-    "address": "0xA2aa501b19aff244D90cc15a4Cf739D2725B5729",
-    "transactionHash": "0x92fa026e0c85f030369e61a32f26d69e80f3e5d4f6a6befb27a3cfb5df804065"
+    "address": "0x26DD80569a8B23768A1d80869Ed7339e07595E85",
+    "transactionHash": "0x4c6106263f6a587ebda9838c61e067a2952e77d139d76f2e13e22f452d6957f8"
   }
 ]

+ 5 - 5
target_chains/ethereum/contracts/networks/1115.json

@@ -1,16 +1,16 @@
 [
   {
     "contractName": "Migrations",
-    "address": "0xf5BBe9558F4Bf37F1eB82fb2CEdb1C775FA56832"
+    "address": "0xe9d69CdD6Fe41e7B621B4A688C5D1a68cB5c8ADc"
   },
   {
     "contractName": "WormholeReceiver",
-    "address": "0x8250f4aF4B972684F7b336503E2D6dFeDeB1487a",
-    "transactionHash": "0x5346120e1b661bd901fd030fa5c6cbf9aec7e87bf878b7fac4cc34e335db6df3"
+    "address": "0x98046Bd286715D3B0BC227Dd7a956b83D8978603",
+    "transactionHash": "0x48682bd84a7bcaba532a036130a04c0c9fe66c18e31207c1120eea166ed331f9"
   },
   {
     "contractName": "PythUpgradable",
-    "address": "0xA2aa501b19aff244D90cc15a4Cf739D2725B5729",
-    "transactionHash": "0x1069255ec2bf797fa62c97fa0c3a026b6d67c5224bc15e6881e570e9da1e240c"
+    "address": "0x8D254a21b3C86D32F7179855531CE99164721933",
+    "transactionHash": "0xa0dab7ba877b9bbe1fa0403db6163d7e05ac912fc361bbe67b03e96fc580db50"
   }
 ]

+ 5 - 5
target_chains/ethereum/contracts/networks/11155111.json

@@ -1,16 +1,16 @@
 [
   {
     "contractName": "Migrations",
-    "address": "0xf5BBe9558F4Bf37F1eB82fb2CEdb1C775FA56832"
+    "address": "0x98046Bd286715D3B0BC227Dd7a956b83D8978603"
   },
   {
     "contractName": "WormholeReceiver",
-    "address": "0x8250f4aF4B972684F7b336503E2D6dFeDeB1487a",
-    "transactionHash": "0xc194ed47f2288e16d4336525e8cc93a0643f18fb8657c5c28d8f79209126abca"
+    "address": "0x41c9e39574F40Ad34c79f1C99B66A45eFB830d4c",
+    "transactionHash": "0xa93e10d18246cf152926319a7fa8957300d9a1b895c663e75691f6b46289f8a7"
   },
   {
     "contractName": "PythUpgradable",
-    "address": "0x2880aB155794e7179c9eE2e38200202908C17B43",
-    "transactionHash": "0x91d1ccd2f6d019a0c5172ad2d9efa33a16a75ae77c9c56583c6cb1e03e39f969"
+    "address": "0xDd24F84d36BF92C65F92307595335bdFab5Bbd21",
+    "transactionHash": "0x4b54d32c459afe094c5eb01f0b9b19136aca13d4e7394c191c42d86c4215714a"
   }
 ]

+ 5 - 5
target_chains/ethereum/contracts/networks/11155420.json

@@ -1,16 +1,16 @@
 [
   {
     "contractName": "Migrations",
-    "address": "0x6E3A2a644eeDCf6007d3c7d85F0094Cc1B25B2AE"
+    "address": "0x5744Cbf430D99456a0A8771208b674F27f8EF0Fb"
   },
   {
     "contractName": "WormholeReceiver",
-    "address": "0x41955476936DdA8d0fA98b8d1778172F7E4fCcA1",
-    "transactionHash": "0x3d20838c6b12d59465ed226f2d43b5ba6c0db546bf1868f3166859c3e80e17d8"
+    "address": "0x8D254a21b3C86D32F7179855531CE99164721933",
+    "transactionHash": "0xc193ef989308a09b5e7a56289ea6a6601b27af5478eb6f97e3ec4809f58a1700"
   },
   {
     "contractName": "PythUpgradable",
-    "address": "0x2880aB155794e7179c9eE2e38200202908C17B43",
-    "transactionHash": "0x65b2a3486228f28a61e6cad3eb068890e51a4da0a4863e28fc845a60d85699e5"
+    "address": "0x0708325268dF9F66270F1401206434524814508b",
+    "transactionHash": "0xaefb4292c87e92304c26d3c43272c2292b7abfe784983c59a62d3675b1746185"
   }
 ]

+ 5 - 5
target_chains/ethereum/contracts/networks/1261120.json

@@ -1,16 +1,16 @@
 [
   {
     "contractName": "Migrations",
-    "address": "0xf5BBe9558F4Bf37F1eB82fb2CEdb1C775FA56832"
+    "address": "0xe9d69CdD6Fe41e7B621B4A688C5D1a68cB5c8ADc"
   },
   {
     "contractName": "WormholeReceiver",
-    "address": "0x8250f4aF4B972684F7b336503E2D6dFeDeB1487a",
-    "transactionHash": "0x1963a847e167d3646d09558bb5d6a03d2c6bc43a83bc4bfe99ba4d8d2a9732ce"
+    "address": "0x98046Bd286715D3B0BC227Dd7a956b83D8978603",
+    "transactionHash": "0x5d41ba70dcf52111255dab5576009f74ca8dc5a1ddf5a87640163ee8dac8b8e6"
   },
   {
     "contractName": "PythUpgradable",
-    "address": "0xA2aa501b19aff244D90cc15a4Cf739D2725B5729",
-    "transactionHash": "0xf16cecf292d47a9f924f833ad6ecc0c84de21a381f914cadfadaeea2c1f1620e"
+    "address": "0x8D254a21b3C86D32F7179855531CE99164721933",
+    "transactionHash": "0xb74415b1073640187084a41882ddcefe5fb3b7c8dfd1fe90aefc78c721dfb708"
   }
 ]

+ 8 - 3
target_chains/ethereum/contracts/networks/1313161555.json

@@ -1,11 +1,16 @@
 [
   {
     "contractName": "Migrations",
-    "address": "0x1c6Cd107fB71768FBc46F8B6180Eec155C03eEb5"
+    "address": "0x8250f4aF4B972684F7b336503E2D6dFeDeB1487a"
+  },
+  {
+    "contractName": "WormholeReceiver",
+    "address": "0x2880aB155794e7179c9eE2e38200202908C17B43",
+    "transactionHash": "0x6f1da99d424eb99eccf4dca531ecd0fed747ebce25223a42857b12e24439a570"
   },
   {
     "contractName": "PythUpgradable",
-    "address": "0x4305FB66699C3B2702D4d05CF36551390A4c69C6",
-    "transactionHash": "0xcb2ad36f327e73f0aa55c8b18fd87881c5d5d83c324fdbfe133c471759a54825"
+    "address": "0x74f09cb3c7e2A01865f424FD14F6dc9A14E3e94E",
+    "transactionHash": "0xa2849532db5637cceac08b12ac068c7e4862234c6dcd00b92bb70c11fe462938"
   }
 ]

+ 5 - 5
target_chains/ethereum/contracts/networks/1442.json

@@ -1,16 +1,16 @@
 [
   {
     "contractName": "Migrations",
-    "address": "0xA4D48066e3B206E380c989ccB59B887691796e57"
+    "address": "0x4374e5a8b9C22271E9EB878A2AA31DE97DF15DAF"
   },
   {
     "contractName": "WormholeReceiver",
-    "address": "0xb13722A7a87D9f5F080a133eb322A4deCC68f088",
-    "transactionHash": "0xc9d6c850e0e1d2f514cfbd6864b410e2bdb9a09d24ceb4355f1e4da325df0da0"
+    "address": "0x0402833A00e734821f74fA4bbdeD2F1759540519",
+    "transactionHash": "0x894de8593700b975a9064febbd6e073d8366f9bc78ccd9f4e4d68f50231daa9c"
   },
   {
     "contractName": "PythUpgradable",
-    "address": "0xd54bf1758b1C932F86B178F8b1D5d1A7e2F62C2E",
-    "transactionHash": "0x6fa1950947ef8fdb40e8ffd5423207f6abbf1d79dd436dfe2575d4e7cfe3dddb"
+    "address": "0xFf255f800044225f54Af4510332Aa3D67CC77635",
+    "transactionHash": "0xcc1dea8dd6cc57592ea403b13d6edb388c0772a8d55232ccec40fedc1f93b5d7"
   }
 ]

+ 5 - 5
target_chains/ethereum/contracts/networks/15557.json

@@ -1,16 +1,16 @@
 [
   {
     "contractName": "Migrations",
-    "address": "0xf5BBe9558F4Bf37F1eB82fb2CEdb1C775FA56832"
+    "address": "0x5744Cbf430D99456a0A8771208b674F27f8EF0Fb"
   },
   {
     "contractName": "WormholeReceiver",
-    "address": "0x8250f4aF4B972684F7b336503E2D6dFeDeB1487a",
-    "transactionHash": "0x52fa3139a655d1d92c01073dbf5a57bcfa8754c63db13a137c16d24a5661e522"
+    "address": "0x8D254a21b3C86D32F7179855531CE99164721933",
+    "transactionHash": "0x47a411798d48350de0aed9af46e1f588ef4cf5ef32f0fca0900aa4bfc281afda"
   },
   {
     "contractName": "PythUpgradable",
-    "address": "0xA2aa501b19aff244D90cc15a4Cf739D2725B5729",
-    "transactionHash": "0x275abd4ca66afece361d33a84e26dc42703078d299ccb97be895b66fdfb757e9"
+    "address": "0x0708325268dF9F66270F1401206434524814508b",
+    "transactionHash": "0x9b2263cbeee8d56c43b9023c7920b1b8a358d7654a288e5d8ac8edb06b47fc36"
   }
 ]

+ 3 - 8
target_chains/ethereum/contracts/networks/1663.json

@@ -1,16 +1,11 @@
 [
   {
     "contractName": "Migrations",
-    "address": "0xf5BBe9558F4Bf37F1eB82fb2CEdb1C775FA56832"
+    "address": "0xe9d69CdD6Fe41e7B621B4A688C5D1a68cB5c8ADc"
   },
   {
     "contractName": "WormholeReceiver",
-    "address": "0x8250f4aF4B972684F7b336503E2D6dFeDeB1487a",
-    "transactionHash": "0x559ac682e747bdd646825497776694d944aa6184846c932c3d0c484109411374"
-  },
-  {
-    "contractName": "PythUpgradable",
-    "address": "0xA2aa501b19aff244D90cc15a4Cf739D2725B5729",
-    "transactionHash": "0x34885d421b0e2ac05d892ce2e37ccbbbcc04f4dcf90d6c86ac1c658ff6b64fa5"
+    "address": "0x98046Bd286715D3B0BC227Dd7a956b83D8978603",
+    "transactionHash": "0xebc479bfe47741111b45d28cf03fd487034d93ebe617a62048704715f6e308be"
   }
 ]

+ 10 - 0
target_chains/ethereum/contracts/networks/200.json

@@ -0,0 +1,10 @@
+[
+  {
+    "contractName": "WormholeReceiver",
+    "address": "0x056f829183Ec806A78c26C98961678c24faB71af"
+  },
+  {
+    "contractName": "PythUpgradable",
+    "address": "0x8739d5024B5143278E2b15Bd9e7C26f6CEc658F1"
+  }
+]

+ 16 - 0
target_chains/ethereum/contracts/networks/2021.json

@@ -0,0 +1,16 @@
+[
+  {
+    "contractName": "Migrations",
+    "address": "0x87047526937246727E4869C5f76A347160e08672"
+  },
+  {
+    "contractName": "WormholeReceiver",
+    "address": "0x36825bf3Fbdf5a29E2d5148bfe7Dcf7B5639e320",
+    "transactionHash": "0x4d8d2c552d17816299e34a07a6ba03be79c6e903b72b2808b3e4eac9e95f7f2c"
+  },
+  {
+    "contractName": "PythUpgradable",
+    "address": "0xEbe57e8045F2F230872523bbff7374986E45C486",
+    "transactionHash": "0x5b125ddcfbce9256ba2fc396be3413c81901cb4cf029c10e991dbb4e3bad07e8"
+  }
+]

+ 5 - 5
target_chains/ethereum/contracts/networks/2221.json

@@ -1,16 +1,16 @@
 [
   {
     "contractName": "Migrations",
-    "address": "0xf5BBe9558F4Bf37F1eB82fb2CEdb1C775FA56832"
+    "address": "0x0708325268dF9F66270F1401206434524814508b"
   },
   {
     "contractName": "WormholeReceiver",
-    "address": "0x87047526937246727E4869C5f76A347160e08672",
-    "transactionHash": "0x472c397969c3e0be996ed54cd80bddb5a2ab56e921dc51973f62e555da771368"
+    "address": "0xD458261E832415CFd3BAE5E416FdF3230ce6F134",
+    "transactionHash": "0x35287fecad1b02f192c6876d0b796a8d2d29f9f202d035a0225965366d491902"
   },
   {
     "contractName": "PythUpgradable",
-    "address": "0x98046Bd286715D3B0BC227Dd7a956b83D8978603",
-    "transactionHash": "0x3062e9a8ebde180deb6b06980cd47a95b5a9b07aa75119382f6980e6dd4cc732"
+    "address": "0xfA25E653b44586dBbe27eE9d252192F0e4956683",
+    "transactionHash": "0x8a60d851502e15a54e06ae8687b6dc0f76aa5a398d71bff28fa59b5da65436f0"
   }
 ]

+ 5 - 5
target_chains/ethereum/contracts/networks/245022926.json

@@ -1,16 +1,16 @@
 [
   {
     "contractName": "Migrations",
-    "address": "0x5e92a04Cb8591cb7d9FD40B77B474cde0fE44D36"
+    "address": "0x74f09cb3c7e2A01865f424FD14F6dc9A14E3e94E"
   },
   {
     "contractName": "WormholeReceiver",
-    "address": "0x5955C1478F0dAD753C7E2B4dD1b4bC530C64749f",
-    "transactionHash": "0x1c14a83c42fd99c7e78bfadf9a0200ac3cfd9682cdfbbf875b7ebf90ce75e520"
+    "address": "0x23f0e8FAeE7bbb405E7A7C3d60138FCfd43d7509",
+    "transactionHash": "0xfe4234e6a90b1e71943c632fa601d60cbf3ac3c37d78bacc07ed4c11c18ab20f"
   },
   {
     "contractName": "PythUpgradable",
-    "address": "0x2FF312f50689ad279ABb164dB255Eb568733BD6c",
-    "transactionHash": "0x9fb37b19c9c4d1e765c495f74692de0645ce9efbd3ac7ad9d2a64f0bafccc675"
+    "address": "0x0708325268dF9F66270F1401206434524814508b",
+    "transactionHash": "0x8dac71b0f9c54fc38b757a2408e5c5fc24925a3d7b5f6319057f60e0dbbc757d"
   }
 ]

+ 2 - 2
target_chains/ethereum/contracts/networks/280.json

@@ -1,10 +1,10 @@
 [
   {
     "contractName": "WormholeReceiver",
-    "address": "0xA32e2Fe21b6441689f1308867931F4F145186B9F"
+    "address": "0x056f829183Ec806A78c26C98961678c24faB71af"
   },
   {
     "contractName": "PythUpgradable",
-    "address": "0xC38B1dd611889Abc95d4E0a472A667c3671c08DE"
+    "address": "0x8739d5024B5143278E2b15Bd9e7C26f6CEc658F1"
   }
 ]

+ 5 - 5
target_chains/ethereum/contracts/networks/2888.json

@@ -1,16 +1,16 @@
 [
   {
     "contractName": "Migrations",
-    "address": "0xf5BBe9558F4Bf37F1eB82fb2CEdb1C775FA56832"
+    "address": "0xe9d69CdD6Fe41e7B621B4A688C5D1a68cB5c8ADc"
   },
   {
     "contractName": "WormholeReceiver",
-    "address": "0x8250f4aF4B972684F7b336503E2D6dFeDeB1487a",
-    "transactionHash": "0x88883c1bdfd0b2ea87335e3a7d241fea529e62368be8f50bc2ef434299b793eb"
+    "address": "0x98046Bd286715D3B0BC227Dd7a956b83D8978603",
+    "transactionHash": "0x817fa34d680300ca2e5e59f22bf0597b8ddf62e179ddb295dfe0bd7021b252bc"
   },
   {
     "contractName": "PythUpgradable",
-    "address": "0xA2aa501b19aff244D90cc15a4Cf739D2725B5729",
-    "transactionHash": "0xaa448d9b21ee187620674ca3b40a5bc8c7b3c2148f5206f18a80e2a288cd9604"
+    "address": "0x8D254a21b3C86D32F7179855531CE99164721933",
+    "transactionHash": "0x0aadc4b009aaa6b38ab3a8c92f374405bc0d1d3bf61e9d7ca084a6762102406a"
   }
 ]

+ 5 - 5
target_chains/ethereum/contracts/networks/322.json

@@ -1,16 +1,16 @@
 [
   {
     "contractName": "Migrations",
-    "address": "0x1c6Cd107fB71768FBc46F8B6180Eec155C03eEb5"
+    "address": "0x8250f4aF4B972684F7b336503E2D6dFeDeB1487a"
   },
   {
     "contractName": "WormholeReceiver",
-    "address": "0x4305FB66699C3B2702D4d05CF36551390A4c69C6",
-    "transactionHash": "0xf7568279c184e5cfacb3e837759e096133731cdbfe601ef207951d378ee81e7b"
+    "address": "0x2880aB155794e7179c9eE2e38200202908C17B43",
+    "transactionHash": "0x3380ebabfb9aa1478cf1ab3366d587e7a911cbc0a96e9244f1999a8611481b45"
   },
   {
     "contractName": "PythUpgradable",
-    "address": "0x15D35b8985e350f783fe3d95401401E194ff1E6f",
-    "transactionHash": "0xfb01e67fb897d60854eaabfe1f7c1b5f9c773be5be62cc6f976a58fc8133980d"
+    "address": "0x74f09cb3c7e2A01865f424FD14F6dc9A14E3e94E",
+    "transactionHash": "0xb2dfa8ff30423867b2c49bf8b7efbbd8b92786c93272695e2736e962707cfa01"
   }
 ]

+ 5 - 5
target_chains/ethereum/contracts/networks/338.json

@@ -1,16 +1,16 @@
 [
   {
     "contractName": "Migrations",
-    "address": "0x1c6Cd107fB71768FBc46F8B6180Eec155C03eEb5"
+    "address": "0x8250f4aF4B972684F7b336503E2D6dFeDeB1487a"
   },
   {
     "contractName": "WormholeReceiver",
-    "address": "0x15D35b8985e350f783fe3d95401401E194ff1E6f",
-    "transactionHash": "0x1c33d9b6971f7337e0e2ea390affe18fe90709dcb803712f6d8bb4a008705fb7"
+    "address": "0x74f09cb3c7e2A01865f424FD14F6dc9A14E3e94E",
+    "transactionHash": "0xafa1d9477bc2503be1bdc3bde6867d1d11084472232ffb26c8d21285736b6d04"
   },
   {
     "contractName": "PythUpgradable",
-    "address": "0xBAEA4A1A2Eaa4E9bb78f2303C213Da152933170E",
-    "transactionHash": "0x507d747b3c978794cc880a201c009d37367f66925b930c0cebc30c493c9d31eb"
+    "address": "0x36825bf3Fbdf5a29E2d5148bfe7Dcf7B5639e320",
+    "transactionHash": "0x5bb4d330cd83e7acfaf3cf2bbf7ffd78b95c4853f9fff00e903e558ffc117734"
   }
 ]

+ 5 - 5
target_chains/ethereum/contracts/networks/3441005.json

@@ -1,16 +1,16 @@
 [
   {
     "contractName": "Migrations",
-    "address": "0xf5BBe9558F4Bf37F1eB82fb2CEdb1C775FA56832"
+    "address": "0xe9d69CdD6Fe41e7B621B4A688C5D1a68cB5c8ADc"
   },
   {
     "contractName": "WormholeReceiver",
-    "address": "0x8250f4aF4B972684F7b336503E2D6dFeDeB1487a",
-    "transactionHash": "0x6392d7c18598624ae90c50c0a1590d9577ae85e2e1e3858ba017e03c4309bfc5"
+    "address": "0x98046Bd286715D3B0BC227Dd7a956b83D8978603",
+    "transactionHash": "0xf1b781574f0371b45dfee549de7731b465964a0d5e26066a2f6bd6e0824cc62e"
   },
   {
     "contractName": "PythUpgradable",
-    "address": "0xA2aa501b19aff244D90cc15a4Cf739D2725B5729",
-    "transactionHash": "0x8f75db66aa64c7058d9b05d1763d5085d846f605a87860d839bb77a56b9571ca"
+    "address": "0x41c9e39574F40Ad34c79f1C99B66A45eFB830d4c",
+    "transactionHash": "0x85613f8f1f9c39a85c9c99eac70df97c0d79b334a0912bf509a178567b4acb79"
   }
 ]

+ 8 - 3
target_chains/ethereum/contracts/networks/4002.json

@@ -1,11 +1,16 @@
 [
   {
     "contractName": "Migrations",
-    "address": "0x1c6Cd107fB71768FBc46F8B6180Eec155C03eEb5"
+    "address": "0x41955476936DdA8d0fA98b8d1778172F7E4fCcA1"
+  },
+  {
+    "contractName": "WormholeReceiver",
+    "address": "0xe9d69CdD6Fe41e7B621B4A688C5D1a68cB5c8ADc",
+    "transactionHash": "0x4d6cf22cccbbba0a3af77179139d4dd5886d3eca9f191be67d713618aeeeba16"
   },
   {
     "contractName": "PythUpgradable",
-    "address": "0xff1a0f4744e8582DF1aE09D5611b887B6a12925C",
-    "transactionHash": "0x0261874d2b5cd39e4a6b49276d13089d80e0a5a43efa82fc9cab9986633bd67e"
+    "address": "0x5744Cbf430D99456a0A8771208b674F27f8EF0Fb",
+    "transactionHash": "0xb38c29b87c0747cd4b0df12bbc9ca36c62420c389b89df3f757c9e24a5d2e65b"
   }
 ]

+ 5 - 5
target_chains/ethereum/contracts/networks/412346.json

@@ -1,16 +1,16 @@
 [
   {
     "contractName": "Migrations",
-    "address": "0xf5BBe9558F4Bf37F1eB82fb2CEdb1C775FA56832"
+    "address": "0x74f09cb3c7e2A01865f424FD14F6dc9A14E3e94E"
   },
   {
     "contractName": "WormholeReceiver",
-    "address": "0x8250f4aF4B972684F7b336503E2D6dFeDeB1487a",
-    "transactionHash": "0xa2c0fe4dd6e9b3f752df9f4db1cce9067b976ee41e948c419aba8e14931b05c5"
+    "address": "0x23f0e8FAeE7bbb405E7A7C3d60138FCfd43d7509",
+    "transactionHash": "0x9c10c5a34b70cc318810ffae04ced8ca5987f25bffb3105ce7a46ea2f7741ac0"
   },
   {
     "contractName": "PythUpgradable",
-    "address": "0xA2aa501b19aff244D90cc15a4Cf739D2725B5729",
-    "transactionHash": "0xfc10555db66929bd0b8c12adf6cdc9ea0dbf688e353fcd64566b23a3f1b1b456"
+    "address": "0xEbe57e8045F2F230872523bbff7374986E45C486",
+    "transactionHash": "0xaea4b8fe15e7c9db22236904a59dfc8ef2329f4c5db07c17f9afedc0404e4fb4"
   }
 ]

+ 13 - 3
target_chains/ethereum/contracts/networks/420.json

@@ -1,11 +1,21 @@
 [
   {
     "contractName": "Migrations",
-    "address": "0x1c6Cd107fB71768FBc46F8B6180Eec155C03eEb5"
+    "address": "0x74f09cb3c7e2A01865f424FD14F6dc9A14E3e94E"
+  },
+  {
+    "contractName": "WormholeReceiver",
+    "address": "0x23f0e8FAeE7bbb405E7A7C3d60138FCfd43d7509",
+    "transactionHash": "0x2a601d5328b24e05eea22049020388484513ce0759edce7a1226abbe7d787903"
+  },
+  {
+    "contractName": "WormholeReceiver",
+    "address": "0xEbe57e8045F2F230872523bbff7374986E45C486",
+    "transactionHash": "0x77819f07af5e5141344f0fbe749b3268ce20f2c54a62faa4fb7351e7be04c46a"
   },
   {
     "contractName": "PythUpgradable",
-    "address": "0xff1a0f4744e8582DF1aE09D5611b887B6a12925C",
-    "transactionHash": "0x89c663594a3d7468ab799b75b6424586c6bc150720584a952d8610165ba6c302"
+    "address": "0xDd24F84d36BF92C65F92307595335bdFab5Bbd21",
+    "transactionHash": "0x3a9eee905754690f65bfb9fa5bc79ff47c043f005f601522e097556510b75481"
   }
 ]

+ 16 - 0
target_chains/ethereum/contracts/networks/421614.json

@@ -0,0 +1,16 @@
+[
+  {
+    "contractName": "Migrations",
+    "address": "0x5f3c61944CEb01B3eAef861251Fb1E0f14b848fb"
+  },
+  {
+    "contractName": "WormholeReceiver",
+    "address": "0xfA25E653b44586dBbe27eE9d252192F0e4956683",
+    "transactionHash": "0x6e1c7cf58c64c698fcece663ea053883c404f6b37f26526138e7cd5decbef34d"
+  },
+  {
+    "contractName": "PythUpgradable",
+    "address": "0x4374e5a8b9C22271E9EB878A2AA31DE97DF15DAF",
+    "transactionHash": "0xdc8988d4ab07e42a739044378489d419918f365143d09445a249abe949b6e75b"
+  }
+]

+ 8 - 3
target_chains/ethereum/contracts/networks/43113.json

@@ -1,11 +1,16 @@
 [
   {
     "contractName": "Migrations",
-    "address": "0x1c6Cd107fB71768FBc46F8B6180Eec155C03eEb5"
+    "address": "0x2880aB155794e7179c9eE2e38200202908C17B43"
+  },
+  {
+    "contractName": "WormholeReceiver",
+    "address": "0x5744Cbf430D99456a0A8771208b674F27f8EF0Fb",
+    "transactionHash": "0x7ba228903a38458af0fc2d460993f047b5d94718cc152a7bd01bd8167dbe9e5b"
   },
   {
     "contractName": "PythUpgradable",
-    "address": "0xff1a0f4744e8582DF1aE09D5611b887B6a12925C",
-    "transactionHash": "0xf9f70f6671e8a5cbfcc04a93344260674aeb129cf6b3d7278f8c4712aea04f77"
+    "address": "0x23f0e8FAeE7bbb405E7A7C3d60138FCfd43d7509",
+    "transactionHash": "0xe02ba437c33e4df4f1652c464ff354105438b983feee0a74d2ae788fdd2911a8"
   }
 ]

+ 8 - 3
target_chains/ethereum/contracts/networks/44787.json

@@ -1,11 +1,16 @@
 [
   {
     "contractName": "Migrations",
-    "address": "0x1c6Cd107fB71768FBc46F8B6180Eec155C03eEb5"
+    "address": "0x8250f4aF4B972684F7b336503E2D6dFeDeB1487a"
+  },
+  {
+    "contractName": "WormholeReceiver",
+    "address": "0x2880aB155794e7179c9eE2e38200202908C17B43",
+    "transactionHash": "0x881bc2882c438578927915f39a9765ec979c7b67ec32e4e06b28ad4efc8053da"
   },
   {
     "contractName": "PythUpgradable",
-    "address": "0xff1a0f4744e8582DF1aE09D5611b887B6a12925C",
-    "transactionHash": "0x573694c6309a61713653bdce2333a6fa20e564d9a7e5b37b59b211f81ea83aa0"
+    "address": "0x74f09cb3c7e2A01865f424FD14F6dc9A14E3e94E",
+    "transactionHash": "0x8a0fb4a2bbffc26daebd6f3ac999ab4443bc5da198f6e60b4a4e7423ab63d0b4"
   }
 ]

+ 5 - 5
target_chains/ethereum/contracts/networks/5001.json

@@ -1,16 +1,16 @@
 [
   {
     "contractName": "Migrations",
-    "address": "0xf5BBe9558F4Bf37F1eB82fb2CEdb1C775FA56832"
+    "address": "0x36825bf3Fbdf5a29E2d5148bfe7Dcf7B5639e320"
   },
   {
     "contractName": "WormholeReceiver",
-    "address": "0x8250f4aF4B972684F7b336503E2D6dFeDeB1487a",
-    "transactionHash": "0xc72732e29994caa647e7fb891ee547eb1dcb76b66fc43751c9145e93a9a2b4a9"
+    "address": "0xEbe57e8045F2F230872523bbff7374986E45C486",
+    "transactionHash": "0x072913deeddfa7214d9a8411bf7c427b02e2d8631933a1e495705715a39c48d8"
   },
   {
     "contractName": "PythUpgradable",
-    "address": "0xA2aa501b19aff244D90cc15a4Cf739D2725B5729",
-    "transactionHash": "0x43468658e986846dd076bbc6abc2714e1b663a3b64b1d212534f05f31245d4e1"
+    "address": "0xDd24F84d36BF92C65F92307595335bdFab5Bbd21",
+    "transactionHash": "0xc55603d13811e4834255208cbdab5ad0960f4f3c10065960870c28fd9ff3c355"
   }
 ]

+ 5 - 5
target_chains/ethereum/contracts/networks/534351.json

@@ -1,16 +1,16 @@
 [
   {
     "contractName": "Migrations",
-    "address": "0xf5BBe9558F4Bf37F1eB82fb2CEdb1C775FA56832"
+    "address": "0x87047526937246727E4869C5f76A347160e08672"
   },
   {
     "contractName": "WormholeReceiver",
-    "address": "0x8250f4aF4B972684F7b336503E2D6dFeDeB1487a",
-    "transactionHash": "0xb8f76498bf67a70d502f0182570371a6e37947bdd66b3daceac39751d0ba5c4b"
+    "address": "0x36825bf3Fbdf5a29E2d5148bfe7Dcf7B5639e320",
+    "transactionHash": "0x6f12923b7a7049e4fa226605db5565e11792866395b7a05bda18ceb9405bd141"
   },
   {
     "contractName": "PythUpgradable",
-    "address": "0xA2aa501b19aff244D90cc15a4Cf739D2725B5729",
-    "transactionHash": "0x59eefaa21c17deed2ecce2c766450e78b66d5c9790e7dfbf10114a72b785838f"
+    "address": "0x41c9e39574F40Ad34c79f1C99B66A45eFB830d4c",
+    "transactionHash": "0x9a3da9264864df38f3d7e63689a26bdb791975193af08c244f589fdec49998ae"
   }
 ]

+ 5 - 5
target_chains/ethereum/contracts/networks/59140.json

@@ -1,16 +1,16 @@
 [
   {
     "contractName": "Migrations",
-    "address": "0xf5BBe9558F4Bf37F1eB82fb2CEdb1C775FA56832"
+    "address": "0x26DD80569a8B23768A1d80869Ed7339e07595E85"
   },
   {
     "contractName": "WormholeReceiver",
-    "address": "0x8250f4aF4B972684F7b336503E2D6dFeDeB1487a",
-    "transactionHash": "0xecde1af2814ab952a50056b496503fb230f0b4efe767b33c27c338860d8b3fb0"
+    "address": "0xfA25E653b44586dBbe27eE9d252192F0e4956683",
+    "transactionHash": "0xe42e4e56f81ad11df6e37ba77a288a6867bda27af5d05bbc7fa56814f379a5d2"
   },
   {
     "contractName": "PythUpgradable",
-    "address": "0xA2aa501b19aff244D90cc15a4Cf739D2725B5729",
-    "transactionHash": "0xc1b04e9261e9a92e3387186ba90affc88ee9ac53ec91ffd8b369aa6a6b85b775"
+    "address": "0xdF21D137Aadc95588205586636710ca2890538d5",
+    "transactionHash": "0xb082fd7e8c8b8272ba346631ffbedb9cf874a99cacc51256e1e0b184a43cb096"
   }
 ]

+ 5 - 5
target_chains/ethereum/contracts/networks/7001.json

@@ -1,16 +1,16 @@
 [
   {
     "contractName": "Migrations",
-    "address": "0xf5BBe9558F4Bf37F1eB82fb2CEdb1C775FA56832"
+    "address": "0x5744Cbf430D99456a0A8771208b674F27f8EF0Fb"
   },
   {
     "contractName": "WormholeReceiver",
-    "address": "0xA2aa501b19aff244D90cc15a4Cf739D2725B5729",
-    "transactionHash": "0xf58d1cff10bf5da47a8dc36afa61dfd130703602dcf7df035108bb5ff835aa34"
+    "address": "0x8D254a21b3C86D32F7179855531CE99164721933",
+    "transactionHash": "0x3605b7bd2003f35b608638d8487bd0704b9ef677be21a7a68bd181ba368507a0"
   },
   {
     "contractName": "PythUpgradable",
-    "address": "0x87047526937246727E4869C5f76A347160e08672",
-    "transactionHash": "0x9d793808f5bc087a1db5ffe06292085db0ff513c489718ad9d21200d039bac8f"
+    "address": "0x0708325268dF9F66270F1401206434524814508b",
+    "transactionHash": "0x5cc83266f3ff7dcaab194fb3ca0786edccd862d535f806c7c2eda3cb0f55f61b"
   }
 ]

+ 5 - 5
target_chains/ethereum/contracts/networks/71.json

@@ -1,16 +1,16 @@
 [
   {
     "contractName": "Migrations",
-    "address": "0xf5BBe9558F4Bf37F1eB82fb2CEdb1C775FA56832"
+    "address": "0x36825bf3Fbdf5a29E2d5148bfe7Dcf7B5639e320"
   },
   {
     "contractName": "WormholeReceiver",
-    "address": "0x8250f4aF4B972684F7b336503E2D6dFeDeB1487a",
-    "transactionHash": "0x78366f5b1627692f296289d28375893971e7a6e3919b172f0c0d94802b80cf0a"
+    "address": "0xEbe57e8045F2F230872523bbff7374986E45C486",
+    "transactionHash": "0xb6c5309267db189e05599bd6f782e8f7a2b8e3d917e6c3030e673a782720e36d"
   },
   {
     "contractName": "PythUpgradable",
-    "address": "0xA2aa501b19aff244D90cc15a4Cf739D2725B5729",
-    "transactionHash": "0x14ecc13cff83dd7c6109443549cc0543b555fbc1ff2625c5b10854edae0cee7f"
+    "address": "0xDd24F84d36BF92C65F92307595335bdFab5Bbd21",
+    "transactionHash": "0x436a6f0207c57e980b0517bc27779bed018a74ba1b815eb6a0bba4c03b4543c2"
   }
 ]

+ 5 - 5
target_chains/ethereum/contracts/networks/7701.json

@@ -1,16 +1,16 @@
 [
   {
     "contractName": "Migrations",
-    "address": "0xf5BBe9558F4Bf37F1eB82fb2CEdb1C775FA56832"
+    "address": "0x98046Bd286715D3B0BC227Dd7a956b83D8978603"
   },
   {
     "contractName": "WormholeReceiver",
-    "address": "0x8250f4aF4B972684F7b336503E2D6dFeDeB1487a",
-    "transactionHash": "0x88f723ceda562f62f8694a6636967189f41fd32819dbe9aeebd47fb37182e4cf"
+    "address": "0x41c9e39574F40Ad34c79f1C99B66A45eFB830d4c",
+    "transactionHash": "0xabd2f43ea8c0e4d351127a803f0c7dbbd8f89df0ecdbfa237d9d50fbca8abc1b"
   },
   {
     "contractName": "PythUpgradable",
-    "address": "0xA2aa501b19aff244D90cc15a4Cf739D2725B5729",
-    "transactionHash": "0x96a9388ee29c40f04e306aaaf924e25e228545d443d2ef7b584c043c8f7f9666"
+    "address": "0x26DD80569a8B23768A1d80869Ed7339e07595E85",
+    "transactionHash": "0x0e2f895eaa73e933de4b683b3b9c0d3aca694c613db1f01e098358ec0d6ba891"
   }
 ]

+ 8 - 3
target_chains/ethereum/contracts/networks/80001.json

@@ -1,11 +1,16 @@
 [
   {
     "contractName": "Migrations",
-    "address": "0x1c6Cd107fB71768FBc46F8B6180Eec155C03eEb5"
+    "address": "0xCd76c50c3210C5AaA9c39D53A4f95BFd8b1a3a19"
+  },
+  {
+    "contractName": "WormholeReceiver",
+    "address": "0x876A4e56A51386aBb1a5ab5d62f77E814372f0C7",
+    "transactionHash": "0x0aed002802f1a18c24ca981c9aa8fff23dc088e3f0d047016b3dc4bc5b7bd910"
   },
   {
     "contractName": "PythUpgradable",
-    "address": "0xff1a0f4744e8582DF1aE09D5611b887B6a12925C",
-    "transactionHash": "0xad07603dc3bdf109bdffb95097303b5cb6c254e9cd13538d8f73edcebc525ebf"
+    "address": "0xFC6bd9F9f0c6481c6Af3A7Eb46b296A5B85ed379",
+    "transactionHash": "0x5c2ce50e010da0e38cd8def8492bf1a0a469fe6a58ea39872c3c66a0b7f08b8a"
   }
 ]

+ 5 - 5
target_chains/ethereum/contracts/networks/83.json

@@ -1,16 +1,16 @@
 [
   {
     "contractName": "Migrations",
-    "address": "0x411DDe0Ffe69FBD22bd5132dCA5070A63daCC35C"
+    "address": "0x49b8d3872661602A81086F5d663934c9Ffb1FB5C"
   },
   {
     "contractName": "WormholeReceiver",
-    "address": "0xe2a119872F5119398ea70669ae3BF0b0cca5ADeB",
-    "transactionHash": "0x7128125aec6faff8b5ee8541b13bd2d1072e38271f579d2292ad29a642199fa5"
+    "address": "0x257c3B61102442C1c3286Efbd24242322d002920",
+    "transactionHash": "0xe486c887035a7c958e4d2ab82682583f57290edf72550b09b69e367c894b5741"
   },
   {
     "contractName": "PythUpgradable",
-    "address": "0x5fF5B9039FbD8256864A4460B7EA77093A65B1b5",
-    "transactionHash": "0x561cb8b1936bb3979d603a9e871cb61c2d485b0e51ef011982a1970e30ea5f5e"
+    "address": "0x5a71C07a0588074443545eE0c08fb0375564c3E4",
+    "transactionHash": "0xe1efb01c6b9b79db431eaa80fda2c1e542c4edbc19b8e620143c26efc69fb57a"
   }
 ]

+ 8 - 3
target_chains/ethereum/contracts/networks/84531.json

@@ -1,11 +1,16 @@
 [
   {
     "contractName": "Migrations",
-    "address": "0x845122970AA347Ad841F22156EFdff7F3Eaf30Ce"
+    "address": "0x74f09cb3c7e2A01865f424FD14F6dc9A14E3e94E"
+  },
+  {
+    "contractName": "WormholeReceiver",
+    "address": "0x23f0e8FAeE7bbb405E7A7C3d60138FCfd43d7509",
+    "transactionHash": "0xba50c9096c1d377ad9e55796f9b3ab6de443fa7cedb0bf2da18de1e6f0555fcf"
   },
   {
     "contractName": "PythUpgradable",
-    "address": "0x5955C1478F0dAD753C7E2B4dD1b4bC530C64749f",
-    "transactionHash": "0xda0a2d4c13f677632102577b8eadb5ca11abd25d60e833c7d041ee84f4b922e0"
+    "address": "0xEbe57e8045F2F230872523bbff7374986E45C486",
+    "transactionHash": "0x56c117bde49b045461fff0b7304425f22a476e79b11cfde617a19914ee697db0"
   }
 ]

+ 5 - 5
target_chains/ethereum/contracts/networks/88882.json

@@ -1,16 +1,16 @@
 [
   {
     "contractName": "Migrations",
-    "address": "0xf5BBe9558F4Bf37F1eB82fb2CEdb1C775FA56832"
+    "address": "0xe9d69CdD6Fe41e7B621B4A688C5D1a68cB5c8ADc"
   },
   {
     "contractName": "WormholeReceiver",
-    "address": "0x8250f4aF4B972684F7b336503E2D6dFeDeB1487a",
-    "transactionHash": "0x25c96b6f7cf12be50d5c7b04a2e3ed8afaee4bcc11eac5fb364a012abf54a2a6"
+    "address": "0x98046Bd286715D3B0BC227Dd7a956b83D8978603",
+    "transactionHash": "0x56b330316a4a0f0c8b444eb700dc072ae0428f85475154c5e080991df948e4a8"
   },
   {
     "contractName": "PythUpgradable",
-    "address": "0xA2aa501b19aff244D90cc15a4Cf739D2725B5729",
-    "transactionHash": "0xb8749b0463a0cc7f0afd6f4b5da4e6fa608a0214cb96ae3caa6f04b9dc6741d6"
+    "address": "0x23f0e8FAeE7bbb405E7A7C3d60138FCfd43d7509",
+    "transactionHash": "0xdca738f295b40e287a726ee63ac55db42191ba21bfe3de139d0f2f51a5bd4f8f"
   }
 ]

+ 5 - 5
target_chains/ethereum/contracts/networks/89.json

@@ -1,16 +1,16 @@
 [
   {
     "contractName": "Migrations",
-    "address": "0xe9d69CdD6Fe41e7B621B4A688C5D1a68cB5c8ADc"
+    "address": "0x41c9e39574F40Ad34c79f1C99B66A45eFB830d4c"
   },
   {
     "contractName": "WormholeReceiver",
-    "address": "0x98046Bd286715D3B0BC227Dd7a956b83D8978603",
-    "transactionHash": "0xe1dba0ad8e34fff53f9bcca6f1efd7a771ee09400e89d7f171334078f229a550"
+    "address": "0xDd24F84d36BF92C65F92307595335bdFab5Bbd21",
+    "transactionHash": "0x7293fac6bc998243ee9c7e8154d8dd94627f4747a8f6dbb08d905f1b5aeb1247"
   },
   {
     "contractName": "PythUpgradable",
-    "address": "0x23f0e8FAeE7bbb405E7A7C3d60138FCfd43d7509",
-    "transactionHash": "0xd1b29ca2e4973a19b06b6aa96fe6150f40c1f252cfa698401c2581ba17111a64"
+    "address": "0x5D289Ad1CE59fCC25b6892e7A303dfFf3a9f7167",
+    "transactionHash": "0xe4f40d2c58ba7d248bf56dffc982fe3791c1c3f1396b9189c66957a24dc9c97e"
   }
 ]

+ 5 - 5
target_chains/ethereum/contracts/networks/9000.json

@@ -1,16 +1,16 @@
 [
   {
     "contractName": "Migrations",
-    "address": "0x5e92a04Cb8591cb7d9FD40B77B474cde0fE44D36"
+    "address": "0x8250f4aF4B972684F7b336503E2D6dFeDeB1487a"
   },
   {
     "contractName": "WormholeReceiver",
-    "address": "0xfD4EC459371580925319059306388D9753f72405",
-    "transactionHash": "0x664b5882e14416bae9c40a03dcc4f5ca769eaed41bb44596c31056b1f4386bad"
+    "address": "0x2880aB155794e7179c9eE2e38200202908C17B43",
+    "transactionHash": "0x668110a253820aeb61b4becbdf423f80e91b4b3b72c81fa1bb985d0bf467c1a7"
   },
   {
     "contractName": "PythUpgradable",
-    "address": "0x354bF866A4B006C9AF9d9e06d9364217A8616E12",
-    "transactionHash": "0xeece8e67ba75cdd07348ddafa383e7371b15ad08e2e630c8f040025c72fa6eba"
+    "address": "0x74f09cb3c7e2A01865f424FD14F6dc9A14E3e94E",
+    "transactionHash": "0x5550d5d071da46d6e3b08eeec33cf04e7121b68c1d86bc653c0558e582884169"
   }
 ]

+ 8 - 3
target_chains/ethereum/contracts/networks/97.json

@@ -1,11 +1,16 @@
 [
   {
     "contractName": "Migrations",
-    "address": "0x8005731FD1b5b5751a08801FB19B75108C175c87"
+    "address": "0x41955476936DdA8d0fA98b8d1778172F7E4fCcA1"
+  },
+  {
+    "contractName": "WormholeReceiver",
+    "address": "0xe9d69CdD6Fe41e7B621B4A688C5D1a68cB5c8ADc",
+    "transactionHash": "0x9da1611466ed1b67d12aacfe9779cd9ed554399d62845b8d24abadf1ed624967"
   },
   {
     "contractName": "PythUpgradable",
-    "address": "0xd7308b14BF4008e7C7196eC35610B1427C5702EA",
-    "transactionHash": "0xaf87d230967901c4122ae191647efb5016033d2b4130e3d174ea136633f2fb8f"
+    "address": "0x5744Cbf430D99456a0A8771208b674F27f8EF0Fb",
+    "transactionHash": "0x5051ed4fb3de92e45523567c4f9081d6681d0d03db09186d8e03866a6ed5d193"
   }
 ]

+ 2 - 3
target_chains/ethereum/contracts/scripts/contractManagerConfig.js

@@ -13,10 +13,9 @@ function convertChainId(number) {
   return "0x" + number.toString(16);
 }
 
-function getDefaultConfig(chainName) {
-  const chain = DefaultStore.chains[chainName];
+function getDefaultConfig(_chainName) {
   const { dataSources, governanceDataSource, wormholeConfig } =
-    getDefaultDeploymentConfig(chain.isMainnet() ? "stable" : "beta");
+    getDefaultDeploymentConfig(process.env.CHANNEL);
 
   const emitterChainIds = dataSources.map((dataSource) =>
     convertChainId(dataSource.emitterChain)

+ 0 - 17
target_chains/ethereum/contracts/scripts/loadEnv.js

@@ -1,17 +0,0 @@
-const dotenv = require("dotenv");
-var path = require("path");
-
-/**
- * Load environment variables for truffle. This method will load some
- * cluster-wide environment variables if `CLUSTER` is set in
- * `{rootPath}/.env`.
- * @param {string} rootPath
- */
-module.exports = function loadEnv(rootPath) {
-  dotenv.config({ path: path.join(rootPath, ".env") });
-  if (process.env.CLUSTER !== undefined) {
-    dotenv.config({
-      path: path.join(rootPath, `.env.cluster.${process.env.CLUSTER}`),
-    });
-  }
-};