I wonder if this function should be public, and possibly pulled in as an invoker.