processing both sources in one pass