class backprop