work in progress - macro compilation is not done yet