we could consider doing this without querySelectorAll