<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def convert_dicts(d, to_class=AttrDictWrapper, from_class=dict):
 """Recursively convert dict and UserDict types. Note that `d` is unchanged. Args: to_class (type):
 Dict-like type to convert values to, usually UserDict subclass, or dict. from_class (type):
 Dict-like type to convert values from. If a tuple, multiple types are converted. Returns: Converted data as `to_class` instance. """

    d_ = to_class()
    for key, value in d.iteritems():
        if isinstance(value, from_class):
            d_[key] = convert_dicts(value, to_class=to_class,
                                    from_class=from_class)
        else:
            d_[key] = value
    return d_