change to new syntax macro dispatch