testing first class functions