Retrieve the override base class from the
        :class:`_OverriddenMethod` wrapper.

def _get_override_base(self, override_wrapper):
        """Retrieve the override base class from the
        :class:`_OverriddenMethod` wrapper.
        """
        base = override_wrapper.modifier.base
        if not base:
            return None
        if is_class(base):
            return base

        # resolve the (possibly qualified) class name
        if '.' in base:
            # repeatedly try to import the first N-1, N-2, etc. dot-separated
            # parts of the qualified name; this way we can handle all names
            # including `package.module.Class.InnerClass`
            dot_parts = base.split('.')
            for i in xrange(len(dot_parts) - 1, 1, -1):  # n-1 -> 1
                module_name = '.'.join(dot_parts[:i])
                class_name = '.'.join(dot_parts[i:])
                try:
                    module = __import__(module_name, fromlist=[dot_parts[i]])
                    break
                except ImportError:
                    pass
            else:
                # couldn't resolve class name, return it verbatim
                return base
        else:
            class_name = base
            module_name = override_wrapper.method.__module__
            module = sys.modules[module_name]

        return getattr(module, class_name)