compile AND and OR