Add fast path for callback back to _.forEach and ensure createCallback is called from lodash.

Former-commit-id: 5d589344897878d529d59ebba987a163b9704b37
This commit is contained in:
John-David Dalton
2013-03-15 06:34:13 -07:00
parent 63052257a2
commit e941de50e8
5 changed files with 43 additions and 43 deletions

View File

@@ -1830,7 +1830,7 @@
' length = collection ? collection.length : 0;',
'',
" if (typeof length == 'number') {",
' callback = createCallback(callback, thisArg);',
" callback = callback && typeof thisArg == 'undefined' ? callback : lodash.createCallback(callback, thisArg);",
' while (++index < length) {',
' if (callback(collection[index], index, collection) === false) {',
' break;',
@@ -1849,7 +1849,7 @@
' var index = -1,',
' length = collection ? collection.length : 0;',
'',
' callback = createCallback(callback, thisArg);',
' callback = lodash.createCallback(callback, thisArg);',
" if (typeof length == 'number') {",
' var result = Array(length);',
' while (++index < length) {',
@@ -2285,7 +2285,7 @@
' }',
' if (callback != null) {',
' seen = [];',
' callback = createCallback(callback, thisArg);',
' callback = lodash.createCallback(callback, thisArg);',
' }',
' while (++index < length) {',
' var value = array[index],',

4
dist/lodash.js vendored
View File

