use do {} while(0)