private static PolicyLevel LoadPolicyLevelFromStringHelper(string str, string path, PolicyLevelType type)
 {
     if (str == null)
     {
         throw new ArgumentNullException("str");
     }
     PolicyLevel level = new PolicyLevel(type, path);
     SecurityElement topElement = new Parser(str).GetTopElement();
     if (topElement == null)
     {
         throw new ArgumentException(string.Format(CultureInfo.CurrentCulture, Environment.GetResourceString("Policy_BadXml"), new object[] { "configuration" }));
     }
     SecurityElement element2 = topElement.SearchForChildByTag("mscorlib");
     if (element2 == null)
     {
         throw new ArgumentException(string.Format(CultureInfo.CurrentCulture, Environment.GetResourceString("Policy_BadXml"), new object[] { "mscorlib" }));
     }
     SecurityElement element3 = element2.SearchForChildByTag("security");
     if (element3 == null)
     {
         throw new ArgumentException(string.Format(CultureInfo.CurrentCulture, Environment.GetResourceString("Policy_BadXml"), new object[] { "security" }));
     }
     SecurityElement element4 = element3.SearchForChildByTag("policy");
     if (element4 == null)
     {
         throw new ArgumentException(string.Format(CultureInfo.CurrentCulture, Environment.GetResourceString("Policy_BadXml"), new object[] { "policy" }));
     }
     SecurityElement e = element4.SearchForChildByTag("PolicyLevel");
     if (e == null)
     {
         throw new ArgumentException(string.Format(CultureInfo.CurrentCulture, Environment.GetResourceString("Policy_BadXml"), new object[] { "PolicyLevel" }));
     }
     level.FromXml(e);
     return level;
 }