def create(cls, entry):
        try:
            module = import_module(entry)
        except ImportError:
            module = None
            mod_path, _, cls_name = entry.rpartition('.')
            if not mod_path:
                raise
        else:
            try:
                entry = module.default_bot
            except AttributeError:
                return cls(f'{entry}.Bot', module)
            else:
                mod_path, _, cls_name = entry.rpartition('.')
        mod = import_module(mod_path)
        try:
            bot_cls = getattr(mod, cls_name)
        except AttributeError:
            if module is None:
                import_module(entry)
            raise
        if not issubclass(bot_cls, Bot):
            raise ImproperlyConfigured(
                "'%s' isn't a subclass of Bot." % entry)
        return cls(entry, mod, bot_cls.label)