}
protected Vector generateRuleVector(RuleNode root) {
Vector vrules = new Vector(20);
collectRules(root, vrules);
Rule srules [] = new Rule[vrules.size()];
vrules.copyInto(srules);
srules = (Rule[]) Sorter.sortComparableArray(srules, true);
for (int i=0; i < srules.length; i++)
vrules.setElementAt(srules[i], i);
return vrules;