Improved macro