Since you are using Promise.all in function distribute() {}
if I have to set multiple merkle roots from the same private key it fails with the obscure
The transaction failed after 33 attempts. Which i've learned basically means that you attempted to make two transactions at the same time from the same private key.