further work on subprocess