further work on tempo functions