add function and functional literal