rudimentary diff