FIX: wrong precedence of the "!" operator