+ + + + + + + + ++ + + f + ++