| 
						 | 
						- // Generated by LiveScript 1.6.0
 - var apply, curry, flip, fix, over, memoize, toString$ = {}.toString;
 - apply = curry$(function(f, list){
 -   return f.apply(null, list);
 - });
 - curry = function(f){
 -   return curry$(f);
 - };
 - flip = curry$(function(f, x, y){
 -   return f(y, x);
 - });
 - fix = function(f){
 -   return function(g){
 -     return function(){
 -       return f(g(g)).apply(null, arguments);
 -     };
 -   }(function(g){
 -     return function(){
 -       return f(g(g)).apply(null, arguments);
 -     };
 -   });
 - };
 - over = curry$(function(f, g, x, y){
 -   return f(g(x), g(y));
 - });
 - memoize = function(f){
 -   var memo;
 -   memo = {};
 -   return function(){
 -     var args, res$, i$, to$, key, arg;
 -     res$ = [];
 -     for (i$ = 0, to$ = arguments.length; i$ < to$; ++i$) {
 -       res$.push(arguments[i$]);
 -     }
 -     args = res$;
 -     key = (function(){
 -       var i$, ref$, len$, results$ = [];
 -       for (i$ = 0, len$ = (ref$ = args).length; i$ < len$; ++i$) {
 -         arg = ref$[i$];
 -         results$.push(arg + toString$.call(arg).slice(8, -1));
 -       }
 -       return results$;
 -     }()).join('');
 -     return memo[key] = key in memo
 -       ? memo[key]
 -       : f.apply(null, args);
 -   };
 - };
 - module.exports = {
 -   curry: curry,
 -   flip: flip,
 -   fix: fix,
 -   apply: apply,
 -   over: over,
 -   memoize: memoize
 - };
 - function curry$(f, bound){
 -   var context,
 -   _curry = function(args) {
 -     return f.length > 1 ? function(){
 -       var params = args ? args.concat() : [];
 -       context = bound ? context || this : this;
 -       return params.push.apply(params, arguments) <
 -           f.length && arguments.length ?
 -         _curry.call(context, params) : f.apply(context, params);
 -     } : f;
 -   };
 -   return _curry();
 - }
 
 
  |