enhanced macro support