@@ -2318,7 +2318,7 @@
length = collection ? collection.length : 0;
if (typeof length == 'number') {
callback = createCallback(callback, thisArg);
callback = callback && typeof thisArg == 'undefined' ? callback : lodash.createCallback(callback, thisArg);
while (++index < length) {
if (callback(collection[index], index, collection) === false) {
break;
@@ -2453,7 +2453,7 @@
var index = -1,
length = collection ? collection.length : 0;
callback = createCallback(callback, thisArg);
callback = lodash.createCallback(callback, thisArg);
if (typeof length == 'number') {
var result = Array(length);
while (++index < length) {

72
dist/lodash.min.js vendored
View File

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

View File

@@ -1733,7 +1733,7 @@
length = collection ? collection.length : 0;
if (typeof length == 'number') {
callback = createCallback(callback, thisArg);
callback = callback && typeof thisArg == 'undefined' ? callback : createCallback(callback, thisArg);
while (++index < length) {
if (callback(collection[index], index, collection) === indicatorObject) {
break;

View File

@@ -10,7 +10,7 @@ if(e)for(var u in e)n[u]=e[u]}return n}function h(n){if(!n)return n;for(var t=1,
var i=typeof n,a=typeof t;if(n===n&&(!n||"function"!=i&&"object"!=i)&&(!t||"function"!=a&&"object"!=a))return K;if(n==J||t==J)return n===t;if(a=xt.call(n),i=xt.call(t),a!=i)return K;switch(a){case it:case at:return+n==+t;case ft:return n!=+n?t!=+t:0==n?1/n==1/t:n==+t;case lt:case pt:return n==t+""}if(i=a==ot,!i){if(n instanceof e||t instanceof e)return b(n.__wrapped__||n,t.__wrapped__||t,u,o);if(a!=ct)return K;var a=n.constructor,f=t.constructor;if(a!=f&&(!d(a)||!(a instanceof a&&d(f)&&f instanceof f)))return K
}for(u||(u=[]),o||(o=[]),a=u.length;a--;)if(u[a]==n)return o[a]==t;var c=H,l=0;if(u.push(n),o.push(t),i){if(l=t.length,c=l==n.length)for(;l--&&(c=b(n[l],t[l],u,o)););return c}return r(t,function(t,r,e){return jt.call(e,r)?(l++,!(c=jt.call(n,r)&&b(n[r],t,u,o))&&Z):void 0}),c&&r(n,function(n,t,r){return jt.call(r,t)?!(c=-1<--l)&&Z:void 0}),c}function d(n){return typeof n=="function"}function j(n){return n?st[typeof n]:K}function w(n){return typeof n=="number"||xt.call(n)==ft}function A(n){return typeof n=="string"||xt.call(n)==pt
}function x(n){for(var t=-1,r=$t(n),e=r.length,u=Array(e);++t<e;)u[t]=n[r[t]];return u}function O(n,r){var e=K;return typeof(n?n.length:0)=="number"?e=-1<T(n,r):t(n,function(n){return(e=n===r)&&Z}),e}function E(n,r,e){var u=H;r=V(r,e),e=-1;var o=n?n.length:0;if(typeof o=="number")for(;++e<o&&(u=!!r(n[e],e,n)););else t(n,function(n,t,e){return!(u=!!r(n,t,e))&&Z});return u}function S(n,r,e){var u=[];r=V(r,e),e=-1;var o=n?n.length:0;if(typeof o=="number")for(;++e<o;){var i=n[e];r(i,e,n)&&u.push(i)}else t(n,function(n,t,e){r(n,t,e)&&u.push(n)
});return u}function N(n,t,r){var e;return t=V(t,r),k(n,function(n,r,u){return t(n,r,u)?(e=n,Z):void 0}),e}function k(n,r,e){var u=-1,o=n?n.length:0;if(typeof o=="number")for(r=V(r,e);++u<o&&r(n[u],u,n)!==Z;);else t(n,r)}function B(n,r,e){var u=-1,o=n?n.length:0;if(r=V(r,e),typeof o=="number")for(var i=Array(o);++u<o;)i[u]=r(n[u],u,n);else i=[],t(n,function(n,t,e){i[++u]=r(n,t,e)});return i}function F(n,t,r){var e=-1/0,u=e,o=-1,i=n?n.length:0;if(t||typeof i!="number")t=V(t,r),k(n,function(n,r,o){r=t(n,r,o),r>e&&(e=r,u=n)
});return u}function N(n,t,r){var e;return t=V(t,r),k(n,function(n,r,u){return t(n,r,u)?(e=n,Z):void 0}),e}function k(n,r,e){var u=-1,o=n?n.length:0;if(typeof o=="number")for(r=r&&typeof e=="undefined"?r:V(r,e);++u<o&&r(n[u],u,n)!==Z;);else t(n,r)}function B(n,r,e){var u=-1,o=n?n.length:0;if(r=V(r,e),typeof o=="number")for(var i=Array(o);++u<o;)i[u]=r(n[u],u,n);else i=[],t(n,function(n,t,e){i[++u]=r(n,t,e)});return i}function F(n,t,r){var e=-1/0,u=e,o=-1,i=n?n.length:0;if(t||typeof i!="number")t=V(t,r),k(n,function(n,r,o){r=t(n,r,o),r>e&&(e=r,u=n)
});else for(;++o<i;)r=n[o],r>u&&(u=r);return u}function R(n,r,e,u){if(!n)return e;var o=3>arguments.length;r=V(r,u,4);var i=-1,a=n.length;if(typeof a=="number")for(o&&(e=n[++i]);++i<a;)e=r(e,n[i],i,n);else t(n,function(n,t,u){e=o?(o=K,n):r(e,n,t,u)});return e}function q(n,t,r,e){var u=n?n.length:0,o=3>arguments.length;if(typeof u!="number")var i=$t(n),u=i.length;return t=V(t,e,4),k(n,function(e,a,f){a=i?i[--u]:--u,r=o?(o=K,n[a]):t(r,n[a],a,f)}),r}function D(n,r,e){var u;r=V(r,e),e=-1;var o=n?n.length:0;
if(typeof o=="number")for(;++e<o&&!(u=r(n[e],e,n)););else t(n,function(n,t,e){return(u=r(n,t,e))&&Z});return!!u}function M(n,t,r){return r&&_(t)?J:(r?N:S)(n,t)}function $(n,t,r){if(n){var e=0,u=n.length;if(typeof t!="number"&&t!=J){var o=-1;for(t=V(t,r);++o<u&&t(n[o],o,n);)e++}else if(e=t,e==J||r)return n[0];return l(n,0,Ft(Bt(0,e),u))}}function I(n,t){for(var r=-1,e=n?n.length:0,u=[];++r<e;){var o=n[r];Mt(o)?wt.apply(u,t?o:I(o)):u.push(o)}return u}function T(n,t,r){var e=-1,u=n?n.length:0;if(typeof r=="number")e=(0>r?Bt(0,u+r):r||0)-1;
else if(r)return e=C(n,t),n[e]===t?e:-1;for(;++e<u;)if(n[e]===t)return e;return-1}function z(n,t,r){if(typeof t!="number"&&t!=J){var e=0,u=-1,o=n?n.length:0;for(t=V(t,r);++u<o&&t(n[u],u,n);)e++}else e=t==J||r?1:Bt(0,t);return l(n,e)}function C(n,t,r,e){var u=0,o=n?n.length:u;for(r=r?V(r,e,1):W,t=r(t);u<o;)e=u+o>>>1,r(n[e])<t?u=e+1:o=e;return u}function P(n,t,r,e){var u=-1,o=n?n.length:0,i=[],a=i;for(typeof t!="boolean"&&t!=J&&(e=r,r=t,t=K),r!=J&&(a=[],r=V(r,e));++u<o;){e=n[u];var f=r?r(e,u,n):e;(t?!u||a[a.length-1]!==f:0>T(a,f))&&(r&&a.push(f),i.push(e))