fix value generation in the `product` case