types added
unnecessary macros removed
monitoring callbacks support