removed dependency on differential