product class definition
updated