More flexible argument passing and response.