combine source arrays into one