la forma de hacer las cosas en clojure puede ser muy cómoda representa todo como datos hasta que sea el momento de usar esos datos siguiendo este enfoque, cosas como "refactorizar todo el frontend para usar multicall tanto como sea posible" se vuelven realmente fáciles y directas
esencialmente representas cada llamada de contrato como datos, un mapeo que contiene la dirección, abi y calldata que se deben pasar tu puedes pasar esos como elementos individuales a una función que ejecutará la llamada también podrías pasar una lista de ellos a otra función que los ejecutará con multicall
crucialmente, si ya estás coordinando llamadas de esta manera en toda tu base de código, implementar este cambio es realmente muy menor y probablemente se puede hacer en un solo lugar.
401