added external diff library