public override void insertConfiguration(HierarchicalConfiguration config)
 {
   base.insertConfiguration(config);
 }
    protected internal virtual Configuration createDefaultHierarchicalConfiguration(string staticConfig, string userConfig, bool addSysProps, Class source)
    {
      int num1 = addSysProps ? 1 : 0;
      HierarchicalConfiguration hierarchicalConfiguration = new HierarchicalConfiguration();
      if (staticConfig != null)
      {
        PropertyFileConfiguration fileConfiguration = new PropertyFileConfiguration();
        fileConfiguration.load(staticConfig, Object.instancehelper_getClass((object) this));
        hierarchicalConfiguration.insertConfiguration((HierarchicalConfiguration) fileConfiguration);
        hierarchicalConfiguration.insertConfiguration((HierarchicalConfiguration) this.getPackageManager().getPackageConfiguration());
      }
      if (userConfig != null)
      {
        string str = !String.instancehelper_startsWith(userConfig, "/") ? userConfig : String.instancehelper_substring(userConfig, 1);
        Enumeration resources;
        ArrayList arrayList;
        IOException ioException1;
        try
        {
          resources = ObjectUtilities.getClassLoader(Object.instancehelper_getClass((object) this)).getResources(str);
          arrayList = new ArrayList();
          goto label_7;
        }
        catch (IOException ex)
        {
          int num2 = 1;
          ioException1 = (IOException) ByteCodeHelper.MapException<IOException>((Exception) ex, (ByteCodeHelper.MapFlags) num2);
        }
        IOException ioException2 = ioException1;
        goto label_22;
label_7:
        IOException ioException3;
        IOException ioException4;
        while (true)
        {
          URL url;
          IOException ioException5;
          try
          {
            if (resources.hasMoreElements())
            {
              url = (URL) resources.nextElement();
              try
              {
                PropertyFileConfiguration fileConfiguration = new PropertyFileConfiguration();
                InputStream @in = url.openStream();
                fileConfiguration.load(@in);
                @in.close();
                arrayList.add((object) fileConfiguration);
                continue;
              }
              catch (IOException ex)
              {
                int num2 = 1;
                ioException5 = (IOException) ByteCodeHelper.MapException<IOException>((Exception) ex, (ByteCodeHelper.MapFlags) num2);
              }
            }
            else
              goto label_17;
          }
          catch (IOException ex)
          {
            int num2 = 1;
            ioException3 = (IOException) ByteCodeHelper.MapException<IOException>((Exception) ex, (ByteCodeHelper.MapFlags) num2);
            break;
          }
          IOException ioException6 = ioException5;
          try
          {
            IOException ioException7 = ioException6;
            Log.warn((object) new StringBuffer().append("Failed to load the user configuration at ").append((object) url).toString(), (Exception) ioException7);
          }
          catch (IOException ex)
          {
            int num2 = 1;
            ioException4 = (IOException) ByteCodeHelper.MapException<IOException>((Exception) ex, (ByteCodeHelper.MapFlags) num2);
            goto label_16;
          }
        }
        ioException2 = ioException3;
        goto label_22;
label_16:
        ioException2 = ioException4;
        goto label_22;
label_17:
        IOException ioException8;
        try
        {
          int num2 = arrayList.size() - 1;
          while (num2 >= 0)
          {
            PropertyFileConfiguration fileConfiguration = (PropertyFileConfiguration) arrayList.get(num2);
            hierarchicalConfiguration.insertConfiguration((HierarchicalConfiguration) fileConfiguration);
            num2 += -1;
          }
          goto label_23;
        }
        catch (IOException ex)
        {
          int num2 = 1;
          ioException8 = (IOException) ByteCodeHelper.MapException<IOException>((Exception) ex, (ByteCodeHelper.MapFlags) num2);
        }
        ioException2 = ioException8;
label_22:
        Log.warn((object) "Failed to lookup the user configurations.", (Exception) ioException2);
      }
label_23:
      if (num1 != 0)
      {
        SystemPropertyConfiguration propertyConfiguration = new SystemPropertyConfiguration();
        hierarchicalConfiguration.insertConfiguration((HierarchicalConfiguration) propertyConfiguration);
      }
      return (Configuration) hierarchicalConfiguration;
    }