Add support for functions