public static void Install(PluginInfo plugin)
        {
            foreach (PluginInfo pluginDependency in plugin.GetDependencies())
            {
                if (PluginsManifest.Instance.GetPluginData(pluginDependency).installed == false)
                {
                    PluginsManifest.Instance.AddPluginToInstallQueue(plugin);
                    Install(pluginDependency);
                    return;
                }
            }

            PluginsManifest.Instance.BeginInstallation(plugin);

            if (plugin.CanInstall() == false)
            {
                FinishInstalling(false);
                return;
            }

            plugin.OnWillInstall();

            ProceedInstall(true);

            AssetDatabase.Refresh(ImportAssetOptions.ForceSynchronousImport);
        }