private static void LoadReferencedAssemblies()
{
if (referencedAssembliesLoaded)
return;
List<string> loaded = new List<string>();
foreach (Assembly assembly in AppDomain.CurrentDomain.GetAssemblies())
loaded.Add(assembly.GetName().Name);
foreach (Assembly assembly in AppDomain.CurrentDomain.GetAssemblies())
LoadReferencedAssemblies(assembly, loaded);
referencedAssembliesLoaded = true;
}