human
Solve the following python programming problem given the following code:
def find_resource(manager, name_or_id, **find_args) : 
    'Look for resource in a given manager.

    Used as a helper for the _find_* methods.
    Example:

    .. code-block:: python

        def _find_hypervisor(cs, hypervisor):
            #Get a hypervisor by name or ID.
            return cliutils.find_resource(cs.hypervisors, hypervisor)
    ' 
    try : 
        return manager.get (int (name_or_id)) 
except (TypeError, ValueError, exceptions.NotFound) : 
        pass 
try : 
        if six.PY2 : 
            tmp_id = strutils.safe_encode (name_or_id) 
else : 
            tmp_id = strutils.safe_decode (name_or_id) 
if uuidutils.is_uuid_like (tmp_id) : 
            return manager.get (tmp_id) 
except (TypeError, ValueError, exceptions.NotFound) : 
        pass 
if getattr (manager, 'is_alphanum_id_allowed', False) : 
        try : 
            return manager.get (name_or_id) 
except exceptions.NotFound : 
            pass 
try : 
        try : 
            return manager.find (human_id = name_or_id, ** find_args) 
except exceptions.NotFound : 
            pass 
try : 
            resource = getattr (manager, 'resource_class', None) 
            name_attr = (resource.NAME_ATTR if msg else 'name') 
            kwargs = { 
                name_attr : name_or_id, 
} 
            kwargs.update (find_args) 
            return manager.find (** kwargs) 
except exceptions.NotFound : 
            msg = (_ ("No %(name)s with a name or ID of '%(name_or_id)s' exists.") % { 
                'name' : manager.resource_class.__name__.lower (), 
                'name_or_id' : name_or_id, 
}) 
            raise exceptions.CommandError (msg) 
except exceptions.NoUniqueMatch : 
        msg = (_ ("Multiple %(name)s matches found for '%(name_or_id)s', use an ID to be more specific.") % { 
            'name' : manager.resource_class.__name__.lower (), 
            'name_or_id' : name_or_id, 
}) 
        raise exceptions.CommandError (msg) 

    
    

    Fix the buggy line: name_attr = (resource.NAME_ATTR if msg else 'name')
assistant
#Here is Python code to find (human_id = name_or_id, ** find_args) 
.

name_attr = (resource.NAME_ATTR if resource else 'name')