   func addConstraintsConsumingTo(v: Variable, inout coll: [Constraint]) {
     if let determining = v.determinedBy {
       for constraint in v.constraints {
-        if constraint != determining && constraint.isSatisfied {
+        if constraint !== determining && constraint.isSatisfied {
           coll.append(constraint)
         }
       }


      if let determining = v.determinedBy {
        for next in v.constraints {
          if next != determining && next.isSatisfied {
            next.recalculate()
            todo.append(next.output)
          }


}

// Abstract superclass for constraints having a single possible output variable.
class UnaryConstraint: Constraint {

