add assert abort and check macros