Bitsave is a multichain project so it can function on any chain, but every chain has it's own structure, and that greatly affects the progress with Bitsave on that chain, for example: we added support for usdc on Bitsave contracts on Zetachain. However, the first transaction for a user on the protocol fails. This transaction is the one that creates the child contract.  In an attempt to debug, we started writing out individual sections of the contract.  Started with the swap feature, the first issue is it takes a long while to execute. We first swapped goerli eth to matic which worked but took 30mins for the confirmation.  The second swap was from geth to usdc which was reverted after about 1 hour. This conditions will affect the structure of the contract. We decided to consider a one contract state management instead of a parent-child contract. This will cut cost and also be faster since there's no redeployment, but it still didn't execute, and we've been stuck there on Zetachain. So far building on Arbitrum. We published our progress reports: Zetachain https://xpan.notion.site/Zetachain-hackathon-progress-9c006cb9268c442fbcc8c0e8bca69747, Algorand: https://xpan.notion.site/Algorand-bitsave-7a0ef0027027453f945b2d0e845f558a?pvs=4