/** * @license * Lo-Dash 1.0.1 (Custom Build) lodash.com/license * Build: `lodash underscore exports="amd,commonjs,global,node" -o ./dist/lodash.underscore.js` * Underscore.js 1.4.4 underscorejs.org/LICENSE */ ;(function(n){function r(n){return n instanceof r?n:new i(n)}function t(n,r){var t=n.b,e=r.b;if(n=n.a,r=r.a,n!==r){if(n>r||typeof n=="undefined")return 1;if(nt?0:t);++ee&&(e=t,u=n) });else for(;++ou&&(u=t);return u}function B(n,r){var t=-1,e=n?n.length:0;if(typeof e=="number")for(var u=Array(e);++targuments.length;r=P(r,e,4);var o=-1,i=n.length;if(typeof i=="number")for(u&&(t=n[++o]);++oarguments.length;if(typeof u!="number")var i=Rr(n),u=i.length;return r=P(r,e,4),E(n,function(e,f,a){f=i?i[--u]:--u,t=o?(o=!1,n[f]):r(t,n[f],f,a) }),t}function k(n,r,t){var e;r=P(r,t),t=-1;var u=n?n.length:0;if(typeof u=="number")for(;++tt?Or(0,u+t):t||0)-1;else if(t)return e=I(n,r),n[e]===r?e:-1;for(;++e>>1,t(n[e])T(f,a))&&(t&&f.push(a),i.push(e))}return i}function C(n,r){return Br.fastBind||dr&&2"']/g,Y=/['\n\r\t\u2028\u2029\\]/g,Z="[object Arguments]",nr="[object Array]",rr="[object Boolean]",tr="[object Date]",er="[object Number]",ur="[object Object]",or="[object RegExp]",ir="[object String]",fr={"boolean":!1,"function":!0,object:!0,number:!1,string:!1,undefined:!1},ar={"\\":"\\","'":"'","\n":"n","\r":"r"," ":"t","\u2028":"u2028","\u2029":"u2029"},cr=[],H={},lr=n._,pr=RegExp("^"+(H.valueOf+"").replace(/[.*+?^${}()|[\]\\]/g,"\\$&").replace(/valueOf|for [^\]]+/g,".+?")+"$"),sr=Math.ceil,vr=n.clearTimeout,gr=cr.concat,hr=Math.floor,yr=H.hasOwnProperty,mr=cr.push,_r=n.setTimeout,br=H.toString,dr=pr.test(dr=a.bind)&&dr,jr=pr.test(jr=Array.isArray)&&jr,wr=n.isFinite,Ar=n.isNaN,xr=pr.test(xr=Object.keys)&&xr,Or=Math.max,Er=Math.min,Sr=Math.random,H=pr.test(n.attachEvent),Nr=dr&&!/\n|true/.test(dr+H),Br={}; (function(){var n={0:1,length:1};Br.argsObject=arguments.constructor==Object,Br.fastBind=dr&&!Nr,Br.spliceObjects=(cr.splice.call(n,0,1),!n[0])})(1),r.templateSettings={escape:/<%-([\s\S]+?)%>/g,evaluate:/<%([\s\S]+?)%>/g,interpolate:/<%=([\s\S]+?)%>/g,variable:""},i.prototype=r.prototype,H=function(n){var r,t=[];if(!n||!fr[typeof n])return t;for(r in n)yr.call(n,r)&&t.push(r);return t},l(arguments)||(l=function(n){return n?yr.call(n,"callee"):!1});var Fr=jr||function(n){return Br.argsObject&&n instanceof Array||br.call(n)==nr },Rr=xr?function(n){return _(n)?xr(n):[]}:H,kr={"&":"&","<":"<",">":">",'"':""","'":"'"},qr=g(kr),Dr=function(n,r){var t;if(!n||!fr[typeof n])return n;r||(r=U);for(t in n)if(r(n[t],t,n)===K)break;return n},Mr=function(n,r){var t;if(!n||!fr[typeof n])return n;r||(r=U);for(t in n)if(yr.call(n,t)&&r(n[t],t,n)===K)break;return n};m(/x/)&&(m=function(n){return n instanceof Function||"[object Function]"==br.call(n)}),r.after=function(n,r){return 1>n?r():function(){return 1>--n?r.apply(this,arguments):void 0 }},r.bind=C,r.bindAll=function(n){for(var r=gr.apply(cr,arguments),t=1T(e,o,t)&&u.push(o)}return u},r.filter=x,r.flatten=M,r.forEach=E,r.functions=v,r.groupBy=function(n,r,t){var e={}; return r=P(r,t),E(n,function(n,t,u){t=r(n,t,u)+"",(yr.call(e,t)?e[t]:e[t]=[]).push(n)}),e},r.initial=function(n,r,t){if(!n)return[];var e=0,u=n.length;if(typeof r!="number"&&null!=r){var o=u;for(r=P(r,t);o--&&r(n[o],o,n);)e++}else e=null==r||t?1:r||e;return a(n,0,Er(Or(0,u-e),u))},r.intersection=function(n){var r=arguments,t=r.length,e=-1,u=n?n.length:0,o=[];n:for(;++eT(o,i)){for(var f=t;--f;)if(0>T(r[f],i))continue n;o.push(i)}}return o},r.invert=g,r.invoke=function(n,r){var t=a(arguments,2),e=-1,u=typeof r=="function",o=n?n.length:0,i=Array(typeof o=="number"?o:0); return E(n,function(n){i[++e]=(u?r:n[r]).apply(n,t)}),i},r.keys=Rr,r.map=S,r.max=N,r.memoize=function(n,r){var t={};return function(){var e=(r?r.apply(this,arguments):arguments[0])+"";return yr.call(t,e)?t[e]:t[e]=n.apply(this,arguments)}},r.min=function(n,r,t){var e=1/0,u=e,o=-1,i=n?n.length:0;if(r||typeof i!="number")r=P(r,t),E(n,function(n,t,o){t=r(n,t,o),tT(r,e,1)&&(t[e]=n) }),t},r.once=function(n){var r,t;return function(){return r?t:(r=!0,t=n.apply(this,arguments),n=null,t)}},r.pairs=function(n){for(var r=-1,t=Rr(n),e=t.length,u=Array(e);++rT(arguments,u,1)&&e.push(u)}return e},r.wrap=function(n,r){return function(){var t=[n]; return mr.apply(t,arguments),r.apply(this,t)}},r.zip=function(n){for(var r=-1,t=n?N(B(arguments,"length")):0,e=Array(t);++rt?Or(0,e+t):Er(t,e-1))+1);e--;)if(n[e]===r)return e;return-1},r.mixin=V,r.noConflict=function(){return n._=lr,this},r.random=function(n,r){return null==n&&null==r&&(r=1),n=+n||0,null==r&&(r=n,n=0),n+hr(Sr()*((+r||0)-n+1))},r.reduce=F,r.reduceRight=R,r.result=function(n,r){var t=n?n[r]:null;return m(t)?n[r]():t},r.size=function(n){var r=n?n.length:0;return typeof r=="number"?r:Rr(n).length },r.some=k,r.sortedIndex=I,r.template=function(n,t,e){n||(n=""),e=s({},e,r.templateSettings);var o=0,i="__p+='",f=e.variable;n.replace(RegExp((e.escape||Q).source+"|"+(e.interpolate||Q).source+"|"+(e.evaluate||Q).source+"|$","g"),function(r,t,e,f,a){return i+=n.slice(o,a).replace(Y,u),t&&(i+="'+_['escape']("+t+")+'"),f&&(i+="';"+f+";__p+='"),e&&(i+="'+((__t=("+e+"))==null?'':__t)+'"),o=a+r.length,r}),i+="';\n",f||(f="obj",i="with("+f+"||{}){"+i+"}"),i="function("+f+"){var __t,__p='',__j=Array.prototype.join;function print(){__p+=__j.call(arguments,'')}"+i+"return __p}"; try{var a=Function("_","return "+i)(r)}catch(c){throw c.source=i,c}return t?a(t):(a.source=i,a)},r.unescape=function(n){return null==n?"":(n+"").replace(L,c)},r.uniqueId=function(n){var r=++J+"";return n?n+r:r},r.all=A,r.any=k,r.detect=O,r.foldl=F,r.foldr=R,r.include=w,r.inject=F,r.first=D,r.last=function(n,r,t){if(n){var e=0,u=n.length;if(typeof r!="number"&&null!=r){var o=u;for(r=P(r,t);o--&&r(n[o],o,n);)e++}else if(e=r,null==e||t)return n[u-1];return a(n,Or(0,u-e))}},r.take=D,r.head=D,r.chain=function(n){return n=new i(n),n.__chain__=!0,n },r.VERSION="1.0.1",V(r),r.prototype.chain=function(){return this.__chain__=!0,this},r.prototype.value=function(){return this.__wrapped__},E("pop push reverse shift sort splice unshift".split(" "),function(n){var t=cr[n];r.prototype[n]=function(){var n=this.__wrapped__;return t.apply(n,arguments),!Br.spliceObjects&&0===n.length&&delete n[0],this}}),E(["concat","join","slice"],function(n){var t=cr[n];r.prototype[n]=function(){var n=t.apply(this.__wrapped__,arguments);return this.__chain__&&(n=new i(n),n.__chain__=!0),n }}),typeof define=="function"&&typeof define.amd=="object"&&define.amd?(n._=r,define(function(){return r})):W&&!W.nodeType?G?(G.exports=r)._=r:W._=r:n._=r})(this);