macro correction to be more portable