New if-modified-logic