minimum update
some modified
some modified
add Differential.h