why return true on true and false on false?