add item by zj