update by zj one