parameterised SafeProcThing