import diffing algorithm from from Diff