whole_func_string: function(module, exports, __webpack_require__) {
  
  	var _concat = /*#__PURE__*/__webpack_require__(12);
  	
  	var _curry2 = /*#__PURE__*/__webpack_require__(1);
  	
  	var _reduce = /*#__PURE__*/__webpack_require__(11);
  	
  	var map = /*#__PURE__*/__webpack_require__(9);
  	
  	/**
  	 * ap applies a list of functions to a list of values.
  	 *
  	 * Dispatches to the `ap` method of the second argument, if present. Also
  	 * treats curried functions as applicatives.
  	 *
  	 * @func
  	 * @memberOf R
  	 * @since v0.3.0
  	 * @category Function
  	 * @sig [a -> b] -> [a] -> [b]
  	 * @sig Apply f => f (a -> b) -> f a -> f b
  	 * @sig (a -> b -> c) -> (a -> b) -> (a -> c)
  	 * @param {*} applyF
  	 * @param {*} applyX
  	 * @return {*}
  	 * @example
  	 *
  	 *      R.ap([R.multiply(2), R.add(3)], [1,2,3]); //=> [2, 4, 6, 4, 5, 6]
  	 *      R.ap([R.concat('tasty '), R.toUpper], ['pizza', 'salad']); //=> ["tasty pizza", "tasty salad", "PIZZA", "SALAD"]
  	 *
  	 *      // R.ap can also be used as S combinator
  	 *      // when only two functions are passed
  	 *      R.ap(R.concat, R.toUpper)('Ramda') //=> 'RamdaRAMDA'
  	 * @symb R.ap([f, g], [a, b]) = [f(a), f(b), g(a), g(b)]
  	 */
  	
  	
  	var ap = /*#__PURE__*/_curry2(function ap(applyF, applyX) {
  	  return typeof applyX['fantasy-land/ap'] === 'function' ? applyX['fantasy-land/ap'](applyF) : typeof applyF.ap === 'function' ? applyF.ap(applyX) : typeof applyF === 'function' ? function (x) {
  	    return applyF(x)(applyX(x));
  	  } :
  	  // else
  	  _reduce(function (acc, f) {
  	    return _concat(acc, map(f, applyX));
  	  }, [], applyF);
  	});
  	module.exports = ap;
  
  /***/ }
func_code_string: function(module, exports, __webpack_require__) {
  
  	var _concat = /*#__PURE__*/__webpack_require__(12);
  	
  	var _curry2 = /*#__PURE__*/__webpack_require__(1);
  	
  	var _reduce = /*#__PURE__*/__webpack_require__(11);
  	
  	var map = /*#__PURE__*/__webpack_require__(9);
  	
  	/**
  	 * ap applies a list of functions to a list of values.
  	 *
  	 * Dispatches to the `ap` method of the second argument, if present. Also
  	 * treats curried functions as applicatives.
  	 *
  	 * @func
  	 * @memberOf R
  	 * @since v0.3.0
  	 * @category Function
  	 * @sig [a -> b] -> [a] -> [b]
  	 * @sig Apply f => f (a -> b) -> f a -> f b
  	 * @sig (a -> b -> c) -> (a -> b) -> (a -> c)
  	 * @param {*} applyF
  	 * @param {*} applyX
  	 * @return {*}
  	 * @example
  	 *
  	 *      R.ap([R.multiply(2), R.add(3)], [1,2,3]); //=> [2, 4, 6, 4, 5, 6]
  	 *      R.ap([R.concat('tasty '), R.toUpper], ['pizza', 'salad']); //=> ["tasty pizza", "tasty salad", "PIZZA", "SALAD"]
  	 *
  	 *      // R.ap can also be used as S combinator
  	 *      // when only two functions are passed
  	 *      R.ap(R.concat, R.toUpper)('Ramda') //=> 'RamdaRAMDA'
  	 * @symb R.ap([f, g], [a, b]) = [f(a), f(b), g(a), g(b)]
  	 */
  	
  	
  	var ap = /*#__PURE__*/_curry2(function ap(applyF, applyX) {
  	  return typeof applyX['fantasy-land/ap'] === 'function' ? applyX['fantasy-land/ap'](applyF) : typeof applyF.ap === 'function' ? applyF.ap(applyX) : typeof applyF === 'function' ? function (x) {
  	    return applyF(x)(applyX(x));
  	  } :
  	  // else
  	  _reduce(function (acc, f) {
  	    return _concat(acc, map(f, applyX));
  	  }, [], applyF);
  	});
  	module.exports = ap;
  
  /***/ }
func_documentation_string: /* 46