List props = new ArrayList();  if (m_super != null) { for (Iterator it = m_super.getProperties(); it.hasNext(); ) { props.add(it.next()); } }  for (Iterator it = super.getProperties(); it.hasNext(); ) { props.add(it.next()); }  return props.iterator();
return Property.wrap(m_type.getProperties()).iterator();
    public Iterator getProperties() {        List props = new ArrayList();        if (m_super != null) {            for (Iterator it = m_super.getProperties(); it.hasNext(); ) {                props.add(it.next());            }        }        for (Iterator it = super.getProperties(); it.hasNext(); ) {            props.add(it.next());        }        return props.iterator();    }