More macros... AND functions this time.