new withProduct