Do we need the `!value` check?  If `value === lastValue && placeholder !== lastPlaceholder` then we are done no?