implement logicalOperators