'If the incoming `val` is different than the `item` value change it
and, in either case, return the value.'

def default_deserializer(self, item, key, val, **context):

    if (hasattr(item, key) and (getattr(item, key) != val)):
        setattr(item, key, val)
    return val
