docs: public static Function getBuiltinFunction(final String name) {
  
          if (name.equals("sin")) {
              return builtinFunctions[INDEX_SIN];
          } else if (name.equals("cos")) {
              return builtinFunctions[INDEX_COS];
          } else if (name.equals("tan")) {
              return builtinFunctions[INDEX_TAN];
          } else if (name.equals("cot")) {
              return builtinFunctions[INDEX_COT];
          } else if (name.equals("asin")) {
              return builtinFunctions[INDEX_ASIN];
          } else if (name.equals("acos")) {
              return builtinFunctions[INDEX_ACOS];
          } else if (name.equals("atan")) {
              return builtinFunctions[INDEX_ATAN];
          } else if (name.equals("sinh")) {
              return builtinFunctions[INDEX_SINH];
          } else if (name.equals("cosh")) {
              return builtinFunctions[INDEX_COSH];
          } else if (name.equals("tanh")) {
              return builtinFunctions[INDEX_TANH];
          } else if (name.equals("abs")) {
              return builtinFunctions[INDEX_ABS];
          } else if (name.equals("log")) {
              return builtinFunctions[INDEX_LOG];
          } else if (name.equals("log10")) {
              return builtinFunctions[INDEX_LOG10];
          } else if (name.equals("log2")) {
              return builtinFunctions[INDEX_LOG2];
          } else if (name.equals("log1p")) {
              return builtinFunctions[INDEX_LOG1P];
          } else if (name.equals("ceil")) {
              return builtinFunctions[INDEX_CEIL];
          } else if (name.equals("floor")) {
              return builtinFunctions[INDEX_FLOOR];
          } else if (name.equals("sqrt")) {
              return builtinFunctions[INDEX_SQRT];
          } else if (name.equals("cbrt")) {
              return builtinFunctions[INDEX_CBRT];
          } else if (name.equals("pow")) {
              return builtinFunctions[INDEX_POW];
          } else if (name.equals("exp")) {
              return builtinFunctions[INDEX_EXP];
          } else if (name.equals("expm1")) {
              return builtinFunctions[INDEX_EXPM1];
          } else if (name.equals("signum")) {
              return builtinFunctions[INDEX_SGN];
          } else {
              return null;
          }
      }