class BeamSqlIntervalMultiplyExpression extends BeamSqlExpression {

  @Override
  public BeamSqlPrimitive evaluate(
      Row inputRow, BoundedWindow window, BeamSqlExpressionEnvironment env) {
    BeamSqlPrimitive intervalOperandPrimitive =
        findExpressionOfType(operands, SqlTypeName.INTERVAL_TYPES)
            .get()
            .evaluate(inputRow, window, env);
    SqlTypeName intervalOperandType = intervalOperandPrimitive.getOutputType();

    BeamSqlPrimitive integerOperandPrimitive =
        findExpressionOfType(operands, SqlTypeName.INTEGER).get().evaluate(inputRow, window, env);
    BigDecimal integerOperandValue = new BigDecimal(integerOperandPrimitive.getInteger());

    BigDecimal multiplicationResult =
        integerOperandValue.multiply(timeUnitInternalMultiplier(intervalOperandType));

    return BeamSqlPrimitive.of(outputType, multiplicationResult);
  }

  public  BeamSqlIntervalMultiplyExpression(List<BeamSqlExpression> operands);

}