add product feature(unfinished)