fix color; move general Udiff methods to Diff