throw new IllegalArgumentException("Rule not supported: Either flip or bond, not both.");
if (bondA == null){
int indexOf = data.lhs.indexOf(aL);
Agent aR = data.rhs.get(indexOf);
result = data.rgArrays[indexOf] = new RuleGraph(new SiteNode(aL, aR));
data.q.add(pairOf(aL, data.rgArrays[indexOf]));
} else {
result = new RuleGraph(new BondNode());
int i=0;