Generating the product