adding function pointer for passing around builtin functions