product initialization