maybe write a function isbuiltin that takes a node as parameter?
this condition nest is quite difficult to read