Change to macro system