begin with parse product