Add more _.debounce and _.throttle tests.

Former-commit-id: db3cb30a8eac82850a056f85d0c363e752d10027
This commit is contained in:
John-David Dalton
2013-04-05 22:14:44 -07:00
parent 7f637e4acc
commit 4a03ba3874
8 changed files with 192 additions and 84 deletions

10
dist/lodash.compat.js vendored
View File

@@ -4466,9 +4466,9 @@
if (options === true) {
var leading = true;
trailing = false;
} else if (options) {
} else if (options && objectTypes[typeof options]) {
leading = options.leading;
trailing = options.trailing;
trailing = 'trailing' in options ? options.trailing : trailing;
}
return function() {
var isLeading = leading && !timeoutId;
@@ -4689,9 +4689,9 @@
}
if (options === false) {
leading = false;
} else if (options) {
leading = options.leading;
trailing = options.trailing;
} else if (options && objectTypes[typeof options]) {
leading = 'leading' in options ? options.leading : leading;
trailing = 'trailing' in options ? options.trailing : trailing;
}
return function() {
var now = new Date;

View File

@@ -27,13 +27,13 @@ try{fe.nodeClass=!(Wt.call(document)==S&&!({toString:0}+""))}catch(u){fe.nodeCla
Z(/x/)&&(Z=function(n){return n instanceof It||Wt.call(n)==O});var be=Vt?function(n){if(!n||Wt.call(n)!=S||!fe.argsClass&&J(n))return!1;var t=n.valueOf,e=typeof t=="function"&&(e=Vt(t))&&Vt(e);return e?n==e||Vt(n)==e:V(n)}:V;return oe&&u&&typeof Jt=="function"&&(jt=Ct(Jt,r)),Jt=8==ue("08")?ue:function(n,t){return ue(et(n)?n.replace(y,""):n,t||0)},a.after=function(n,t){return 1>n?t():function(){return 1>--n?t.apply(this,arguments):void 0}},a.assign=he,a.at=function(n){var t=-1,e=Mt.apply(Rt,G(arguments,1)),r=e.length,u=Et(r);
for(fe.unindexedChars&&et(n)&&(n=n.split(""));++t<r;)u[t]=n[e[t]];return u},a.bind=Ct,a.bindAll=function(n){for(var t=Mt.apply(Rt,arguments),e=1<t.length?0:(t=W(n),-1),r=t.length;++e<r;){var u=t[e];n[u]=Ct(n[u],n)}return n},a.bindKey=function(n,t){return T(n,t,G(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),ct(n,function(n,e,u){e=Bt(t(n,e,u)),Gt.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=pe(n);return function(t){for(var e=u.length,r=!1;e--&&(r=Y(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,f&&(a=n.apply(o,u))}var u,a,o,i,f=!0;if(!0===e)var c=!0,f=!1;else e&&(c=e.leading,f=e.trailing);return function(){var e=c&&!i;return u=arguments,o=this,Kt(i),i=Qt(r,t),e&&(a=n.apply(o,u)),a}},a.defaults=ye,a.defer=jt,a.delay=function(n,t){var r=G(arguments,2);return Qt(function(){n.apply(e,r)},t)},a.difference=function(n){for(var t=-1,e=n?n.length:0,r=Mt.apply(Rt,arguments),r=B(r,e,100),u=[];++t<e;){var a=n[t];
}:function(e,r,u){return n.call(t,e,r,u)}:n},a.debounce=function(n,t,e){function r(){i=null,f&&(a=n.apply(o,u))}var u,a,o,i,f=!0;if(!0===e)var c=!0,f=!1;else e&&N[typeof e]&&(c=e.leading,f="trailing"in e?e.trailing:f);return function(){var e=c&&!i;return u=arguments,o=this,Kt(i),i=Qt(r,t),e&&(a=n.apply(o,u)),a}},a.defaults=ye,a.defer=jt,a.delay=function(n,t){var r=G(arguments,2);return Qt(function(){n.apply(e,r)},t)},a.difference=function(n){for(var t=-1,e=n?n.length:0,r=Mt.apply(Rt,arguments),r=B(r,e,100),u=[];++t<e;){var a=n[t];
r(a)||u.push(a)}return u},a.filter=it,a.flatten=yt,a.forEach=ct,a.forIn=me,a.forOwn=de,a.functions=W,a.groupBy=function(n,t,e){var r={};return t=a.createCallback(t,e),ct(n,function(n,e,u){e=Bt(t(n,e,u)),(Gt.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 G(n,0,re(ee(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=[],c=i;
n:for(;++u<a;){var l=n[u];if(o)var p=f+l,p=r[0][p]?!(c=r[0][p]):c=r[0][p]=[];if(p||0>mt(c,l)){o&&c.push(l);for(var s=e;--s;)if(!(r[s]||(r[s]=B(t[s],0,100)))(l))continue n;i.push(l)}}return i},a.invert=X,a.invoke=function(n,t){var e=G(arguments,2),r=-1,u=typeof t=="function",a=n?n.length:0,o=Et(typeof a=="number"?a:0);return ct(n,function(n){o[++r]=(u?t:n[t]).apply(n,e)}),o},a.keys=pe,a.map=lt,a.max=pt,a.memoize=function(n,t){var e={};return function(){var r=f+(t?t.apply(this,arguments):arguments[0]);
return Gt.call(e,r)?e[r]:e[r]=n.apply(this,arguments)}},a.merge=rt,a.min=function(n,t,e){var r=1/0,u=r;if(!t&&ce(n)){e=-1;for(var o=n.length;++e<o;){var i=n[e];i<u&&(u=i)}}else t=!t&&et(n)?F:a.createCallback(t,e),se(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=Mt.apply(Rt,arguments);return me(n,function(n,e,a){(r?!t(n,e,a):0>mt(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=pe(n),r=e.length,u=Et(r);++t<r;){var a=e[t];u[t]=[a,n[a]]}return u},a.partial=function(n){return T(n,G(arguments,1))},a.partialRight=function(n){return T(n,G(arguments,1),null,i)},a.pick=function(n,t,e){var r={};if(typeof t!="function")for(var u=0,o=Mt.apply(Rt,arguments),i=nt(n)?o.length:0;++u<i;){var f=o[u];f in n&&(r[f]=n[f])}else t=a.createCallback(t,e),me(n,function(n,e,u){t(n,e,u)&&(r[e]=n)});return r},a.pluck=lt,a.range=function(n,t,e){n=+n||0,e=+e||1,null==t&&(t=n,n=0);
var r=-1;t=ee(0,Lt((t-n)/e));for(var u=Et(t);++r<t;)u[r]=n,n+=e;return u},a.reject=function(n,t,e){return t=a.createCallback(t,e),it(n,function(n,e,r){return!t(n,e,r)})},a.rest=dt,a.shuffle=function(n){var t=-1,e=n?n.length:0,r=Et(typeof e=="number"?e:0);return ct(n,function(n){var e=Ut(ae()*(++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=Et(typeof u=="number"?u:0);for(t=a.createCallback(t,e),ct(n,function(n,e,u){o[++r]={a:t(n,e,u),b:r,c:n}}),u=o.length,o.sort(R);u--;)o[u]=o[u].c;
return o},a.tap=function(n,t){return t(n),n},a.throttle=function(n,t,e){function r(){f=new At,i=null,l&&(a=n.apply(o,u))}var u,a,o,i,f=0,c=!0,l=!0;return!1===e?c=!1:e&&(c=e.leading,l=e.trailing),function(){var e=new At;!i&&!c&&(f=e);var l=t-(e-f);return u=arguments,o=this,0<l?i||(i=Qt(r,l)):(Kt(i),i=null,f=e,a=n.apply(o,u)),a}},a.times=function(n,t,e){n=-1<(n=+n)?n:0;var r=-1,u=Et(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"?fe.unindexedChars&&et(n)?n.split(""):G(n):ut(n)
return o},a.tap=function(n,t){return t(n),n},a.throttle=function(n,t,e){function r(){f=new At,i=null,l&&(a=n.apply(o,u))}var u,a,o,i,f=0,c=!0,l=!0;return!1===e?c=!1:e&&N[typeof e]&&(c="leading"in e?e.leading:c,l="trailing"in e?e.trailing:l),function(){var e=new At;!i&&!c&&(f=e);var l=t-(e-f);return u=arguments,o=this,0<l?i||(i=Qt(r,l)):(Kt(i),i=null,f=e,a=n.apply(o,u)),a}},a.times=function(n,t,e){n=-1<(n=+n)?n:0;var r=-1,u=Et(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"?fe.unindexedChars&&et(n)?n.split(""):G(n):ut(n)
},a.union=function(){return _t(Mt.apply(Rt,arguments))},a.uniq=_t,a.unzip=function(n){for(var t=-1,e=n?n.length:0,r=e?pt(lt(n,"length")):0,u=Et(r);++t<e;)for(var a=-1,o=n[t];++a<r;)(u[a]||(u[a]=Et(e)))[t]=o[a];return u},a.values=ut,a.where=it,a.without=function(n){for(var t=-1,e=n?n.length:0,r=B(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 Ht.apply(e,arguments),t.apply(this,e)}},a.zip=function(n){for(var t=-1,e=n?pt(lt(arguments,"length")):0,r=Et(e);++t<e;)r[t]=lt(arguments,t);
return r},a.zipObject=wt,a.collect=lt,a.drop=dt,a.each=ct,a.extend=he,a.methods=W,a.object=wt,a.select=it,a.tail=dt,a.unique=_t,xt(a),a.clone=Q,a.cloneDeep=function(n,t,e){return Q(n,!0,t,e)},a.contains=at,a.escape=function(n){return null==n?"":Bt(n).replace(d,L)},a.every=ot,a.find=ft,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),de(n,function(n,e,u){return t(n,e,u)?(r=e,!1):void 0
}),r},a.has=function(n,t){return n?Gt.call(n,t):!1},a.identity=kt,a.indexOf=mt,a.isArguments=J,a.isArray=ce,a.isBoolean=function(n){return!0===n||!1===n||Wt.call(n)==k},a.isDate=function(n){return n instanceof At||Wt.call(n)==x},a.isElement=function(n){return n?1===n.nodeType:!1},a.isEmpty=function(n){var t=!0;if(!n)return t;var e=Wt.call(n),r=n.length;return e==j||e==I||(fe.argsClass?e==C:J(n))||e==S&&typeof r=="number"&&Z(n.splice)?!r:(de(n,function(){return t=!1}),t)},a.isEqual=Y,a.isFinite=function(n){return Zt(n)&&!ne(parseFloat(n))

10
dist/lodash.js vendored
View File

@@ -4264,9 +4264,9 @@
if (options === true) {
var leading = true;
trailing = false;
} else if (options) {
} else if (options && objectTypes[typeof options]) {
leading = options.leading;
trailing = options.trailing;
trailing = 'trailing' in options ? options.trailing : trailing;
}
return function() {
var isLeading = leading && !timeoutId;
@@ -4487,9 +4487,9 @@
}
if (options === false) {
leading = false;
} else if (options) {
leading = options.leading;
trailing = options.trailing;
} else if (options && objectTypes[typeof options]) {
leading = 'leading' in options ? options.leading : leading;
trailing = 'trailing' in options ? options.trailing : trailing;
}
return function() {
var now = new Date;

75
dist/lodash.min.js vendored
View File

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

View File

@@ -3461,9 +3461,9 @@
if (options === true) {
var leading = true;
trailing = false;
} else if (options) {
} else if (options && objectTypes[typeof options]) {
leading = options.leading;
trailing = options.trailing;
trailing = 'trailing' in options ? options.trailing : trailing;
}
return function() {
var isLeading = leading && !timeoutId;
@@ -3649,9 +3649,9 @@
}
if (options === false) {
leading = false;
} else if (options) {
leading = options.leading;
trailing = options.trailing;
} else if (options && objectTypes[typeof options]) {
leading = 'leading' in options ? options.leading : leading;
trailing = 'trailing' in options ? options.trailing : trailing;
}
return function() {
var now = new Date;

View File

@@ -19,16 +19,17 @@ var e=typeof n;if("function"!=e){if("object"!=e)return function(t){return t[n]};
}})}var H=!0,J=null,K=!1,L=typeof exports=="object"&&exports,Q=typeof module=="object"&&module&&module.exports==L&&module,X=typeof global=="object"&&global;(X.global===X||X.window===X)&&(n=X);var Y=0,Z={},nt=+new Date+"",tt=/&(?:amp|lt|gt|quot|#39);/g,rt=/($^)/,et=/[&<>"']/g,ut=/['\n\r\t\u2028\u2029\\]/g,ot="[object Arguments]",it="[object Array]",at="[object Boolean]",ft="[object Date]",ct="[object Number]",lt="[object Object]",pt="[object RegExp]",st="[object String]",vt={"boolean":K,"function":H,object:H,number:K,string:K,undefined:K},gt={"\\":"\\","'":"'","\n":"n","\r":"r"," ":"t","\u2028":"u2028","\u2029":"u2029"},ht=[],X={},yt=n._,mt=RegExp("^"+(X.valueOf+"").replace(/[.*+?^${}()|[\]\\]/g,"\\$&").replace(/valueOf|for [^\]]+/g,".+?")+"$"),_t=Math.ceil,dt=n.clearTimeout,bt=ht.concat,jt=Math.floor,wt=X.hasOwnProperty,At=ht.push,xt=n.setTimeout,Ot=ht.slice,Et=X.toString,St=mt.test(St=Et.bind)&&St,Nt=mt.test(Nt=Array.isArray)&&Nt,kt=n.isFinite,Bt=n.isNaN,Ft=mt.test(Ft=Object.keys)&&Ft,Rt=Math.max,qt=Math.min,Dt=Math.random,X=mt.test(n.attachEvent),Mt=St&&!/\n|true/.test(St+X),Tt={};
(function(){var n={0:1,length:1};Tt.argsObject=arguments.constructor==Object,Tt.fastBind=St&&!Mt,Tt.spliceObjects=(ht.splice.call(n,0,1),!n[0])})(1),u.templateSettings={escape:/<%-([\s\S]+?)%>/g,evaluate:/<%([\s\S]+?)%>/g,interpolate:/<%=([\s\S]+?)%>/g,variable:""},c.prototype=u.prototype,s(arguments)||(s=function(n){return n?wt.call(n,"callee"):K});var $t=Nt||function(n){return Tt.argsObject&&n instanceof Array||Et.call(n)==it},It=Ft?function(n){return b(n)?Ft(n):[]}:e,zt={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;"},Ct=y(zt);
d(/x/)&&(d=function(n){return n instanceof Function||"[object Function]"==Et.call(n)}),u.after=function(n,t){return 1>n?t():function(){return 1>--n?t.apply(this,arguments):void 0}},u.bind=U,u.bindAll=function(n){for(var t=bt.apply(ht,arguments),r=1<t.length?0:(t=h(n),-1),e=t.length;++r<e;){var u=t[r];n[u]=U(n[u],n)}return n},u.compact=function(n){for(var t=-1,r=n?n.length:0,e=[];++t<r;){var u=n[t];u&&e.push(u)}return e},u.compose=function(){var n=arguments;return function(){for(var t=arguments,r=n.length;r--;)t=[n[r].apply(this,t)];
return t[0]}},u.countBy=function(n,t,r){var e={};return t=V(t,r),N(n,function(n,r,u){r=t(n,r,u)+"",wt.call(e,r)?e[r]++:e[r]=1}),e},u.debounce=function(n,t,r){function e(){a=J,f&&(o=n.apply(i,u))}var u,o,i,a,f=H;if(r===H)var c=H,f=K;else r&&(c=r.leading,f=r.trailing);return function(){var r=c&&!a;return u=arguments,i=this,dt(a),a=xt(e,t),r&&(o=n.apply(i,u)),o}},u.defaults=g,u.defer=function(n){var t=Ot.call(arguments,1);return xt(function(){n.apply(void 0,t)},1)},u.delay=function(n,t){var r=Ot.call(arguments,2);
return t[0]}},u.countBy=function(n,t,r){var e={};return t=V(t,r),N(n,function(n,r,u){r=t(n,r,u)+"",wt.call(e,r)?e[r]++:e[r]=1}),e},u.debounce=function(n,t,r){function e(){a=J,f&&(o=n.apply(i,u))}var u,o,i,a,f=H;if(r===H)var c=H,f=K;else r&&vt[typeof r]&&(c=r.leading,f="trailing"in r?r.trailing:f);return function(){var r=c&&!a;return u=arguments,i=this,dt(a),a=xt(e,t),r&&(o=n.apply(i,u)),o}},u.defaults=g,u.defer=function(n){var t=Ot.call(arguments,1);return xt(function(){n.apply(void 0,t)},1)},u.delay=function(n,t){var r=Ot.call(arguments,2);
return xt(function(){n.apply(void 0,r)},t)},u.difference=function(n){for(var t=-1,r=n.length,e=bt.apply(ht,arguments),u=[];++t<r;){var o=n[t];0>I(e,o,r)&&u.push(o)}return u},u.filter=E,u.flatten=$,u.forEach=N,u.functions=h,u.groupBy=function(n,t,r){var e={};return t=V(t,r),N(n,function(n,r,u){r=t(n,r,u)+"",(wt.call(e,r)?e[r]:e[r]=[]).push(n)}),e},u.initial=function(n,t,r){if(!n)return[];var e=0,u=n.length;if(typeof t!="number"&&t!=J){var o=u;for(t=V(t,r);o--&&t(n[o],o,n);)e++}else e=t==J||r?1:t||e;
return Ot.call(n,0,qt(Rt(0,u-e),u))},u.intersection=function(n){var t=arguments,r=t.length,e=-1,u=n?n.length:0,o=[];n:for(;++e<u;){var i=n[e];if(0>I(o,i)){for(var a=r;--a;)if(0>I(t[a],i))continue n;o.push(i)}}return o},u.invert=y,u.invoke=function(n,t){var r=Ot.call(arguments,2),e=-1,u=typeof t=="function",o=n?n.length:0,i=Array(typeof o=="number"?o:0);return N(n,function(n){i[++e]=(u?t:n[t]).apply(n,r)}),i},u.keys=It,u.map=k,u.max=B,u.memoize=function(n,t){var r={};return function(){var e=nt+(t?t.apply(this,arguments):arguments[0]);
return wt.call(r,e)?r[e]:r[e]=n.apply(this,arguments)}},u.min=function(n,t,r){var e=1/0,u=e,o=-1,i=n?n.length:0;if(t||typeof i!="number")t=V(t,r),N(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},u.omit=function(n){var t=bt.apply(ht,arguments),e={};return r(n,function(n,r){0>I(t,r,1)&&(e[r]=n)}),e},u.once=function(n){var t,r;return function(){return t?r:(t=H,r=n.apply(this,arguments),n=J,r)}},u.pairs=function(n){for(var t=-1,r=It(n),e=r.length,u=Array(e);++t<e;){var o=r[t];
u[t]=[o,n[o]]}return u},u.partial=function(n){return i(n,Ot.call(arguments,1))},u.pick=function(n){for(var t=0,r=bt.apply(ht,arguments),e=r.length,u={};++t<e;){var o=r[t];o in n&&(u[o]=n[o])}return u},u.pluck=F,u.range=function(n,t,r){n=+n||0,r=+r||1,t==J&&(t=n,n=0);var e=-1;t=Rt(0,_t((t-n)/r));for(var u=Array(t);++e<t;)u[e]=n,n+=r;return u},u.reject=function(n,t,r){return t=V(t,r),E(n,function(n,r,e){return!t(n,r,e)})},u.rest=z,u.shuffle=function(n){var t=-1,r=n?n.length:0,e=Array(typeof r=="number"?r:0);
return N(n,function(n){var r=jt(Dt()*(++t+1));e[t]=e[r],e[r]=n}),e},u.sortBy=function(n,t,r){var e=-1,u=n?n.length:0,i=Array(typeof u=="number"?u:0);for(t=V(t,r),N(n,function(n,r,u){i[++e]={a:t(n,r,u),b:e,c:n}}),u=i.length,i.sort(o);u--;)i[u]=i[u].c;return i},u.tap=function(n,t){return t(n),n},u.throttle=function(n,t,r){function e(){f=new Date,a=J,l&&(o=n.apply(i,u))}var u,o,i,a,f=0,c=H,l=H;return r===K?c=K:r&&(c=r.leading,l=r.trailing),function(){var r=new Date;!a&&!c&&(f=r);var l=t-(r-f);return u=arguments,i=this,0<l?a||(a=xt(e,l)):(dt(a),a=J,f=r,o=n.apply(i,u)),o
}},u.times=function(n,t,r){for(var e=-1,u=Array(-1<n?n:0);++e<n;)u[e]=t.call(r,e);return u},u.toArray=function(n){return $t(n)?Ot.call(n):n&&typeof n.length=="number"?k(n):A(n)},u.union=function(){return P(bt.apply(ht,arguments))},u.uniq=P,u.values=A,u.where=M,u.without=function(n){for(var t=-1,r=n.length,e=[];++t<r;){var u=n[t];0>I(arguments,u,1)&&e.push(u)}return e},u.wrap=function(n,t){return function(){var r=[n];return At.apply(r,arguments),t.apply(this,r)}},u.zip=function(n){for(var t=-1,r=n?B(F(arguments,"length")):0,e=Array(r);++t<r;)e[t]=F(arguments,t);
return e},u.collect=k,u.drop=z,u.each=N,u.extend=v,u.methods=h,u.object=function(n,t){for(var r=-1,e=n?n.length:0,u={};++r<e;){var o=n[r];t?u[o]=t[r]:u[o[0]]=o[1]}return u},u.select=E,u.tail=z,u.unique=P,u.clone=function(n){return b(n)?$t(n)?Ot.call(n):v({},n):n},u.contains=x,u.escape=function(n){return n==J?"":(n+"").replace(et,f)},u.every=O,u.find=S,u.findWhere=function(n,t){return M(n,t,H)},u.has=function(n,t){return n?wt.call(n,t):K},u.identity=W,u.indexOf=I,u.isArguments=s,u.isArray=$t,u.isBoolean=function(n){return n===H||n===K||Et.call(n)==at
},u.isDate=function(n){return n instanceof Date||Et.call(n)==ft},u.isElement=function(n){return n?1===n.nodeType:K},u.isEmpty=m,u.isEqual=_,u.isFinite=function(n){return kt(n)&&!Bt(parseFloat(n))},u.isFunction=d,u.isNaN=function(n){return j(n)&&n!=+n},u.isNull=function(n){return n===J},u.isNumber=j,u.isObject=b,u.isRegExp=function(n){return n instanceof RegExp||Et.call(n)==pt},u.isString=w,u.isUndefined=function(n){return typeof n=="undefined"},u.lastIndexOf=function(n,t,r){var e=n?n.length:0;for(typeof r=="number"&&(e=(0>r?Rt(0,e+r):qt(r,e-1))+1);e--;)if(n[e]===t)return e;
return-1},u.mixin=G,u.noConflict=function(){return n._=yt,this},u.random=function(n,t){return n==J&&t==J&&(t=1),n=+n||0,t==J&&(t=n,n=0),n+jt(Dt()*((+t||0)-n+1))},u.reduce=R,u.reduceRight=q,u.result=function(n,t){var r=n?n[t]:J;return d(r)?n[t]():r},u.size=function(n){var t=n?n.length:0;return typeof t=="number"?t:It(n).length},u.some=D,u.sortedIndex=C,u.template=function(n,t,r){n||(n=""),r=g({},r,u.templateSettings);var e=0,o="__p+='",i=r.variable;n.replace(RegExp((r.escape||rt).source+"|"+(r.interpolate||rt).source+"|"+(r.evaluate||rt).source+"|$","g"),function(t,r,u,i,f){return o+=n.slice(e,f).replace(ut,a),r&&(o+="'+_['escape']("+r+")+'"),i&&(o+="';"+i+";__p+='"),u&&(o+="'+((__t=("+u+"))==null?'':__t)+'"),e=f+t.length,t
}),o+="';\n",i||(i="obj",o="with("+i+"||{}){"+o+"}"),o="function("+i+"){var __t,__p='',__j=Array.prototype.join;function print(){__p+=__j.call(arguments,'')}"+o+"return __p}";try{var f=Function("_","return "+o)(u)}catch(c){throw c.source=o,c}return t?f(t):(f.source=o,f)},u.unescape=function(n){return n==J?"":(n+"").replace(tt,p)},u.uniqueId=function(n){var t=++Y+"";return n?n+t:t},u.all=O,u.any=D,u.detect=S,u.foldl=R,u.foldr=q,u.include=x,u.inject=R,u.first=T,u.last=function(n,t,r){if(n){var e=0,u=n.length;
if(typeof t!="number"&&t!=J){var o=u;for(t=V(t,r);o--&&t(n[o],o,n);)e++}else if(e=t,e==J||r)return n[u-1];return Ot.call(n,Rt(0,u-e))}},u.take=T,u.head=T,u.chain=function(n){return n=new c(n),n.__chain__=H,n},u.VERSION="1.1.1",G(u),u.prototype.chain=function(){return this.__chain__=H,this},u.prototype.value=function(){return this.__wrapped__},N("pop push reverse shift sort splice unshift".split(" "),function(n){var t=ht[n];u.prototype[n]=function(){var n=this.__wrapped__;return t.apply(n,arguments),!Tt.spliceObjects&&0===n.length&&delete n[0],this
}}),N(["concat","join","slice"],function(n){var t=ht[n];u.prototype[n]=function(){var n=t.apply(this.__wrapped__,arguments);return this.__chain__&&(n=new c(n),n.__chain__=H),n}}),typeof define=="function"&&typeof define.amd=="object"&&define.amd?(n._=u,define(function(){return u})):L&&!L.nodeType?Q?(Q.exports=u)._=u:L._=u:n._=u})(this);
return N(n,function(n){var r=jt(Dt()*(++t+1));e[t]=e[r],e[r]=n}),e},u.sortBy=function(n,t,r){var e=-1,u=n?n.length:0,i=Array(typeof u=="number"?u:0);for(t=V(t,r),N(n,function(n,r,u){i[++e]={a:t(n,r,u),b:e,c:n}}),u=i.length,i.sort(o);u--;)i[u]=i[u].c;return i},u.tap=function(n,t){return t(n),n},u.throttle=function(n,t,r){function e(){f=new Date,a=J,l&&(o=n.apply(i,u))}var u,o,i,a,f=0,c=H,l=H;return r===K?c=K:r&&vt[typeof r]&&(c="leading"in r?r.leading:c,l="trailing"in r?r.trailing:l),function(){var r=new Date;
!a&&!c&&(f=r);var l=t-(r-f);return u=arguments,i=this,0<l?a||(a=xt(e,l)):(dt(a),a=J,f=r,o=n.apply(i,u)),o}},u.times=function(n,t,r){for(var e=-1,u=Array(-1<n?n:0);++e<n;)u[e]=t.call(r,e);return u},u.toArray=function(n){return $t(n)?Ot.call(n):n&&typeof n.length=="number"?k(n):A(n)},u.union=function(){return P(bt.apply(ht,arguments))},u.uniq=P,u.values=A,u.where=M,u.without=function(n){for(var t=-1,r=n.length,e=[];++t<r;){var u=n[t];0>I(arguments,u,1)&&e.push(u)}return e},u.wrap=function(n,t){return function(){var r=[n];
return At.apply(r,arguments),t.apply(this,r)}},u.zip=function(n){for(var t=-1,r=n?B(F(arguments,"length")):0,e=Array(r);++t<r;)e[t]=F(arguments,t);return e},u.collect=k,u.drop=z,u.each=N,u.extend=v,u.methods=h,u.object=function(n,t){for(var r=-1,e=n?n.length:0,u={};++r<e;){var o=n[r];t?u[o]=t[r]:u[o[0]]=o[1]}return u},u.select=E,u.tail=z,u.unique=P,u.clone=function(n){return b(n)?$t(n)?Ot.call(n):v({},n):n},u.contains=x,u.escape=function(n){return n==J?"":(n+"").replace(et,f)},u.every=O,u.find=S,u.findWhere=function(n,t){return M(n,t,H)
},u.has=function(n,t){return n?wt.call(n,t):K},u.identity=W,u.indexOf=I,u.isArguments=s,u.isArray=$t,u.isBoolean=function(n){return n===H||n===K||Et.call(n)==at},u.isDate=function(n){return n instanceof Date||Et.call(n)==ft},u.isElement=function(n){return n?1===n.nodeType:K},u.isEmpty=m,u.isEqual=_,u.isFinite=function(n){return kt(n)&&!Bt(parseFloat(n))},u.isFunction=d,u.isNaN=function(n){return j(n)&&n!=+n},u.isNull=function(n){return n===J},u.isNumber=j,u.isObject=b,u.isRegExp=function(n){return n instanceof RegExp||Et.call(n)==pt
},u.isString=w,u.isUndefined=function(n){return typeof n=="undefined"},u.lastIndexOf=function(n,t,r){var e=n?n.length:0;for(typeof r=="number"&&(e=(0>r?Rt(0,e+r):qt(r,e-1))+1);e--;)if(n[e]===t)return e;return-1},u.mixin=G,u.noConflict=function(){return n._=yt,this},u.random=function(n,t){return n==J&&t==J&&(t=1),n=+n||0,t==J&&(t=n,n=0),n+jt(Dt()*((+t||0)-n+1))},u.reduce=R,u.reduceRight=q,u.result=function(n,t){var r=n?n[t]:J;return d(r)?n[t]():r},u.size=function(n){var t=n?n.length:0;return typeof t=="number"?t:It(n).length
},u.some=D,u.sortedIndex=C,u.template=function(n,t,r){n||(n=""),r=g({},r,u.templateSettings);var e=0,o="__p+='",i=r.variable;n.replace(RegExp((r.escape||rt).source+"|"+(r.interpolate||rt).source+"|"+(r.evaluate||rt).source+"|$","g"),function(t,r,u,i,f){return o+=n.slice(e,f).replace(ut,a),r&&(o+="'+_['escape']("+r+")+'"),i&&(o+="';"+i+";__p+='"),u&&(o+="'+((__t=("+u+"))==null?'':__t)+'"),e=f+t.length,t}),o+="';\n",i||(i="obj",o="with("+i+"||{}){"+o+"}"),o="function("+i+"){var __t,__p='',__j=Array.prototype.join;function print(){__p+=__j.call(arguments,'')}"+o+"return __p}";
try{var f=Function("_","return "+o)(u)}catch(c){throw c.source=o,c}return t?f(t):(f.source=o,f)},u.unescape=function(n){return n==J?"":(n+"").replace(tt,p)},u.uniqueId=function(n){var t=++Y+"";return n?n+t:t},u.all=O,u.any=D,u.detect=S,u.foldl=R,u.foldr=q,u.include=x,u.inject=R,u.first=T,u.last=function(n,t,r){if(n){var e=0,u=n.length;if(typeof t!="number"&&t!=J){var o=u;for(t=V(t,r);o--&&t(n[o],o,n);)e++}else if(e=t,e==J||r)return n[u-1];return Ot.call(n,Rt(0,u-e))}},u.take=T,u.head=T,u.chain=function(n){return n=new c(n),n.__chain__=H,n
},u.VERSION="1.1.1",G(u),u.prototype.chain=function(){return this.__chain__=H,this},u.prototype.value=function(){return this.__wrapped__},N("pop push reverse shift sort splice unshift".split(" "),function(n){var t=ht[n];u.prototype[n]=function(){var n=this.__wrapped__;return t.apply(n,arguments),!Tt.spliceObjects&&0===n.length&&delete n[0],this}}),N(["concat","join","slice"],function(n){var t=ht[n];u.prototype[n]=function(){var n=t.apply(this.__wrapped__,arguments);return this.__chain__&&(n=new c(n),n.__chain__=H),n
}}),typeof define=="function"&&typeof define.amd=="object"&&define.amd?(n._=u,define(function(){return u})):L&&!L.nodeType?Q?(Q.exports=u)._=u:L._=u:n._=u})(this);

View File

@@ -4476,9 +4476,9 @@
if (options === true) {
var leading = true;
trailing = false;
} else if (options) {
} else if (options && objectTypes[typeof options]) {
leading = options.leading;
trailing = options.trailing;
trailing = 'trailing' in options ? options.trailing : trailing;
}
return function() {
var isLeading = leading && !timeoutId;
@@ -4699,9 +4699,9 @@
}
if (options === false) {
leading = false;
} else if (options) {
leading = options.leading;
trailing = options.trailing;
} else if (options && objectTypes[typeof options]) {
leading = 'leading' in options ? options.leading : leading;
trailing = 'trailing' in options ? options.trailing : trailing;
}
return function() {
var now = new Date;

View File

@@ -507,14 +507,14 @@
(function() {
test('subsequent "immediate" debounced calls return the last `func` result', function() {
var debounced = _.debounce(function(value) { return value; }, 32, true),
var debounced = _.debounce(_.identity, 32, true),
result = [debounced('x'), debounced('y')];
deepEqual(result, ['x', 'x']);
});
asyncTest('subsequent debounced calls return the last `func` result', function() {
var debounced = _.debounce(function(value) { return value; }, 32);
var debounced = _.debounce(_.identity, 32);
debounced('x');
setTimeout(function() {
@@ -522,6 +522,58 @@
QUnit.start();
}, 64);
});
asyncTest('should apply default options correctly', function() {
var count = 0;
var debounced = _.debounce(function(value) {
count++;
return value;
}, 32, {});
strictEqual(debounced('x'), undefined);
setTimeout(function() {
strictEqual(count, 1);
QUnit.start();
}, 64);
});
test('should work with `leading` option', function() {
_.each([true, { 'leading': true }], function(options) {
var withLeading = _.debounce(_.identity, 32, options);
equal(withLeading('x'), 'x');
});
_.each([false, { 'leading': false }], function(options) {
var withoutLeading = _.debounce(_.identity, 32, options);
strictEqual(withoutLeading('x'), undefined);
});
});
asyncTest('should work with `trailing` option', function() {
var withCount = 0,
withoutCount = 0;
var withTrailing = _.debounce(function(value) {
withCount++;
return value;
}, 32, { 'trailing': true });
var withoutTrailing = _.debounce(function(value) {
withoutCount++;
return value;
}, 32, { 'trailing': false });
strictEqual(withTrailing('x'), undefined);
strictEqual(withoutTrailing('x'), undefined);
setTimeout(function() {
strictEqual(withCount, 1);
strictEqual(withoutCount, 0);
QUnit.start();
}, 64);
});
}());
/*--------------------------------------------------------------------------*/
@@ -2603,53 +2655,109 @@
});
asyncTest('supports recursive calls', function() {
var counter = 0;
var count = 0;
var throttled = _.throttle(function() {
counter++;
if (counter < 10) {
count++;
if (count < 10) {
throttled();
}
}, 32);
throttled();
equal(counter, 1);
equal(count, 1);
setTimeout(function() {
ok(counter < 3)
ok(count < 3)
QUnit.start();
}, 32);
});
asyncTest('should not trigger a trailing call when invoked once', function() {
var counter = 0,
throttled = _.throttle(function() { counter++; }, 32);
var count = 0,
throttled = _.throttle(function() { count++; }, 32);
throttled();
equal(counter, 1);
equal(count, 1);
setTimeout(function() {
equal(counter, 1);
equal(count, 1);
QUnit.start();
}, 96);
});
asyncTest('should trigger trailing call when invoked repeatedly', function() {
var counter = 0,
var count = 0,
limit = 48,
throttled = _.throttle(function() { counter++; }, 32),
throttled = _.throttle(function() { count++; }, 32),
start = new Date;
while ((new Date - start) < limit) {
throttled();
}
var lastCount = counter;
var lastCount = count;
ok(lastCount > 1);
setTimeout(function() {
ok(counter > lastCount);
ok(count > lastCount);
QUnit.start();
}, 96);
});
asyncTest('should apply default options correctly', function() {
var count = 0;
var throttled = _.throttle(function(value) {
count++;
return value;
}, 32, {});
_.times(2, function() {
equal(throttled('x'), 'x');
});
setTimeout(function() {
strictEqual(count, 2);
QUnit.start();
}, 64);
});
test('should work with `leading` option', function() {
_.each([true, { 'leading': true }], function(options) {
var withLeading = _.throttle(_.identity, 32, options);
equal(withLeading('x'), 'x');
});
_.each([false, { 'leading': false }], function(options) {
var withoutLeading = _.throttle(_.identity, 32, options);
strictEqual(withoutLeading('x'), undefined);
});
});
asyncTest('should work with `trailing` option', function() {
var withCount = 0,
withoutCount = 0;
var withTrailing = _.throttle(function(value) {
withCount++;
return value;
}, 32, { 'trailing': true });
var withoutTrailing = _.throttle(function(value) {
withoutCount++;
return value;
}, 32, { 'trailing': false });
_.times(2, function() {
equal(withTrailing('x'), 'x');
equal(withoutTrailing('x'), 'x');
});
setTimeout(function() {
strictEqual(withCount, 2);
strictEqual(withoutCount, 1);
QUnit.start();
}, 64);
});
}());
/*--------------------------------------------------------------------------*/