int level, int[] values)
int level)
  private void setMirroredProperty(ConfigurableComponent child,				   MirroredPropertyInfo mp,				   int level,				   int[] values)  {    Property cp = child.getProperty(mp.name);    if (cp == null) {      System.out.println("Child has no " + mp.name);      return;    }    int nlvls = getChildCount();    Integer cv;    if (level == 0 && mp.firstValue != null) {      cv = mp.firstValue;    } else if (level == nlvls - 1 && mp.lastValue != null) {      cv = mp.lastValue;    } else if (level < values.length) {      cv = new Integer(values[level]);    } else if (values.length <= 1) {      // the next line will cause an eror if we're not careful      cv = null;    } else {      cv = new Integer(values[values.length - 1]);    }    cp.setValue(cv);  }