starting to work on builtin functions