src for progfun class