and this line suggest a minor redesign is required, that SingleConstraint and ConstraintCombination should inherit from an abstract base class.