resp_func cleaned