we could go even farther and cache this too to avoid the loop.