Minor nit, we should probably avoid unpacking records and try and stick to API functions so the eventual removal of cross module records isn't any harder than it needs to be.