add support for `not` operator
add tests for `not` operator