reducer modified