AMG: ?: is the ternary operator, so called because it takes three arguments.
condition ? true_value : false_value
It evaluates to true_value if condition is true. Otherwise, it evaluates to false_value.
See expr.