fix is_empty function