added isReducer()