implement || and &&