we have a Gnosis Safe in polygon, and by mistake we sent funds to the same address but on Avalanche. We tried to deploy a Safe in Avalanche, with the same address, but the problem is that the Safe singleton in Avalanche is on another address so the UI does not work at all, and also safe_cli is not loading the multisig. This is the error i'm getting trying to use Avalanche network

web3.exceptions.BadFunctionCallOutput: Could not transact with/call contract function, is contract deployed correctly and chain synced?

There is way to pass a correct address for the singleton? I need to recover funds in that network.

ps: this is the error i got using the official rpc endpoint (https://api.avax.network/ext/bc/C/rpc)

web3.exceptions.BadFunctionCallOutput: Could not decode contract function call to VERSION with return data: b'', output_types: ['string']

Thank you

1 Answer 1


unless Avalanche disables EIP155 there's no way to deploy the same singleton and recover the funds. Nothing to do in this case

EDIT: We realised that Singleton Factory was deployed before EIP155 and we have just deployed our contracts in the "classic" addresses, so recovery is possible.

  • Thats weird, because i was able to deploy the proxy of the safe with the same address i already used on polygon!
    – reiven
    Jul 8, 2022 at 1:17
  • That's because we use CREATE2 for deploying proxies
    – Uxío
    Aug 4, 2022 at 15:34
  • But CREATE2 allows you to deploy to the same address. I don't see why this singleton that is missing can't be deployed to Avalanche?
    – reiven
    Sep 10, 2022 at 17:17
  • I've just updated my answer
    – Uxío
    Nov 9, 2022 at 9:24

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.