use stdbool.h instead of a typedef and #define