class MudrodEngine {

  public Properties loadConfig() {
    SAXBuilder saxBuilder = new SAXBuilder();

    InputStream configStream = locateConfig();

    Document document;
    try {
      document = saxBuilder.build(configStream);
      Element rootNode = document.getRootElement();
      List<Element> paraList = rootNode.getChildren("para");

      for (int i = 0; i < paraList.size(); i++) {
        Element paraNode = paraList.get(i);
        String attributeName = paraNode.getAttributeValue("name");
        if (MudrodConstants.SVM_SGD_MODEL.equals(attributeName)) {
          props.put(attributeName, decompressSVMWithSGDModel(paraNode.getTextTrim()));
        } else {
          props.put(attributeName, paraNode.getTextTrim());
        }
      }
    } catch (JDOMException | IOException e) {
      LOG.error("Exception whilst retrieving or processing XML contained within 'config.xml'!", e);
    }
    return getConfig();

  }

  public  MudrodEngine();

}