typeproduct : version1