code: public Pair<Expr, Context> translateExpressionWithChecks(WyilFile.Expr expr, Integer selector, Context context) {
  		// Generate expression preconditions as verification conditions
  		checkExpressionPreconditions(expr, context);
  		// Gather up any postconditions from function invocations.
  		context = assumeExpressionPostconditions(expr, context);
  		// Translate expression in the normal fashion
  		return new Pair<>(translateExpression(expr, selector, context.getEnvironment()), context);
  	}
docs: Translate a given expression into its equivalent WyAL expression. At the same
  time, emit verification conditions to check that the expression's
  preconditions. For example, in the expression <code>x[i] + 1</code> we need
  to check that <code>i</code> is within bounds.
  
  @param expr
  --- Expression to be translated
  @param context
  --- Context in which translation is occurring
  @return