v = (AttributeList) o;
} else if (o instanceof List) { // existing attribute is non-ST List
// must copy to an ST-managed list before adding new attribute
List listAttr = (List) o;
v = new AttributeList(listAttr.size());
v.addAll(listAttr);
rawSetAttribute(this.attributes, name, v); // replace attribute w/list
} else {
// non-list second attribute, must convert existing to ArrayList
v = new AttributeList(); // make list to hold multiple values
// make it point to list now