Fixed #6: upper/lowerRatioConstraint