DfType (LongRangeBinOp op, double d1, double d2) { return switch (op) { case PLUS -> DfTypes.doubleValue(d1 + d2).makeWide(); case MINUS -> DfTypes.doubleValue(d1 - d2).makeWide(); case MUL -> DfTypes.doubleValue(d1 * d2).makeWide(); case DIV -> DfTypes.doubleValue(d1 / d2).makeWide(); case MOD -> DfTypes.doubleValue(d1 % d2).makeWide(); default -> DfType.TOP; }; }