return asList(data.toArray(new TOP[data.size()]));
}
public static Collection<String> create(StringList aList) {
List<String> data = new ArrayList<String>();
StringList i = aList;
while (i instanceof NonEmptyStringList) {
NonEmptyStringList l = (NonEmptyStringList) i;
data.add(l.getHead());
i = l.getTail();
}