<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def resolve_value(value, types=type_registry):
 """ Returns the actual value for the given object, if it is a late-resolving object type. If not, the value itself is simply returned. :param value: Lazy object, registered type in :attr:`type_registry`, or a simple value. In the latter case, the value is returned as-is. :type value: str | unicode | int | AbstractLazyObject | unknown :return: Resolved value. """

    if value is None:
        return None
    elif isinstance(value, lazy_type):
        return value.get()
    elif types:
        resolve_func = types.get(expand_type_name(type(value)))
        if resolve_func:
            return resolve_func(value)
    return value