macro update