public static void main(String[] args) {
    try {
      Project p =
          Project.loadProject(
              new File(ProjectStructure.getnCExamplesDir(), "Ex5_Networks/Ex5_Networks.ncx"), null);

      GeneratedElecInputs gei = new GeneratedElecInputs(p);

      System.out.println("Internal info: \n" + gei.toString());

      // IClamp ic = new IClamp(2,3,4, true);

      gei.addSingleInput("Input_0", "IClamp", "cg1", 3, 3, 3, null);
      gei.addSingleInput("Input_0", "IClamp", "cg1", 38, 3, 3, null);
      gei.addSingleInput("Input_2", "IClamp", "cg3", 3, 38, 39, null);

      System.out.println("Internal info: \n" + gei.toString());

      File f = new File("../temp/tempp.txt");

      gei.saveToFile(f);

      GeneratedElecInputs cpr2 = new GeneratedElecInputs(null);

      System.out.println(
          "----  v1.8.1: \n"
              + gei.getNetworkMLElement(UnitConverter.GENESIS_SI_UNITS)
                  .getXMLString("    ", false));

      ArrayList<SimpleXMLEntity> els =
          gei.getNetworkMLEntities(
              UnitConverter.GENESIS_SI_UNITS,
              NeuroMLConstants.NeuroMLVersion.NEUROML_VERSION_2_ALPHA,
              null);

      System.out.println("----  v2.0 alpha: ");
      for (SimpleXMLEntity el : els) System.out.println(el.getXMLString("    ", false));

      els =
          gei.getNetworkMLEntities(
              UnitConverter.GENESIS_SI_UNITS,
              NeuroMLConstants.NeuroMLVersion.getLatestVersion(),
              null);

      System.out.println("----  v2.0 beta: ");
      for (SimpleXMLEntity el : els) System.out.println(el.getXMLString("    ", false));

      System.out.println("-------------- ");

    } catch (Exception ex) {
      ex.printStackTrace();
    }
  }