WIP WIP WIP refactor
ensure response functions are called in router