does `.map` automatically return promises or something? It seems like nothing is being returned here, i.e. `promises = [null, null, ..., null]` by the end