use two-pass approach with clean date time