add FAIL_IF macro