with more advanced response handlers