creates product model