product model implementation, in progress