added second constructor do product