improved diffing - two sided now