/** * @license * Lo-Dash 1.0.1 (Custom Build) lodash.com/license * Build: `lodash underscore -o ./dist/lodash.underscore.js` * Underscore.js 1.4.4 underscorejs.org/LICENSE */ ;(function(n){function t(n,t){var r;if(n&&vt[typeof n])for(r in t||(t=G),n)if(wt.call(n,r)&&t(n[r],r,n)===nt)break}function r(n,t){var r;if(n&&vt[typeof n])for(r in t||(t=G),n)if(t(n[r],r,n)===nt)break}function e(n,t,r){if(n){t=t&&typeof r=="undefined"?t:W(t,r);var e=n.length;if(r=-1,typeof e=="number")for(;++rt||typeof n=="undefined")return 1; if(nr?0:r);++eo&&(o=a)}}else t=W(t,r),e(n,function(n,r,e){r=t(n,r,e),r>u&&(u=r,o=n)});return o}function q(n,t,r,u){var o=3>arguments.length;if(t=W(t,u,4),$t(n)){var i=-1,a=n.length;for(o&&(r=n[++i]);++iarguments.length; if(typeof u!="number")var i=It(n),u=i.length;return t=W(t,e,4),B(n,function(e,a,f){a=i?i[--u]:--u,r=o?(o=L,n[a]):t(r,n[a],a,f)}),r}function M(n,t,r){var u;if(t=W(t,r),$t(n)){r=-1;for(var o=n.length;++rr?Ft(0,u+r):r||0)-1;else if(r)return e=P(n,t),n[e]===t?e:-1;for(;++e>>1,r(n[e])z(a,f))&&(r&&a.push(f),i.push(e))}return i}function V(n,t){return Mt.fastBind||Et&&2"']/g,ut=/['\n\r\t\u2028\u2029\\]/g,ot="[object Arguments]",it="[object Array]",at="[object Boolean]",ft="[object Date]",ct="[object Number]",lt="[object Object]",st="[object RegExp]",pt="[object String]",vt={"boolean":L,"function":J,object:J,number:L,string:L,undefined:L},gt={"\\":"\\","'":"'","\n":"n","\r":"r"," ":"t","\u2028":"u2028","\u2029":"u2029"},ht=[],Y={},yt=n._,mt=RegExp("^"+(Y.valueOf+"").replace(/[.*+?^${}()|[\]\\]/g,"\\$&").replace(/valueOf|for [^\]]+/g,".+?")+"$"),_t=Math.ceil,dt=n.clearTimeout,bt=ht.concat,jt=Math.floor,wt=Y.hasOwnProperty,At=ht.push,xt=n.setTimeout,Ot=Y.toString,Et=mt.test(Et=s.bind)&&Et,St=mt.test(St=Array.isArray)&&St,Nt=n.isFinite,kt=n.isNaN,Bt=mt.test(Bt=Object.keys)&&Bt,Ft=Math.max,Rt=Math.min,qt=Math.random,Y=mt.test(n.attachEvent),Dt=Et&&!/\n|true/.test(Et+Y),Mt={}; (function(){var n={0:1,length:1};Mt.argsObject=arguments.constructor==Object,Mt.fastBind=Et&&!Dt,Mt.spliceObjects=(ht.splice.call(n,0,1),!n[0])})(1),u.templateSettings={escape:/<%-([\s\S]+?)%>/g,evaluate:/<%([\s\S]+?)%>/g,interpolate:/<%=([\s\S]+?)%>/g,variable:""},c.prototype=u.prototype,v(arguments)||(v=function(n){return n?wt.call(n,"callee"):L});var $t=St||function(n){return Mt.argsObject&&n instanceof Array||Ot.call(n)==it},It=Bt?function(n){return w(n)?Bt(n):[]}:g,Tt={"&":"&","<":"<",">":">",'"':""","'":"'"},zt=_(Tt); j(/x/)&&(j=function(n){return n instanceof Function||"[object Function]"==Ot.call(n)});var Ct=F;u.after=function(n,t){return 1>n?t():function(){return 1>--n?t.apply(this,arguments):void 0}},u.bind=V,u.bindAll=function(n){for(var t=bt.apply(ht,arguments),r=1z(e,o,r)&&u.push(o)}return u},u.filter=N,u.flatten=T,u.forEach=B,u.functions=m,u.groupBy=function(n,t,r){var e={};return t=W(t,r),B(n,function(n,r,u){r=t(n,r,u)+"",(wt.call(e,r)?e[r]:e[r]=[]).push(n)}),e},u.initial=function(n,t,r){if(!n)return[];var e=0,u=n.length;if(typeof t!="number"&&t!=K){var o=u;for(t=W(t,r);o--&&t(n[o],o,n);)e++}else e=t==K||r?1:t||e;return s(n,0,Rt(Ft(0,u-e),u))},u.intersection=function(n){var t=arguments,r=t.length,e=-1,u=n?n.length:0,o=[];n:for(;++ez(o,i)){for(var a=r;--a;)if(0>z(t[a],i))continue n; o.push(i)}}return o},u.invert=_,u.invoke=function(n,t){var r=s(arguments,2),e=-1,u=typeof t=="function",o=n?n.length:0,i=Array(typeof o=="number"?o:0);return B(n,function(n){i[++e]=(u?t:n[t]).apply(n,r)}),i},u.keys=It,u.map=F,u.max=R,u.memoize=function(n,t){var r={};return function(){var e=(t?t.apply(this,arguments):arguments[0])+"";return wt.call(r,e)?r[e]:r[e]=n.apply(this,arguments)}},u.min=function(n,t,r){var u=1/0,o=u;if(!t&&$t(n)){r=-1;for(var i=n.length;++rz(t,r,1)&&(e[r]=n)}),e},u.once=function(n){var t,r;return function(){return t?r:(t=J,r=n.apply(this,arguments),n=K,r)}},u.pairs=function(n){for(var t=-1,r=It(n),e=r.length,u=Array(e);++tz(arguments,u,1)&&e.push(u)}return e},u.wrap=function(n,t){return function(){var r=[n];return At.apply(r,arguments),t.apply(this,r)}},u.zip=function(n){for(var t=-1,r=n?R(Ct(arguments,"length")):0,e=Array(r);++tr?Ft(0,e+r):Rt(r,e-1))+1);e--;)if(n[e]===t)return e;return-1},u.mixin=H,u.noConflict=function(){return n._=yt,this},u.random=function(n,t){return n==K&&t==K&&(t=1),n=+n||0,t==K&&(t=n,n=0),n+jt(qt()*((+t||0)-n+1))},u.reduce=q,u.reduceRight=D,u.result=function(n,t){var r=n?n[t]:K; return j(r)?n[t]():r},u.size=function(n){var t=n?n.length:0;return typeof t=="number"?t:It(n).length},u.some=M,u.sortedIndex=P,u.template=function(n,t,r){n||(n=""),r=y({},r,u.templateSettings);var e=0,o="__p+='",i=r.variable;n.replace(RegExp((r.escape||rt).source+"|"+(r.interpolate||rt).source+"|"+(r.evaluate||rt).source+"|$","g"),function(t,r,u,i,f){return o+=n.slice(e,f).replace(ut,a),r&&(o+="'+_['escape']("+r+")+'"),i&&(o+="';"+i+";__p+='"),u&&(o+="'+((__t=("+u+"))==null?'':__t)+'"),e=f+t.length,t }),o+="';\n",i||(i="obj",o="with("+i+"||{}){"+o+"}"),o="function("+i+"){var __t,__p='',__j=Array.prototype.join;function print(){__p+=__j.call(arguments,'')}"+o+"return __p}";try{var f=Function("_","return "+o)(u)}catch(c){throw c.source=o,c}return t?f(t):(f.source=o,f)},u.unescape=function(n){return n==K?"":(n+"").replace(tt,p)},u.uniqueId=function(n){var t=++Z+"";return n?n+t:t},u.all=S,u.any=M,u.detect=k,u.foldl=q,u.foldr=D,u.include=E,u.inject=q,u.first=I,u.last=function(n,t,r){if(n){var e=0,u=n.length; if(typeof t!="number"&&t!=K){var o=u;for(t=W(t,r);o--&&t(n[o],o,n);)e++}else if(e=t,e==K||r)return n[u-1];return s(n,Ft(0,u-e))}},u.take=I,u.head=I,u.chain=function(n){return n=new c(n),n.__chain__=J,n},u.VERSION="1.0.1",H(u),u.prototype.chain=function(){return this.__chain__=J,this},u.prototype.value=function(){return this.__wrapped__},e("pop push reverse shift sort splice unshift".split(" "),function(n){var t=ht[n];u.prototype[n]=function(){var n=this.__wrapped__;return t.apply(n,arguments),!Mt.spliceObjects&&0===n.length&&delete n[0],this }}),e(["concat","join","slice"],function(n){var t=ht[n];u.prototype[n]=function(){var n=t.apply(this.__wrapped__,arguments);return this.__chain__&&(n=new c(n),n.__chain__=J),n}}),Q&&!Q.nodeType?X?(X.exports=u)._=u:Q._=u:n._=u})(this);