Optimize _.pluck for modern environments.

Former-commit-id: 1a6bbb9866b8ac20faaa707be5f33814579e1df8
This commit is contained in:
John-David Dalton
2013-03-23 12:21:43 -07:00
parent 2cc2d696f1
commit 80e0e3fcd7
5 changed files with 103 additions and 63 deletions

View File

@@ -1895,6 +1895,22 @@
'}'
].join('\n'));
// replace `_.pluck`
source = replaceFunction(source, 'pluck', [
'function pluck(collection, property) {',
' var index = -1,',
' length = collection ? collection.length : 0;',
'',
" if (typeof length == 'number') {",
' var result = Array(length);',
' while (++index < length) {',
' result[index] = collection[index][property]',
' }',
' }',
' return result || map(collection, property);',
'}'
].join('\n'));
// replace `isArray(collection)` checks in "Collections" methods with simpler type checks
_.each(['every', 'filter', 'find', 'max', 'min', 'reduce', 'some'], function(methodName) {
source = source.replace(matchFunction(source, methodName), function(match) {

13
dist/lodash.js vendored
View File

@@ -2667,7 +2667,18 @@
* _.pluck(stooges, 'name');
* // => ['moe', 'larry']
*/
var pluck = map;
function pluck(collection, property) {
var index = -1,
length = collection ? collection.length : 0;
if (typeof length == 'number') {
var result = Array(length);
while (++index < length) {
result[index] = collection[index][property]
}
}
return result || map(collection, property);
}
/**
* Reduces a `collection` to a value that is the accumulated result of running

69
dist/lodash.min.js vendored
View File

@@ -4,38 +4,39 @@
* Build: `lodash modern -o ./dist/lodash.js`
* Underscore.js 1.4.4 underscorejs.org/LICENSE
*/
;(function(n){function t(r){function a(n){return n&&typeof n=="object"&&!ue(n)&&Mt.call(n,"__wrapped__")?n:new z(n)}function $(n,t,e){var r=n.length,u=r-t>=e;if(u){var a={};for(e=t-1;++e<r;){var o=At(n[e]);(Mt.call(a,o)?a[o]:a[o]=[]).push(n[e])}}return function(e){if(u){var r=At(e);return Mt.call(a,r)&&-1<vt(a[r],e)}return-1<vt(n,e,t)}}function q(n){return n.charCodeAt(0)}function B(n,t){var e=n.b,r=t.b;if(n=n.a,t=t.a,n!==t){if(n>t||typeof n=="undefined")return 1;if(n<t||typeof t=="undefined")return-1
}return e<r?-1:1}function F(n,t,e,r){function u(){var r=arguments,c=o?this:t;return a||(n=t[i]),e.length&&(r=r.length?(r=M(r),f?r.concat(e):e.concat(r)):e),this instanceof u?(P.prototype=n.prototype,c=new P,P.prototype=null,r=n.apply(c,r),W(r)?r:c):n.apply(c,r)}var a=Q(n),o=!e,i=t;if(o){var f=r;e=t}else if(!a){if(!r)throw new $t;t=n}return u}function R(){for(var n,t={b:"k(m)",c:"",e:"m",f:"",h:"",i:!0,j:!!ae},e=0;n=arguments[e];e++)for(var r in n)t[r]=n[r];return n=t.a,t.d=/^[^,]+/.exec(n)[0],e=Ot,r="var i,m="+t.d+",u="+t.e+";if(!m)return u;"+t.h+";",t.b&&(r+="var n=m.length;i=-1;if("+t.b+"){while(++i<n){"+t.f+"}}else{"),t.i&&t.j?r+="var s=-1,t=r[typeof m]?o(m):[],n=t.length;while(++s<n){i=t[s];"+t.f+"}":(r+="for(i in m){",t.i&&(r+="if(",t.i&&(r+="h.call(m,i)"),r+="){"),r+=t.f+";",t.i&&(r+="}"),r+="}"),t.b&&(r+="}"),r+=t.c+";return u",e("h,j,k,l,o,p,r","return function("+n+"){"+r+"}")(Mt,V,ue,Y,ae,a,N)
}function T(n){return"\\"+S[n]}function D(n){return oe[n]}function z(n){this.__wrapped__=n}function P(){}function K(n){var t=!1;if(!n||Ht.call(n)!=x)return t;var e=n.constructor;return!Q(e)||e instanceof e?(le(n,function(n,e){t=e}),!1===t||Mt.call(n,t)):t}function M(n,t,e){t||(t=0),typeof e=="undefined"&&(e=n?n.length:0);var r=-1;e=e-t||0;for(var u=jt(0>e?0:e);++r<e;)u[r]=n[t+r];return u}function U(n){return ie[n]}function V(n){return Ht.call(n)==_}function G(n,t,r,u,o,i){var f=n;if(typeof t=="function"&&(u=r,r=t,t=!1),typeof r=="function"){if(r=typeof u=="undefined"?r:a.createCallback(r,u,1),f=r(f),typeof f!="undefined")return f;
f=n}if(u=W(f)){var c=Ht.call(f);if(!I[c])return f;var l=ue(f)}if(!u||!t)return u?l?M(f):fe({},f):f;switch(u=ee[c],c){case w:case j:return new u(+f);case C:case E:return new u(f);case O:return u(f.source,v.exec(f))}for(o||(o=[]),i||(i=[]),c=o.length;c--;)if(o[c]==n)return i[c];return f=l?u(f.length):{},l&&(Mt.call(n,"index")&&(f.index=n.index),Mt.call(n,"input")&&(f.input=n.input)),o.push(n),i.push(f),(l?at:pe)(n,function(n,u){f[u]=G(n,t,r,e,o,i)}),f}function H(n){var t=[];return le(n,function(n,e){Q(n)&&t.push(e)
}),t.sort()}function J(n){for(var t=-1,e=ae(n),r=e.length,u={};++t<r;){var a=e[t];u[n[a]]=a}return u}function L(n,t,e,r,u,o){var f=e===i;if(e&&!f){e=typeof r=="undefined"?e:a.createCallback(e,r,2);var c=e(n,t);if(typeof c!="undefined")return!!c}if(n===t)return 0!==n||1/n==1/t;var l=typeof n,p=typeof t;if(n===n&&(!n||"function"!=l&&"object"!=l)&&(!t||"function"!=p&&"object"!=p))return!1;if(null==n||null==t)return n===t;if(p=Ht.call(n),l=Ht.call(t),p==_&&(p=x),l==_&&(l=x),p!=l)return!1;switch(p){case w:case j:return+n==+t;
case C:return n!=+n?t!=+t:0==n?1/n==1/t:n==+t;case O:case E:return n==At(t)}if(l=p==k,!l){if(Mt.call(n,"__wrapped__")||Mt.call(t,"__wrapped__"))return L(n.__wrapped__||n,t.__wrapped__||t,e,r,u,o);if(p!=x)return!1;var p=n.constructor,s=t.constructor;if(p!=s&&(!Q(p)||!(p instanceof p&&Q(s)&&s instanceof s)))return!1}for(u||(u=[]),o||(o=[]),p=u.length;p--;)if(u[p]==n)return o[p]==t;var v=0,c=!0;if(u.push(n),o.push(t),l){if(p=n.length,v=t.length,c=v==n.length,!c&&!f)return c;for(;v--;)if(l=p,s=t[v],f)for(;l--&&!(c=L(n[l],s,e,r,u,o)););else if(!(c=L(n[v],s,e,r,u,o)))break;
return c}return le(t,function(t,a,i){return Mt.call(i,a)?(v++,c=Mt.call(n,a)&&L(n[a],t,e,r,u,o)):void 0}),c&&!f&&le(n,function(n,t,e){return Mt.call(e,t)?c=-1<--v:void 0}),c}function Q(n){return typeof n=="function"}function W(n){return n?N[typeof n]:!1}function X(n){return typeof n=="number"||Ht.call(n)==C}function Y(n){return typeof n=="string"||Ht.call(n)==E}function Z(n,t,e){var r=arguments,u=0,o=2;if(!W(n))return n;if(e===i)var f=r[3],c=r[4],l=r[5];else c=[],l=[],typeof e!="number"&&(o=r.length),3<o&&"function"==typeof r[o-2]?f=a.createCallback(r[--o-1],r[o--],2):2<o&&"function"==typeof r[o-1]&&(f=r[--o]);
for(;++u<o;)(ue(r[u])?at:pe)(r[u],function(t,e){var r,u,a=t,o=n[e];if(t&&((u=ue(t))||se(t))){for(a=c.length;a--;)if(r=c[a]==t){o=l[a];break}r||(o=u?ue(o)?o:[]:se(o)?o:{},f&&(a=f(o,t),typeof a!="undefined"&&(o=a)),c.push(t),l.push(o),f||(o=Z(o,t,i,f,c,l)))}else f&&(a=f(o,t),typeof a=="undefined"&&(a=t)),typeof a!="undefined"&&(o=a);n[e]=o});return n}function nt(n){for(var t=-1,e=ae(n),r=e.length,u=jt(r);++t<r;)u[t]=n[e[t]];return u}function tt(n,t,e){var r=-1,u=n?n.length:0,a=!1;return e=(0>e?Yt(0,u+e):e)||0,typeof u=="number"?a=-1<(Y(n)?n.indexOf(t,e):vt(n,t,e)):pe(n,function(n){return++r<e?void 0:!(a=n===t)
}),a}function et(n,t,e){var r=!0;t=a.createCallback(t,e),e=-1;var u=n?n.length:0;if(typeof u=="number")for(;++e<u&&(r=!!t(n[e],e,n)););else pe(n,function(n,e,u){return r=!!t(n,e,u)});return r}function rt(n,t,e){var r=[];t=a.createCallback(t,e),e=-1;var u=n?n.length:0;if(typeof u=="number")for(;++e<u;){var o=n[e];t(o,e,n)&&r.push(o)}else pe(n,function(n,e,u){t(n,e,u)&&r.push(n)});return r}function ut(n,t,e){t=a.createCallback(t,e),e=-1;var r=n?n.length:0;if(typeof r!="number"){var u;return pe(n,function(n,e,r){return t(n,e,r)?(u=n,!1):void 0
}),u}for(;++e<r;){var o=n[e];if(t(o,e,n))return o}}function at(n,t,e){var r=-1,u=n?n.length:0;if(typeof u=="number")for(t=t&&typeof e=="undefined"?t:a.createCallback(t,e);++r<u&&!1!==t(n[r],r,n););else pe(n,t,e);return n}function ot(n,t,e){var r=-1,u=n?n.length:0;if(t=a.createCallback(t,e),typeof u=="number")for(var o=jt(u);++r<u;)o[r]=t(n[r],r,n);else o=[],pe(n,function(n,e,u){o[++r]=t(n,e,u)});return o}function it(n,t,e){var r=-1/0,u=r;if(!t&&ue(n)){e=-1;for(var o=n.length;++e<o;){var i=n[e];i>u&&(u=i)
}}else t=!t&&Y(n)?q:a.createCallback(t,e),at(n,function(n,e,a){e=t(n,e,a),e>r&&(r=e,u=n)});return u}function ft(n,t,e,r){if(!n)return e;var u=3>arguments.length;t=a.createCallback(t,r,4);var o=-1,i=n.length;if(typeof i=="number")for(u&&(e=n[++o]);++o<i;)e=t(e,n[o],o,n);else pe(n,function(n,r,a){e=u?(u=!1,n):t(e,n,r,a)});return e}function ct(n,t,e,r){var u=n?n.length:0,o=3>arguments.length;if(typeof u!="number")var i=ae(n),u=i.length;return t=a.createCallback(t,r,4),at(n,function(r,a,f){a=i?i[--u]:--u,e=o?(o=!1,n[a]):t(e,n[a],a,f)
}),e}function lt(n,t,e){var r;t=a.createCallback(t,e),e=-1;var u=n?n.length:0;if(typeof u=="number")for(;++e<u&&!(r=t(n[e],e,n)););else pe(n,function(n,e,u){return!(r=t(n,e,u))});return!!r}function pt(n,t,e){if(n){var r=0,u=n.length;if(typeof t!="number"&&null!=t){var o=-1;for(t=a.createCallback(t,e);++o<u&&t(n[o],o,n);)r++}else if(r=t,null==r||e)return n[0];return M(n,0,Zt(Yt(0,r),u))}}function st(n,t,e,r){var u=-1,o=n?n.length:0,i=[];for(typeof t!="boolean"&&null!=t&&(r=e,e=t,t=!1),null!=e&&(e=a.createCallback(e,r));++u<o;)r=n[u],e&&(r=e(r,u,n)),ue(r)?Ut.apply(i,t?r:st(r)):i.push(r);
return i}function vt(n,t,e){var r=-1,u=n?n.length:0;if(typeof e=="number")r=(0>e?Yt(0,u+e):e||0)-1;else if(e)return r=ht(n,t),n[r]===t?r:-1;for(;++r<u;)if(n[r]===t)return r;return-1}function gt(n,t,e){if(typeof t!="number"&&null!=t){var r=0,u=-1,o=n?n.length:0;for(t=a.createCallback(t,e);++u<o&&t(n[u],u,n);)r++}else r=null==t||e?1:Yt(0,t);return M(n,r)}function ht(n,t,e,r){var u=0,o=n?n.length:u;for(e=e?a.createCallback(e,r,1):_t,t=e(t);u<o;)r=u+o>>>1,e(n[r])<t?u=r+1:o=r;return u}function yt(n,t,e,r){var u=-1,o=n?n.length:0,i=[],f=i;
typeof t!="boolean"&&null!=t&&(r=e,e=t,t=!1);var c=!t&&75<=o;if(c)var l={};for(null!=e&&(f=[],e=a.createCallback(e,r));++u<o;){r=n[u];var p=e?e(r,u,n):r;if(c)var s=At(p),s=Mt.call(l,s)?!(f=l[s]):f=l[s]=[];(t?!u||f[f.length-1]!==p:s||0>vt(f,p))&&((e||c)&&f.push(p),i.push(r))}return i}function mt(n,t){for(var e=-1,r=n?n.length:0,u={};++e<r;){var a=n[e];t?u[a]=t[e]:u[a[0]]=a[1]}return u}function bt(n,t){return re.fastBind||Jt&&2<arguments.length?Jt.call.apply(Jt,arguments):F(n,t,M(arguments,2))}function dt(n){var t=M(arguments,1);
return Gt(function(){n.apply(e,t)},1)}function _t(n){return n}function kt(n){at(H(n),function(t){var e=a[t]=n[t];a.prototype[t]=function(){var n=this.__wrapped__,t=[n];return Ut.apply(t,arguments),t=e.apply(a,t),n&&typeof n=="object"&&n==t?this:new z(t)}})}function wt(){return this.__wrapped__}r=r?A.defaults(n.Object(),r,A.pick(n,d)):n;var jt=r.Array,Ct=r.Boolean,xt=r.Date,Ot=r.Function,Et=r.Math,It=r.Number,Nt=r.Object,St=r.RegExp,At=r.String,$t=r.TypeError,qt=jt(),Bt=Nt(),Ft=r._,Rt=St("^"+At(Bt.valueOf).replace(/[.*+?^${}()|[\]\\]/g,"\\$&").replace(/valueOf|for [^\]]+/g,".+?")+"$"),Tt=Et.ceil,Dt=r.clearTimeout,zt=qt.concat,Pt=Et.floor,Kt=Rt.test(Kt=Nt.getPrototypeOf)&&Kt,Mt=Bt.hasOwnProperty,Ut=qt.push,Vt=r.setImmediate,Gt=r.setTimeout,Ht=Bt.toString,Jt=Rt.test(Jt=M.bind)&&Jt,Lt=Rt.test(Lt=jt.isArray)&&Lt,Qt=r.isFinite,Wt=r.isNaN,Xt=Rt.test(Xt=Nt.keys)&&Xt,Yt=Et.max,Zt=Et.min,ne=r.parseInt,te=Et.random,Et=Rt.test(r.attachEvent),Et=Jt&&!/\n|true/.test(Jt+Et),ee={};
ee[k]=jt,ee[w]=Ct,ee[j]=xt,ee[x]=Nt,ee[C]=It,ee[O]=St,ee[E]=At;var re=a.support={};re.fastBind=Jt&&!Et,a.templateSettings={escape:/<%-([\s\S]+?)%>/g,evaluate:/<%([\s\S]+?)%>/g,interpolate:g,variable:"",imports:{_:a}},Ct={a:"q,w,g",h:"var a=arguments,b=0,c=typeof g=='number'?2:a.length;while(++b<c){m=a[b];if(m&&r[typeof m]){",f:"if(typeof u[i]=='undefined')u[i]=m[i]",c:"}}"},It={a:"e,d,x",h:"d=d&&typeof x=='undefined'?d:p.createCallback(d,x)",b:!1,f:"if(d(m[i],i,e)===false)return u"},Nt={h:"if(!r[typeof m])return u;"+It.h,b:!1},z.prototype=a.prototype;
var Bt=R({a:"q",e:"[]",h:"if(!(r[typeof q]))return u",f:"u.push(i)",b:!1}),ue=Lt||function(n){return n instanceof jt||Ht.call(n)==k},ae=Xt?function(n){return W(n)?Xt(n):[]}:Bt,oe={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;"},ie=J(oe),fe=R(Ct,{h:Ct.h.replace(";",";if(c>3&&typeof a[c-2]=='function'){var d=p.createCallback(a[--c-1],a[c--],2);}else if(c>2&&typeof a[c-1]=='function'){d=a[--c];}"),f:"u[i]=d?d(u[i],m[i]):m[i]"}),ce=R(Ct),le=R(It,Nt,{i:!1}),pe=R(It,Nt),se=function(n){if(!n||Ht.call(n)!=x)return!1;
var t=n.valueOf,e=typeof t=="function"&&(e=Kt(t))&&Kt(e);return e?n==e||Kt(n)==e:K(n)};return Et&&u&&typeof Vt=="function"&&(dt=bt(Vt,r)),Vt=8==ne("08")?ne:function(n,t){return ne(Y(n)?n.replace(h,""):n,t||0)},a.after=function(n,t){return 1>n?t():function(){return 1>--n?t.apply(this,arguments):void 0}},a.assign=fe,a.at=function(n){for(var t=-1,e=zt.apply(qt,M(arguments,1)),r=e.length,u=jt(r);++t<r;)u[t]=n[e[t]];return u},a.bind=bt,a.bindAll=function(n){for(var t=zt.apply(qt,arguments),e=1<t.length?0:(t=H(n),-1),r=t.length;++e<r;){var u=t[e];
n[u]=bt(n[u],n)}return n},a.bindKey=function(n,t){return F(n,t,M(arguments,2),i)},a.compact=function(n){for(var t=-1,e=n?n.length:0,r=[];++t<e;){var u=n[t];u&&r.push(u)}return r},a.compose=function(){var n=arguments;return function(){for(var t=arguments,e=n.length;e--;)t=[n[e].apply(this,t)];return t[0]}},a.countBy=function(n,t,e){var r={};return t=a.createCallback(t,e),at(n,function(n,e,u){e=At(t(n,e,u)),Mt.call(r,e)?r[e]++:r[e]=1}),r},a.createCallback=function(n,t,e){if(null==n)return _t;var r=typeof n;
if("function"!=r){if("object"!=r)return function(t){return t[n]};var u=ae(n);return function(t){for(var e=u.length,r=!1;e--&&(r=L(t[u[e]],n[u[e]],i)););return r}}return typeof t!="undefined"?1===e?function(e){return n.call(t,e)}:2===e?function(e,r){return n.call(t,e,r)}:4===e?function(e,r,u,a){return n.call(t,e,r,u,a)}:function(e,r,u){return n.call(t,e,r,u)}:n},a.debounce=function(n,t,e){function r(){i=null,e||(a=n.apply(o,u))}var u,a,o,i;return function(){var f=e&&!i;return u=arguments,o=this,Dt(i),i=Gt(r,t),f&&(a=n.apply(o,u)),a
}},a.defaults=ce,a.defer=dt,a.delay=function(n,t){var r=M(arguments,2);return Gt(function(){n.apply(e,r)},t)},a.difference=function(n){for(var t=-1,e=n?n.length:0,r=zt.apply(qt,arguments),r=$(r,e,100),u=[];++t<e;){var a=n[t];r(a)||u.push(a)}return u},a.filter=rt,a.flatten=st,a.forEach=at,a.forIn=le,a.forOwn=pe,a.functions=H,a.groupBy=function(n,t,e){var r={};return t=a.createCallback(t,e),at(n,function(n,e,u){e=At(t(n,e,u)),(Mt.call(r,e)?r[e]:r[e]=[]).push(n)}),r},a.initial=function(n,t,e){if(!n)return[];
var r=0,u=n.length;if(typeof t!="number"&&null!=t){var o=u;for(t=a.createCallback(t,e);o--&&t(n[o],o,n);)r++}else r=null==t||e?1:t||r;return M(n,0,Zt(Yt(0,u-r),u))},a.intersection=function(n){var t=arguments,e=t.length,r={0:{}},u=-1,a=n?n.length:0,o=100<=a,i=[],f=i;n:for(;++u<a;){var c=n[u];if(o)var l=At(c),l=Mt.call(r[0],l)?!(f=r[0][l]):f=r[0][l]=[];if(l||0>vt(f,c)){o&&f.push(c);for(var p=e;--p;)if(!(r[p]||(r[p]=$(t[p],0,100)))(c))continue n;i.push(c)}}return i},a.invert=J,a.invoke=function(n,t){var e=M(arguments,2),r=-1,u=typeof t=="function",a=n?n.length:0,o=jt(typeof a=="number"?a:0);
return at(n,function(n){o[++r]=(u?t:n[t]).apply(n,e)}),o},a.keys=ae,a.map=ot,a.max=it,a.memoize=function(n,t){var e={};return function(){var r=At(t?t.apply(this,arguments):arguments[0]);return Mt.call(e,r)?e[r]:e[r]=n.apply(this,arguments)}},a.merge=Z,a.min=function(n,t,e){var r=1/0,u=r;if(!t&&ue(n)){e=-1;for(var o=n.length;++e<o;){var i=n[e];i<u&&(u=i)}}else t=!t&&Y(n)?q:a.createCallback(t,e),at(n,function(n,e,a){e=t(n,e,a),e<r&&(r=e,u=n)});return u},a.omit=function(n,t,e){var r=typeof t=="function",u={};
if(r)t=a.createCallback(t,e);else var o=zt.apply(qt,arguments);return le(n,function(n,e,a){(r?!t(n,e,a):0>vt(o,e,1))&&(u[e]=n)}),u},a.once=function(n){var t,e;return function(){return t?e:(t=!0,e=n.apply(this,arguments),n=null,e)}},a.pairs=function(n){for(var t=-1,e=ae(n),r=e.length,u=jt(r);++t<r;){var a=e[t];u[t]=[a,n[a]]}return u},a.partial=function(n){return F(n,M(arguments,1))},a.partialRight=function(n){return F(n,M(arguments,1),null,i)},a.pick=function(n,t,e){var r={};if(typeof t!="function")for(var u=0,o=zt.apply(qt,arguments),i=W(n)?o.length:0;++u<i;){var f=o[u];
f in n&&(r[f]=n[f])}else t=a.createCallback(t,e),le(n,function(n,e,u){t(n,e,u)&&(r[e]=n)});return r},a.pluck=ot,a.range=function(n,t,e){n=+n||0,e=+e||1,null==t&&(t=n,n=0);var r=-1;t=Yt(0,Tt((t-n)/e));for(var u=jt(t);++r<t;)u[r]=n,n+=e;return u},a.reject=function(n,t,e){return t=a.createCallback(t,e),rt(n,function(n,e,r){return!t(n,e,r)})},a.rest=gt,a.shuffle=function(n){var t=-1,e=n?n.length:0,r=jt(typeof e=="number"?e:0);return at(n,function(n){var e=Pt(te()*(++t+1));r[t]=r[e],r[e]=n}),r},a.sortBy=function(n,t,e){var r=-1,u=n?n.length:0,o=jt(typeof u=="number"?u:0);
for(t=a.createCallback(t,e),at(n,function(n,e,u){o[++r]={a:t(n,e,u),b:r,c:n}}),u=o.length,o.sort(B);u--;)o[u]=o[u].c;return o},a.tap=function(n,t){return t(n),n},a.throttle=function(n,t){function e(){i=new xt,o=null,u=n.apply(a,r)}var r,u,a,o,i=0;return function(){var f=new xt,c=t-(f-i);return r=arguments,a=this,0<c?o||(o=Gt(e,c)):(Dt(o),o=null,i=f,u=n.apply(a,r)),u}},a.times=function(n,t,e){n=-1<(n=+n)?n:0;var r=-1,u=jt(n);for(t=a.createCallback(t,e,1);++r<n;)u[r]=t(r);return u},a.toArray=function(n){return n&&typeof n.length=="number"?M(n):nt(n)
},a.union=function(){return yt(zt.apply(qt,arguments))},a.uniq=yt,a.values=nt,a.where=rt,a.without=function(n){for(var t=-1,e=n?n.length:0,r=$(arguments,1,30),u=[];++t<e;){var a=n[t];r(a)||u.push(a)}return u},a.wrap=function(n,t){return function(){var e=[n];return Ut.apply(e,arguments),t.apply(this,e)}},a.zip=function(n){for(var t=-1,e=n?it(ot(arguments,"length")):0,r=jt(e);++t<e;)r[t]=ot(arguments,t);return r},a.zipObject=mt,a.collect=ot,a.drop=gt,a.each=at,a.extend=fe,a.methods=H,a.object=mt,a.select=rt,a.tail=gt,a.unique=yt,kt(a),a.clone=G,a.cloneDeep=function(n,t,e){return G(n,!0,t,e)
},a.contains=tt,a.escape=function(n){return null==n?"":At(n).replace(m,D)},a.every=et,a.find=ut,a.findIndex=function(n,t,e){var r=-1,u=n?n.length:0;for(t=a.createCallback(t,e);++r<u;)if(t(n[r],r,n))return r;return-1},a.findKey=function(n,t,e){var r;return t=a.createCallback(t,e),pe(n,function(n,e,u){return t(n,e,u)?(r=e,!1):void 0}),r},a.has=function(n,t){return n?Mt.call(n,t):!1},a.identity=_t,a.indexOf=vt,a.isArguments=V,a.isArray=ue,a.isBoolean=function(n){return!0===n||!1===n||Ht.call(n)==w},a.isDate=function(n){return n instanceof xt||Ht.call(n)==j
},a.isElement=function(n){return n?1===n.nodeType:!1},a.isEmpty=function(n){var t=!0;if(!n)return t;var e=Ht.call(n),r=n.length;return e==k||e==E||e==_||e==x&&typeof r=="number"&&Q(n.splice)?!r:(pe(n,function(){return t=!1}),t)},a.isEqual=L,a.isFinite=function(n){return Qt(n)&&!Wt(parseFloat(n))},a.isFunction=Q,a.isNaN=function(n){return X(n)&&n!=+n},a.isNull=function(n){return null===n},a.isNumber=X,a.isObject=W,a.isPlainObject=se,a.isRegExp=function(n){return n instanceof St||Ht.call(n)==O},a.isString=Y,a.isUndefined=function(n){return typeof n=="undefined"
},a.lastIndexOf=function(n,t,e){var r=n?n.length:0;for(typeof e=="number"&&(r=(0>e?Yt(0,r+e):Zt(e,r-1))+1);r--;)if(n[r]===t)return r;return-1},a.mixin=kt,a.noConflict=function(){return r._=Ft,this},a.parseInt=Vt,a.random=function(n,t){return null==n&&null==t&&(t=1),n=+n||0,null==t&&(t=n,n=0),n+Pt(te()*((+t||0)-n+1))},a.reduce=ft,a.reduceRight=ct,a.result=function(n,t){var r=n?n[t]:e;return Q(r)?n[t]():r},a.runInContext=t,a.size=function(n){var t=n?n.length:0;return typeof t=="number"?t:ae(n).length
},a.some=lt,a.sortedIndex=ht,a.template=function(n,t,r){var u=a.templateSettings;n||(n=""),r=ce({},r,u);var o,i=ce({},r.imports,u.imports),u=ae(i),i=nt(i),p=0,v=r.interpolate||y,h="__p+='",v=St((r.escape||y).source+"|"+v.source+"|"+(v===g?s:y).source+"|"+(r.evaluate||y).source+"|$","g");n.replace(v,function(t,e,r,u,a,i){return r||(r=u),h+=n.slice(p,i).replace(b,T),e&&(h+="'+__e("+e+")+'"),a&&(o=!0,h+="';"+a+";__p+='"),r&&(h+="'+((__t=("+r+"))==null?'':__t)+'"),p=i+t.length,t}),h+="';\n",v=r=r.variable,v||(r="obj",h="with("+r+"){"+h+"}"),h=(o?h.replace(f,""):h).replace(c,"$1").replace(l,"$1;"),h="function("+r+"){"+(v?"":r+"||("+r+"={});")+"var __t,__p='',__e=_.escape"+(o?",__j=Array.prototype.join;function print(){__p+=__j.call(arguments,'')}":";")+h+"return __p}";
try{var m=Ot(u,"return "+h).apply(e,i)}catch(d){throw d.source=h,d}return t?m(t):(m.source=h,m)},a.unescape=function(n){return null==n?"":At(n).replace(p,U)},a.uniqueId=function(n){var t=++o;return At(null==n?"":n)+t},a.all=et,a.any=lt,a.detect=ut,a.foldl=ft,a.foldr=ct,a.include=tt,a.inject=ft,pe(a,function(n,t){a.prototype[t]||(a.prototype[t]=function(){var t=[this.__wrapped__];return Ut.apply(t,arguments),n.apply(a,t)})}),a.first=pt,a.last=function(n,t,e){if(n){var r=0,u=n.length;if(typeof t!="number"&&null!=t){var o=u;
for(t=a.createCallback(t,e);o--&&t(n[o],o,n);)r++}else if(r=t,null==r||e)return n[u-1];return M(n,Yt(0,u-r))}},a.take=pt,a.head=pt,pe(a,function(n,t){a.prototype[t]||(a.prototype[t]=function(t,e){var r=n(this.__wrapped__,t,e);return null==t||e&&typeof t!="function"?r:new z(r)})}),a.VERSION="1.0.1",a.prototype.toString=function(){return At(this.__wrapped__)},a.prototype.value=wt,a.prototype.valueOf=wt,at(["join","pop","shift"],function(n){var t=qt[n];a.prototype[n]=function(){return t.apply(this.__wrapped__,arguments)
}}),at(["push","reverse","sort","unshift"],function(n){var t=qt[n];a.prototype[n]=function(){return t.apply(this.__wrapped__,arguments),this}}),at(["concat","slice","splice"],function(n){var t=qt[n];a.prototype[n]=function(){return new z(t.apply(this.__wrapped__,arguments))}}),a}var e,r=typeof exports=="object"&&exports,u=typeof module=="object"&&module&&module.exports==r&&module,a=typeof global=="object"&&global;a.global===a&&(n=a);var o=0,i={},f=/\b__p\+='';/g,c=/\b(__p\+=)''\+/g,l=/(__e\(.*?\)|\b__t\))\+'';/g,p=/&(?:amp|lt|gt|quot|#39);/g,s=/\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g,v=/\w*$/,g=/<%=([\s\S]+?)%>/g,h=/^0+(?=.$)/,y=/($^)/,m=/[&<>"']/g,b=/['\n\r\t\u2028\u2029\\]/g,d="Array Boolean Date Function Math Number Object RegExp String _ attachEvent clearTimeout isFinite isNaN parseInt setImmediate setTimeout".split(" "),_="[object Arguments]",k="[object Array]",w="[object Boolean]",j="[object Date]",C="[object Number]",x="[object Object]",O="[object RegExp]",E="[object String]",I={"[object Function]":!1};
;(function(n){function t(r){function a(n){return n&&typeof n=="object"&&!ae(n)&&Ut.call(n,"__wrapped__")?n:new z(n)}function $(n,t,e){var r=n.length,u=r-t>=e;if(u){var a={};for(e=t-1;++e<r;){var o=$t(n[e]);(Ut.call(a,o)?a[o]:a[o]=[]).push(n[e])}}return function(e){if(u){var r=$t(e);return Ut.call(a,r)&&-1<gt(a[r],e)}return-1<gt(n,e,t)}}function q(n){return n.charCodeAt(0)}function B(n,t){var e=n.b,r=t.b;if(n=n.a,t=t.a,n!==t){if(n>t||typeof n=="undefined")return 1;if(n<t||typeof t=="undefined")return-1
}return e<r?-1:1}function F(n,t,e,r){function u(){var r=arguments,c=o?this:t;return a||(n=t[i]),e.length&&(r=r.length?(r=M(r),f?r.concat(e):e.concat(r)):e),this instanceof u?(P.prototype=n.prototype,c=new P,P.prototype=null,r=n.apply(c,r),W(r)?r:c):n.apply(c,r)}var a=Q(n),o=!e,i=t;if(o){var f=r;e=t}else if(!a){if(!r)throw new qt;t=n}return u}function R(){for(var n,t={b:"k(m)",c:"",e:"m",f:"",h:"",i:!0,j:!!oe},e=0;n=arguments[e];e++)for(var r in n)t[r]=n[r];return n=t.a,t.d=/^[^,]+/.exec(n)[0],e=Et,r="var i,m="+t.d+",u="+t.e+";if(!m)return u;"+t.h+";",t.b&&(r+="var n=m.length;i=-1;if("+t.b+"){while(++i<n){"+t.f+"}}else{"),t.i&&t.j?r+="var s=-1,t=r[typeof m]?o(m):[],n=t.length;while(++s<n){i=t[s];"+t.f+"}":(r+="for(i in m){",t.i&&(r+="if(",t.i&&(r+="h.call(m,i)"),r+="){"),r+=t.f+";",t.i&&(r+="}"),r+="}"),t.b&&(r+="}"),r+=t.c+";return u",e("h,j,k,l,o,p,r","return function("+n+"){"+r+"}")(Ut,V,ae,Y,oe,a,N)
}function T(n){return"\\"+S[n]}function D(n){return ie[n]}function z(n){this.__wrapped__=n}function P(){}function K(n){var t=!1;if(!n||Jt.call(n)!=x)return t;var e=n.constructor;return!Q(e)||e instanceof e?(pe(n,function(n,e){t=e}),!1===t||Ut.call(n,t)):t}function M(n,t,e){t||(t=0),typeof e=="undefined"&&(e=n?n.length:0);var r=-1;e=e-t||0;for(var u=Ct(0>e?0:e);++r<e;)u[r]=n[t+r];return u}function U(n){return fe[n]}function V(n){return Jt.call(n)==_}function G(n,t,r,u,o,i){var f=n;if(typeof t=="function"&&(u=r,r=t,t=!1),typeof r=="function"){if(r=typeof u=="undefined"?r:a.createCallback(r,u,1),f=r(f),typeof f!="undefined")return f;
f=n}if(u=W(f)){var c=Jt.call(f);if(!I[c])return f;var l=ae(f)}if(!u||!t)return u?l?M(f):ce({},f):f;switch(u=re[c],c){case w:case j:return new u(+f);case C:case E:return new u(f);case O:return u(f.source,v.exec(f))}for(o||(o=[]),i||(i=[]),c=o.length;c--;)if(o[c]==n)return i[c];return f=l?u(f.length):{},l&&(Ut.call(n,"index")&&(f.index=n.index),Ut.call(n,"input")&&(f.input=n.input)),o.push(n),i.push(f),(l?at:se)(n,function(n,u){f[u]=G(n,t,r,e,o,i)}),f}function H(n){var t=[];return pe(n,function(n,e){Q(n)&&t.push(e)
}),t.sort()}function J(n){for(var t=-1,e=oe(n),r=e.length,u={};++t<r;){var a=e[t];u[n[a]]=a}return u}function L(n,t,e,r,u,o){var f=e===i;if(e&&!f){e=typeof r=="undefined"?e:a.createCallback(e,r,2);var c=e(n,t);if(typeof c!="undefined")return!!c}if(n===t)return 0!==n||1/n==1/t;var l=typeof n,p=typeof t;if(n===n&&(!n||"function"!=l&&"object"!=l)&&(!t||"function"!=p&&"object"!=p))return!1;if(null==n||null==t)return n===t;if(p=Jt.call(n),l=Jt.call(t),p==_&&(p=x),l==_&&(l=x),p!=l)return!1;switch(p){case w:case j:return+n==+t;
case C:return n!=+n?t!=+t:0==n?1/n==1/t:n==+t;case O:case E:return n==$t(t)}if(l=p==k,!l){if(Ut.call(n,"__wrapped__")||Ut.call(t,"__wrapped__"))return L(n.__wrapped__||n,t.__wrapped__||t,e,r,u,o);if(p!=x)return!1;var p=n.constructor,s=t.constructor;if(p!=s&&(!Q(p)||!(p instanceof p&&Q(s)&&s instanceof s)))return!1}for(u||(u=[]),o||(o=[]),p=u.length;p--;)if(u[p]==n)return o[p]==t;var v=0,c=!0;if(u.push(n),o.push(t),l){if(p=n.length,v=t.length,c=v==n.length,!c&&!f)return c;for(;v--;)if(l=p,s=t[v],f)for(;l--&&!(c=L(n[l],s,e,r,u,o)););else if(!(c=L(n[v],s,e,r,u,o)))break;
return c}return pe(t,function(t,a,i){return Ut.call(i,a)?(v++,c=Ut.call(n,a)&&L(n[a],t,e,r,u,o)):void 0}),c&&!f&&pe(n,function(n,t,e){return Ut.call(e,t)?c=-1<--v:void 0}),c}function Q(n){return typeof n=="function"}function W(n){return n?N[typeof n]:!1}function X(n){return typeof n=="number"||Jt.call(n)==C}function Y(n){return typeof n=="string"||Jt.call(n)==E}function Z(n,t,e){var r=arguments,u=0,o=2;if(!W(n))return n;if(e===i)var f=r[3],c=r[4],l=r[5];else c=[],l=[],typeof e!="number"&&(o=r.length),3<o&&"function"==typeof r[o-2]?f=a.createCallback(r[--o-1],r[o--],2):2<o&&"function"==typeof r[o-1]&&(f=r[--o]);
for(;++u<o;)(ae(r[u])?at:se)(r[u],function(t,e){var r,u,a=t,o=n[e];if(t&&((u=ae(t))||ve(t))){for(a=c.length;a--;)if(r=c[a]==t){o=l[a];break}r||(o=u?ae(o)?o:[]:ve(o)?o:{},f&&(a=f(o,t),typeof a!="undefined"&&(o=a)),c.push(t),l.push(o),f||(o=Z(o,t,i,f,c,l)))}else f&&(a=f(o,t),typeof a=="undefined"&&(a=t)),typeof a!="undefined"&&(o=a);n[e]=o});return n}function nt(n){for(var t=-1,e=oe(n),r=e.length,u=Ct(r);++t<r;)u[t]=n[e[t]];return u}function tt(n,t,e){var r=-1,u=n?n.length:0,a=!1;return e=(0>e?Zt(0,u+e):e)||0,typeof u=="number"?a=-1<(Y(n)?n.indexOf(t,e):gt(n,t,e)):se(n,function(n){return++r<e?void 0:!(a=n===t)
}),a}function et(n,t,e){var r=!0;t=a.createCallback(t,e),e=-1;var u=n?n.length:0;if(typeof u=="number")for(;++e<u&&(r=!!t(n[e],e,n)););else se(n,function(n,e,u){return r=!!t(n,e,u)});return r}function rt(n,t,e){var r=[];t=a.createCallback(t,e),e=-1;var u=n?n.length:0;if(typeof u=="number")for(;++e<u;){var o=n[e];t(o,e,n)&&r.push(o)}else se(n,function(n,e,u){t(n,e,u)&&r.push(n)});return r}function ut(n,t,e){t=a.createCallback(t,e),e=-1;var r=n?n.length:0;if(typeof r!="number"){var u;return se(n,function(n,e,r){return t(n,e,r)?(u=n,!1):void 0
}),u}for(;++e<r;){var o=n[e];if(t(o,e,n))return o}}function at(n,t,e){var r=-1,u=n?n.length:0;if(typeof u=="number")for(t=t&&typeof e=="undefined"?t:a.createCallback(t,e);++r<u&&!1!==t(n[r],r,n););else se(n,t,e);return n}function ot(n,t,e){var r=-1,u=n?n.length:0;if(t=a.createCallback(t,e),typeof u=="number")for(var o=Ct(u);++r<u;)o[r]=t(n[r],r,n);else o=[],se(n,function(n,e,u){o[++r]=t(n,e,u)});return o}function it(n,t,e){var r=-1/0,u=r;if(!t&&ae(n)){e=-1;for(var o=n.length;++e<o;){var i=n[e];i>u&&(u=i)
}}else t=!t&&Y(n)?q:a.createCallback(t,e),at(n,function(n,e,a){e=t(n,e,a),e>r&&(r=e,u=n)});return u}function ft(n,t){var e=-1,r=n?n.length:0;if(typeof r=="number")for(var u=Ct(r);++e<r;)u[e]=n[e][t];return u||ot(n,t)}function ct(n,t,e,r){if(!n)return e;var u=3>arguments.length;t=a.createCallback(t,r,4);var o=-1,i=n.length;if(typeof i=="number")for(u&&(e=n[++o]);++o<i;)e=t(e,n[o],o,n);else se(n,function(n,r,a){e=u?(u=!1,n):t(e,n,r,a)});return e}function lt(n,t,e,r){var u=n?n.length:0,o=3>arguments.length;
if(typeof u!="number")var i=oe(n),u=i.length;return t=a.createCallback(t,r,4),at(n,function(r,a,f){a=i?i[--u]:--u,e=o?(o=!1,n[a]):t(e,n[a],a,f)}),e}function pt(n,t,e){var r;t=a.createCallback(t,e),e=-1;var u=n?n.length:0;if(typeof u=="number")for(;++e<u&&!(r=t(n[e],e,n)););else se(n,function(n,e,u){return!(r=t(n,e,u))});return!!r}function st(n,t,e){if(n){var r=0,u=n.length;if(typeof t!="number"&&null!=t){var o=-1;for(t=a.createCallback(t,e);++o<u&&t(n[o],o,n);)r++}else if(r=t,null==r||e)return n[0];
return M(n,0,ne(Zt(0,r),u))}}function vt(n,t,e,r){var u=-1,o=n?n.length:0,i=[];for(typeof t!="boolean"&&null!=t&&(r=e,e=t,t=!1),null!=e&&(e=a.createCallback(e,r));++u<o;)r=n[u],e&&(r=e(r,u,n)),ae(r)?Vt.apply(i,t?r:vt(r)):i.push(r);return i}function gt(n,t,e){var r=-1,u=n?n.length:0;if(typeof e=="number")r=(0>e?Zt(0,u+e):e||0)-1;else if(e)return r=yt(n,t),n[r]===t?r:-1;for(;++r<u;)if(n[r]===t)return r;return-1}function ht(n,t,e){if(typeof t!="number"&&null!=t){var r=0,u=-1,o=n?n.length:0;for(t=a.createCallback(t,e);++u<o&&t(n[u],u,n);)r++
}else r=null==t||e?1:Zt(0,t);return M(n,r)}function yt(n,t,e,r){var u=0,o=n?n.length:u;for(e=e?a.createCallback(e,r,1):kt,t=e(t);u<o;)r=u+o>>>1,e(n[r])<t?u=r+1:o=r;return u}function mt(n,t,e,r){var u=-1,o=n?n.length:0,i=[],f=i;typeof t!="boolean"&&null!=t&&(r=e,e=t,t=!1);var c=!t&&75<=o;if(c)var l={};for(null!=e&&(f=[],e=a.createCallback(e,r));++u<o;){r=n[u];var p=e?e(r,u,n):r;if(c)var s=$t(p),s=Ut.call(l,s)?!(f=l[s]):f=l[s]=[];(t?!u||f[f.length-1]!==p:s||0>gt(f,p))&&((e||c)&&f.push(p),i.push(r))
}return i}function bt(n,t){for(var e=-1,r=n?n.length:0,u={};++e<r;){var a=n[e];t?u[a]=t[e]:u[a[0]]=a[1]}return u}function dt(n,t){return ue.fastBind||Lt&&2<arguments.length?Lt.call.apply(Lt,arguments):F(n,t,M(arguments,2))}function _t(n){var t=M(arguments,1);return Ht(function(){n.apply(e,t)},1)}function kt(n){return n}function wt(n){at(H(n),function(t){var e=a[t]=n[t];a.prototype[t]=function(){var n=this.__wrapped__,t=[n];return Vt.apply(t,arguments),t=e.apply(a,t),n&&typeof n=="object"&&n==t?this:new z(t)
}})}function jt(){return this.__wrapped__}r=r?A.defaults(n.Object(),r,A.pick(n,d)):n;var Ct=r.Array,xt=r.Boolean,Ot=r.Date,Et=r.Function,It=r.Math,Nt=r.Number,St=r.Object,At=r.RegExp,$t=r.String,qt=r.TypeError,Bt=Ct(),Ft=St(),Rt=r._,Tt=At("^"+$t(Ft.valueOf).replace(/[.*+?^${}()|[\]\\]/g,"\\$&").replace(/valueOf|for [^\]]+/g,".+?")+"$"),Dt=It.ceil,zt=r.clearTimeout,Pt=Bt.concat,Kt=It.floor,Mt=Tt.test(Mt=St.getPrototypeOf)&&Mt,Ut=Ft.hasOwnProperty,Vt=Bt.push,Gt=r.setImmediate,Ht=r.setTimeout,Jt=Ft.toString,Lt=Tt.test(Lt=M.bind)&&Lt,Qt=Tt.test(Qt=Ct.isArray)&&Qt,Wt=r.isFinite,Xt=r.isNaN,Yt=Tt.test(Yt=St.keys)&&Yt,Zt=It.max,ne=It.min,te=r.parseInt,ee=It.random,It=Tt.test(r.attachEvent),It=Lt&&!/\n|true/.test(Lt+It),re={};
re[k]=Ct,re[w]=xt,re[j]=Ot,re[x]=St,re[C]=Nt,re[O]=At,re[E]=$t;var ue=a.support={};ue.fastBind=Lt&&!It,a.templateSettings={escape:/<%-([\s\S]+?)%>/g,evaluate:/<%([\s\S]+?)%>/g,interpolate:g,variable:"",imports:{_:a}},xt={a:"q,w,g",h:"var a=arguments,b=0,c=typeof g=='number'?2:a.length;while(++b<c){m=a[b];if(m&&r[typeof m]){",f:"if(typeof u[i]=='undefined')u[i]=m[i]",c:"}}"},Nt={a:"e,d,x",h:"d=d&&typeof x=='undefined'?d:p.createCallback(d,x)",b:!1,f:"if(d(m[i],i,e)===false)return u"},St={h:"if(!r[typeof m])return u;"+Nt.h,b:!1},z.prototype=a.prototype;
var Ft=R({a:"q",e:"[]",h:"if(!(r[typeof q]))return u",f:"u.push(i)",b:!1}),ae=Qt||function(n){return n instanceof Ct||Jt.call(n)==k},oe=Yt?function(n){return W(n)?Yt(n):[]}:Ft,ie={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;"},fe=J(ie),ce=R(xt,{h:xt.h.replace(";",";if(c>3&&typeof a[c-2]=='function'){var d=p.createCallback(a[--c-1],a[c--],2);}else if(c>2&&typeof a[c-1]=='function'){d=a[--c];}"),f:"u[i]=d?d(u[i],m[i]):m[i]"}),le=R(xt),pe=R(Nt,St,{i:!1}),se=R(Nt,St),ve=function(n){if(!n||Jt.call(n)!=x)return!1;
var t=n.valueOf,e=typeof t=="function"&&(e=Mt(t))&&Mt(e);return e?n==e||Mt(n)==e:K(n)};return It&&u&&typeof Gt=="function"&&(_t=dt(Gt,r)),Gt=8==te("08")?te:function(n,t){return te(Y(n)?n.replace(h,""):n,t||0)},a.after=function(n,t){return 1>n?t():function(){return 1>--n?t.apply(this,arguments):void 0}},a.assign=ce,a.at=function(n){for(var t=-1,e=Pt.apply(Bt,M(arguments,1)),r=e.length,u=Ct(r);++t<r;)u[t]=n[e[t]];return u},a.bind=dt,a.bindAll=function(n){for(var t=Pt.apply(Bt,arguments),e=1<t.length?0:(t=H(n),-1),r=t.length;++e<r;){var u=t[e];
n[u]=dt(n[u],n)}return n},a.bindKey=function(n,t){return F(n,t,M(arguments,2),i)},a.compact=function(n){for(var t=-1,e=n?n.length:0,r=[];++t<e;){var u=n[t];u&&r.push(u)}return r},a.compose=function(){var n=arguments;return function(){for(var t=arguments,e=n.length;e--;)t=[n[e].apply(this,t)];return t[0]}},a.countBy=function(n,t,e){var r={};return t=a.createCallback(t,e),at(n,function(n,e,u){e=$t(t(n,e,u)),Ut.call(r,e)?r[e]++:r[e]=1}),r},a.createCallback=function(n,t,e){if(null==n)return kt;var r=typeof n;
if("function"!=r){if("object"!=r)return function(t){return t[n]};var u=oe(n);return function(t){for(var e=u.length,r=!1;e--&&(r=L(t[u[e]],n[u[e]],i)););return r}}return typeof t!="undefined"?1===e?function(e){return n.call(t,e)}:2===e?function(e,r){return n.call(t,e,r)}:4===e?function(e,r,u,a){return n.call(t,e,r,u,a)}:function(e,r,u){return n.call(t,e,r,u)}:n},a.debounce=function(n,t,e){function r(){i=null,e||(a=n.apply(o,u))}var u,a,o,i;return function(){var f=e&&!i;return u=arguments,o=this,zt(i),i=Ht(r,t),f&&(a=n.apply(o,u)),a
}},a.defaults=le,a.defer=_t,a.delay=function(n,t){var r=M(arguments,2);return Ht(function(){n.apply(e,r)},t)},a.difference=function(n){for(var t=-1,e=n?n.length:0,r=Pt.apply(Bt,arguments),r=$(r,e,100),u=[];++t<e;){var a=n[t];r(a)||u.push(a)}return u},a.filter=rt,a.flatten=vt,a.forEach=at,a.forIn=pe,a.forOwn=se,a.functions=H,a.groupBy=function(n,t,e){var r={};return t=a.createCallback(t,e),at(n,function(n,e,u){e=$t(t(n,e,u)),(Ut.call(r,e)?r[e]:r[e]=[]).push(n)}),r},a.initial=function(n,t,e){if(!n)return[];
var r=0,u=n.length;if(typeof t!="number"&&null!=t){var o=u;for(t=a.createCallback(t,e);o--&&t(n[o],o,n);)r++}else r=null==t||e?1:t||r;return M(n,0,ne(Zt(0,u-r),u))},a.intersection=function(n){var t=arguments,e=t.length,r={0:{}},u=-1,a=n?n.length:0,o=100<=a,i=[],f=i;n:for(;++u<a;){var c=n[u];if(o)var l=$t(c),l=Ut.call(r[0],l)?!(f=r[0][l]):f=r[0][l]=[];if(l||0>gt(f,c)){o&&f.push(c);for(var p=e;--p;)if(!(r[p]||(r[p]=$(t[p],0,100)))(c))continue n;i.push(c)}}return i},a.invert=J,a.invoke=function(n,t){var e=M(arguments,2),r=-1,u=typeof t=="function",a=n?n.length:0,o=Ct(typeof a=="number"?a:0);
return at(n,function(n){o[++r]=(u?t:n[t]).apply(n,e)}),o},a.keys=oe,a.map=ot,a.max=it,a.memoize=function(n,t){var e={};return function(){var r=$t(t?t.apply(this,arguments):arguments[0]);return Ut.call(e,r)?e[r]:e[r]=n.apply(this,arguments)}},a.merge=Z,a.min=function(n,t,e){var r=1/0,u=r;if(!t&&ae(n)){e=-1;for(var o=n.length;++e<o;){var i=n[e];i<u&&(u=i)}}else t=!t&&Y(n)?q:a.createCallback(t,e),at(n,function(n,e,a){e=t(n,e,a),e<r&&(r=e,u=n)});return u},a.omit=function(n,t,e){var r=typeof t=="function",u={};
if(r)t=a.createCallback(t,e);else var o=Pt.apply(Bt,arguments);return pe(n,function(n,e,a){(r?!t(n,e,a):0>gt(o,e,1))&&(u[e]=n)}),u},a.once=function(n){var t,e;return function(){return t?e:(t=!0,e=n.apply(this,arguments),n=null,e)}},a.pairs=function(n){for(var t=-1,e=oe(n),r=e.length,u=Ct(r);++t<r;){var a=e[t];u[t]=[a,n[a]]}return u},a.partial=function(n){return F(n,M(arguments,1))},a.partialRight=function(n){return F(n,M(arguments,1),null,i)},a.pick=function(n,t,e){var r={};if(typeof t!="function")for(var u=0,o=Pt.apply(Bt,arguments),i=W(n)?o.length:0;++u<i;){var f=o[u];
f in n&&(r[f]=n[f])}else t=a.createCallback(t,e),pe(n,function(n,e,u){t(n,e,u)&&(r[e]=n)});return r},a.pluck=ft,a.range=function(n,t,e){n=+n||0,e=+e||1,null==t&&(t=n,n=0);var r=-1;t=Zt(0,Dt((t-n)/e));for(var u=Ct(t);++r<t;)u[r]=n,n+=e;return u},a.reject=function(n,t,e){return t=a.createCallback(t,e),rt(n,function(n,e,r){return!t(n,e,r)})},a.rest=ht,a.shuffle=function(n){var t=-1,e=n?n.length:0,r=Ct(typeof e=="number"?e:0);return at(n,function(n){var e=Kt(ee()*(++t+1));r[t]=r[e],r[e]=n}),r},a.sortBy=function(n,t,e){var r=-1,u=n?n.length:0,o=Ct(typeof u=="number"?u:0);
for(t=a.createCallback(t,e),at(n,function(n,e,u){o[++r]={a:t(n,e,u),b:r,c:n}}),u=o.length,o.sort(B);u--;)o[u]=o[u].c;return o},a.tap=function(n,t){return t(n),n},a.throttle=function(n,t){function e(){i=new Ot,o=null,u=n.apply(a,r)}var r,u,a,o,i=0;return function(){var f=new Ot,c=t-(f-i);return r=arguments,a=this,0<c?o||(o=Ht(e,c)):(zt(o),o=null,i=f,u=n.apply(a,r)),u}},a.times=function(n,t,e){n=-1<(n=+n)?n:0;var r=-1,u=Ct(n);for(t=a.createCallback(t,e,1);++r<n;)u[r]=t(r);return u},a.toArray=function(n){return n&&typeof n.length=="number"?M(n):nt(n)
},a.union=function(){return mt(Pt.apply(Bt,arguments))},a.uniq=mt,a.values=nt,a.where=rt,a.without=function(n){for(var t=-1,e=n?n.length:0,r=$(arguments,1,30),u=[];++t<e;){var a=n[t];r(a)||u.push(a)}return u},a.wrap=function(n,t){return function(){var e=[n];return Vt.apply(e,arguments),t.apply(this,e)}},a.zip=function(n){for(var t=-1,e=n?it(ft(arguments,"length")):0,r=Ct(e);++t<e;)r[t]=ft(arguments,t);return r},a.zipObject=bt,a.collect=ot,a.drop=ht,a.each=at,a.extend=ce,a.methods=H,a.object=bt,a.select=rt,a.tail=ht,a.unique=mt,wt(a),a.clone=G,a.cloneDeep=function(n,t,e){return G(n,!0,t,e)
},a.contains=tt,a.escape=function(n){return null==n?"":$t(n).replace(m,D)},a.every=et,a.find=ut,a.findIndex=function(n,t,e){var r=-1,u=n?n.length:0;for(t=a.createCallback(t,e);++r<u;)if(t(n[r],r,n))return r;return-1},a.findKey=function(n,t,e){var r;return t=a.createCallback(t,e),se(n,function(n,e,u){return t(n,e,u)?(r=e,!1):void 0}),r},a.has=function(n,t){return n?Ut.call(n,t):!1},a.identity=kt,a.indexOf=gt,a.isArguments=V,a.isArray=ae,a.isBoolean=function(n){return!0===n||!1===n||Jt.call(n)==w},a.isDate=function(n){return n instanceof Ot||Jt.call(n)==j
},a.isElement=function(n){return n?1===n.nodeType:!1},a.isEmpty=function(n){var t=!0;if(!n)return t;var e=Jt.call(n),r=n.length;return e==k||e==E||e==_||e==x&&typeof r=="number"&&Q(n.splice)?!r:(se(n,function(){return t=!1}),t)},a.isEqual=L,a.isFinite=function(n){return Wt(n)&&!Xt(parseFloat(n))},a.isFunction=Q,a.isNaN=function(n){return X(n)&&n!=+n},a.isNull=function(n){return null===n},a.isNumber=X,a.isObject=W,a.isPlainObject=ve,a.isRegExp=function(n){return n instanceof At||Jt.call(n)==O},a.isString=Y,a.isUndefined=function(n){return typeof n=="undefined"
},a.lastIndexOf=function(n,t,e){var r=n?n.length:0;for(typeof e=="number"&&(r=(0>e?Zt(0,r+e):ne(e,r-1))+1);r--;)if(n[r]===t)return r;return-1},a.mixin=wt,a.noConflict=function(){return r._=Rt,this},a.parseInt=Gt,a.random=function(n,t){return null==n&&null==t&&(t=1),n=+n||0,null==t&&(t=n,n=0),n+Kt(ee()*((+t||0)-n+1))},a.reduce=ct,a.reduceRight=lt,a.result=function(n,t){var r=n?n[t]:e;return Q(r)?n[t]():r},a.runInContext=t,a.size=function(n){var t=n?n.length:0;return typeof t=="number"?t:oe(n).length
},a.some=pt,a.sortedIndex=yt,a.template=function(n,t,r){var u=a.templateSettings;n||(n=""),r=le({},r,u);var o,i=le({},r.imports,u.imports),u=oe(i),i=nt(i),p=0,v=r.interpolate||y,h="__p+='",v=At((r.escape||y).source+"|"+v.source+"|"+(v===g?s:y).source+"|"+(r.evaluate||y).source+"|$","g");n.replace(v,function(t,e,r,u,a,i){return r||(r=u),h+=n.slice(p,i).replace(b,T),e&&(h+="'+__e("+e+")+'"),a&&(o=!0,h+="';"+a+";__p+='"),r&&(h+="'+((__t=("+r+"))==null?'':__t)+'"),p=i+t.length,t}),h+="';\n",v=r=r.variable,v||(r="obj",h="with("+r+"){"+h+"}"),h=(o?h.replace(f,""):h).replace(c,"$1").replace(l,"$1;"),h="function("+r+"){"+(v?"":r+"||("+r+"={});")+"var __t,__p='',__e=_.escape"+(o?",__j=Array.prototype.join;function print(){__p+=__j.call(arguments,'')}":";")+h+"return __p}";
try{var m=Et(u,"return "+h).apply(e,i)}catch(d){throw d.source=h,d}return t?m(t):(m.source=h,m)},a.unescape=function(n){return null==n?"":$t(n).replace(p,U)},a.uniqueId=function(n){var t=++o;return $t(null==n?"":n)+t},a.all=et,a.any=pt,a.detect=ut,a.foldl=ct,a.foldr=lt,a.include=tt,a.inject=ct,se(a,function(n,t){a.prototype[t]||(a.prototype[t]=function(){var t=[this.__wrapped__];return Vt.apply(t,arguments),n.apply(a,t)})}),a.first=st,a.last=function(n,t,e){if(n){var r=0,u=n.length;if(typeof t!="number"&&null!=t){var o=u;
for(t=a.createCallback(t,e);o--&&t(n[o],o,n);)r++}else if(r=t,null==r||e)return n[u-1];return M(n,Zt(0,u-r))}},a.take=st,a.head=st,se(a,function(n,t){a.prototype[t]||(a.prototype[t]=function(t,e){var r=n(this.__wrapped__,t,e);return null==t||e&&typeof t!="function"?r:new z(r)})}),a.VERSION="1.0.1",a.prototype.toString=function(){return $t(this.__wrapped__)},a.prototype.value=jt,a.prototype.valueOf=jt,at(["join","pop","shift"],function(n){var t=Bt[n];a.prototype[n]=function(){return t.apply(this.__wrapped__,arguments)
}}),at(["push","reverse","sort","unshift"],function(n){var t=Bt[n];a.prototype[n]=function(){return t.apply(this.__wrapped__,arguments),this}}),at(["concat","slice","splice"],function(n){var t=Bt[n];a.prototype[n]=function(){return new z(t.apply(this.__wrapped__,arguments))}}),a}var e,r=typeof exports=="object"&&exports,u=typeof module=="object"&&module&&module.exports==r&&module,a=typeof global=="object"&&global;a.global===a&&(n=a);var o=0,i={},f=/\b__p\+='';/g,c=/\b(__p\+=)''\+/g,l=/(__e\(.*?\)|\b__t\))\+'';/g,p=/&(?:amp|lt|gt|quot|#39);/g,s=/\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g,v=/\w*$/,g=/<%=([\s\S]+?)%>/g,h=/^0+(?=.$)/,y=/($^)/,m=/[&<>"']/g,b=/['\n\r\t\u2028\u2029\\]/g,d="Array Boolean Date Function Math Number Object RegExp String _ attachEvent clearTimeout isFinite isNaN parseInt setImmediate setTimeout".split(" "),_="[object Arguments]",k="[object Array]",w="[object Boolean]",j="[object Date]",C="[object Number]",x="[object Object]",O="[object RegExp]",E="[object String]",I={"[object Function]":!1};
I[_]=I[k]=I[w]=I[j]=I[C]=I[x]=I[O]=I[E]=!0;var N={"boolean":!1,"function":!0,object:!0,number:!1,string:!1,undefined:!1},S={"\\":"\\","'":"'","\n":"n","\r":"r"," ":"t","\u2028":"u2028","\u2029":"u2029"},A=t();typeof define=="function"&&typeof define.amd=="object"&&define.amd?(n._=A,define(function(){return A})):r&&!r.nodeType?u?(u.exports=A)._=A:r._=A:n._=A})(this);

View File

@@ -2057,7 +2057,18 @@
* _.pluck(stooges, 'name');
* // => ['moe', 'larry']
*/
var pluck = map;
function pluck(collection, property) {
var index = -1,
length = collection ? collection.length : 0;
if (typeof length == 'number') {
var result = Array(length);
while (++index < length) {
result[index] = collection[index][property]
}
}
return result || map(collection, property);
}
/**
* Reduces a `collection` to a value that is the accumulated result of running

View File

@@ -5,30 +5,31 @@
* 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(n<r||typeof r=="undefined")return-1}return t<e?-1:1}function e(n,r,t,e){function u(){var e=arguments,p=i?this:r;return o||(n=r[c]),t.length&&(e=e.length?(e=a(e),l?e.concat(t):t.concat(e)):t),this instanceof u?(f.prototype=n.prototype,p=new f,f.prototype=null,e=n.apply(p,e),_(e)?e:p):n.apply(p,e)}var o=m(n),i=!t,c=r;if(i){var l=e;t=r}else if(!o){if(!e)throw new TypeError;
r=n}return u}function u(n){return"\\"+fr[n]}function o(n){return Rr[n]}function i(n){this.__wrapped__=n}function f(){}function a(n,r,t){r||(r=0),typeof t=="undefined"&&(t=n?n.length:0);var e=-1;t=t-r||0;for(var u=Array(0>t?0:t);++e<t;)u[e]=n[r+e];return u}function c(n){return kr[n]}function l(n){return _r.call(n)==Y}function p(n){if(!n)return n;for(var r=1,t=arguments.length;r<t;r++){var e=arguments[r];if(e)for(var u in e)n[u]=e[u]}return n}function s(n){if(!n)return n;for(var r=1,t=arguments.length;r<t;r++){var e=arguments[r];
if(e)for(var u in e)null==n[u]&&(n[u]=e[u])}return n}function v(n){var r=[];return qr(n,function(n,t){m(n)&&r.push(t)}),r.sort()}function g(n){for(var r=-1,t=Fr(n),e=t.length,u={};++r<e;){var o=t[r];u[n[o]]=o}return u}function h(n){if(!n)return!0;if(Br(n)||b(n))return!n.length;for(var r in n)if(hr.call(n,r))return!1;return!0}function y(n,t,e,u){if(n===t)return 0!==n||1/n==1/t;var o=typeof n,i=typeof t;if(n===n&&(!n||"function"!=o&&"object"!=o)&&(!t||"function"!=i&&"object"!=i))return!1;if(null==n||null==t)return n===t;
if(i=_r.call(n),o=_r.call(t),i!=o)return!1;switch(i){case nr:case rr:return+n==+t;case tr:return n!=+n?t!=+t:0==n?1/n==1/t:n==+t;case ur:case or:return n==t+""}if(o=i==Z,!o){if(n instanceof r||t instanceof r)return y(n.__wrapped__||n,t.__wrapped__||t,e,u);if(i!=er)return!1;var i=n.constructor,f=t.constructor;if(i!=f&&(!m(i)||!(i instanceof i&&m(f)&&f instanceof f)))return!1}for(e||(e=[]),u||(u=[]),i=e.length;i--;)if(e[i]==n)return u[i]==t;var a=!0,c=0;if(e.push(n),u.push(t),o){if(c=t.length,a=c==n.length)for(;c--&&(a=y(n[c],t[c],e,u)););return a
}return qr(t,function(r,t,o){return hr.call(o,t)?(c++,!(a=hr.call(n,t)&&y(n[t],r,e,u))&&J):void 0}),a&&qr(n,function(n,r,t){return hr.call(t,r)?!(a=-1<--c)&&J:void 0}),a}function m(n){return typeof n=="function"}function _(n){return n?ir[typeof n]:!1}function d(n){return typeof n=="number"||_r.call(n)==tr}function b(n){return typeof n=="string"||_r.call(n)==or}function j(n){for(var r=-1,t=Fr(n),e=t.length,u=Array(e);++r<e;)u[r]=n[t[r]];return u}function w(n,r){var t=!1;return typeof(n?n.length:0)=="number"?t=-1<M(n,r):Dr(n,function(n){return(t=n===r)&&J
}),t}function A(n,r,t){var e=!0;r=C(r,t),t=-1;var u=n?n.length:0;if(typeof u=="number")for(;++t<u&&(e=!!r(n[t],t,n)););else Dr(n,function(n,t,u){return!(e=!!r(n,t,u))&&J});return e}function x(n,r,t){var e=[];r=C(r,t),t=-1;var u=n?n.length:0;if(typeof u=="number")for(;++t<u;){var o=n[t];r(o,t,n)&&e.push(o)}else Dr(n,function(n,t,u){r(n,t,u)&&e.push(n)});return e}function O(n,r,t){r=C(r,t),t=-1;var e=n?n.length:0;if(typeof e!="number"){var u;return Dr(n,function(n,t,e){return r(n,t,e)?(u=n,J):void 0
}),u}for(;++t<e;){var o=n[t];if(r(o,t,n))return o}}function E(n,r,t){var e=-1,u=n?n.length:0;if(typeof u=="number")for(r=r&&typeof t=="undefined"?r:C(r,t);++e<u&&r(n[e],e,n)!==J;);else Dr(n,r,t)}function S(n,r,t){var e=-1,u=n?n.length:0;if(r=C(r,t),typeof u=="number")for(var o=Array(u);++e<u;)o[e]=r(n[e],e,n);else o=[],Dr(n,function(n,t,u){o[++e]=r(n,t,u)});return o}function N(n,r,t){var e=-1/0,u=e,o=-1,i=n?n.length:0;if(r||typeof i!="number")r=C(r,t),E(n,function(n,t,o){t=r(n,t,o),t>e&&(e=t,u=n)
});else for(;++o<i;)t=n[o],t>u&&(u=t);return u}function B(n,r,t,e){if(!n)return t;var u=3>arguments.length;r=C(r,e,4);var o=-1,i=n.length;if(typeof i=="number")for(u&&(t=n[++o]);++o<i;)t=r(t,n[o],o,n);else Dr(n,function(n,e,o){t=u?(u=!1,n):r(t,n,e,o)});return t}function F(n,r,t,e){var u=n?n.length:0,o=3>arguments.length;if(typeof u!="number")var i=Fr(n),u=i.length;return r=C(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 R(n,r,t){var e;r=C(r,t),t=-1;var u=n?n.length:0;
if(typeof u=="number")for(;++t<u&&!(e=r(n[t],t,n)););else Dr(n,function(n,t,u){return(e=r(n,t,u))&&J});return!!e}function k(n,r,t){return t&&h(r)?null:(t?O:x)(n,r)}function q(n,r,t){if(n){var e=0,u=n.length;if(typeof r!="number"&&null!=r){var o=-1;for(r=C(r,t);++o<u&&r(n[o],o,n);)e++}else if(e=r,null==e||t)return n[0];return a(n,0,Or(xr(0,e),u))}}function D(n,r){for(var t=-1,e=n?n.length:0,u=[];++t<e;){var o=n[t];Br(o)?yr.apply(u,r?o:D(o)):u.push(o)}return u}function M(n,r,t){var e=-1,u=n?n.length:0;
if(typeof t=="number")e=(0>t?xr(0,u+t):t||0)-1;else if(t)return e=$(n,r),n[e]===r?e:-1;for(;++e<u;)if(n[e]===r)return e;return-1}function T(n,r,t){if(typeof r!="number"&&null!=r){var e=0,u=-1,o=n?n.length:0;for(r=C(r,t);++u<o&&r(n[u],u,n);)e++}else e=null==r||t?1:xr(0,r);return a(n,e)}function $(n,r,t,e){var u=0,o=n?n.length:u;for(t=t?C(t,e,1):P,r=t(r);u<o;)e=u+o>>>1,t(n[e])<r?u=e+1:o=e;return u}function I(n,r,t,e){var u=-1,o=n?n.length:0,i=[],f=i;for(typeof r!="boolean"&&null!=r&&(e=t,t=r,r=!1),null!=t&&(f=[],t=C(t,e));++u<o;){e=n[u];
var a=t?t(e,u,n):e;(r?!u||f[f.length-1]!==a:0>M(f,a))&&(t&&f.push(a),i.push(e))}return i}function z(n,r){return Nr.fastBind||dr&&2<arguments.length?dr.call.apply(dr,arguments):e(n,r,a(arguments,2))}function C(n,r,t){if(null==n)return P;var e=typeof n;if("function"!=e){if("object"!=e)return function(r){return r[n]};var u=Fr(n);return function(r){for(var t=u.length,e=!1;t--&&(e=r[u[t]]===n[u[t]]););return e}}return typeof r!="undefined"?1===t?function(t){return n.call(r,t)}:2===t?function(t,e){return n.call(r,t,e)
}:4===t?function(t,e,u,o){return n.call(r,t,e,u,o)}:function(t,e,u){return n.call(r,t,e,u)}:n}function P(n){return n}function U(n){E(v(n),function(t){var e=r[t]=n[t];r.prototype[t]=function(){var n=[this.__wrapped__];return yr.apply(n,arguments),n=e.apply(r,n),this.__chain__&&(n=new i(n),n.__chain__=!0),n}})}var V=typeof exports=="object"&&exports,W=typeof module=="object"&&module&&module.exports==V&&module,G=typeof global=="object"&&global;G.global===G&&(n=G);var H=0,J={},K=/&(?:amp|lt|gt|quot|#39);/g,L=/($^)/,Q=/[&<>"']/g,X=/['\n\r\t\u2028\u2029\\]/g,Y="[object Arguments]",Z="[object Array]",nr="[object Boolean]",rr="[object Date]",tr="[object Number]",er="[object Object]",ur="[object RegExp]",or="[object String]",ir={"boolean":!1,"function":!0,object:!0,number:!1,string:!1,undefined:!1},fr={"\\":"\\","'":"'","\n":"n","\r":"r"," ":"t","\u2028":"u2028","\u2029":"u2029"},ar=[],G={},cr=n._,lr=RegExp("^"+(G.valueOf+"").replace(/[.*+?^${}()|[\]\\]/g,"\\$&").replace(/valueOf|for [^\]]+/g,".+?")+"$"),pr=Math.ceil,sr=n.clearTimeout,vr=ar.concat,gr=Math.floor,hr=G.hasOwnProperty,yr=ar.push,mr=n.setTimeout,_r=G.toString,dr=lr.test(dr=a.bind)&&dr,br=lr.test(br=Array.isArray)&&br,jr=n.isFinite,wr=n.isNaN,Ar=lr.test(Ar=Object.keys)&&Ar,xr=Math.max,Or=Math.min,Er=Math.random,G=lr.test(n.attachEvent),Sr=dr&&!/\n|true/.test(dr+G),Nr={};
(function(){var n={0:1,length:1};Nr.argsObject=arguments.constructor==Object,Nr.fastBind=dr&&!Sr,Nr.spliceObjects=(ar.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,G=function(n){var r,t=[];if(!n||!ir[typeof n])return t;for(r in n)hr.call(n,r)&&t.push(r);return t},l(arguments)||(l=function(n){return n?hr.call(n,"callee"):!1});var Br=br||function(n){return Nr.argsObject&&n instanceof Array||_r.call(n)==Z
},Fr=Ar?function(n){return _(n)?Ar(n):[]}:G,Rr={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;"},kr=g(Rr),qr=function(n,r){var t;if(!n||!ir[typeof n])return n;r||(r=P);for(t in n)if(r(n[t],t,n)===J)break;return n},Dr=function(n,r){var t;if(!n||!ir[typeof n])return n;r||(r=P);for(t in n)if(hr.call(n,t)&&r(n[t],t,n)===J)break;return n};m(/x/)&&(m=function(n){return n instanceof Function||"[object Function]"==_r.call(n)});var Mr=S;r.after=function(n,r){return 1>n?r():function(){return 1>--n?r.apply(this,arguments):void 0
}},r.bind=z,r.bindAll=function(n){for(var r=vr.apply(ar,arguments),t=1<r.length?0:(r=v(n),-1),e=r.length;++t<e;){var u=r[t];n[u]=z(n[u],n)}return n},r.compact=function(n){for(var r=-1,t=n?n.length:0,e=[];++r<t;){var u=n[r];u&&e.push(u)}return e},r.compose=function(){var n=arguments;return function(){for(var r=arguments,t=n.length;t--;)r=[n[t].apply(this,r)];return r[0]}},r.countBy=function(n,r,t){var e={};return r=C(r,t),E(n,function(n,t,u){t=r(n,t,u)+"",hr.call(e,t)?e[t]++:e[t]=1}),e},r.debounce=function(n,r,t){function e(){f=null,t||(o=n.apply(i,u))
}var u,o,i,f;return function(){var a=t&&!f;return u=arguments,i=this,sr(f),f=mr(e,r),a&&(o=n.apply(i,u)),o}},r.defaults=s,r.defer=function(n){var r=a(arguments,1);return mr(function(){n.apply(void 0,r)},1)},r.delay=function(n,r){var t=a(arguments,2);return mr(function(){n.apply(void 0,t)},r)},r.difference=function(n){for(var r=-1,t=n.length,e=vr.apply(ar,arguments),u=[];++r<t;){var o=n[r];0>M(e,o,t)&&u.push(o)}return u},r.filter=x,r.flatten=D,r.forEach=E,r.functions=v,r.groupBy=function(n,r,t){var e={};
return r=C(r,t),E(n,function(n,t,u){t=r(n,t,u)+"",(hr.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=C(r,t);o--&&r(n[o],o,n);)e++}else e=null==r||t?1:r||e;return a(n,0,Or(xr(0,u-e),u))},r.intersection=function(n){var r=arguments,t=r.length,e=-1,u=n?n.length:0,o=[];n:for(;++e<u;){var i=n[e];if(0>M(o,i)){for(var f=t;--f;)if(0>M(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=Fr,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 hr.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=C(r,t),E(n,function(n,t,o){t=r(n,t,o),t<e&&(e=t,u=n)});else for(;++o<i;)t=n[o],t<u&&(u=t);return u},r.omit=function(n){var r=vr.apply(ar,arguments),t={};return qr(n,function(n,e){0>M(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=Fr(n),e=t.length,u=Array(e);++r<e;){var o=t[r];u[r]=[o,n[o]]}return u},r.partial=function(n){return e(n,a(arguments,1))},r.pick=function(n){for(var r=0,t=vr.apply(ar,arguments),e=t.length,u={};++r<e;){var o=t[r];o in n&&(u[o]=n[o])}return u},r.pluck=Mr,r.range=function(n,r,t){n=+n||0,t=+t||1,null==r&&(r=n,n=0);var e=-1;r=xr(0,pr((r-n)/t));for(var u=Array(r);++e<r;)u[e]=n,n+=t;
return u},r.reject=function(n,r,t){return r=C(r,t),x(n,function(n,t,e){return!r(n,t,e)})},r.rest=T,r.shuffle=function(n){var r=-1,t=n?n.length:0,e=Array(typeof t=="number"?t:0);return E(n,function(n){var t=gr(Er()*(++r+1));e[r]=e[t],e[t]=n}),e},r.sortBy=function(n,r,e){var u=-1,o=n?n.length:0,i=Array(typeof o=="number"?o:0);for(r=C(r,e),E(n,function(n,t,e){i[++u]={a:r(n,t,e),b:u,c:n}}),o=i.length,i.sort(t);o--;)i[o]=i[o].c;return i},r.tap=function(n,r){return r(n),n},r.throttle=function(n,r){function t(){f=new Date,i=null,u=n.apply(o,e)
}var e,u,o,i,f=0;return function(){var a=new Date,c=r-(a-f);return e=arguments,o=this,0<c?i||(i=mr(t,c)):(sr(i),i=null,f=a,u=n.apply(o,e)),u}},r.times=function(n,r,t){for(var e=-1,u=Array(-1<n?n:0);++e<n;)u[e]=r.call(t,e);return u},r.toArray=function(n){return n&&typeof n.length=="number"?a(n):j(n)},r.union=function(){return I(vr.apply(ar,arguments))},r.uniq=I,r.values=j,r.where=k,r.without=function(n){for(var r=-1,t=n.length,e=[];++r<t;){var u=n[r];0>M(arguments,u,1)&&e.push(u)}return e},r.wrap=function(n,r){return function(){var t=[n];
return yr.apply(t,arguments),r.apply(this,t)}},r.zip=function(n){for(var r=-1,t=n?N(Mr(arguments,"length")):0,e=Array(t);++r<t;)e[r]=Mr(arguments,r);return e},r.collect=S,r.drop=T,r.each=E,r.extend=p,r.methods=v,r.object=function(n,r){for(var t=-1,e=n?n.length:0,u={};++t<e;){var o=n[t];r?u[o]=r[t]:u[o[0]]=o[1]}return u},r.select=x,r.tail=T,r.unique=I,r.clone=function(n){return _(n)?Br(n)?a(n):p({},n):n},r.contains=w,r.escape=function(n){return null==n?"":(n+"").replace(Q,o)},r.every=A,r.find=O,r.findWhere=function(n,r){return k(n,r,!0)
},r.has=function(n,r){return n?hr.call(n,r):!1},r.identity=P,r.indexOf=M,r.isArguments=l,r.isArray=Br,r.isBoolean=function(n){return!0===n||!1===n||_r.call(n)==nr},r.isDate=function(n){return n instanceof Date||_r.call(n)==rr},r.isElement=function(n){return n?1===n.nodeType:!1},r.isEmpty=h,r.isEqual=y,r.isFinite=function(n){return jr(n)&&!wr(parseFloat(n))},r.isFunction=m,r.isNaN=function(n){return d(n)&&n!=+n},r.isNull=function(n){return null===n},r.isNumber=d,r.isObject=_,r.isRegExp=function(n){return n instanceof RegExp||_r.call(n)==ur
},r.isString=b,r.isUndefined=function(n){return typeof n=="undefined"},r.lastIndexOf=function(n,r,t){var e=n?n.length:0;for(typeof t=="number"&&(e=(0>t?xr(0,e+t):Or(t,e-1))+1);e--;)if(n[e]===r)return e;return-1},r.mixin=U,r.noConflict=function(){return n._=cr,this},r.random=function(n,r){return null==n&&null==r&&(r=1),n=+n||0,null==r&&(r=n,n=0),n+gr(Er()*((+r||0)-n+1))},r.reduce=B,r.reduceRight=F,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:Fr(n).length
},r.some=R,r.sortedIndex=$,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||L).source+"|"+(e.interpolate||L).source+"|"+(e.evaluate||L).source+"|$","g"),function(r,t,e,f,a){return i+=n.slice(o,a).replace(X,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(K,c)},r.uniqueId=function(n){var r=++H+"";return n?n+r:r},r.all=A,r.any=R,r.detect=O,r.foldl=B,r.foldr=F,r.include=w,r.inject=B,r.first=q,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=C(r,t);o--&&r(n[o],o,n);)e++}else if(e=r,null==e||t)return n[u-1];return a(n,xr(0,u-e))}},r.take=q,r.head=q,r.chain=function(n){return n=new i(n),n.__chain__=!0,n
},r.VERSION="1.0.1",U(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=ar[n];r.prototype[n]=function(){var n=this.__wrapped__;return t.apply(n,arguments),!Nr.spliceObjects&&0===n.length&&delete n[0],this}}),E(["concat","join","slice"],function(n){var t=ar[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})):V&&!V.nodeType?W?(W.exports=r)._=r:V._=r:n._=r})(this);
r=n}return u}function u(n){return"\\"+ar[n]}function o(n){return kr[n]}function i(n){this.__wrapped__=n}function f(){}function a(n,r,t){r||(r=0),typeof t=="undefined"&&(t=n?n.length:0);var e=-1;t=t-r||0;for(var u=Array(0>t?0:t);++e<t;)u[e]=n[r+e];return u}function c(n){return qr[n]}function l(n){return br.call(n)==Z}function p(n){if(!n)return n;for(var r=1,t=arguments.length;r<t;r++){var e=arguments[r];if(e)for(var u in e)n[u]=e[u]}return n}function s(n){if(!n)return n;for(var r=1,t=arguments.length;r<t;r++){var e=arguments[r];
if(e)for(var u in e)null==n[u]&&(n[u]=e[u])}return n}function v(n){var r=[];return Dr(n,function(n,t){m(n)&&r.push(t)}),r.sort()}function g(n){for(var r=-1,t=Rr(n),e=t.length,u={};++r<e;){var o=t[r];u[n[o]]=o}return u}function h(n){if(!n)return!0;if(Fr(n)||d(n))return!n.length;for(var r in n)if(yr.call(n,r))return!1;return!0}function y(n,t,e,u){if(n===t)return 0!==n||1/n==1/t;var o=typeof n,i=typeof t;if(n===n&&(!n||"function"!=o&&"object"!=o)&&(!t||"function"!=i&&"object"!=i))return!1;if(null==n||null==t)return n===t;
if(i=br.call(n),o=br.call(t),i!=o)return!1;switch(i){case rr:case tr:return+n==+t;case er:return n!=+n?t!=+t:0==n?1/n==1/t:n==+t;case or:case ir:return n==t+""}if(o=i==nr,!o){if(n instanceof r||t instanceof r)return y(n.__wrapped__||n,t.__wrapped__||t,e,u);if(i!=ur)return!1;var i=n.constructor,f=t.constructor;if(i!=f&&(!m(i)||!(i instanceof i&&m(f)&&f instanceof f)))return!1}for(e||(e=[]),u||(u=[]),i=e.length;i--;)if(e[i]==n)return u[i]==t;var a=!0,c=0;if(e.push(n),u.push(t),o){if(c=t.length,a=c==n.length)for(;c--&&(a=y(n[c],t[c],e,u)););return a
}return Dr(t,function(r,t,o){return yr.call(o,t)?(c++,!(a=yr.call(n,t)&&y(n[t],r,e,u))&&K):void 0}),a&&Dr(n,function(n,r,t){return yr.call(t,r)?!(a=-1<--c)&&K:void 0}),a}function m(n){return typeof n=="function"}function _(n){return n?fr[typeof n]:!1}function b(n){return typeof n=="number"||br.call(n)==er}function d(n){return typeof n=="string"||br.call(n)==ir}function j(n){for(var r=-1,t=Rr(n),e=t.length,u=Array(e);++r<e;)u[r]=n[t[r]];return u}function w(n,r){var t=!1;return typeof(n?n.length:0)=="number"?t=-1<T(n,r):Mr(n,function(n){return(t=n===r)&&K
}),t}function A(n,r,t){var e=!0;r=P(r,t),t=-1;var u=n?n.length:0;if(typeof u=="number")for(;++t<u&&(e=!!r(n[t],t,n)););else Mr(n,function(n,t,u){return!(e=!!r(n,t,u))&&K});return e}function x(n,r,t){var e=[];r=P(r,t),t=-1;var u=n?n.length:0;if(typeof u=="number")for(;++t<u;){var o=n[t];r(o,t,n)&&e.push(o)}else Mr(n,function(n,t,u){r(n,t,u)&&e.push(n)});return e}function O(n,r,t){r=P(r,t),t=-1;var e=n?n.length:0;if(typeof e!="number"){var u;return Mr(n,function(n,t,e){return r(n,t,e)?(u=n,K):void 0
}),u}for(;++t<e;){var o=n[t];if(r(o,t,n))return o}}function E(n,r,t){var e=-1,u=n?n.length:0;if(typeof u=="number")for(r=r&&typeof t=="undefined"?r:P(r,t);++e<u&&r(n[e],e,n)!==K;);else Mr(n,r,t)}function S(n,r,t){var e=-1,u=n?n.length:0;if(r=P(r,t),typeof u=="number")for(var o=Array(u);++e<u;)o[e]=r(n[e],e,n);else o=[],Mr(n,function(n,t,u){o[++e]=r(n,t,u)});return o}function N(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),t>e&&(e=t,u=n)
});else for(;++o<i;)t=n[o],t>u&&(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);++t<e;)u[t]=n[t][r];return u||S(n,r)}function F(n,r,t,e){if(!n)return t;var u=3>arguments.length;r=P(r,e,4);var o=-1,i=n.length;if(typeof i=="number")for(u&&(t=n[++o]);++o<i;)t=r(t,n[o],o,n);else Mr(n,function(n,e,o){t=u?(u=!1,n):r(t,n,e,o)});return t}function R(n,r,t,e){var u=n?n.length:0,o=3>arguments.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(;++t<u&&!(e=r(n[t],t,n)););else Mr(n,function(n,t,u){return(e=r(n,t,u))&&K});return!!e}function q(n,r,t){return t&&h(r)?null:(t?O:x)(n,r)}function D(n,r,t){if(n){var e=0,u=n.length;if(typeof r!="number"&&null!=r){var o=-1;for(r=P(r,t);++o<u&&r(n[o],o,n);)e++}else if(e=r,null==e||t)return n[0];return a(n,0,Er(Or(0,e),u))}}function M(n,r){for(var t=-1,e=n?n.length:0,u=[];++t<e;){var o=n[t];Fr(o)?mr.apply(u,r?o:M(o)):u.push(o)
}return u}function T(n,r,t){var e=-1,u=n?n.length:0;if(typeof t=="number")e=(0>t?Or(0,u+t):t||0)-1;else if(t)return e=I(n,r),n[e]===r?e:-1;for(;++e<u;)if(n[e]===r)return e;return-1}function $(n,r,t){if(typeof r!="number"&&null!=r){var e=0,u=-1,o=n?n.length:0;for(r=P(r,t);++u<o&&r(n[u],u,n);)e++}else e=null==r||t?1:Or(0,r);return a(n,e)}function I(n,r,t,e){var u=0,o=n?n.length:u;for(t=t?P(t,e,1):U,r=t(r);u<o;)e=u+o>>>1,t(n[e])<r?u=e+1:o=e;return u}function z(n,r,t,e){var u=-1,o=n?n.length:0,i=[],f=i;
for(typeof r!="boolean"&&null!=r&&(e=t,t=r,r=!1),null!=t&&(f=[],t=P(t,e));++u<o;){e=n[u];var a=t?t(e,u,n):e;(r?!u||f[f.length-1]!==a:0>T(f,a))&&(t&&f.push(a),i.push(e))}return i}function C(n,r){return Br.fastBind||dr&&2<arguments.length?dr.call.apply(dr,arguments):e(n,r,a(arguments,2))}function P(n,r,t){if(null==n)return U;var e=typeof n;if("function"!=e){if("object"!=e)return function(r){return r[n]};var u=Rr(n);return function(r){for(var t=u.length,e=!1;t--&&(e=r[u[t]]===n[u[t]]););return e}}return typeof r!="undefined"?1===t?function(t){return n.call(r,t)
}:2===t?function(t,e){return n.call(r,t,e)}:4===t?function(t,e,u,o){return n.call(r,t,e,u,o)}:function(t,e,u){return n.call(r,t,e,u)}:n}function U(n){return n}function V(n){E(v(n),function(t){var e=r[t]=n[t];r.prototype[t]=function(){var n=[this.__wrapped__];return mr.apply(n,arguments),n=e.apply(r,n),this.__chain__&&(n=new i(n),n.__chain__=!0),n}})}var W=typeof exports=="object"&&exports,G=typeof module=="object"&&module&&module.exports==W&&module,H=typeof global=="object"&&global;H.global===H&&(n=H);
var J=0,K={},L=/&(?:amp|lt|gt|quot|#39);/g,Q=/($^)/,X=/[&<>"']/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={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;"},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=1<r.length?0:(r=v(n),-1),e=r.length;++t<e;){var u=r[t];n[u]=C(n[u],n)}return n},r.compact=function(n){for(var r=-1,t=n?n.length:0,e=[];++r<t;){var u=n[r];u&&e.push(u)}return e},r.compose=function(){var n=arguments;return function(){for(var r=arguments,t=n.length;t--;)r=[n[t].apply(this,r)];return r[0]}},r.countBy=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]=1}),e},r.debounce=function(n,r,t){function e(){f=null,t||(o=n.apply(i,u))
}var u,o,i,f;return function(){var a=t&&!f;return u=arguments,i=this,vr(f),f=_r(e,r),a&&(o=n.apply(i,u)),o}},r.defaults=s,r.defer=function(n){var r=a(arguments,1);return _r(function(){n.apply(void 0,r)},1)},r.delay=function(n,r){var t=a(arguments,2);return _r(function(){n.apply(void 0,t)},r)},r.difference=function(n){for(var r=-1,t=n.length,e=gr.apply(cr,arguments),u=[];++r<t;){var o=n[r];0>T(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(;++e<u;){var i=n[e];if(0>T(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),t<e&&(e=t,u=n)});else for(;++o<i;)t=n[o],t<u&&(u=t);return u},r.omit=function(n){var r=gr.apply(cr,arguments),t={};return Dr(n,function(n,e){0>T(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);++r<e;){var o=t[r];u[r]=[o,n[o]]}return u},r.partial=function(n){return e(n,a(arguments,1))},r.pick=function(n){for(var r=0,t=gr.apply(cr,arguments),e=t.length,u={};++r<e;){var o=t[r];o in n&&(u[o]=n[o])}return u},r.pluck=B,r.range=function(n,r,t){n=+n||0,t=+t||1,null==r&&(r=n,n=0);var e=-1;r=Or(0,sr((r-n)/t));for(var u=Array(r);++e<r;)u[e]=n,n+=t;
return u},r.reject=function(n,r,t){return r=P(r,t),x(n,function(n,t,e){return!r(n,t,e)})},r.rest=$,r.shuffle=function(n){var r=-1,t=n?n.length:0,e=Array(typeof t=="number"?t:0);return E(n,function(n){var t=hr(Sr()*(++r+1));e[r]=e[t],e[t]=n}),e},r.sortBy=function(n,r,e){var u=-1,o=n?n.length:0,i=Array(typeof o=="number"?o:0);for(r=P(r,e),E(n,function(n,t,e){i[++u]={a:r(n,t,e),b:u,c:n}}),o=i.length,i.sort(t);o--;)i[o]=i[o].c;return i},r.tap=function(n,r){return r(n),n},r.throttle=function(n,r){function t(){f=new Date,i=null,u=n.apply(o,e)
}var e,u,o,i,f=0;return function(){var a=new Date,c=r-(a-f);return e=arguments,o=this,0<c?i||(i=_r(t,c)):(vr(i),i=null,f=a,u=n.apply(o,e)),u}},r.times=function(n,r,t){for(var e=-1,u=Array(-1<n?n:0);++e<n;)u[e]=r.call(t,e);return u},r.toArray=function(n){return n&&typeof n.length=="number"?a(n):j(n)},r.union=function(){return z(gr.apply(cr,arguments))},r.uniq=z,r.values=j,r.where=q,r.without=function(n){for(var r=-1,t=n.length,e=[];++r<t;){var u=n[r];0>T(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);++r<t;)e[r]=B(arguments,r);return e},r.collect=S,r.drop=$,r.each=E,r.extend=p,r.methods=v,r.object=function(n,r){for(var t=-1,e=n?n.length:0,u={};++t<e;){var o=n[t];r?u[o]=r[t]:u[o[0]]=o[1]}return u},r.select=x,r.tail=$,r.unique=z,r.clone=function(n){return _(n)?Fr(n)?a(n):p({},n):n},r.contains=w,r.escape=function(n){return null==n?"":(n+"").replace(X,o)},r.every=A,r.find=O,r.findWhere=function(n,r){return q(n,r,!0)
},r.has=function(n,r){return n?yr.call(n,r):!1},r.identity=U,r.indexOf=T,r.isArguments=l,r.isArray=Fr,r.isBoolean=function(n){return!0===n||!1===n||br.call(n)==rr},r.isDate=function(n){return n instanceof Date||br.call(n)==tr},r.isElement=function(n){return n?1===n.nodeType:!1},r.isEmpty=h,r.isEqual=y,r.isFinite=function(n){return wr(n)&&!Ar(parseFloat(n))},r.isFunction=m,r.isNaN=function(n){return b(n)&&n!=+n},r.isNull=function(n){return null===n},r.isNumber=b,r.isObject=_,r.isRegExp=function(n){return n instanceof RegExp||br.call(n)==or
},r.isString=d,r.isUndefined=function(n){return typeof n=="undefined"},r.lastIndexOf=function(n,r,t){var e=n?n.length:0;for(typeof t=="number"&&(e=(0>t?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);