getDifference = (original, incoming) => {
const flatOriginal = flat(original);
const flatIncoming = flat(incoming);
const differenceKeys = Object.keys(flatIncoming).filter(
key => !R.equals(flatOriginal[key], flatIncoming[key])
);
return flat.unflatten(R.pick(differenceKeys, flatIncoming));
}