refactored file data sinks