Refactor the macro.
Merge branch 'feature/update-macro' into develop