added macros/typedefs again