@Override
  protected void populate(Object jaxbO) {

    edu.berkeley.path.beats.jaxb.Controller jaxbC = (edu.berkeley.path.beats.jaxb.Controller) jaxbO;

    node_data = new HashMap<Long, NodeData>();

    for (Row row : jaxbController.getTable().get(0).getRow()) {

      Link link = null;
      String demandString = "";
      double dpdt = Double.NaN;
      double knob = Double.NaN;

      for (Column col : row.getColumn()) {

        switch ((int) col.getId()) {
          case 0:
            link = getMyScenario().get.linkWithId(Integer.parseInt(col.getContent()));
            break;

          case 1:
            demandString = col.getContent();
            break;

          case 2:
            dpdt = Double.parseDouble(col.getContent());
            break;

          case 3:
            knob = Double.parseDouble(col.getContent());
            break;
        }
      }

      if (!demandString.isEmpty() && link != null && !Double.isNaN(knob) && !Double.isNaN(dpdt))
        node_data.put(link.getId(), new NodeData(this, link, demandString, knob, dpdt, myScenario));
    }
  }