functions return true/false values appropriately