Multiproduct

Second version that supports multiproduct.