macros for check_so