more work on real functions