 	precedence 125 // Less than the Comparative operators (130)
 }
 
-public func <~ <L: LeftHandSideArgument, R: RightHandSideArgument>(expression: Expression<L, R>, priority: SystemPriority) -> Expression<L, R> {
+public func <~ <Left: LeftHandSideArgument, Right: RightHandSideArgument>(expression: Expression<Left, Right>, priority: SystemPriority) -> Expression<Left, Right> {
 	return expression.updatePriority(priority.rawValue)
 }
 
-public func <~ <L: LeftHandSideArgument, R: RightHandSideArgument>(expression: Expression<L, R>, priority: Priority) -> Expression<L, R> {
+public func <~ <Left: LeftHandSideArgument, Right: RightHandSideArgument>(expression: Expression<Left, Right>, priority: Priority) -> Expression<Left, Right> {
 	return expression.updatePriority(priority)
 }
 

		for leftAttribute in lhs.leftHandSideAttributes {
			let values = rhs.rightHandSideValues(leftAttribute)
			let c = NSLayoutConstraint(item: lhs.leftHandSideItem,
								  attribute: leftAttribute,
			                      relatedBy: relation,
			                         toItem: values.item,
			                      attribute: values.attribute,
								 multiplier: values.multiplier ?? 1.0,
			                       constant: values.constant ?? 0.0)
			constraints.append(c)
		}

/// Evaluates a layout expression into constraints.
///
/// Returns an array of layout constraints.
public func evaluateExpression<Left: LeftHandSideArgument, Right: RightHandSideArgument>(expression: Expression<Left, Right>) -> [NSLayoutConstraint] {
	return evaluateExpressions([ expression ])
}

/// Evaluates multiple layout expressions into constraints.
///
/// Returns an array of layout constraints.
public func evaluateExpressions<Left: LeftHandSideArgument, Right: RightHandSideArgument>(expressions: [Expression<Left, Right>]) -> [NSLayoutConstraint] {
	var constraints = [NSLayoutConstraint]()
	for expr in expressions {
		constraints += expr.evaluate()
