now uses async to iterate through all four collections