/** @license MIT License (c) copyright 2010-2014 original author or authors */ /** @author Brian Cavalier */ /** @author John Hann */ (function(define) { 'use strict'; define(function() { return function liftAll(liftOne, combine, dst, src) { if(typeof combine === 'undefined') { combine = defaultCombine; } return Object.keys(src).reduce(function(dst, key) { var f = src[key]; return typeof f === 'function' ? combine(dst, liftOne(f), key) : dst; }, typeof dst === 'undefined' ? defaultDst(src) : dst); }; function defaultCombine(o, f, k) { o[k] = f; return o; } function defaultDst(src) { return typeof src === 'function' ? src.bind() : Object.create(src); } }); }(typeof define === 'function' && define.amd ? define : function(factory) { module.exports = factory(); }));