Explain use of macro