modified ifdef