m_AttIndex.setUpper(instanceInfo.numAttributes());
m_AttIndex.setUpper(instanceInfo.numAttributes() - 1);
  public boolean setInputFormat(Instances instanceInfo)        throws Exception {    super.setInputFormat(instanceInfo);    m_AttIndex.setUpper(instanceInfo.numAttributes());    m_FirstIndex.setUpper(instanceInfo.			  attribute(m_AttIndex.getIndex()).numValues() - 1);    m_SecondIndex.setUpper(instanceInfo.			   attribute(m_AttIndex.getIndex()).numValues() - 1);    if (!instanceInfo.attribute(m_AttIndex.getIndex()).isNominal()) {      throw new UnsupportedAttributeTypeException("Chosen attribute not nominal.");    }    if (instanceInfo.attribute(m_AttIndex.getIndex()).numValues() < 2) {      throw new UnsupportedAttributeTypeException("Chosen attribute has less than " +						  "two values.");    }    if (m_SecondIndex.getIndex() <= m_FirstIndex.getIndex()) {      // XXX Maybe we should just swap the values??      throw new Exception("The second index has to be greater "+			  "than the first.");    }    setOutputFormat();    return true;  }