added AND OR ops