code: def merge_deployment_data(dict1: DeployedContracts, dict2: DeployedContracts) -> DeployedContracts:
      
      if not dict1:
          return dict2
      if not dict2:
          return dict1
      common_contracts: Dict[str, DeployedContract] = deepcopy(dict1['contracts'])
      assert not common_contracts.keys() & dict2['contracts'].keys()
      common_contracts.update(dict2['contracts'])
  
      assert dict2['chain_id'] == dict1['chain_id']
      assert dict2['contracts_version'] == dict1['contracts_version']
  
      return {
          'contracts': common_contracts,
          'chain_id': dict1['chain_id'],
          'contracts_version': dict1['contracts_version'],
      }
docs: Take contents of two deployment JSON files and merge them
  
      The dictionary under 'contracts' key will be merged. The 'contracts'
      contents from different JSON files must not overlap. The contents
      under other keys must be identical.