removed not functinal not_if