Why does this need to be an argument, as opposed to a `db()` call in DataObject where `castingHelper()` is used? It makes the method signature and purpose unnecessarily complex from what I can tell.