merge with different sources