added logical operators