reorganizing response function