For the cases when it was not in order, do you mean that `libraryEntry.item.reactants` is returning `[group2, group1]`, or do you mean that we had (erroneously) called the label 'group2name;group1name'? if the latter, why don't we say this is an error and fix those too? (which would make your checks a lot simpler, and identify many more "fixes")