implements the support of a conditional expression