TODO temp commit: export symbols, improve macros