ifndef guard modified