added components to compilemacro