break;
}
}
if (!(expr instanceof Relation)) return null;
if (b==null) b = frame.getBounds(); // We delay the expansive Bounds.clone() until we really find a possible match
if (ts==null) ts = fac.noneOf(expr.arity());
if (!ts.containsAll(b.lowerBound((Relation)expr))) return null; // Sanity check
if (!b.upperBound((Relation)expr).containsAll(ts)) return null; // Sanity check
b.boundExactly((Relation)expr, ts);
ts=null;
continue;