Generating the Prodcut model