Version using only futures, but with the same result.