fix has_value check