update macro