public Value add(Value v1, Value v2) { return new Math((Val) v1, (Val) v2, Math.ADD); }
public Value divide(Value v1, Value v2) { return new Math((Val) v1, (Val) v2, Math.DIVIDE); }
new Math() {{ double x = sin(23.65); double y = log(x); ... }};
public Value subtract(Value v1, Value v2) { return new Math((Val) v1, (Val) v2, Math.SUBTRACT); }
public Value divide(Value v1, Value v2) { return new Math((Val) v1, (Val) v2, Math.DIVIDE); }
public Value add(Value v1, Value v2) { return new Math((Val) v1, (Val) v2, Math.ADD); }
public Value mod(Value v1, Value v2) { return new Math((Val) v1, (Val) v2, Math.MOD); }
public Value multiply(Value v1, Value v2) { return new Math((Val) v1, (Val) v2, Math.MULTIPLY); }
public Value mod(Value v1, Value v2) { return new Math((Val) v1, (Val) v2, Math.MOD); }
public Value subtract(Value v1, Value v2) { return new Math((Val) v1, (Val) v2, Math.SUBTRACT); }
public Value subtract(Value v1, Value v2) { return new Math((Val) v1, (Val) v2, Math.SUBTRACT); }
public Value mod(Value v1, Value v2) { return new Math((Val) v1, (Val) v2, Math.MOD); }
public Value add(Value v1, Value v2) { return new Math((Val) v1, (Val) v2, Math.ADD); }
public Value subtract(Value v1, Value v2) { return new Math((Val) v1, (Val) v2, Math.SUBTRACT); }
public Value multiply(Value v1, Value v2) { return new Math((Val) v1, (Val) v2, Math.MULTIPLY); }
public Value subtract(Value v1, Value v2) { return new Math((Val) v1, (Val) v2, Math.SUBTRACT); }
public Value divide(Value v1, Value v2) { return new Math((Val) v1, (Val) v2, Math.DIVIDE); }
public Value multiply(Value v1, Value v2) { return new Math((Val) v1, (Val) v2, Math.MULTIPLY); }
public Value divide(Value v1, Value v2) { return new Math((Val) v1, (Val) v2, Math.DIVIDE); }
public Value multiply(Value v1, Value v2) { return new Math((Val) v1, (Val) v2, Math.MULTIPLY); }