pretty sure we can cache this as a universal function and then return that instead.