has anyone here had any success interacting with smart contract functions using walletconnect with ethers.js? or do you have to use web3