function(module, exports, __webpack_require__) {

	var _curry2 = /*#__PURE__*/__webpack_require__(1);
	
	var _dispatchable = /*#__PURE__*/__webpack_require__(5);
	
	var _xdropRepeatsWith = /*#__PURE__*/__webpack_require__(212);
	
	var last = /*#__PURE__*/__webpack_require__(217);
	
	/**
	 * Returns a new list without any consecutively repeating elements. Equality is
	 * determined by applying the supplied predicate to each pair of consecutive elements. The
	 * first element in a series of equal elements will be preserved.
	 *
	 * Acts as a transducer if a transformer is given in list position.
	 *
	 * @func
	 * @memberOf R
	 * @since v0.14.0
	 * @category List
	 * @sig ((a, a) -> Boolean) -> [a] -> [a]
	 * @param {Function} pred A predicate used to test whether two items are equal.
	 * @param {Array} list The array to consider.
	 * @return {Array} `list` without repeating elements.
	 * @see R.transduce
	 * @example
	 *
	 *      var l = [1, -1, 1, 3, 4, -4, -4, -5, 5, 3, 3];
	 *      R.dropRepeatsWith(R.eqBy(Math.abs), l); //=> [1, 3, 4, -5, 3]
	 */
	
	
	var dropRepeatsWith = /*#__PURE__*/_curry2( /*#__PURE__*/_dispatchable([], _xdropRepeatsWith, function dropRepeatsWith(pred, list) {
	  var result = [];
	  var idx = 1;
	  var len = list.length;
	  if (len !== 0) {
	    result[0] = list[0];
	    while (idx < len) {
	      if (!pred(last(result), list[idx])) {
	        result[result.length] = list[idx];
	      }
	      idx += 1;
	    }
	  }
	  return result;
	}));
	module.exports = dropRepeatsWith;

/***/ }
function(module, exports, __webpack_require__) {

	var _curry2 = __webpack_require__(1);
	
	var _dispatchable = __webpack_require__(5);
	
	var _xdropRepeatsWith = __webpack_require__(212);
	
	var last = __webpack_require__(217);
	
	
	
	
	var dropRepeatsWith = _curry2( _dispatchable([], _xdropRepeatsWith, function dropRepeatsWith(pred, list) {
	  var result = [];
	  var idx = 1;
	  var len = list.length;
	  if (len !== 0) {
	    result[0] = list[0];
	    while (idx < len) {
	      if (!pred(last(result), list[idx])) {
	        result[result.length] = list[idx];
	      }
	      idx += 1;
	    }
	  }
	  return result;
	}));
	module.exports = dropRepeatsWith;

 }
function ( module , exports , __webpack_require__ ) { var _curry2 = /*#__PURE__*/ __webpack_require__ ( 1 ) ; var _dispatchable = /*#__PURE__*/ __webpack_require__ ( 5 ) ; var _xdropRepeatsWith = /*#__PURE__*/ __webpack_require__ ( 212 ) ; var last = /*#__PURE__*/ __webpack_require__ ( 217 ) ; /**
	 * Returns a new list without any consecutively repeating elements. Equality is
	 * determined by applying the supplied predicate to each pair of consecutive elements. The
	 * first element in a series of equal elements will be preserved.
	 *
	 * Acts as a transducer if a transformer is given in list position.
	 *
	 * @func
	 * @memberOf R
	 * @since v0.14.0
	 * @category List
	 * @sig ((a, a) -> Boolean) -> [a] -> [a]
	 * @param {Function} pred A predicate used to test whether two items are equal.
	 * @param {Array} list The array to consider.
	 * @return {Array} `list` without repeating elements.
	 * @see R.transduce
	 * @example
	 *
	 *      var l = [1, -1, 1, 3, 4, -4, -4, -5, 5, 3, 3];
	 *      R.dropRepeatsWith(R.eqBy(Math.abs), l); //=> [1, 3, 4, -5, 3]
	 */ var dropRepeatsWith = /*#__PURE__*/ _curry2 ( /*#__PURE__*/ _dispatchable ( [ ] , _xdropRepeatsWith , function dropRepeatsWith ( pred , list ) { var result = [ ] ; var idx = 1 ; var len = list . length ; if ( len !== 0 ) { result [ 0 ] = list [ 0 ] ; while ( idx < len ) { if ( ! pred ( last ( result ) , list [ idx ] ) ) { result [ result . length ] = list [ idx ] ; } idx += 1 ; } } return result ; } ) ) ; module . exports = dropRepeatsWith ; /***/ }
/* 200
/ * 200