function sortedUniq(array, iteratee) {
    var seen,
        index = -1,
        length = array.length,
        resIndex = -1,
        result = [];

    while (++index < length) {
      var value = array[index],
          computed = iteratee ? iteratee(value, index, array) : value;

      if (!index || seen !== computed) {
        seen = computed;
        result[++resIndex] = value;
      }
    }
    return result;
  }
An implementation of `_.uniq` optimized for sorted arrays without support
for callback shorthands and `this` binding.

@private
@param {Array} array The array to inspect.
@param {Function} [iteratee] The function invoked per iteration.
@returns {Array} Returns the new duplicate-value-free array.