added ifdefs to header