significant updates to backprop