some def guard and include changes