work on correctly handling sourceProducts and sourceProductPaths