This needs to get abstracted into the `Sync` module.