Idea: if VoleFind.Rep(con1, con2, con3, refiner1) returns a representative element (i.e. not fail), lets call it x, then Vole could set the Representative attribute for any of [con1, con2, con3, refiner1!.constraint] that do not yet have a representative set. i.e. SetRepresentative(con1, x);, and so on.