update by token