fix update func