added extra function for type macros and extra function for other fields