Rename createBound to createWrapper and break createWrapper apart.

This commit is contained in:
John-David Dalton
2013-10-29 23:58:16 -07:00
parent e019441ede
commit 852b324819
7 changed files with 430 additions and 332 deletions

125
dist/lodash.compat.js vendored
View File

@@ -1180,6 +1180,62 @@
return bind(func, thisArg);
}
/**
* The base implementation of `createWrapper` without `func` type checking
* or support for setting meta data.
*
* @private
* @param {Function|string} func The function or method name to reference.
* @param {number} bitmask The bitmask of method flags to compose.
* @param {Array} [partialArgs] An array of arguments to prepend to those
* provided to the new function.
* @param {Array} [partialRightArgs] An array of arguments to append to those
* provided to the new function.
* @param {*} [thisArg] The `this` binding of `func`.
* @param {number} [arity] The arity of `func`.
* @returns {Function} Returns the new function.
*/
function baseCreateWrapper(func, bitmask, partialArgs, partialRightArgs, thisArg, arity) {
var isBind = bitmask & 1,
isBindKey = bitmask & 2,
isCurry = bitmask & 4,
isCurryBound = bitmask & 8,
isPartial = bitmask & 16,
isPartialRight = bitmask & 32,
key = func;
function bound() {
var thisBinding = isBind ? thisArg : this;
if (isCurry || isPartial || isPartialRight) {
if (isPartial) {
var args = partialArgs.slice();
push.apply(args, arguments);
}
if (isPartialRight || isCurry) {
args || (args = slice(arguments));
if (isPartialRight) {
push.apply(args, partialRightArgs);
}
if (isCurry && args.length < arity) {
bitmask |= 16 & ~32;
return createWrapper(func, (isCurryBound ? bitmask : bitmask & ~3), args, null, thisArg, arity);
}
}
}
args || (args = arguments);
if (isBindKey) {
func = thisBinding[key];
}
if (this instanceof bound) {
thisBinding = baseCreate(func.prototype);
var result = func.apply(thisBinding, args);
return isObject(result) ? result : thisBinding;
}
return func.apply(thisBinding, args);
}
return bound;
}
/**
* The base implementation of `_.flatten` without support for callback
* shorthands or `thisArg` binding.
@@ -1571,16 +1627,15 @@
* provided to the new function.
* @param {*} [thisArg] The `this` binding of `func`.
* @param {number} [arity] The arity of `func`.
* @returns {Function} Returns the new bound function.
* @returns {Function} Returns the new function.
*/
function createBound(func, bitmask, partialArgs, partialRightArgs, thisArg, arity) {
function createWrapper(func, bitmask, partialArgs, partialRightArgs, thisArg, arity) {
var isBind = bitmask & 1,
isBindKey = bitmask & 2,
isCurry = bitmask & 4,
isCurryBound = bitmask & 8,
isPartial = bitmask & 16,
isPartialRight = bitmask & 32,
key = func;
isPartialRight = bitmask & 32;
if (!isBindKey && !isFunction(func)) {
throw new TypeError;
@@ -1619,45 +1674,15 @@
}
// merge flags
bindData[1] |= bitmask;
return createBound.apply(null, bindData);
return createWrapper.apply(null, bindData);
}
// fast path for `_.bind`
if (bitmask == 1 || bitmask === 17) {
var bound = baseBind(func, thisArg, partialArgs);
}
else {
bound = function() {
var thisBinding = isBind ? thisArg : this;
if (isCurry || isPartial || isPartialRight) {
if (isPartial) {
var args = partialArgs.slice();
push.apply(args, arguments);
}
if (isPartialRight || isCurry) {
args || (args = slice(arguments));
if (isPartialRight) {
push.apply(args, partialRightArgs);
}
if (isCurry && args.length < arity) {
bitmask |= 16 & ~32;
return createBound(func, (isCurryBound ? bitmask : bitmask & ~3), args, null, thisArg, arity);
}
}
}
args || (args = arguments);
if (isBindKey) {
func = thisBinding[key];
}
if (this instanceof bound) {
thisBinding = baseCreate(func.prototype);
var result = func.apply(thisBinding, args);
return isObject(result) ? result : thisBinding;
}
return func.apply(thisBinding, args);
};
}
setBindData(bound, [func, bitmask, partialArgs, partialRightArgs, thisArg, arity]);
return bound;
var result = (bitmask == 1 || bitmask === 17)
? baseBind(func, thisArg, partialArgs)
: baseCreateWrapper(func, bitmask, partialArgs, partialRightArgs, thisArg, arity);
setBindData(result, [func, bitmask, partialArgs, partialRightArgs, thisArg, arity]);
return result;
}
/**
@@ -5354,8 +5379,8 @@
*/
function bind(func, thisArg) {
return arguments.length > 2
? createBound(func, 17, slice(arguments, 2), null, thisArg)
: createBound(func, 1, null, null, thisArg);
? createWrapper(func, 17, slice(arguments, 2), null, thisArg)
: createWrapper(func, 1, null, null, thisArg);
}
/**
@@ -5389,7 +5414,7 @@
while (++index < length) {
var key = funcs[index];
object[key] = createBound(object[key], 1, null, null, object);
object[key] = createWrapper(object[key], 1, null, null, object);
}
return object;
}
@@ -5430,8 +5455,8 @@
*/
function bindKey(object, key) {
return arguments.length > 2
? createBound(key, 19, slice(arguments, 2), null, object)
: createBound(key, 3, null, null, object);
? createWrapper(key, 19, slice(arguments, 2), null, object)
: createWrapper(key, 3, null, null, object);
}
/**
@@ -5582,7 +5607,7 @@
*/
function curry(func, arity) {
arity = typeof arity == 'number' ? arity : (+arity || func.length);
return createBound(func, 4, null, null, null, arity);
return createWrapper(func, 4, null, null, null, arity);
}
/**
@@ -5876,7 +5901,7 @@
* // => 'hi fred'
*/
function partial(func) {
return createBound(func, 16, slice(arguments, 1));
return createWrapper(func, 16, slice(arguments, 1));
}
/**
@@ -5907,7 +5932,7 @@
* // => { '_': _, 'jq': $ }
*/
function partialRight(func) {
return createBound(func, 32, null, slice(arguments, 1));
return createWrapper(func, 32, null, slice(arguments, 1));
}
/**
@@ -5983,7 +6008,7 @@
* // => '<p>Fred, Wilma, &amp; Pebbles</p>'
*/
function wrap(value, wrapper) {
return createBound(wrapper, 16, [value]);
return createWrapper(wrapper, 16, [value]);
}
/*--------------------------------------------------------------------------*/

View File

@@ -5,54 +5,54 @@
*/
;(function(){function n(n,t,e){e=(e||0)-1;for(var r=n?n.length:0;++e<r;)if(n[e]===t)return e;return-1}function t(t,e){var r=typeof e;if(t=t.l,"boolean"==r||null==e)return t[e]?0:-1;"number"!=r&&"string"!=r&&(r="object");var u="number"==r?e:b+e;return t=(t=t[r])&&t[u],"object"==r?t&&-1<n(t,e)?0:-1:t?0:-1}function e(n){var t=this.l,e=typeof n;if("boolean"==e||null==n)t[n]=!0;else{"number"!=e&&"string"!=e&&(e="object");var r="number"==e?n:b+n,t=t[e]||(t[e]={});"object"==e?(t[r]||(t[r]=[])).push(n):t[r]=!0
}}function r(n){return n.charCodeAt(0)}function u(n,t){var e=n.m,r=t.m;if(e!==r){if(e>r||typeof e=="undefined")return 1;if(e<r||typeof r=="undefined")return-1}return n.n-t.n}function o(n){var t=-1,r=n.length,u=n[0],o=n[0|r/2],a=n[r-1];if(u&&typeof u=="object"&&o&&typeof o=="object"&&a&&typeof a=="object")return!1;for(u=f(),u["false"]=u["null"]=u["true"]=u.undefined=!1,o=f(),o.k=n,o.l=u,o.push=e;++t<r;)o.push(n[t]);return o}function a(n){return"\\"+Z[n]}function i(){return y.pop()||[]}function f(){return m.pop()||{k:null,l:null,m:null,"false":!1,n:0,"null":!1,number:null,object:null,push:null,string:null,"true":!1,undefined:!1,o:null}
}function l(n){return typeof n.toString!="function"&&typeof(n+"")=="string"}function c(){}function p(n){n.length=0,y.length<j&&y.push(n)}function s(n){var t=n.l;t&&s(t),n.k=n.l=n.m=n.object=n.number=n.string=n.o=null,m.length<j&&m.push(n)}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=Array(0>e?0:e);++r<e;)u[r]=n[t+r];return u}function h(e){function y(n){return n&&typeof n=="object"&&!qe(n)&&be.call(n,"__wrapped__")?n:new m(n)}function m(n,t){this.__chain__=!!t,this.__wrapped__=n
}function j(n,t,e){function r(){if(e){var u=e.slice();je.apply(u,arguments)}if(this instanceof r){var o=tt(n.prototype),u=n.apply(o,u||arguments);return jt(u)?u:o}return n.apply(t,u||arguments)}return r}function Z(n,t,e,r,u){if(e){var o=e(n);if(typeof o!="undefined")return o}if(!jt(n))return n;var a=ge.call(n);if(!U[a]||!Te.nodeClass&&l(n))return n;var f=$e[a];switch(a){case z:case q:return new f(+n);case G:case H:return new f(n);case M:return o=f(n.source,I.exec(n)),o.lastIndex=n.lastIndex,o}if(a=qe(n),t){var c=!r;
r||(r=i()),u||(u=i());for(var s=r.length;s--;)if(r[s]==n)return u[s];o=a?f(n.length):{}}else o=a?g(n):Ye({},n);return a&&(be.call(n,"index")&&(o.index=n.index),be.call(n,"input")&&(o.input=n.input)),t?(r.push(n),u.push(o),(a?Xe:tr)(n,function(n,a){o[a]=Z(n,t,e,r,u)}),c&&(p(r),p(u)),o):o}function tt(n){return jt(n)?Oe(n):{}}function et(n,t,e){if(typeof n!="function")return Vt;if(typeof t=="undefined"||!("prototype"in n))return n;var r=n.__bindData__;if(typeof r=="undefined"&&(Te.funcNames&&(r=!n.name),r=r||!Te.funcDecomp,!r)){var u=de.call(n);
Te.funcNames||(r=!A.test(u)),r||(r=P.test(u),ze(n,r))}if(false===r||true!==r&&1&r[1])return n;switch(e){case 1:return function(e){return n.call(t,e)};case 2:return function(e,r){return n.call(t,e,r)};case 3:return function(e,r,u){return n.call(t,e,r,u)};case 4:return function(e,r,u,o){return n.call(t,e,r,u,o)}}return Mt(n,t)}function ut(n,t,e,r){r=(r||0)-1;for(var u=n?n.length:0,o=[];++r<u;){var a=n[r];if(a&&typeof a=="object"&&typeof a.length=="number"&&(qe(a)||mt(a))){t||(a=ut(a,t,e));var i=-1,f=a.length,l=o.length;
for(o.length+=f;++i<f;)o[l++]=a[i]}else e||o.push(a)}return o}function at(n,t,e,r,u,o){if(e){var a=e(n,t);if(typeof a!="undefined")return!!a}if(n===t)return 0!==n||1/n==1/t;if(n===n&&!(n&&Y[typeof n]||t&&Y[typeof t]))return!1;if(null==n||null==t)return n===t;var f=ge.call(n),c=ge.call(t);if(f==L&&(f=J),c==L&&(c=J),f!=c)return!1;switch(f){case z:case q:return+n==+t;case G:return n!=+n?t!=+t:0==n?1/n==1/t:n==+t;case M:case H:return n==ae(t)}if(c=f==T,!c){if(be.call(n,"__wrapped__")||be.call(t,"__wrapped__"))return at(n.__wrapped__||n,t.__wrapped__||t,e,r,u,o);
if(f!=J||!Te.nodeClass&&(l(n)||l(t)))return!1;var f=!Te.argsObject&&mt(n)?ue:n.constructor,s=!Te.argsObject&&mt(t)?ue:t.constructor;if(f!=s&&!(wt(f)&&f instanceof f&&wt(s)&&s instanceof s)&&"constructor"in n&&"constructor"in t)return!1}for(s=!u,u||(u=i()),o||(o=i()),f=u.length;f--;)if(u[f]==n)return o[f]==t;var g=0,a=!0;if(u.push(n),o.push(t),c){if(f=n.length,g=t.length,a=g==n.length,!a&&!r)return a;for(;g--;)if(c=f,s=t[g],r)for(;c--&&!(a=at(n[c],s,e,r,u,o)););else if(!(a=at(n[g],s,e,r,u,o)))break;
return a}return nr(t,function(t,i,f){return be.call(f,i)?(g++,a=be.call(n,i)&&at(n[i],t,e,r,u,o)):void 0}),a&&!r&&nr(n,function(n,t,e){return be.call(e,t)?a=-1<--g:void 0}),s&&(p(u),p(o)),a}function it(n,t,e,r,u){(qe(t)?At:tr)(t,function(t,o){var a,i,f=t,l=n[o];if(t&&((i=qe(t))||er(t))){for(f=r.length;f--;)if(a=r[f]==t){l=u[f];break}if(!a){var c;e&&(f=e(l,t),c=typeof f!="undefined")&&(l=f),c||(l=i?qe(l)?l:[]:er(l)?l:{}),r.push(t),u.push(l),c||it(l,t,e,r,u)}}else e&&(f=e(l,t),typeof f=="undefined"&&(f=t)),typeof f!="undefined"&&(l=f);
n[o]=l})}function ft(n,t){return n+me(Re()*(t-n+1))}function lt(e,r,u){var a=-1,f=ht(),l=e?e.length:0,c=[],g=!r&&l>=w&&f===n,h=u||g?i():c;if(g){var v=o(h);v?(f=t,h=v):(g=!1,h=u?h:(p(h),c))}for(;++a<l;){var v=e[a],y=u?u(v,a,e):v;(r?!a||h[h.length-1]!==y:0>f(h,y))&&((u||g)&&h.push(y),c.push(v))}return g?(p(h.k),s(h)):u&&p(h),c}function ct(n){return function(t,e,r){var u={};if(e=y.createCallback(e,r,3),qe(t)){r=-1;for(var o=t.length;++r<o;){var a=t[r];n(u,a,e(a,r,t),t)}}else Xe(t,function(t,r,o){n(u,t,e(t,r,o),o)
});return u}}function pt(n,t,e,r,u,o){var a=1&t,i=2&t,f=4&t,l=8&t,c=16&t,p=32&t,s=n;if(!i&&!wt(n))throw new ie;c&&!e.length&&(t&=-17,c=e=!1),p&&!r.length&&(t&=-33,p=r=!1);var h=n&&n.__bindData__;if(h&&true!==h)return h=h.slice(),!a||1&h[1]||(h[4]=u),!a&&1&h[1]&&(t|=8),!f||4&h[1]||(h[5]=o),c&&je.apply(h[2]||(h[2]=[]),e),p&&je.apply(h[3]||(h[3]=[]),r),h[1]|=t,pt.apply(null,h);var v=1==t||17===t?j(n,u,e):function(){var h=a?u:this;if(f||c||p){if(c){var y=e.slice();je.apply(y,arguments)}if((p||f)&&(y||(y=g(arguments)),p&&je.apply(y,r),f&&y.length<o))return t|=16,pt(n,l?t:-4&t,y,null,u,o)
}return y||(y=arguments),i&&(n=h[s]),this instanceof v?(h=tt(n.prototype),y=n.apply(h,y),jt(y)?y:h):n.apply(h,y)};return ze(v,[n,t,e,r,u,o]),v}function st(){X.h=$,X.b=X.c=X.g=X.i="",X.e="t",X.j=!0;for(var n,t=0;n=arguments[t];t++)for(var e in n)X[e]=n[e];t=X.a,X.d=/^[^,]+/.exec(t)[0],n=te,t="return function("+t+"){",e=X;var r="var n,t="+e.d+",E="+e.e+";if(!t)return E;"+e.i+";";e.b?(r+="var u=t.length;n=-1;if("+e.b+"){",Te.unindexedChars&&(r+="if(s(t)){t=t.split('')}"),r+="while(++n<u){"+e.g+";}}else{"):Te.nonEnumArgs&&(r+="var u=t.length;n=-1;if(u&&p(t)){while(++n<u){n+='';"+e.g+";}}else{"),Te.enumPrototypes&&(r+="var G=typeof t=='function';"),Te.enumErrorProps&&(r+="var F=t===k||t instanceof Error;");
var u=[];if(Te.enumPrototypes&&u.push('!(G&&n=="prototype")'),Te.enumErrorProps&&u.push('!(F&&(n=="message"||n=="name"))'),e.j&&e.f)r+="var C=-1,D=B[typeof t]&&v(t),u=D?D.length:0;while(++C<u){n=D[C];",u.length&&(r+="if("+u.join("&&")+"){"),r+=e.g+";",u.length&&(r+="}"),r+="}";else if(r+="for(n in t){",e.j&&u.push("m.call(t, n)"),u.length&&(r+="if("+u.join("&&")+"){"),r+=e.g+";",u.length&&(r+="}"),r+="}",Te.nonEnumShadows){for(r+="if(t!==A){var i=t.constructor,r=t===(i&&i.prototype),f=t===J?I:t===k?j:L.call(t),x=y[f];",k=0;7>k;k++)r+="n='"+e.h[k]+"';if((!(r&&x[n])&&m.call(t,n))",e.j||(r+="||(!x[n]&&t[n]!==A[n])"),r+="){"+e.g+"}";
r+="}"}return(e.b||Te.nonEnumArgs)&&(r+="}"),r+=e.c+";return E",n("d,j,k,m,o,p,q,s,v,A,B,y,I,J,L",t+r+"}")(et,K,le,be,_,mt,qe,Ct,X.f,ce,Y,Le,H,pe,ge)}function gt(n){return He[n]}function ht(){var t=(t=y.indexOf)===zt?n:t;return t}function vt(n){var t,e;return!n||ge.call(n)!=J||(t=n.constructor,wt(t)&&!(t instanceof t))||!Te.argsClass&&mt(n)||!Te.nodeClass&&l(n)?!1:Te.ownLast?(nr(n,function(n,t,r){return e=be.call(r,t),!1}),false!==e):(nr(n,function(n,t){e=t}),typeof e=="undefined"||be.call(n,e))}function yt(n){return Ue[n]
}function mt(n){return n&&typeof n=="object"&&typeof n.length=="number"&&ge.call(n)==L||!1}function dt(n,t,e){var r=We(n),u=r.length;for(t=et(t,e,3);u--&&(e=r[u],false!==t(n[e],e,n)););return n}function _t(n){var t=[];return nr(n,function(n,e){wt(n)&&t.push(e)}),t.sort()}function bt(n){for(var t=-1,e=We(n),r=e.length,u={};++t<r;){var o=e[t];u[n[o]]=o}return u}function wt(n){return typeof n=="function"}function jt(n){return!(!n||!Y[typeof n])}function xt(n){return typeof n=="number"||n&&typeof n=="object"&&ge.call(n)==G||!1
}function Ct(n){return typeof n=="string"||n&&typeof n=="object"&&ge.call(n)==H||!1}function kt(n){for(var t=-1,e=We(n),r=e.length,u=Yt(r);++t<r;)u[t]=n[e[t]];return u}function Et(n,t,e){var r=-1,u=ht(),o=n?n.length:0,a=!1;return e=(0>e?Ne(0,o+e):e)||0,qe(n)?a=-1<u(n,t,e):typeof o=="number"?a=-1<(Ct(n)?n.indexOf(t,e):u(n,t,e)):Xe(n,function(n){return++r<e?void 0:!(a=n===t)}),a}function Ot(n,t,e){var r=!0;if(t=y.createCallback(t,e,3),qe(n)){e=-1;for(var u=n.length;++e<u&&(r=!!t(n[e],e,n)););}else Xe(n,function(n,e,u){return r=!!t(n,e,u)
});return r}function St(n,t,e){var r=[];if(t=y.createCallback(t,e,3),qe(n)){e=-1;for(var u=n.length;++e<u;){var o=n[e];t(o,e,n)&&r.push(o)}}else Xe(n,function(n,e,u){t(n,e,u)&&r.push(n)});return r}function It(n,t,e){if(t=y.createCallback(t,e,3),!qe(n)){var r;return Xe(n,function(n,e,u){return t(n,e,u)?(r=n,!1):void 0}),r}e=-1;for(var u=n.length;++e<u;){var o=n[e];if(t(o,e,n))return o}}function At(n,t,e){if(t&&typeof e=="undefined"&&qe(n)){e=-1;for(var r=n.length;++e<r&&false!==t(n[e],e,n););}else Xe(n,t,e);
return n}function Dt(n,t,e){var r=n,u=n?n.length:0;if(t=t&&typeof e=="undefined"?t:et(t,e,3),qe(n))for(;u--&&false!==t(n[u],u,n););else{if(typeof u!="number")var o=We(n),u=o.length;else Te.unindexedChars&&Ct(n)&&(r=n.split(""));Xe(n,function(n,e,a){return e=o?o[--u]:--u,t(r[e],e,a)})}return n}function Nt(n,t,e){var r=-1,u=n?n.length:0,o=Yt(typeof u=="number"?u:0);if(t=y.createCallback(t,e,3),qe(n))for(;++r<u;)o[r]=t(n[r],r,n);else Xe(n,function(n,e,u){o[++r]=t(n,e,u)});return o}function Bt(n,t,e){var u=-1/0,o=u;
if(typeof t!="function"&&e&&e[t]===n&&(t=null),null==t&&qe(n)){e=-1;for(var a=n.length;++e<a;){var i=n[e];i>o&&(o=i)}}else t=null==t&&Ct(n)?r:y.createCallback(t,e,3),Xe(n,function(n,e,r){e=t(n,e,r),e>u&&(u=e,o=n)});return o}function Pt(n,t,e,r){var u=3>arguments.length;if(t=et(t,r,4),qe(n)){var o=-1,a=n.length;for(u&&(e=n[++o]);++o<a;)e=t(e,n[o],o,n)}else Xe(n,function(n,r,o){e=u?(u=!1,n):t(e,n,r,o)});return e}function Rt(n,t,e,r){var u=3>arguments.length;return t=et(t,r,4),Dt(n,function(n,r,o){e=u?(u=!1,n):t(e,n,r,o)
}),e}function Ft(n){var t=-1,e=n?n.length:0,r=Yt(typeof e=="number"?e:0);return At(n,function(n){var e=ft(0,++t);r[t]=r[e],r[e]=n}),r}function $t(n,t,e){var r;if(t=y.createCallback(t,e,3),qe(n)){e=-1;for(var u=n.length;++e<u&&!(r=t(n[e],e,n)););}else Xe(n,function(n,e,u){return!(r=t(n,e,u))});return!!r}function Lt(e){var r=-1,u=ht(),a=e?e.length:0,i=ut(arguments,!0,!0,1),f=[],l=a>=w&&u===n;if(l){var c=o(i);c?(u=t,i=c):l=!1}for(;++r<a;)c=e[r],0>u(i,c)&&f.push(c);return l&&s(i),f}function Tt(n,t,e){var r=0,u=n?n.length:0;
if(typeof t!="number"&&null!=t){var o=-1;for(t=y.createCallback(t,e,3);++o<u&&t(n[o],o,n);)r++}else if(r=t,null==r||e)return n?n[0]:v;return g(n,0,Be(Ne(0,r),u))}function zt(t,e,r){if(typeof r=="number"){var u=t?t.length:0;r=0>r?Ne(0,u+r):r||0}else if(r)return r=Kt(t,e),t[r]===e?r:-1;return n(t,e,r)}function qt(n,t,e){if(typeof t!="number"&&null!=t){var r=0,u=-1,o=n?n.length:0;for(t=y.createCallback(t,e,3);++u<o&&t(n[u],u,n);)r++}else r=null==t||e?1:Ne(0,t);return g(n,r)}function Kt(n,t,e,r){var u=0,o=n?n.length:u;
for(e=e?y.createCallback(e,r,1):Vt,t=e(t);u<o;)r=u+o>>>1,e(n[r])<t?u=r+1:o=r;return u}function Wt(n,t,e,r){return typeof t!="boolean"&&null!=t&&(r=e,e=typeof t!="function"&&r&&r[t]===n?null:t,t=!1),null!=e&&(e=y.createCallback(e,r,3)),lt(n,t,e)}function Gt(){for(var n=1<arguments.length?arguments:arguments[0],t=-1,e=n?Bt(ar(n,"length")):0,r=Yt(0>e?0:e);++t<e;)r[t]=ar(n,t);return r}function Jt(n,t){for(var e=-1,r=n?n.length:0,u={};++e<r;){var o=n[e];t?u[o]=t[e]:o&&(u[o[0]]=o[1])}return u}function Mt(n,t){return 2<arguments.length?pt(n,17,g(arguments,2),null,t):pt(n,1,null,null,t)
}function Ht(n,t,e){function r(){c&&ye(c),a=c=p=v,(h||g!==t)&&(s=we(),i=n.apply(l,o))}function u(){var e=t-(we()-f);0<e?c=Ce(u,e):(a&&ye(a),e=p,a=c=p=v,e&&(s=we(),i=n.apply(l,o)))}var o,a,i,f,l,c,p,s=0,g=!1,h=!0;if(!wt(n))throw new ie;if(t=Ne(0,t)||0,true===e)var y=!0,h=!1;else jt(e)&&(y=e.leading,g="maxWait"in e&&(Ne(t,e.maxWait)||0),h="trailing"in e?e.trailing:h);return function(){if(o=arguments,f=we(),l=this,p=h&&(c||!y),false===g)var e=y&&!c;else{a||y||(s=f);var v=g-(f-s);0<v?a||(a=Ce(r,v)):(a&&(a=ye(a)),s=f,i=n.apply(l,o))
}return c||t===g||(c=Ce(u,t)),e&&(i=n.apply(l,o)),i}}function Ut(n){if(!wt(n))throw new ie;var t=g(arguments,1);return Ce(function(){n.apply(v,t)},1)}function Vt(n){return n}function Qt(n,t){var e=n,r=!t||wt(e);t||(e=m,t=n,n=y),At(_t(t),function(u){var o=n[u]=t[u];r&&(e.prototype[u]=function(){var t=this.__wrapped__,r=[t];return je.apply(r,arguments),r=o.apply(n,r),t&&typeof t=="object"&&t===r?this:(r=new e(r),r.__chain__=this.__chain__,r)})})}function Xt(){return this.__wrapped__}e=e?ot.defaults(nt.Object(),e,ot.pick(nt,F)):nt;
var Yt=e.Array,Zt=e.Boolean,ne=e.Date,te=e.Function,ee=e.Math,re=e.Number,ue=e.Object,oe=e.RegExp,ae=e.String,ie=e.TypeError,fe=[],le=e.Error.prototype,ce=ue.prototype,pe=ae.prototype,se=e._,ge=ce.toString,he=oe("^"+ae(ge).replace(/[.*+?^${}()|[\]\\]/g,"\\$&").replace(/toString| for [^\]]+/g,".*?")+"$"),ve=ee.ceil,ye=e.clearTimeout,me=ee.floor,de=te.prototype.toString,_e=he.test(_e=ue.getPrototypeOf)&&_e,be=ce.hasOwnProperty,we=he.test(we=ne.now)&&we||function(){return+new ne},je=fe.push,xe=ce.propertyIsEnumerable,Ce=e.setTimeout,ke=fe.splice,Ee=function(){try{var n={},t=he.test(t=ue.defineProperty)&&t,e=t(n,n,n)&&t
}catch(r){}return e}(),Oe=he.test(Oe=ue.create)&&Oe,Se=he.test(Se=Yt.isArray)&&Se,Ie=e.isFinite,Ae=e.isNaN,De=he.test(De=ue.keys)&&De,Ne=ee.max,Be=ee.min,Pe=e.parseInt,Re=ee.random,Fe=typeof(Fe=Oe&&"function"==!/\n/.test(Oe)&&!he.test(e.attachEvent)&&rt&&e.setImmediate)&&Fe,$e={};$e[T]=Yt,$e[z]=Zt,$e[q]=ne,$e[W]=te,$e[J]=ue,$e[G]=re,$e[M]=oe,$e[H]=ae;var Le={};Le[T]=Le[q]=Le[G]={constructor:!0,toLocaleString:!0,toString:!0,valueOf:!0},Le[z]=Le[H]={constructor:!0,toString:!0,valueOf:!0},Le[K]=Le[W]=Le[M]={constructor:!0,toString:!0},Le[J]={constructor:!0},function(){for(var n=$.length;n--;){var t,e=$[n];
for(t in Le)be.call(Le,t)&&!be.call(Le[t],e)&&(Le[t][e]=!1)}}(),m.prototype=y.prototype;var Te=y.support={};!function(){function n(){this.x=1}var t={0:1,length:1},r=[];n.prototype={valueOf:1};for(var u in new n)r.push(u);for(u in arguments);Te.argsClass=ge.call(arguments)==L,Te.argsObject=arguments.constructor==ue&&!(arguments instanceof Yt),Te.enumErrorProps=xe.call(le,"message")||xe.call(le,"name"),Te.enumPrototypes=xe.call(n,"prototype"),Te.funcDecomp=!he.test(e.p)&&P.test(h),Te.funcNames=typeof te.name=="string",Te.nonEnumArgs=0!=u,Te.nonEnumShadows=!/valueOf/.test(r),Te.ownLast="x"!=r[0],Te.spliceObjects=(fe.splice.call(t,0,1),!t[0]),Te.unindexedChars="xx"!="x"[0]+ue("x")[0];
try{Te.nodeClass=!(ge.call(document)==J&&!({toString:0}+""))}catch(o){Te.nodeClass=!0}}(1),y.templateSettings={escape:/<%-([\s\S]+?)%>/g,evaluate:/<%([\s\S]+?)%>/g,interpolate:D,variable:"",imports:{_:y}},Oe||(tt=function(n){if(jt(n)){c.prototype=n;var t=new c;c.prototype=null}return t||{}});var ze=Ee?function(n,t){Q.value=t,Ee(n,"__bindData__",Q)}:c;Te.argsClass||(mt=function(n){return n&&typeof n=="object"&&typeof n.length=="number"&&be.call(n,"callee")||!1});var qe=Se||function(n){return n&&typeof n=="object"&&typeof n.length=="number"&&ge.call(n)==T||!1
},Ke=st({a:"z",e:"[]",i:"if(!(B[typeof z]))return E",g:"E.push(n)"}),We=De?function(n){return jt(n)?Te.enumPrototypes&&typeof n=="function"||Te.nonEnumArgs&&n.length&&mt(n)?Ke(n):De(n):[]}:Ke,Ge={a:"g,e,K",i:"e=e&&typeof K=='undefined'?e:d(e,K,3)",b:"typeof u=='number'",v:We,g:"if(e(t[n],n,g)===false)return E"},Je={a:"z,H,l",i:"var a=arguments,b=0,c=typeof l=='number'?2:a.length;while(++b<c){t=a[b];if(t&&B[typeof t]){",v:We,g:"if(typeof E[n]=='undefined')E[n]=t[n]",c:"}}"},Me={i:"if(!B[typeof t])return E;"+Ge.i,b:!1},He={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;"},Ue=bt(He),Ve=oe("("+We(Ue).join("|")+")","g"),Qe=oe("["+We(He).join("")+"]","g"),Xe=st(Ge),Ye=st(Je,{i:Je.i.replace(";",";if(c>3&&typeof a[c-2]=='function'){var e=d(a[--c-1],a[c--],2)}else if(c>2&&typeof a[c-1]=='function'){e=a[--c]}"),g:"E[n]=e?e(E[n],t[n]):t[n]"}),Ze=st(Je),nr=st(Ge,Me,{j:!1}),tr=st(Ge,Me);
wt(/x/)&&(wt=function(n){return typeof n=="function"&&ge.call(n)==W});var er=_e?function(n){if(!n||ge.call(n)!=J||!Te.argsClass&&mt(n))return!1;var t=n.valueOf,e=typeof t=="function"&&(e=_e(t))&&_e(e);return e?n==e||_e(n)==e:vt(n)}:vt,rr=ct(function(n,t,e){be.call(n,e)?n[e]++:n[e]=1}),ur=ct(function(n,t,e){(be.call(n,e)?n[e]:n[e]=[]).push(t)}),or=ct(function(n,t,e){n[e]=t}),ar=Nt;Fe&&(Ut=function(n){if(!wt(n))throw new ie;return Fe.apply(e,arguments)});var ir=8==Pe(x+"08")?Pe:function(n,t){return Pe(Ct(n)?n.replace(N,""):n,t||0)
};return y.after=function(n,t){if(!wt(t))throw new ie;return function(){return 1>--n?t.apply(this,arguments):void 0}},y.assign=Ye,y.at=function(n){var t=arguments,e=-1,r=ut(t,!0,!1,1),t=t[2]&&t[2][t[1]]===n?1:r.length,u=Yt(t);for(Te.unindexedChars&&Ct(n)&&(n=n.split(""));++e<t;)u[e]=n[r[e]];return u},y.bind=Mt,y.bindAll=function(n){for(var t=1<arguments.length?ut(arguments,!0,!1,1):_t(n),e=-1,r=t.length;++e<r;){var u=t[e];n[u]=pt(n[u],1,null,null,n)}return n},y.bindKey=function(n,t){return 2<arguments.length?pt(t,19,g(arguments,2),null,n):pt(t,3,null,null,n)
},y.chain=function(n){return n=new m(n),n.__chain__=!0,n},y.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},y.compose=function(){for(var n=arguments,t=n.length;t--;)if(!wt(n[t]))throw new ie;return function(){for(var t=arguments,e=n.length;e--;)t=[n[e].apply(this,t)];return t[0]}},y.countBy=rr,y.create=function(n,t){var e=tt(n);return t?Ye(e,t):e},y.createCallback=function(n,t,e){var r=typeof n;if(null==n||"function"==r)return et(n,t,e);if("object"!=r)return function(t){return t[n]
};var u=We(n),o=u[0],a=n[o];return 1!=u.length||a!==a||jt(a)?function(t){for(var e=u.length,r=!1;e--&&(r=at(t[u[e]],n[u[e]],null,!0)););return r}:function(n){return n=n[o],a===n&&(0!==a||1/a==1/n)}},y.curry=function(n,t){return t=typeof t=="number"?t:+t||n.length,pt(n,4,null,null,null,t)},y.debounce=Ht,y.defaults=Ze,y.defer=Ut,y.delay=function(n,t){if(!wt(n))throw new ie;var e=g(arguments,2);return Ce(function(){n.apply(v,e)},t)},y.difference=Lt,y.filter=St,y.flatten=function(n,t,e,r){return typeof t!="boolean"&&null!=t&&(r=e,e=typeof t!="function"&&r&&r[t]===n?null:t,t=!1),null!=e&&(n=Nt(n,e,r)),ut(n,t)
},y.forEach=At,y.forEachRight=Dt,y.forIn=nr,y.forInRight=function(n,t,e){var r=[];nr(n,function(n,t){r.push(t,n)});var u=r.length;for(t=et(t,e,3);u--&&false!==t(r[u--],r[u],n););return n},y.forOwn=tr,y.forOwnRight=dt,y.functions=_t,y.groupBy=ur,y.indexBy=or,y.initial=function(n,t,e){var r=0,u=n?n.length:0;if(typeof t!="number"&&null!=t){var o=u;for(t=y.createCallback(t,e,3);o--&&t(n[o],o,n);)r++}else r=null==t||e?1:t||r;return g(n,0,Be(Ne(0,u-r),u))},y.intersection=function(e){for(var r=arguments,u=r.length,a=-1,f=i(),l=-1,c=ht(),g=e?e.length:0,h=[],v=i();++a<u;){var y=r[a];
f[a]=c===n&&(y?y.length:0)>=w&&o(a?r[a]:v)}n:for(;++l<g;){var m=f[0],y=e[l];if(0>(m?t(m,y):c(v,y))){for(a=u,(m||v).push(y);--a;)if(m=f[a],0>(m?t(m,y):c(r[a],y)))continue n;h.push(y)}}for(;u--;)(m=f[u])&&s(m);return p(f),p(v),h},y.invert=bt,y.invoke=function(n,t){var e=g(arguments,2),r=-1,u=typeof t=="function",o=n?n.length:0,a=Yt(typeof o=="number"?o:0);return At(n,function(n){a[++r]=(u?t:n[t]).apply(n,e)}),a},y.keys=We,y.map=Nt,y.max=Bt,y.memoize=function(n,t){function e(){var r=e.cache,u=t?t.apply(this,arguments):b+arguments[0];
return be.call(r,u)?r[u]:r[u]=n.apply(this,arguments)}if(!wt(n))throw new ie;return e.cache={},e},y.merge=function(n){var t=arguments,e=2;if(!jt(n))return n;if("number"!=typeof t[2]&&(e=t.length),3<e&&"function"==typeof t[e-2])var r=et(t[--e-1],t[e--],2);else 2<e&&"function"==typeof t[e-1]&&(r=t[--e]);for(var t=g(arguments,1,e),u=-1,o=i(),a=i();++u<e;)it(n,t[u],r,o,a);return p(o),p(a),n},y.min=function(n,t,e){var u=1/0,o=u;if(typeof t!="function"&&e&&e[t]===n&&(t=null),null==t&&qe(n)){e=-1;for(var a=n.length;++e<a;){var i=n[e];
i<o&&(o=i)}}else t=null==t&&Ct(n)?r:y.createCallback(t,e,3),Xe(n,function(n,e,r){e=t(n,e,r),e<u&&(u=e,o=n)});return o},y.omit=function(n,t,e){var r=ht(),u=typeof t=="function",o={};if(u)t=y.createCallback(t,e,3);else var a=ut(arguments,!0,!1,1);return nr(n,function(n,e,i){(u?!t(n,e,i):0>r(a,e))&&(o[e]=n)}),o},y.once=function(n){var t,e;if(!wt(n))throw new ie;return function(){return t?e:(t=!0,e=n.apply(this,arguments),n=null,e)}},y.pairs=function(n){for(var t=-1,e=We(n),r=e.length,u=Yt(r);++t<r;){var o=e[t];
u[t]=[o,n[o]]}return u},y.partial=function(n){return pt(n,16,g(arguments,1))},y.partialRight=function(n){return pt(n,32,null,g(arguments,1))},y.pick=function(n,t,e){var r={};if(typeof t!="function")for(var u=-1,o=ut(arguments,!0,!1,1),a=jt(n)?o.length:0;++u<a;){var i=o[u];i in n&&(r[i]=n[i])}else t=y.createCallback(t,e,3),nr(n,function(n,e,u){t(n,e,u)&&(r[e]=n)});return r},y.pluck=ar,y.pull=function(n){for(var t=arguments,e=0,r=t.length,u=n?n.length:0;++e<r;)for(var o=-1,a=t[e];++o<u;)n[o]===a&&(ke.call(n,o--,1),u--);
return n},y.range=function(n,t,e){n=+n||0,e=typeof e=="number"?e:+e||1,null==t&&(t=n,n=0);var r=-1;t=Ne(0,ve((t-n)/(e||1)));for(var u=Yt(t);++r<t;)u[r]=n,n+=e;return u},y.reject=function(n,t,e){return t=y.createCallback(t,e,3),St(n,function(n,e,r){return!t(n,e,r)})},y.remove=function(n,t,e){var r=-1,u=n?n.length:0,o=[];for(t=y.createCallback(t,e,3);++r<u;)e=n[r],t(e,r,n)&&(o.push(e),ke.call(n,r--,1),u--);return o},y.rest=qt,y.shuffle=Ft,y.sortBy=function(n,t,e){var r=-1,o=n?n.length:0,a=Yt(typeof o=="number"?o:0);
for(t=y.createCallback(t,e,3),At(n,function(n,e,u){var o=a[++r]=f();o.m=t(n,e,u),o.n=r,o.o=n}),o=a.length,a.sort(u);o--;)n=a[o],a[o]=n.o,s(n);return a},y.tap=function(n,t){return t(n),n},y.throttle=function(n,t,e){var r=!0,u=!0;if(!wt(n))throw new ie;return false===e?r=!1:jt(e)&&(r="leading"in e?e.leading:r,u="trailing"in e?e.trailing:u),V.leading=r,V.maxWait=t,V.trailing=u,Ht(n,t,V)},y.times=function(n,t,e){n=-1<(n=+n)?n:0;var r=-1,u=Yt(n);for(t=et(t,e,1);++r<n;)u[r]=t(r);return u},y.toArray=function(n){return n&&typeof n.length=="number"?Te.unindexedChars&&Ct(n)?n.split(""):g(n):kt(n)
},y.transform=function(n,t,e,r){var u=qe(n);if(null==e)if(u)e=[];else{var o=n&&n.constructor;e=tt(o&&o.prototype)}return t&&(t=et(t,r,4),(u?Xe:tr)(n,function(n,r,u){return t(e,n,r,u)})),e},y.union=function(){return lt(ut(arguments,!0,!0))},y.uniq=Wt,y.values=kt,y.where=St,y.without=function(n){return Lt(n,g(arguments,1))},y.wrap=function(n,t){return pt(t,16,[n])},y.zip=Gt,y.zipObject=Jt,y.collect=Nt,y.drop=qt,y.each=At,y.eachRight=Dt,y.extend=Ye,y.methods=_t,y.object=Jt,y.select=St,y.tail=qt,y.unique=Wt,y.unzip=Gt,Qt(y),y.clone=function(n,t,e,r){return typeof t!="boolean"&&null!=t&&(r=e,e=t,t=!1),Z(n,t,typeof e=="function"&&et(e,r,1))
},y.cloneDeep=function(n,t,e){return Z(n,!0,typeof t=="function"&&et(t,e,1))},y.contains=Et,y.escape=function(n){return null==n?"":ae(n).replace(Qe,gt)},y.every=Ot,y.find=It,y.findIndex=function(n,t,e){var r=-1,u=n?n.length:0;for(t=y.createCallback(t,e,3);++r<u;)if(t(n[r],r,n))return r;return-1},y.findKey=function(n,t,e){var r;return t=y.createCallback(t,e,3),tr(n,function(n,e,u){return t(n,e,u)?(r=e,!1):void 0}),r},y.findLast=function(n,t,e){var r;return t=y.createCallback(t,e,3),Dt(n,function(n,e,u){return t(n,e,u)?(r=n,!1):void 0
}),r},y.findLastIndex=function(n,t,e){var r=n?n.length:0;for(t=y.createCallback(t,e,3);r--;)if(t(n[r],r,n))return r;return-1},y.findLastKey=function(n,t,e){var r;return t=y.createCallback(t,e,3),dt(n,function(n,e,u){return t(n,e,u)?(r=e,!1):void 0}),r},y.has=function(n,t){return n?be.call(n,t):!1},y.identity=Vt,y.indexOf=zt,y.isArguments=mt,y.isArray=qe,y.isBoolean=function(n){return true===n||false===n||n&&typeof n=="object"&&ge.call(n)==z||!1},y.isDate=function(n){return n&&typeof n=="object"&&ge.call(n)==q||!1
},y.isElement=function(n){return n&&1===n.nodeType||!1},y.isEmpty=function(n){var t=!0;if(!n)return t;var e=ge.call(n),r=n.length;return e==T||e==H||(Te.argsClass?e==L:mt(n))||e==J&&typeof r=="number"&&wt(n.splice)?!r:(tr(n,function(){return t=!1}),t)},y.isEqual=function(n,t,e,r){return at(n,t,typeof e=="function"&&et(e,r,2))},y.isFinite=function(n){return Ie(n)&&!Ae(parseFloat(n))},y.isFunction=wt,y.isNaN=function(n){return xt(n)&&n!=+n},y.isNull=function(n){return null===n},y.isNumber=xt,y.isObject=jt,y.isPlainObject=er,y.isRegExp=function(n){return n&&Y[typeof n]&&ge.call(n)==M||!1
},y.isString=Ct,y.isUndefined=function(n){return typeof n=="undefined"},y.lastIndexOf=function(n,t,e){var r=n?n.length:0;for(typeof e=="number"&&(r=(0>e?Ne(0,r+e):Be(e,r-1))+1);r--;)if(n[r]===t)return r;return-1},y.mixin=Qt,y.noConflict=function(){return e._=se,this},y.parseInt=ir,y.random=function(n,t,e){var r=null==n,u=null==t;return null==e&&(typeof n=="boolean"&&u?(e=n,n=1):u||typeof t!="boolean"||(e=t,u=!0)),r&&u&&(t=1),n=+n||0,u?(t=n,n=0):t=+t||0,e||n%1||t%1?(e=Re(),Be(n+e*(t-n+parseFloat("1e-"+((e+"").length-1))),t)):ft(n,t)
},y.reduce=Pt,y.reduceRight=Rt,y.result=function(n,t){if(n){var e=n[t];return wt(e)?n[t]():e}},y.runInContext=h,y.size=function(n){var t=n?n.length:0;return typeof t=="number"?t:We(n).length},y.some=$t,y.sortedIndex=Kt,y.template=function(n,t,e){var r=y.templateSettings;n=ae(n||""),e=Ze({},e,r);var u,o=Ze({},e.imports,r.imports),r=We(o),o=kt(o),i=0,f=e.interpolate||B,l="__p+='",f=oe((e.escape||B).source+"|"+f.source+"|"+(f===D?S:B).source+"|"+(e.evaluate||B).source+"|$","g");n.replace(f,function(t,e,r,o,f,c){return r||(r=o),l+=n.slice(i,c).replace(R,a),e&&(l+="'+__e("+e+")+'"),f&&(u=!0,l+="';"+f+";\n__p+='"),r&&(l+="'+((__t=("+r+"))==null?'':__t)+'"),i=c+t.length,t
}),l+="';",f=e=e.variable,f||(e="obj",l="with("+e+"){"+l+"}"),l=(u?l.replace(C,""):l).replace(E,"$1").replace(O,"$1;"),l="function("+e+"){"+(f?"":e+"||("+e+"={});")+"var __t,__p='',__e=_.escape"+(u?",__j=Array.prototype.join;function print(){__p+=__j.call(arguments,'')}":";")+l+"return __p}";try{var c=te(r,"return "+l).apply(v,o)}catch(p){throw p.source=l,p}return t?c(t):(c.source=l,c)},y.unescape=function(n){return null==n?"":ae(n).replace(Ve,yt)},y.uniqueId=function(n){var t=++d;return ae(null==n?"":n)+t
},y.all=Ot,y.any=$t,y.detect=It,y.findWhere=It,y.foldl=Pt,y.foldr=Rt,y.include=Et,y.inject=Pt,tr(y,function(n,t){y.prototype[t]||(y.prototype[t]=function(){var t=[this.__wrapped__],e=this.__chain__;return je.apply(t,arguments),t=n.apply(y,t),e?new m(t,e):t})}),y.first=Tt,y.last=function(n,t,e){var r=0,u=n?n.length:0;if(typeof t!="number"&&null!=t){var o=u;for(t=y.createCallback(t,e,3);o--&&t(n[o],o,n);)r++}else if(r=t,null==r||e)return n?n[u-1]:v;return g(n,Ne(0,u-r))},y.sample=function(n,t,e){return n&&typeof n.length!="number"?n=kt(n):Te.unindexedChars&&Ct(n)&&(n=n.split("")),null==t||e?n?n[ft(0,n.length-1)]:v:(n=Ft(n),n.length=Be(Ne(0,t),n.length),n)
},y.take=Tt,y.head=Tt,tr(y,function(n,t){var e="sample"!==t;y.prototype[t]||(y.prototype[t]=function(t,r){var u=this.__chain__,o=n(this.__wrapped__,t,r);return u||null!=t&&(!r||e&&typeof t=="function")?new m(o,u):o})}),y.VERSION="2.2.1",y.prototype.chain=function(){return this.__chain__=!0,this},y.prototype.toString=function(){return ae(this.__wrapped__)},y.prototype.value=Xt,y.prototype.valueOf=Xt,Xe(["join","pop","shift"],function(n){var t=fe[n];y.prototype[n]=function(){var n=this.__chain__,e=t.apply(this.__wrapped__,arguments);
return n?new m(e,n):e}}),Xe(["push","reverse","sort","unshift"],function(n){var t=fe[n];y.prototype[n]=function(){return t.apply(this.__wrapped__,arguments),this}}),Xe(["concat","slice","splice"],function(n){var t=fe[n];y.prototype[n]=function(){return new m(t.apply(this.__wrapped__,arguments),this.__chain__)}}),Te.spliceObjects||Xe(["pop","shift","splice"],function(n){var t=fe[n],e="splice"==n;y.prototype[n]=function(){var n=this.__chain__,r=this.__wrapped__,u=t.apply(r,arguments);return 0===r.length&&delete r[0],n||e?new m(u,n):u
}function l(n){return typeof n.toString!="function"&&typeof(n+"")=="string"}function c(){}function p(n){n.length=0,y.length<j&&y.push(n)}function s(n){var t=n.l;t&&s(t),n.k=n.l=n.m=n.object=n.number=n.string=n.o=null,m.length<j&&m.push(n)}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=Array(0>e?0:e);++r<e;)u[r]=n[t+r];return u}function h(e){function y(n){return n&&typeof n=="object"&&!Ke(n)&&we.call(n,"__wrapped__")?n:new m(n)}function m(n,t){this.__chain__=!!t,this.__wrapped__=n
}function j(n,t,e){function r(){if(e){var u=e.slice();xe.apply(u,arguments)}if(this instanceof r){var o=tt(n.prototype),u=n.apply(o,u||arguments);return xt(u)?u:o}return n.apply(t,u||arguments)}return r}function Z(n,t,e,r,u){if(e){var o=e(n);if(typeof o!="undefined")return o}if(!xt(n))return n;var a=he.call(n);if(!U[a]||!ze.nodeClass&&l(n))return n;var f=Le[a];switch(a){case z:case q:return new f(+n);case G:case H:return new f(n);case M:return o=f(n.source,I.exec(n)),o.lastIndex=n.lastIndex,o}if(a=Ke(n),t){var c=!r;
r||(r=i()),u||(u=i());for(var s=r.length;s--;)if(r[s]==n)return u[s];o=a?f(n.length):{}}else o=a?g(n):Ze({},n);return a&&(we.call(n,"index")&&(o.index=n.index),we.call(n,"input")&&(o.input=n.input)),t?(r.push(n),u.push(o),(a?Ye:er)(n,function(n,a){o[a]=Z(n,t,e,r,u)}),c&&(p(r),p(u)),o):o}function tt(n){return xt(n)?Se(n):{}}function et(n,t,e){if(typeof n!="function")return Qt;if(typeof t=="undefined"||!("prototype"in n))return n;var r=n.__bindData__;if(typeof r=="undefined"&&(ze.funcNames&&(r=!n.name),r=r||!ze.funcDecomp,!r)){var u=_e.call(n);
ze.funcNames||(r=!A.test(u)),r||(r=P.test(u),qe(n,r))}if(false===r||true!==r&&1&r[1])return n;switch(e){case 1:return function(e){return n.call(t,e)};case 2:return function(e,r){return n.call(t,e,r)};case 3:return function(e,r,u){return n.call(t,e,r,u)};case 4:return function(e,r,u,o){return n.call(t,e,r,u,o)}}return Ht(n,t)}function ut(n,t,e,r,u,o){function a(){var v=i?u:this;if(l||p||s){if(p){var y=e.slice();xe.apply(y,arguments)}if((s||l)&&(y||(y=g(arguments)),s&&xe.apply(y,r),l&&y.length<o))return t|=16,st(n,c?t:-4&t,y,null,u,o)
}return y||(y=arguments),f&&(n=v[h]),this instanceof a?(v=tt(n.prototype),y=n.apply(v,y),xt(y)?y:v):n.apply(v,y)}var i=1&t,f=2&t,l=4&t,c=8&t,p=16&t,s=32&t,h=n;return a}function at(n,t,e,r){r=(r||0)-1;for(var u=n?n.length:0,o=[];++r<u;){var a=n[r];if(a&&typeof a=="object"&&typeof a.length=="number"&&(Ke(a)||dt(a))){t||(a=at(a,t,e));var i=-1,f=a.length,l=o.length;for(o.length+=f;++i<f;)o[l++]=a[i]}else e||o.push(a)}return o}function it(n,t,e,r,u,o){if(e){var a=e(n,t);if(typeof a!="undefined")return!!a
}if(n===t)return 0!==n||1/n==1/t;if(n===n&&!(n&&Y[typeof n]||t&&Y[typeof t]))return!1;if(null==n||null==t)return n===t;var f=he.call(n),c=he.call(t);if(f==L&&(f=J),c==L&&(c=J),f!=c)return!1;switch(f){case z:case q:return+n==+t;case G:return n!=+n?t!=+t:0==n?1/n==1/t:n==+t;case M:case H:return n==ie(t)}if(c=f==T,!c){if(we.call(n,"__wrapped__")||we.call(t,"__wrapped__"))return it(n.__wrapped__||n,t.__wrapped__||t,e,r,u,o);if(f!=J||!ze.nodeClass&&(l(n)||l(t)))return!1;var f=!ze.argsObject&&dt(n)?oe:n.constructor,s=!ze.argsObject&&dt(t)?oe:t.constructor;
if(f!=s&&!(jt(f)&&f instanceof f&&jt(s)&&s instanceof s)&&"constructor"in n&&"constructor"in t)return!1}for(s=!u,u||(u=i()),o||(o=i()),f=u.length;f--;)if(u[f]==n)return o[f]==t;var g=0,a=!0;if(u.push(n),o.push(t),c){if(f=n.length,g=t.length,a=g==n.length,!a&&!r)return a;for(;g--;)if(c=f,s=t[g],r)for(;c--&&!(a=it(n[c],s,e,r,u,o)););else if(!(a=it(n[g],s,e,r,u,o)))break;return a}return tr(t,function(t,i,f){return we.call(f,i)?(g++,a=we.call(n,i)&&it(n[i],t,e,r,u,o)):void 0}),a&&!r&&tr(n,function(n,t,e){return we.call(e,t)?a=-1<--g:void 0
}),s&&(p(u),p(o)),a}function ft(n,t,e,r,u){(Ke(t)?Dt:er)(t,function(t,o){var a,i,f=t,l=n[o];if(t&&((i=Ke(t))||rr(t))){for(f=r.length;f--;)if(a=r[f]==t){l=u[f];break}if(!a){var c;e&&(f=e(l,t),c=typeof f!="undefined")&&(l=f),c||(l=i?Ke(l)?l:[]:rr(l)?l:{}),r.push(t),u.push(l),c||ft(l,t,e,r,u)}}else e&&(f=e(l,t),typeof f=="undefined"&&(f=t)),typeof f!="undefined"&&(l=f);n[o]=l})}function lt(n,t){return n+de(Fe()*(t-n+1))}function ct(e,r,u){var a=-1,f=vt(),l=e?e.length:0,c=[],g=!r&&l>=w&&f===n,h=u||g?i():c;
if(g){var v=o(h);v?(f=t,h=v):(g=!1,h=u?h:(p(h),c))}for(;++a<l;){var v=e[a],y=u?u(v,a,e):v;(r?!a||h[h.length-1]!==y:0>f(h,y))&&((u||g)&&h.push(y),c.push(v))}return g?(p(h.k),s(h)):u&&p(h),c}function pt(n){return function(t,e,r){var u={};if(e=y.createCallback(e,r,3),Ke(t)){r=-1;for(var o=t.length;++r<o;){var a=t[r];n(u,a,e(a,r,t),t)}}else Ye(t,function(t,r,o){n(u,t,e(t,r,o),o)});return u}}function st(n,t,e,r,u,o){var a=1&t,i=4&t,f=16&t,l=32&t;if(!(2&t||jt(n)))throw new fe;f&&!e.length&&(t&=-17,f=e=!1),l&&!r.length&&(t&=-33,l=r=!1);
var c=n&&n.__bindData__;return c&&true!==c?(c=c.slice(),!a||1&c[1]||(c[4]=u),!a&&1&c[1]&&(t|=8),!i||4&c[1]||(c[5]=o),f&&xe.apply(c[2]||(c[2]=[]),e),l&&xe.apply(c[3]||(c[3]=[]),r),c[1]|=t,st.apply(null,c)):(a=1==t||17===t?j(n,u,e):ut(n,t,e,r,u,o),qe(a,[n,t,e,r,u,o]),a)}function gt(){X.h=$,X.b=X.c=X.g=X.i="",X.e="t",X.j=!0;for(var n,t=0;n=arguments[t];t++)for(var e in n)X[e]=n[e];t=X.a,X.d=/^[^,]+/.exec(t)[0],n=ee,t="return function("+t+"){",e=X;var r="var n,t="+e.d+",E="+e.e+";if(!t)return E;"+e.i+";";
e.b?(r+="var u=t.length;n=-1;if("+e.b+"){",ze.unindexedChars&&(r+="if(s(t)){t=t.split('')}"),r+="while(++n<u){"+e.g+";}}else{"):ze.nonEnumArgs&&(r+="var u=t.length;n=-1;if(u&&p(t)){while(++n<u){n+='';"+e.g+";}}else{"),ze.enumPrototypes&&(r+="var G=typeof t=='function';"),ze.enumErrorProps&&(r+="var F=t===k||t instanceof Error;");var u=[];if(ze.enumPrototypes&&u.push('!(G&&n=="prototype")'),ze.enumErrorProps&&u.push('!(F&&(n=="message"||n=="name"))'),e.j&&e.f)r+="var C=-1,D=B[typeof t]&&v(t),u=D?D.length:0;while(++C<u){n=D[C];",u.length&&(r+="if("+u.join("&&")+"){"),r+=e.g+";",u.length&&(r+="}"),r+="}";
else if(r+="for(n in t){",e.j&&u.push("m.call(t, n)"),u.length&&(r+="if("+u.join("&&")+"){"),r+=e.g+";",u.length&&(r+="}"),r+="}",ze.nonEnumShadows){for(r+="if(t!==A){var i=t.constructor,r=t===(i&&i.prototype),f=t===J?I:t===k?j:L.call(t),x=y[f];",k=0;7>k;k++)r+="n='"+e.h[k]+"';if((!(r&&x[n])&&m.call(t,n))",e.j||(r+="||(!x[n]&&t[n]!==A[n])"),r+="){"+e.g+"}";r+="}"}return(e.b||ze.nonEnumArgs)&&(r+="}"),r+=e.c+";return E",n("d,j,k,m,o,p,q,s,v,A,B,y,I,J,L",t+r+"}")(et,K,ce,we,_,dt,Ke,kt,X.f,pe,Y,Te,H,se,he)
}function ht(n){return Ue[n]}function vt(){var t=(t=y.indexOf)===qt?n:t;return t}function yt(n){var t,e;return!n||he.call(n)!=J||(t=n.constructor,jt(t)&&!(t instanceof t))||!ze.argsClass&&dt(n)||!ze.nodeClass&&l(n)?!1:ze.ownLast?(tr(n,function(n,t,r){return e=we.call(r,t),!1}),false!==e):(tr(n,function(n,t){e=t}),typeof e=="undefined"||we.call(n,e))}function mt(n){return Ve[n]}function dt(n){return n&&typeof n=="object"&&typeof n.length=="number"&&he.call(n)==L||!1}function _t(n,t,e){var r=Ge(n),u=r.length;
for(t=et(t,e,3);u--&&(e=r[u],false!==t(n[e],e,n)););return n}function bt(n){var t=[];return tr(n,function(n,e){jt(n)&&t.push(e)}),t.sort()}function wt(n){for(var t=-1,e=Ge(n),r=e.length,u={};++t<r;){var o=e[t];u[n[o]]=o}return u}function jt(n){return typeof n=="function"}function xt(n){return!(!n||!Y[typeof n])}function Ct(n){return typeof n=="number"||n&&typeof n=="object"&&he.call(n)==G||!1}function kt(n){return typeof n=="string"||n&&typeof n=="object"&&he.call(n)==H||!1}function Et(n){for(var t=-1,e=Ge(n),r=e.length,u=Zt(r);++t<r;)u[t]=n[e[t]];
return u}function Ot(n,t,e){var r=-1,u=vt(),o=n?n.length:0,a=!1;return e=(0>e?Be(0,o+e):e)||0,Ke(n)?a=-1<u(n,t,e):typeof o=="number"?a=-1<(kt(n)?n.indexOf(t,e):u(n,t,e)):Ye(n,function(n){return++r<e?void 0:!(a=n===t)}),a}function St(n,t,e){var r=!0;if(t=y.createCallback(t,e,3),Ke(n)){e=-1;for(var u=n.length;++e<u&&(r=!!t(n[e],e,n)););}else Ye(n,function(n,e,u){return r=!!t(n,e,u)});return r}function It(n,t,e){var r=[];if(t=y.createCallback(t,e,3),Ke(n)){e=-1;for(var u=n.length;++e<u;){var o=n[e];
t(o,e,n)&&r.push(o)}}else Ye(n,function(n,e,u){t(n,e,u)&&r.push(n)});return r}function At(n,t,e){if(t=y.createCallback(t,e,3),!Ke(n)){var r;return Ye(n,function(n,e,u){return t(n,e,u)?(r=n,!1):void 0}),r}e=-1;for(var u=n.length;++e<u;){var o=n[e];if(t(o,e,n))return o}}function Dt(n,t,e){if(t&&typeof e=="undefined"&&Ke(n)){e=-1;for(var r=n.length;++e<r&&false!==t(n[e],e,n););}else Ye(n,t,e);return n}function Nt(n,t,e){var r=n,u=n?n.length:0;if(t=t&&typeof e=="undefined"?t:et(t,e,3),Ke(n))for(;u--&&false!==t(n[u],u,n););else{if(typeof u!="number")var o=Ge(n),u=o.length;
else ze.unindexedChars&&kt(n)&&(r=n.split(""));Ye(n,function(n,e,a){return e=o?o[--u]:--u,t(r[e],e,a)})}return n}function Bt(n,t,e){var r=-1,u=n?n.length:0,o=Zt(typeof u=="number"?u:0);if(t=y.createCallback(t,e,3),Ke(n))for(;++r<u;)o[r]=t(n[r],r,n);else Ye(n,function(n,e,u){o[++r]=t(n,e,u)});return o}function Pt(n,t,e){var u=-1/0,o=u;if(typeof t!="function"&&e&&e[t]===n&&(t=null),null==t&&Ke(n)){e=-1;for(var a=n.length;++e<a;){var i=n[e];i>o&&(o=i)}}else t=null==t&&kt(n)?r:y.createCallback(t,e,3),Ye(n,function(n,e,r){e=t(n,e,r),e>u&&(u=e,o=n)
});return o}function Rt(n,t,e,r){var u=3>arguments.length;if(t=et(t,r,4),Ke(n)){var o=-1,a=n.length;for(u&&(e=n[++o]);++o<a;)e=t(e,n[o],o,n)}else Ye(n,function(n,r,o){e=u?(u=!1,n):t(e,n,r,o)});return e}function Ft(n,t,e,r){var u=3>arguments.length;return t=et(t,r,4),Nt(n,function(n,r,o){e=u?(u=!1,n):t(e,n,r,o)}),e}function $t(n){var t=-1,e=n?n.length:0,r=Zt(typeof e=="number"?e:0);return Dt(n,function(n){var e=lt(0,++t);r[t]=r[e],r[e]=n}),r}function Lt(n,t,e){var r;if(t=y.createCallback(t,e,3),Ke(n)){e=-1;
for(var u=n.length;++e<u&&!(r=t(n[e],e,n)););}else Ye(n,function(n,e,u){return!(r=t(n,e,u))});return!!r}function Tt(e){var r=-1,u=vt(),a=e?e.length:0,i=at(arguments,!0,!0,1),f=[],l=a>=w&&u===n;if(l){var c=o(i);c?(u=t,i=c):l=!1}for(;++r<a;)c=e[r],0>u(i,c)&&f.push(c);return l&&s(i),f}function zt(n,t,e){var r=0,u=n?n.length:0;if(typeof t!="number"&&null!=t){var o=-1;for(t=y.createCallback(t,e,3);++o<u&&t(n[o],o,n);)r++}else if(r=t,null==r||e)return n?n[0]:v;return g(n,0,Pe(Be(0,r),u))}function qt(t,e,r){if(typeof r=="number"){var u=t?t.length:0;
r=0>r?Be(0,u+r):r||0}else if(r)return r=Wt(t,e),t[r]===e?r:-1;return n(t,e,r)}function Kt(n,t,e){if(typeof t!="number"&&null!=t){var r=0,u=-1,o=n?n.length:0;for(t=y.createCallback(t,e,3);++u<o&&t(n[u],u,n);)r++}else r=null==t||e?1:Be(0,t);return g(n,r)}function Wt(n,t,e,r){var u=0,o=n?n.length:u;for(e=e?y.createCallback(e,r,1):Qt,t=e(t);u<o;)r=u+o>>>1,e(n[r])<t?u=r+1:o=r;return u}function Gt(n,t,e,r){return typeof t!="boolean"&&null!=t&&(r=e,e=typeof t!="function"&&r&&r[t]===n?null:t,t=!1),null!=e&&(e=y.createCallback(e,r,3)),ct(n,t,e)
}function Jt(){for(var n=1<arguments.length?arguments:arguments[0],t=-1,e=n?Pt(ir(n,"length")):0,r=Zt(0>e?0:e);++t<e;)r[t]=ir(n,t);return r}function Mt(n,t){for(var e=-1,r=n?n.length:0,u={};++e<r;){var o=n[e];t?u[o]=t[e]:o&&(u[o[0]]=o[1])}return u}function Ht(n,t){return 2<arguments.length?st(n,17,g(arguments,2),null,t):st(n,1,null,null,t)}function Ut(n,t,e){function r(){c&&me(c),a=c=p=v,(h||g!==t)&&(s=je(),i=n.apply(l,o))}function u(){var e=t-(je()-f);0<e?c=ke(u,e):(a&&me(a),e=p,a=c=p=v,e&&(s=je(),i=n.apply(l,o)))
}var o,a,i,f,l,c,p,s=0,g=!1,h=!0;if(!jt(n))throw new fe;if(t=Be(0,t)||0,true===e)var y=!0,h=!1;else xt(e)&&(y=e.leading,g="maxWait"in e&&(Be(t,e.maxWait)||0),h="trailing"in e?e.trailing:h);return function(){if(o=arguments,f=je(),l=this,p=h&&(c||!y),false===g)var e=y&&!c;else{a||y||(s=f);var v=g-(f-s);0<v?a||(a=ke(r,v)):(a&&(a=me(a)),s=f,i=n.apply(l,o))}return c||t===g||(c=ke(u,t)),e&&(i=n.apply(l,o)),i}}function Vt(n){if(!jt(n))throw new fe;var t=g(arguments,1);return ke(function(){n.apply(v,t)},1)}function Qt(n){return n
}function Xt(n,t){var e=n,r=!t||jt(e);t||(e=m,t=n,n=y),Dt(bt(t),function(u){var o=n[u]=t[u];r&&(e.prototype[u]=function(){var t=this.__wrapped__,r=[t];return xe.apply(r,arguments),r=o.apply(n,r),t&&typeof t=="object"&&t===r?this:(r=new e(r),r.__chain__=this.__chain__,r)})})}function Yt(){return this.__wrapped__}e=e?ot.defaults(nt.Object(),e,ot.pick(nt,F)):nt;var Zt=e.Array,ne=e.Boolean,te=e.Date,ee=e.Function,re=e.Math,ue=e.Number,oe=e.Object,ae=e.RegExp,ie=e.String,fe=e.TypeError,le=[],ce=e.Error.prototype,pe=oe.prototype,se=ie.prototype,ge=e._,he=pe.toString,ve=ae("^"+ie(he).replace(/[.*+?^${}()|[\]\\]/g,"\\$&").replace(/toString| for [^\]]+/g,".*?")+"$"),ye=re.ceil,me=e.clearTimeout,de=re.floor,_e=ee.prototype.toString,be=ve.test(be=oe.getPrototypeOf)&&be,we=pe.hasOwnProperty,je=ve.test(je=te.now)&&je||function(){return+new te
},xe=le.push,Ce=pe.propertyIsEnumerable,ke=e.setTimeout,Ee=le.splice,Oe=function(){try{var n={},t=ve.test(t=oe.defineProperty)&&t,e=t(n,n,n)&&t}catch(r){}return e}(),Se=ve.test(Se=oe.create)&&Se,Ie=ve.test(Ie=Zt.isArray)&&Ie,Ae=e.isFinite,De=e.isNaN,Ne=ve.test(Ne=oe.keys)&&Ne,Be=re.max,Pe=re.min,Re=e.parseInt,Fe=re.random,$e=typeof($e=Se&&"function"==!/\n/.test(Se)&&!ve.test(e.attachEvent)&&rt&&e.setImmediate)&&$e,Le={};Le[T]=Zt,Le[z]=ne,Le[q]=te,Le[W]=ee,Le[J]=oe,Le[G]=ue,Le[M]=ae,Le[H]=ie;var Te={};
Te[T]=Te[q]=Te[G]={constructor:!0,toLocaleString:!0,toString:!0,valueOf:!0},Te[z]=Te[H]={constructor:!0,toString:!0,valueOf:!0},Te[K]=Te[W]=Te[M]={constructor:!0,toString:!0},Te[J]={constructor:!0},function(){for(var n=$.length;n--;){var t,e=$[n];for(t in Te)we.call(Te,t)&&!we.call(Te[t],e)&&(Te[t][e]=!1)}}(),m.prototype=y.prototype;var ze=y.support={};!function(){function n(){this.x=1}var t={0:1,length:1},r=[];n.prototype={valueOf:1};for(var u in new n)r.push(u);for(u in arguments);ze.argsClass=he.call(arguments)==L,ze.argsObject=arguments.constructor==oe&&!(arguments instanceof Zt),ze.enumErrorProps=Ce.call(ce,"message")||Ce.call(ce,"name"),ze.enumPrototypes=Ce.call(n,"prototype"),ze.funcDecomp=!ve.test(e.p)&&P.test(h),ze.funcNames=typeof ee.name=="string",ze.nonEnumArgs=0!=u,ze.nonEnumShadows=!/valueOf/.test(r),ze.ownLast="x"!=r[0],ze.spliceObjects=(le.splice.call(t,0,1),!t[0]),ze.unindexedChars="xx"!="x"[0]+oe("x")[0];
try{ze.nodeClass=!(he.call(document)==J&&!({toString:0}+""))}catch(o){ze.nodeClass=!0}}(1),y.templateSettings={escape:/<%-([\s\S]+?)%>/g,evaluate:/<%([\s\S]+?)%>/g,interpolate:D,variable:"",imports:{_:y}},Se||(tt=function(n){if(xt(n)){c.prototype=n;var t=new c;c.prototype=null}return t||{}});var qe=Oe?function(n,t){Q.value=t,Oe(n,"__bindData__",Q)}:c;ze.argsClass||(dt=function(n){return n&&typeof n=="object"&&typeof n.length=="number"&&we.call(n,"callee")||!1});var Ke=Ie||function(n){return n&&typeof n=="object"&&typeof n.length=="number"&&he.call(n)==T||!1
},We=gt({a:"z",e:"[]",i:"if(!(B[typeof z]))return E",g:"E.push(n)"}),Ge=Ne?function(n){return xt(n)?ze.enumPrototypes&&typeof n=="function"||ze.nonEnumArgs&&n.length&&dt(n)?We(n):Ne(n):[]}:We,Je={a:"g,e,K",i:"e=e&&typeof K=='undefined'?e:d(e,K,3)",b:"typeof u=='number'",v:Ge,g:"if(e(t[n],n,g)===false)return E"},Me={a:"z,H,l",i:"var a=arguments,b=0,c=typeof l=='number'?2:a.length;while(++b<c){t=a[b];if(t&&B[typeof t]){",v:Ge,g:"if(typeof E[n]=='undefined')E[n]=t[n]",c:"}}"},He={i:"if(!B[typeof t])return E;"+Je.i,b:!1},Ue={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;"},Ve=wt(Ue),Qe=ae("("+Ge(Ve).join("|")+")","g"),Xe=ae("["+Ge(Ue).join("")+"]","g"),Ye=gt(Je),Ze=gt(Me,{i:Me.i.replace(";",";if(c>3&&typeof a[c-2]=='function'){var e=d(a[--c-1],a[c--],2)}else if(c>2&&typeof a[c-1]=='function'){e=a[--c]}"),g:"E[n]=e?e(E[n],t[n]):t[n]"}),nr=gt(Me),tr=gt(Je,He,{j:!1}),er=gt(Je,He);
jt(/x/)&&(jt=function(n){return typeof n=="function"&&he.call(n)==W});var rr=be?function(n){if(!n||he.call(n)!=J||!ze.argsClass&&dt(n))return!1;var t=n.valueOf,e=typeof t=="function"&&(e=be(t))&&be(e);return e?n==e||be(n)==e:yt(n)}:yt,ur=pt(function(n,t,e){we.call(n,e)?n[e]++:n[e]=1}),or=pt(function(n,t,e){(we.call(n,e)?n[e]:n[e]=[]).push(t)}),ar=pt(function(n,t,e){n[e]=t}),ir=Bt;$e&&(Vt=function(n){if(!jt(n))throw new fe;return $e.apply(e,arguments)});var fr=8==Re(x+"08")?Re:function(n,t){return Re(kt(n)?n.replace(N,""):n,t||0)
};return y.after=function(n,t){if(!jt(t))throw new fe;return function(){return 1>--n?t.apply(this,arguments):void 0}},y.assign=Ze,y.at=function(n){var t=arguments,e=-1,r=at(t,!0,!1,1),t=t[2]&&t[2][t[1]]===n?1:r.length,u=Zt(t);for(ze.unindexedChars&&kt(n)&&(n=n.split(""));++e<t;)u[e]=n[r[e]];return u},y.bind=Ht,y.bindAll=function(n){for(var t=1<arguments.length?at(arguments,!0,!1,1):bt(n),e=-1,r=t.length;++e<r;){var u=t[e];n[u]=st(n[u],1,null,null,n)}return n},y.bindKey=function(n,t){return 2<arguments.length?st(t,19,g(arguments,2),null,n):st(t,3,null,null,n)
},y.chain=function(n){return n=new m(n),n.__chain__=!0,n},y.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},y.compose=function(){for(var n=arguments,t=n.length;t--;)if(!jt(n[t]))throw new fe;return function(){for(var t=arguments,e=n.length;e--;)t=[n[e].apply(this,t)];return t[0]}},y.countBy=ur,y.create=function(n,t){var e=tt(n);return t?Ze(e,t):e},y.createCallback=function(n,t,e){var r=typeof n;if(null==n||"function"==r)return et(n,t,e);if("object"!=r)return function(t){return t[n]
};var u=Ge(n),o=u[0],a=n[o];return 1!=u.length||a!==a||xt(a)?function(t){for(var e=u.length,r=!1;e--&&(r=it(t[u[e]],n[u[e]],null,!0)););return r}:function(n){return n=n[o],a===n&&(0!==a||1/a==1/n)}},y.curry=function(n,t){return t=typeof t=="number"?t:+t||n.length,st(n,4,null,null,null,t)},y.debounce=Ut,y.defaults=nr,y.defer=Vt,y.delay=function(n,t){if(!jt(n))throw new fe;var e=g(arguments,2);return ke(function(){n.apply(v,e)},t)},y.difference=Tt,y.filter=It,y.flatten=function(n,t,e,r){return typeof t!="boolean"&&null!=t&&(r=e,e=typeof t!="function"&&r&&r[t]===n?null:t,t=!1),null!=e&&(n=Bt(n,e,r)),at(n,t)
},y.forEach=Dt,y.forEachRight=Nt,y.forIn=tr,y.forInRight=function(n,t,e){var r=[];tr(n,function(n,t){r.push(t,n)});var u=r.length;for(t=et(t,e,3);u--&&false!==t(r[u--],r[u],n););return n},y.forOwn=er,y.forOwnRight=_t,y.functions=bt,y.groupBy=or,y.indexBy=ar,y.initial=function(n,t,e){var r=0,u=n?n.length:0;if(typeof t!="number"&&null!=t){var o=u;for(t=y.createCallback(t,e,3);o--&&t(n[o],o,n);)r++}else r=null==t||e?1:t||r;return g(n,0,Pe(Be(0,u-r),u))},y.intersection=function(e){for(var r=arguments,u=r.length,a=-1,f=i(),l=-1,c=vt(),g=e?e.length:0,h=[],v=i();++a<u;){var y=r[a];
f[a]=c===n&&(y?y.length:0)>=w&&o(a?r[a]:v)}n:for(;++l<g;){var m=f[0],y=e[l];if(0>(m?t(m,y):c(v,y))){for(a=u,(m||v).push(y);--a;)if(m=f[a],0>(m?t(m,y):c(r[a],y)))continue n;h.push(y)}}for(;u--;)(m=f[u])&&s(m);return p(f),p(v),h},y.invert=wt,y.invoke=function(n,t){var e=g(arguments,2),r=-1,u=typeof t=="function",o=n?n.length:0,a=Zt(typeof o=="number"?o:0);return Dt(n,function(n){a[++r]=(u?t:n[t]).apply(n,e)}),a},y.keys=Ge,y.map=Bt,y.max=Pt,y.memoize=function(n,t){function e(){var r=e.cache,u=t?t.apply(this,arguments):b+arguments[0];
return we.call(r,u)?r[u]:r[u]=n.apply(this,arguments)}if(!jt(n))throw new fe;return e.cache={},e},y.merge=function(n){var t=arguments,e=2;if(!xt(n))return n;if("number"!=typeof t[2]&&(e=t.length),3<e&&"function"==typeof t[e-2])var r=et(t[--e-1],t[e--],2);else 2<e&&"function"==typeof t[e-1]&&(r=t[--e]);for(var t=g(arguments,1,e),u=-1,o=i(),a=i();++u<e;)ft(n,t[u],r,o,a);return p(o),p(a),n},y.min=function(n,t,e){var u=1/0,o=u;if(typeof t!="function"&&e&&e[t]===n&&(t=null),null==t&&Ke(n)){e=-1;for(var a=n.length;++e<a;){var i=n[e];
i<o&&(o=i)}}else t=null==t&&kt(n)?r:y.createCallback(t,e,3),Ye(n,function(n,e,r){e=t(n,e,r),e<u&&(u=e,o=n)});return o},y.omit=function(n,t,e){var r=vt(),u=typeof t=="function",o={};if(u)t=y.createCallback(t,e,3);else var a=at(arguments,!0,!1,1);return tr(n,function(n,e,i){(u?!t(n,e,i):0>r(a,e))&&(o[e]=n)}),o},y.once=function(n){var t,e;if(!jt(n))throw new fe;return function(){return t?e:(t=!0,e=n.apply(this,arguments),n=null,e)}},y.pairs=function(n){for(var t=-1,e=Ge(n),r=e.length,u=Zt(r);++t<r;){var o=e[t];
u[t]=[o,n[o]]}return u},y.partial=function(n){return st(n,16,g(arguments,1))},y.partialRight=function(n){return st(n,32,null,g(arguments,1))},y.pick=function(n,t,e){var r={};if(typeof t!="function")for(var u=-1,o=at(arguments,!0,!1,1),a=xt(n)?o.length:0;++u<a;){var i=o[u];i in n&&(r[i]=n[i])}else t=y.createCallback(t,e,3),tr(n,function(n,e,u){t(n,e,u)&&(r[e]=n)});return r},y.pluck=ir,y.pull=function(n){for(var t=arguments,e=0,r=t.length,u=n?n.length:0;++e<r;)for(var o=-1,a=t[e];++o<u;)n[o]===a&&(Ee.call(n,o--,1),u--);
return n},y.range=function(n,t,e){n=+n||0,e=typeof e=="number"?e:+e||1,null==t&&(t=n,n=0);var r=-1;t=Be(0,ye((t-n)/(e||1)));for(var u=Zt(t);++r<t;)u[r]=n,n+=e;return u},y.reject=function(n,t,e){return t=y.createCallback(t,e,3),It(n,function(n,e,r){return!t(n,e,r)})},y.remove=function(n,t,e){var r=-1,u=n?n.length:0,o=[];for(t=y.createCallback(t,e,3);++r<u;)e=n[r],t(e,r,n)&&(o.push(e),Ee.call(n,r--,1),u--);return o},y.rest=Kt,y.shuffle=$t,y.sortBy=function(n,t,e){var r=-1,o=n?n.length:0,a=Zt(typeof o=="number"?o:0);
for(t=y.createCallback(t,e,3),Dt(n,function(n,e,u){var o=a[++r]=f();o.m=t(n,e,u),o.n=r,o.o=n}),o=a.length,a.sort(u);o--;)n=a[o],a[o]=n.o,s(n);return a},y.tap=function(n,t){return t(n),n},y.throttle=function(n,t,e){var r=!0,u=!0;if(!jt(n))throw new fe;return false===e?r=!1:xt(e)&&(r="leading"in e?e.leading:r,u="trailing"in e?e.trailing:u),V.leading=r,V.maxWait=t,V.trailing=u,Ut(n,t,V)},y.times=function(n,t,e){n=-1<(n=+n)?n:0;var r=-1,u=Zt(n);for(t=et(t,e,1);++r<n;)u[r]=t(r);return u},y.toArray=function(n){return n&&typeof n.length=="number"?ze.unindexedChars&&kt(n)?n.split(""):g(n):Et(n)
},y.transform=function(n,t,e,r){var u=Ke(n);if(null==e)if(u)e=[];else{var o=n&&n.constructor;e=tt(o&&o.prototype)}return t&&(t=et(t,r,4),(u?Ye:er)(n,function(n,r,u){return t(e,n,r,u)})),e},y.union=function(){return ct(at(arguments,!0,!0))},y.uniq=Gt,y.values=Et,y.where=It,y.without=function(n){return Tt(n,g(arguments,1))},y.wrap=function(n,t){return st(t,16,[n])},y.zip=Jt,y.zipObject=Mt,y.collect=Bt,y.drop=Kt,y.each=Dt,y.eachRight=Nt,y.extend=Ze,y.methods=bt,y.object=Mt,y.select=It,y.tail=Kt,y.unique=Gt,y.unzip=Jt,Xt(y),y.clone=function(n,t,e,r){return typeof t!="boolean"&&null!=t&&(r=e,e=t,t=!1),Z(n,t,typeof e=="function"&&et(e,r,1))
},y.cloneDeep=function(n,t,e){return Z(n,!0,typeof t=="function"&&et(t,e,1))},y.contains=Ot,y.escape=function(n){return null==n?"":ie(n).replace(Xe,ht)},y.every=St,y.find=At,y.findIndex=function(n,t,e){var r=-1,u=n?n.length:0;for(t=y.createCallback(t,e,3);++r<u;)if(t(n[r],r,n))return r;return-1},y.findKey=function(n,t,e){var r;return t=y.createCallback(t,e,3),er(n,function(n,e,u){return t(n,e,u)?(r=e,!1):void 0}),r},y.findLast=function(n,t,e){var r;return t=y.createCallback(t,e,3),Nt(n,function(n,e,u){return t(n,e,u)?(r=n,!1):void 0
}),r},y.findLastIndex=function(n,t,e){var r=n?n.length:0;for(t=y.createCallback(t,e,3);r--;)if(t(n[r],r,n))return r;return-1},y.findLastKey=function(n,t,e){var r;return t=y.createCallback(t,e,3),_t(n,function(n,e,u){return t(n,e,u)?(r=e,!1):void 0}),r},y.has=function(n,t){return n?we.call(n,t):!1},y.identity=Qt,y.indexOf=qt,y.isArguments=dt,y.isArray=Ke,y.isBoolean=function(n){return true===n||false===n||n&&typeof n=="object"&&he.call(n)==z||!1},y.isDate=function(n){return n&&typeof n=="object"&&he.call(n)==q||!1
},y.isElement=function(n){return n&&1===n.nodeType||!1},y.isEmpty=function(n){var t=!0;if(!n)return t;var e=he.call(n),r=n.length;return e==T||e==H||(ze.argsClass?e==L:dt(n))||e==J&&typeof r=="number"&&jt(n.splice)?!r:(er(n,function(){return t=!1}),t)},y.isEqual=function(n,t,e,r){return it(n,t,typeof e=="function"&&et(e,r,2))},y.isFinite=function(n){return Ae(n)&&!De(parseFloat(n))},y.isFunction=jt,y.isNaN=function(n){return Ct(n)&&n!=+n},y.isNull=function(n){return null===n},y.isNumber=Ct,y.isObject=xt,y.isPlainObject=rr,y.isRegExp=function(n){return n&&Y[typeof n]&&he.call(n)==M||!1
},y.isString=kt,y.isUndefined=function(n){return typeof n=="undefined"},y.lastIndexOf=function(n,t,e){var r=n?n.length:0;for(typeof e=="number"&&(r=(0>e?Be(0,r+e):Pe(e,r-1))+1);r--;)if(n[r]===t)return r;return-1},y.mixin=Xt,y.noConflict=function(){return e._=ge,this},y.parseInt=fr,y.random=function(n,t,e){var r=null==n,u=null==t;return null==e&&(typeof n=="boolean"&&u?(e=n,n=1):u||typeof t!="boolean"||(e=t,u=!0)),r&&u&&(t=1),n=+n||0,u?(t=n,n=0):t=+t||0,e||n%1||t%1?(e=Fe(),Pe(n+e*(t-n+parseFloat("1e-"+((e+"").length-1))),t)):lt(n,t)
},y.reduce=Rt,y.reduceRight=Ft,y.result=function(n,t){if(n){var e=n[t];return jt(e)?n[t]():e}},y.runInContext=h,y.size=function(n){var t=n?n.length:0;return typeof t=="number"?t:Ge(n).length},y.some=Lt,y.sortedIndex=Wt,y.template=function(n,t,e){var r=y.templateSettings;n=ie(n||""),e=nr({},e,r);var u,o=nr({},e.imports,r.imports),r=Ge(o),o=Et(o),i=0,f=e.interpolate||B,l="__p+='",f=ae((e.escape||B).source+"|"+f.source+"|"+(f===D?S:B).source+"|"+(e.evaluate||B).source+"|$","g");n.replace(f,function(t,e,r,o,f,c){return r||(r=o),l+=n.slice(i,c).replace(R,a),e&&(l+="'+__e("+e+")+'"),f&&(u=!0,l+="';"+f+";\n__p+='"),r&&(l+="'+((__t=("+r+"))==null?'':__t)+'"),i=c+t.length,t
}),l+="';",f=e=e.variable,f||(e="obj",l="with("+e+"){"+l+"}"),l=(u?l.replace(C,""):l).replace(E,"$1").replace(O,"$1;"),l="function("+e+"){"+(f?"":e+"||("+e+"={});")+"var __t,__p='',__e=_.escape"+(u?",__j=Array.prototype.join;function print(){__p+=__j.call(arguments,'')}":";")+l+"return __p}";try{var c=ee(r,"return "+l).apply(v,o)}catch(p){throw p.source=l,p}return t?c(t):(c.source=l,c)},y.unescape=function(n){return null==n?"":ie(n).replace(Qe,mt)},y.uniqueId=function(n){var t=++d;return ie(null==n?"":n)+t
},y.all=St,y.any=Lt,y.detect=At,y.findWhere=At,y.foldl=Rt,y.foldr=Ft,y.include=Ot,y.inject=Rt,er(y,function(n,t){y.prototype[t]||(y.prototype[t]=function(){var t=[this.__wrapped__],e=this.__chain__;return xe.apply(t,arguments),t=n.apply(y,t),e?new m(t,e):t})}),y.first=zt,y.last=function(n,t,e){var r=0,u=n?n.length:0;if(typeof t!="number"&&null!=t){var o=u;for(t=y.createCallback(t,e,3);o--&&t(n[o],o,n);)r++}else if(r=t,null==r||e)return n?n[u-1]:v;return g(n,Be(0,u-r))},y.sample=function(n,t,e){return n&&typeof n.length!="number"?n=Et(n):ze.unindexedChars&&kt(n)&&(n=n.split("")),null==t||e?n?n[lt(0,n.length-1)]:v:(n=$t(n),n.length=Pe(Be(0,t),n.length),n)
},y.take=zt,y.head=zt,er(y,function(n,t){var e="sample"!==t;y.prototype[t]||(y.prototype[t]=function(t,r){var u=this.__chain__,o=n(this.__wrapped__,t,r);return u||null!=t&&(!r||e&&typeof t=="function")?new m(o,u):o})}),y.VERSION="2.2.1",y.prototype.chain=function(){return this.__chain__=!0,this},y.prototype.toString=function(){return ie(this.__wrapped__)},y.prototype.value=Yt,y.prototype.valueOf=Yt,Ye(["join","pop","shift"],function(n){var t=le[n];y.prototype[n]=function(){var n=this.__chain__,e=t.apply(this.__wrapped__,arguments);
return n?new m(e,n):e}}),Ye(["push","reverse","sort","unshift"],function(n){var t=le[n];y.prototype[n]=function(){return t.apply(this.__wrapped__,arguments),this}}),Ye(["concat","slice","splice"],function(n){var t=le[n];y.prototype[n]=function(){return new m(t.apply(this.__wrapped__,arguments),this.__chain__)}}),ze.spliceObjects||Ye(["pop","shift","splice"],function(n){var t=le[n],e="splice"==n;y.prototype[n]=function(){var n=this.__chain__,r=this.__wrapped__,u=t.apply(r,arguments);return 0===r.length&&delete r[0],n||e?new m(u,n):u
}}),y}var v,y=[],m=[],d=0,_={},b=+new Date+"",w=75,j=40,x=" \t\x0B\f\xa0\ufeff\n\r\u2028\u2029\u1680\u180e\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000",C=/\b__p\+='';/g,E=/\b(__p\+=)''\+/g,O=/(__e\(.*?\)|\b__t\))\+'';/g,S=/\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g,I=/\w*$/,A=/^function[ \n\r\t]+\w/,D=/<%=([\s\S]+?)%>/g,N=RegExp("^["+x+"]*0+(?=.$)"),B=/($^)/,P=/\bthis\b/,R=/['\n\r\t\u2028\u2029\\]/g,F="Array Boolean Date Error Function Math Number Object RegExp String _ attachEvent clearTimeout isFinite isNaN parseInt setImmediate setTimeout".split(" "),$="constructor hasOwnProperty isPrototypeOf propertyIsEnumerable toLocaleString toString valueOf".split(" "),L="[object Arguments]",T="[object Array]",z="[object Boolean]",q="[object Date]",K="[object Error]",W="[object Function]",G="[object Number]",J="[object Object]",M="[object RegExp]",H="[object String]",U={};
U[W]=!1,U[L]=U[T]=U[z]=U[q]=U[G]=U[J]=U[M]=U[H]=!0;var V={leading:!1,maxWait:0,trailing:!1},Q={configurable:!1,enumerable:!1,value:null,writable:!1},X={a:"",b:null,c:"",d:"",e:"",v:null,g:"",h:null,support:null,i:"",j:!1},Y={"boolean":!1,"function":!0,object:!0,number:!1,string:!1,undefined:!1},Z={"\\":"\\","'":"'","\n":"n","\r":"r","\t":"t","\u2028":"u2028","\u2029":"u2029"},nt=Y[typeof window]&&window||this,tt=Y[typeof exports]&&exports&&!exports.nodeType&&exports,et=Y[typeof module]&&module&&!module.nodeType&&module,rt=et&&et.exports===tt&&tt,ut=Y[typeof global]&&global;
!ut||ut.global!==ut&&ut.window!==ut||(nt=ut);var ot=h();typeof define=="function"&&typeof define.amd=="object"&&define.amd?(nt._=ot, define(function(){return ot})):tt&&et?rt?(et.exports=ot)._=ot:tt._=ot:nt._=ot}).call(this);

125
dist/lodash.js vendored
View File

@@ -904,6 +904,62 @@
return bind(func, thisArg);
}
/**
* The base implementation of `createWrapper` without `func` type checking
* or support for setting meta data.
*
* @private
* @param {Function|string} func The function or method name to reference.
* @param {number} bitmask The bitmask of method flags to compose.
* @param {Array} [partialArgs] An array of arguments to prepend to those
* provided to the new function.
* @param {Array} [partialRightArgs] An array of arguments to append to those
* provided to the new function.
* @param {*} [thisArg] The `this` binding of `func`.
* @param {number} [arity] The arity of `func`.
* @returns {Function} Returns the new function.
*/
function baseCreateWrapper(func, bitmask, partialArgs, partialRightArgs, thisArg, arity) {
var isBind = bitmask & 1,
isBindKey = bitmask & 2,
isCurry = bitmask & 4,
isCurryBound = bitmask & 8,
isPartial = bitmask & 16,
isPartialRight = bitmask & 32,
key = func;
function bound() {
var thisBinding = isBind ? thisArg : this;
if (isCurry || isPartial || isPartialRight) {
if (isPartial) {
var args = partialArgs.slice();
push.apply(args, arguments);
}
if (isPartialRight || isCurry) {
args || (args = slice(arguments));
if (isPartialRight) {
push.apply(args, partialRightArgs);
}
if (isCurry && args.length < arity) {
bitmask |= 16 & ~32;
return createWrapper(func, (isCurryBound ? bitmask : bitmask & ~3), args, null, thisArg, arity);
}
}
}
args || (args = arguments);
if (isBindKey) {
func = thisBinding[key];
}
if (this instanceof bound) {
thisBinding = baseCreate(func.prototype);
var result = func.apply(thisBinding, args);
return isObject(result) ? result : thisBinding;
}
return func.apply(thisBinding, args);
}
return bound;
}
/**
* The base implementation of `_.flatten` without support for callback
* shorthands or `thisArg` binding.
@@ -1295,16 +1351,15 @@
* provided to the new function.
* @param {*} [thisArg] The `this` binding of `func`.
* @param {number} [arity] The arity of `func`.
* @returns {Function} Returns the new bound function.
* @returns {Function} Returns the new function.
*/
function createBound(func, bitmask, partialArgs, partialRightArgs, thisArg, arity) {
function createWrapper(func, bitmask, partialArgs, partialRightArgs, thisArg, arity) {
var isBind = bitmask & 1,
isBindKey = bitmask & 2,
isCurry = bitmask & 4,
isCurryBound = bitmask & 8,
isPartial = bitmask & 16,
isPartialRight = bitmask & 32,
key = func;
isPartialRight = bitmask & 32;
if (!isBindKey && !isFunction(func)) {
throw new TypeError;
@@ -1343,45 +1398,15 @@
}
// merge flags
bindData[1] |= bitmask;
return createBound.apply(null, bindData);
return createWrapper.apply(null, bindData);
}
// fast path for `_.bind`
if (bitmask == 1 || bitmask === 17) {
var bound = baseBind(func, thisArg, partialArgs);
}
else {
bound = function() {
var thisBinding = isBind ? thisArg : this;
if (isCurry || isPartial || isPartialRight) {
if (isPartial) {
var args = partialArgs.slice();
push.apply(args, arguments);
}
if (isPartialRight || isCurry) {
args || (args = slice(arguments));
if (isPartialRight) {
push.apply(args, partialRightArgs);
}
if (isCurry && args.length < arity) {
bitmask |= 16 & ~32;
return createBound(func, (isCurryBound ? bitmask : bitmask & ~3), args, null, thisArg, arity);
}
}
}
args || (args = arguments);
if (isBindKey) {
func = thisBinding[key];
}
if (this instanceof bound) {
thisBinding = baseCreate(func.prototype);
var result = func.apply(thisBinding, args);
return isObject(result) ? result : thisBinding;
}
return func.apply(thisBinding, args);
};
}
setBindData(bound, [func, bitmask, partialArgs, partialRightArgs, thisArg, arity]);
return bound;
var result = (bitmask == 1 || bitmask === 17)
? baseBind(func, thisArg, partialArgs)
: baseCreateWrapper(func, bitmask, partialArgs, partialRightArgs, thisArg, arity);
setBindData(result, [func, bitmask, partialArgs, partialRightArgs, thisArg, arity]);
return result;
}
/**
@@ -5015,8 +5040,8 @@
*/
function bind(func, thisArg) {
return arguments.length > 2
? createBound(func, 17, slice(arguments, 2), null, thisArg)
: createBound(func, 1, null, null, thisArg);
? createWrapper(func, 17, slice(arguments, 2), null, thisArg)
: createWrapper(func, 1, null, null, thisArg);
}
/**
@@ -5050,7 +5075,7 @@
while (++index < length) {
var key = funcs[index];
object[key] = createBound(object[key], 1, null, null, object);
object[key] = createWrapper(object[key], 1, null, null, object);
}
return object;
}
@@ -5091,8 +5116,8 @@
*/
function bindKey(object, key) {
return arguments.length > 2
? createBound(key, 19, slice(arguments, 2), null, object)
: createBound(key, 3, null, null, object);
? createWrapper(key, 19, slice(arguments, 2), null, object)
: createWrapper(key, 3, null, null, object);
}
/**
@@ -5243,7 +5268,7 @@
*/
function curry(func, arity) {
arity = typeof arity == 'number' ? arity : (+arity || func.length);
return createBound(func, 4, null, null, null, arity);
return createWrapper(func, 4, null, null, null, arity);
}
/**
@@ -5537,7 +5562,7 @@
* // => 'hi fred'
*/
function partial(func) {
return createBound(func, 16, slice(arguments, 1));
return createWrapper(func, 16, slice(arguments, 1));
}
/**
@@ -5568,7 +5593,7 @@
* // => { '_': _, 'jq': $ }
*/
function partialRight(func) {
return createBound(func, 32, null, slice(arguments, 1));
return createWrapper(func, 32, null, slice(arguments, 1));
}
/**
@@ -5644,7 +5669,7 @@
* // => '<p>Fred, Wilma, &amp; Pebbles</p>'
*/
function wrap(value, wrapper) {
return createBound(wrapper, 16, [value]);
return createWrapper(wrapper, 16, [value]);
}
/*--------------------------------------------------------------------------*/

90
dist/lodash.min.js vendored
View File

@@ -5,50 +5,50 @@
*/
;(function(){function n(n,t,e){e=(e||0)-1;for(var r=n?n.length:0;++e<r;)if(n[e]===t)return e;return-1}function t(t,e){var r=typeof e;if(t=t.l,"boolean"==r||null==e)return t[e]?0:-1;"number"!=r&&"string"!=r&&(r="object");var u="number"==r?e:_+e;return t=(t=t[r])&&t[u],"object"==r?t&&-1<n(t,e)?0:-1:t?0:-1}function e(n){var t=this.l,e=typeof n;if("boolean"==e||null==n)t[n]=!0;else{"number"!=e&&"string"!=e&&(e="object");var r="number"==e?n:_+n,t=t[e]||(t[e]={});"object"==e?(t[r]||(t[r]=[])).push(n):t[r]=!0
}}function r(n){return n.charCodeAt(0)}function u(n,t){var e=n.m,r=t.m;if(e!==r){if(e>r||typeof e=="undefined")return 1;if(e<r||typeof r=="undefined")return-1}return n.n-t.n}function o(n){var t=-1,r=n.length,u=n[0],o=n[0|r/2],i=n[r-1];if(u&&typeof u=="object"&&o&&typeof o=="object"&&i&&typeof i=="object")return!1;for(u=f(),u["false"]=u["null"]=u["true"]=u.undefined=!1,o=f(),o.k=n,o.l=u,o.push=e;++t<r;)o.push(n[t]);return o}function i(n){return"\\"+G[n]}function a(){return g.pop()||[]}function f(){return y.pop()||{k:null,l:null,m:null,"false":!1,n:0,"null":!1,number:null,object:null,push:null,string:null,"true":!1,undefined:!1,o:null}
}function l(){}function c(n){n.length=0,g.length<d&&g.push(n)}function p(n){var t=n.l;t&&p(t),n.k=n.l=n.m=n.object=n.number=n.string=n.o=null,y.length<d&&y.push(n)}function s(n,t,e){t||(t=0),typeof e=="undefined"&&(e=n?n.length:0);var r=-1;e=e-t||0;for(var u=Array(0>e?0:e);++r<e;)u[r]=n[t+r];return u}function v(e){function g(n){if(!n||pe.call(n)!=z)return!1;var t=n.valueOf,e=typeof t=="function"&&(e=me(t))&&me(e);return e?n==e||me(n)==e:ht(n)}function y(n,t,e){if(!n||!V[typeof n])return n;t=t&&typeof e=="undefined"?t:ut(t,e,3);
for(var r=-1,u=V[typeof n]&&We(n),o=u?u.length:0;++r<o&&(e=u[r],false!==t(n[e],e,n)););return n}function d(n,t,e){var r;if(!n||!V[typeof n])return n;t=t&&typeof e=="undefined"?t:ut(t,e,3);for(r in n)if(false===t(n[r],r,n))break;return n}function G(n,t,e){var r,u=n,o=u;if(!u)return o;for(var i=arguments,a=0,f=typeof e=="number"?2:i.length;++a<f;)if((u=i[a])&&V[typeof u])for(var l=-1,c=V[typeof u]&&We(u),p=c?c.length:0;++l<p;)r=c[l],"undefined"==typeof o[r]&&(o[r]=u[r]);return o}function J(n,t,e){var r,u=n,o=u;
if(!u)return o;var i=arguments,a=0,f=typeof e=="number"?2:i.length;if(3<f&&"function"==typeof i[f-2])var l=ut(i[--f-1],i[f--],2);else 2<f&&"function"==typeof i[f-1]&&(l=i[--f]);for(;++a<f;)if((u=i[a])&&V[typeof u])for(var c=-1,p=V[typeof u]&&We(u),s=p?p.length:0;++c<s;)r=p[c],o[r]=l?l(o[r],u[r]):u[r];return o}function Q(n){var t,e=[];if(!n||!V[typeof n])return e;for(t in n)_e.call(n,t)&&e.push(t);return e}function Y(n){return n&&typeof n=="object"&&!Be(n)&&_e.call(n,"__wrapped__")?n:new nt(n)}function nt(n,t){this.__chain__=!!t,this.__wrapped__=n
}function tt(n,t,e){function r(){if(e){var u=e.slice();de.apply(u,arguments)}if(this instanceof r){var o=rt(n.prototype),u=n.apply(o,u||arguments);return wt(u)?u:o}return n.apply(t,u||arguments)}return r}function et(n,t,e,r,u){if(e){var o=e(n);if(typeof o!="undefined")return o}if(!wt(n))return n;var i=pe.call(n);if(!L[i])return n;var f=$e[i];switch(i){case T:case B:return new f(+n);case q:case K:return new f(n);case P:return o=f(n.source,O.exec(n)),o.lastIndex=n.lastIndex,o}if(i=Be(n),t){var l=!r;
r||(r=a()),u||(u=a());for(var p=r.length;p--;)if(r[p]==n)return u[p];o=i?f(n.length):{}}else o=i?s(n):J({},n);return i&&(_e.call(n,"index")&&(o.index=n.index),_e.call(n,"input")&&(o.input=n.input)),t?(r.push(n),u.push(o),(i?Et:y)(n,function(n,i){o[i]=et(n,t,e,r,u)}),l&&(c(r),c(u)),o):o}function rt(n){return wt(n)?xe(n):{}}function ut(n,t,e){if(typeof n!="function")return Jt;if(typeof t=="undefined"||!("prototype"in n))return n;var r=n.__bindData__;if(typeof r=="undefined"&&(Fe.funcNames&&(r=!n.name),r=r||!Fe.funcDecomp,!r)){var u=ye.call(n);
Fe.funcNames||(r=!I.test(u)),r||(r=R.test(u),Te(n,r))}if(false===r||true!==r&&1&r[1])return n;switch(e){case 1:return function(e){return n.call(t,e)};case 2:return function(e,r){return n.call(t,e,r)};case 3:return function(e,r,u){return n.call(t,e,r,u)};case 4:return function(e,r,u,o){return n.call(t,e,r,u,o)}}return Vt(n,t)}function ot(n,t,e,r){r=(r||0)-1;for(var u=n?n.length:0,o=[];++r<u;){var i=n[r];if(i&&typeof i=="object"&&typeof i.length=="number"&&(Be(i)||yt(i))){t||(i=ot(i,t,e));var a=-1,f=i.length,l=o.length;
for(o.length+=f;++a<f;)o[l++]=i[a]}else e||o.push(i)}return o}function it(n,t,e,r,u,o){if(e){var i=e(n,t);if(typeof i!="undefined")return!!i}if(n===t)return 0!==n||1/n==1/t;if(n===n&&!(n&&V[typeof n]||t&&V[typeof t]))return!1;if(null==n||null==t)return n===t;var f=pe.call(n),l=pe.call(t);if(f==$&&(f=z),l==$&&(l=z),f!=l)return!1;switch(f){case T:case B:return+n==+t;case q:return n!=+n?t!=+t:0==n?1/n==1/t:n==+t;case P:case K:return n==ie(t)}if(l=f==F,!l){if(_e.call(n,"__wrapped__")||_e.call(t,"__wrapped__"))return it(n.__wrapped__||n,t.__wrapped__||t,e,r,u,o);
if(f!=z)return!1;var f=n.constructor,p=t.constructor;if(f!=p&&!(dt(f)&&f instanceof f&&dt(p)&&p instanceof p)&&"constructor"in n&&"constructor"in t)return!1}for(p=!u,u||(u=a()),o||(o=a()),f=u.length;f--;)if(u[f]==n)return o[f]==t;var s=0,i=!0;if(u.push(n),o.push(t),l){if(f=n.length,s=t.length,i=s==n.length,!i&&!r)return i;for(;s--;)if(l=f,p=t[s],r)for(;l--&&!(i=it(n[l],p,e,r,u,o)););else if(!(i=it(n[s],p,e,r,u,o)))break;return i}return d(t,function(t,a,f){return _e.call(f,a)?(s++,i=_e.call(n,a)&&it(n[a],t,e,r,u,o)):void 0
}),i&&!r&&d(n,function(n,t,e){return _e.call(e,t)?i=-1<--s:void 0}),p&&(c(u),c(o)),i}function at(n,t,e,r,u){(Be(t)?Et:y)(t,function(t,o){var i,a,f=t,l=n[o];if(t&&((a=Be(t))||g(t))){for(f=r.length;f--;)if(i=r[f]==t){l=u[f];break}if(!i){var c;e&&(f=e(l,t),c=typeof f!="undefined")&&(l=f),c||(l=a?Be(l)?l:[]:g(l)?l:{}),r.push(t),u.push(l),c||at(l,t,e,r,u)}}else e&&(f=e(l,t),typeof f=="undefined"&&(f=t)),typeof f!="undefined"&&(l=f);n[o]=l})}function ft(n,t){return n+ge(Ae()*(t-n+1))}function lt(e,r,u){var i=-1,f=vt(),l=e?e.length:0,s=[],v=!r&&l>=b&&f===n,h=u||v?a():s;
if(v){var g=o(h);g?(f=t,h=g):(v=!1,h=u?h:(c(h),s))}for(;++i<l;){var g=e[i],y=u?u(g,i,e):g;(r?!i||h[h.length-1]!==y:0>f(h,y))&&((u||v)&&h.push(y),s.push(g))}return v?(c(h.k),p(h)):u&&c(h),s}function ct(n){return function(t,e,r){var u={};e=Y.createCallback(e,r,3),r=-1;var o=t?t.length:0;if(typeof o=="number")for(;++r<o;){var i=t[r];n(u,i,e(i,r,t),t)}else y(t,function(t,r,o){n(u,t,e(t,r,o),o)});return u}}function pt(n,t,e,r,u,o){var i=1&t,a=2&t,f=4&t,l=8&t,c=16&t,p=32&t,v=n;if(!a&&!dt(n))throw new ae;
c&&!e.length&&(t&=-17,c=e=!1),p&&!r.length&&(t&=-33,p=r=!1);var h=n&&n.__bindData__;if(h&&true!==h)return h=h.slice(),!i||1&h[1]||(h[4]=u),!i&&1&h[1]&&(t|=8),!f||4&h[1]||(h[5]=o),c&&de.apply(h[2]||(h[2]=[]),e),p&&de.apply(h[3]||(h[3]=[]),r),h[1]|=t,pt.apply(null,h);var g=1==t||17===t?tt(n,u,e):function(){var h=i?u:this;if(f||c||p){if(c){var y=e.slice();de.apply(y,arguments)}if((p||f)&&(y||(y=s(arguments)),p&&de.apply(y,r),f&&y.length<o))return t|=16,pt(n,l?t:-4&t,y,null,u,o)}return y||(y=arguments),a&&(n=h[v]),this instanceof g?(h=rt(n.prototype),y=n.apply(h,y),wt(y)?y:h):n.apply(h,y)
};return Te(g,[n,t,e,r,u,o]),g}function st(n){return qe[n]}function vt(){var t=(t=Y.indexOf)===zt?n:t;return t}function ht(n){var t,e;return n&&pe.call(n)==z&&(t=n.constructor,!dt(t)||t instanceof t)?(d(n,function(n,t){e=t}),typeof e=="undefined"||_e.call(n,e)):!1}function gt(n){return ze[n]}function yt(n){return n&&typeof n=="object"&&typeof n.length=="number"&&pe.call(n)==$||!1}function mt(n,t,e){var r=We(n),u=r.length;for(t=ut(t,e,3);u--&&(e=r[u],false!==t(n[e],e,n)););return n}function _t(n){var t=[];
return d(n,function(n,e){dt(n)&&t.push(e)}),t.sort()}function bt(n){for(var t=-1,e=We(n),r=e.length,u={};++t<r;){var o=e[t];u[n[o]]=o}return u}function dt(n){return typeof n=="function"}function wt(n){return!(!n||!V[typeof n])}function jt(n){return typeof n=="number"||n&&typeof n=="object"&&pe.call(n)==q||!1}function kt(n){return typeof n=="string"||n&&typeof n=="object"&&pe.call(n)==K||!1}function xt(n){for(var t=-1,e=We(n),r=e.length,u=Yt(r);++t<r;)u[t]=n[e[t]];return u}function Ct(n,t,e){var r=-1,u=vt(),o=n?n.length:0,i=!1;
return e=(0>e?Ee(0,o+e):e)||0,Be(n)?i=-1<u(n,t,e):typeof o=="number"?i=-1<(kt(n)?n.indexOf(t,e):u(n,t,e)):y(n,function(n){return++r<e?void 0:!(i=n===t)}),i}function Ot(n,t,e){var r=!0;t=Y.createCallback(t,e,3),e=-1;var u=n?n.length:0;if(typeof u=="number")for(;++e<u&&(r=!!t(n[e],e,n)););else y(n,function(n,e,u){return r=!!t(n,e,u)});return r}function It(n,t,e){var r=[];t=Y.createCallback(t,e,3),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 y(n,function(n,e,u){t(n,e,u)&&r.push(n)
});return r}function Nt(n,t,e){t=Y.createCallback(t,e,3),e=-1;var r=n?n.length:0;if(typeof r!="number"){var u;return y(n,function(n,e,r){return t(n,e,r)?(u=n,!1):void 0}),u}for(;++e<r;){var o=n[e];if(t(o,e,n))return o}}function Et(n,t,e){var r=-1,u=n?n.length:0;if(t=t&&typeof e=="undefined"?t:ut(t,e,3),typeof u=="number")for(;++r<u&&false!==t(n[r],r,n););else y(n,t);return n}function St(n,t,e){var r=n?n.length:0;if(t=t&&typeof e=="undefined"?t:ut(t,e,3),typeof r=="number")for(;r--&&false!==t(n[r],r,n););else{var u=We(n),r=u.length;
y(n,function(n,e,o){return e=u?u[--r]:--r,t(o[e],e,o)})}return n}function Rt(n,t,e){var r=-1,u=n?n.length:0;if(t=Y.createCallback(t,e,3),typeof u=="number")for(var o=Yt(u);++r<u;)o[r]=t(n[r],r,n);else o=[],y(n,function(n,e,u){o[++r]=t(n,e,u)});return o}function At(n,t,e){var u=-1/0,o=u;if(typeof t!="function"&&e&&e[t]===n&&(t=null),null==t&&Be(n)){e=-1;for(var i=n.length;++e<i;){var a=n[e];a>o&&(o=a)}}else t=null==t&&kt(n)?r:Y.createCallback(t,e,3),Et(n,function(n,e,r){e=t(n,e,r),e>u&&(u=e,o=n)});
return o}function Dt(n,t){var e=-1,r=n?n.length:0;if(typeof r=="number")for(var u=Yt(r);++e<r;)u[e]=n[e][t];return u||Rt(n,t)}function $t(n,t,e,r){if(!n)return e;var u=3>arguments.length;t=ut(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 y(n,function(n,r,o){e=u?(u=!1,n):t(e,n,r,o)});return e}function Ft(n,t,e,r){var u=3>arguments.length;return t=ut(t,r,4),St(n,function(n,r,o){e=u?(u=!1,n):t(e,n,r,o)}),e}function Tt(n){var t=-1,e=n?n.length:0,r=Yt(typeof e=="number"?e:0);
return Et(n,function(n){var e=ft(0,++t);r[t]=r[e],r[e]=n}),r}function Bt(n,t,e){var r;t=Y.createCallback(t,e,3),e=-1;var u=n?n.length:0;if(typeof u=="number")for(;++e<u&&!(r=t(n[e],e,n)););else y(n,function(n,e,u){return!(r=t(n,e,u))});return!!r}function Wt(e){var r=-1,u=vt(),i=e?e.length:0,a=ot(arguments,!0,!0,1),f=[],l=i>=b&&u===n;if(l){var c=o(a);c?(u=t,a=c):l=!1}for(;++r<i;)c=e[r],0>u(a,c)&&f.push(c);return l&&p(a),f}function qt(n,t,e){var r=0,u=n?n.length:0;if(typeof t!="number"&&null!=t){var o=-1;
for(t=Y.createCallback(t,e,3);++o<u&&t(n[o],o,n);)r++}else if(r=t,null==r||e)return n?n[0]:h;return s(n,0,Se(Ee(0,r),u))}function zt(t,e,r){if(typeof r=="number"){var u=t?t.length:0;r=0>r?Ee(0,u+r):r||0}else if(r)return r=Kt(t,e),t[r]===e?r:-1;return n(t,e,r)}function Pt(n,t,e){if(typeof t!="number"&&null!=t){var r=0,u=-1,o=n?n.length:0;for(t=Y.createCallback(t,e,3);++u<o&&t(n[u],u,n);)r++}else r=null==t||e?1:Ee(0,t);return s(n,r)}function Kt(n,t,e,r){var u=0,o=n?n.length:u;for(e=e?Y.createCallback(e,r,1):Jt,t=e(t);u<o;)r=u+o>>>1,e(n[r])<t?u=r+1:o=r;
return u}function Lt(n,t,e,r){return typeof t!="boolean"&&null!=t&&(r=e,e=typeof t!="function"&&r&&r[t]===n?null:t,t=!1),null!=e&&(e=Y.createCallback(e,r,3)),lt(n,t,e)}function Mt(){for(var n=1<arguments.length?arguments:arguments[0],t=-1,e=n?At(Dt(n,"length")):0,r=Yt(0>e?0:e);++t<e;)r[t]=Dt(n,t);return r}function Ut(n,t){for(var e=-1,r=n?n.length:0,u={};++e<r;){var o=n[e];t?u[o]=t[e]:o&&(u[o[0]]=o[1])}return u}function Vt(n,t){return 2<arguments.length?pt(n,17,s(arguments,2),null,t):pt(n,1,null,null,t)
}function Gt(n,t,e){function r(){c&&he(c),i=c=p=h,(g||v!==t)&&(s=be(),a=n.apply(l,o))}function u(){var e=t-(be()-f);0<e?c=we(u,e):(i&&he(i),e=p,i=c=p=h,e&&(s=be(),a=n.apply(l,o)))}var o,i,a,f,l,c,p,s=0,v=!1,g=!0;if(!dt(n))throw new ae;if(t=Ee(0,t)||0,true===e)var y=!0,g=!1;else wt(e)&&(y=e.leading,v="maxWait"in e&&(Ee(t,e.maxWait)||0),g="trailing"in e?e.trailing:g);return function(){if(o=arguments,f=be(),l=this,p=g&&(c||!y),false===v)var e=y&&!c;else{i||y||(s=f);var h=v-(f-s);0<h?i||(i=we(r,h)):(i&&(i=he(i)),s=f,a=n.apply(l,o))
}return c||t===v||(c=we(u,t)),e&&(a=n.apply(l,o)),a}}function Ht(n){if(!dt(n))throw new ae;var t=s(arguments,1);return we(function(){n.apply(h,t)},1)}function Jt(n){return n}function Qt(n,t){var e=n,r=!t||dt(e);t||(e=nt,t=n,n=Y),Et(_t(t),function(u){var o=n[u]=t[u];r&&(e.prototype[u]=function(){var t=this.__wrapped__,r=[t];return de.apply(r,arguments),r=o.apply(n,r),t&&typeof t=="object"&&t===r?this:(r=new e(r),r.__chain__=this.__chain__,r)})})}function Xt(){return this.__wrapped__}e=e?Z.defaults(H.Object(),e,Z.pick(H,D)):H;
var Yt=e.Array,Zt=e.Boolean,ne=e.Date,te=e.Function,ee=e.Math,re=e.Number,ue=e.Object,oe=e.RegExp,ie=e.String,ae=e.TypeError,fe=[],le=ue.prototype,ce=e._,pe=le.toString,se=oe("^"+ie(pe).replace(/[.*+?^${}()|[\]\\]/g,"\\$&").replace(/toString| for [^\]]+/g,".*?")+"$"),ve=ee.ceil,he=e.clearTimeout,ge=ee.floor,ye=te.prototype.toString,me=se.test(me=ue.getPrototypeOf)&&me,_e=le.hasOwnProperty,be=se.test(be=ne.now)&&be||function(){return+new ne},de=fe.push,we=e.setTimeout,je=fe.splice,ke=function(){try{var n={},t=se.test(t=ue.defineProperty)&&t,e=t(n,n,n)&&t
}catch(r){}return e}(),xe=se.test(xe=ue.create)&&xe,Ce=se.test(Ce=Yt.isArray)&&Ce,Oe=e.isFinite,Ie=e.isNaN,Ne=se.test(Ne=ue.keys)&&Ne,Ee=ee.max,Se=ee.min,Re=e.parseInt,Ae=ee.random,De=typeof(De=xe&&"function"==!/\n/.test(xe)&&!se.test(e.attachEvent)&&X&&e.setImmediate)&&De,$e={};$e[F]=Yt,$e[T]=Zt,$e[B]=ne,$e[W]=te,$e[z]=ue,$e[q]=re,$e[P]=oe,$e[K]=ie,nt.prototype=Y.prototype;var Fe=Y.support={};Fe.funcDecomp=!se.test(e.a)&&R.test(v),Fe.funcNames=typeof te.name=="string",Y.templateSettings={escape:/<%-([\s\S]+?)%>/g,evaluate:/<%([\s\S]+?)%>/g,interpolate:N,variable:"",imports:{_:Y}},xe||(rt=function(n){if(wt(n)){l.prototype=n;
var t=new l;l.prototype=null}return t||{}});var Te=ke?function(n,t){U.value=t,ke(n,"__bindData__",U)}:l,Be=Ce||function(n){return n&&typeof n=="object"&&typeof n.length=="number"&&pe.call(n)==F||!1},We=Ne?function(n){return wt(n)?Ne(n):[]}:Q,qe={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;"},ze=bt(qe),Pe=oe("("+We(ze).join("|")+")","g"),Ke=oe("["+We(qe).join("")+"]","g"),Le=ct(function(n,t,e){_e.call(n,e)?n[e]++:n[e]=1}),Me=ct(function(n,t,e){(_e.call(n,e)?n[e]:n[e]=[]).push(t)}),Ue=ct(function(n,t,e){n[e]=t
});De&&(Ht=function(n){if(!dt(n))throw new ae;return De.apply(e,arguments)});var Ve=8==Re(w+"08")?Re:function(n,t){return Re(kt(n)?n.replace(E,""):n,t||0)};return Y.after=function(n,t){if(!dt(t))throw new ae;return function(){return 1>--n?t.apply(this,arguments):void 0}},Y.assign=J,Y.at=function(n){for(var t=arguments,e=-1,r=ot(t,!0,!1,1),t=t[2]&&t[2][t[1]]===n?1:r.length,u=Yt(t);++e<t;)u[e]=n[r[e]];return u},Y.bind=Vt,Y.bindAll=function(n){for(var t=1<arguments.length?ot(arguments,!0,!1,1):_t(n),e=-1,r=t.length;++e<r;){var u=t[e];
n[u]=pt(n[u],1,null,null,n)}return n},Y.bindKey=function(n,t){return 2<arguments.length?pt(t,19,s(arguments,2),null,n):pt(t,3,null,null,n)},Y.chain=function(n){return n=new nt(n),n.__chain__=!0,n},Y.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},Y.compose=function(){for(var n=arguments,t=n.length;t--;)if(!dt(n[t]))throw new ae;return function(){for(var t=arguments,e=n.length;e--;)t=[n[e].apply(this,t)];return t[0]}},Y.countBy=Le,Y.create=function(n,t){var e=rt(n);
return t?J(e,t):e},Y.createCallback=function(n,t,e){var r=typeof n;if(null==n||"function"==r)return ut(n,t,e);if("object"!=r)return function(t){return t[n]};var u=We(n),o=u[0],i=n[o];return 1!=u.length||i!==i||wt(i)?function(t){for(var e=u.length,r=!1;e--&&(r=it(t[u[e]],n[u[e]],null,!0)););return r}:function(n){return n=n[o],i===n&&(0!==i||1/i==1/n)}},Y.curry=function(n,t){return t=typeof t=="number"?t:+t||n.length,pt(n,4,null,null,null,t)},Y.debounce=Gt,Y.defaults=G,Y.defer=Ht,Y.delay=function(n,t){if(!dt(n))throw new ae;
var e=s(arguments,2);return we(function(){n.apply(h,e)},t)},Y.difference=Wt,Y.filter=It,Y.flatten=function(n,t,e,r){return typeof t!="boolean"&&null!=t&&(r=e,e=typeof t!="function"&&r&&r[t]===n?null:t,t=!1),null!=e&&(n=Rt(n,e,r)),ot(n,t)},Y.forEach=Et,Y.forEachRight=St,Y.forIn=d,Y.forInRight=function(n,t,e){var r=[];d(n,function(n,t){r.push(t,n)});var u=r.length;for(t=ut(t,e,3);u--&&false!==t(r[u--],r[u],n););return n},Y.forOwn=y,Y.forOwnRight=mt,Y.functions=_t,Y.groupBy=Me,Y.indexBy=Ue,Y.initial=function(n,t,e){var r=0,u=n?n.length:0;
if(typeof t!="number"&&null!=t){var o=u;for(t=Y.createCallback(t,e,3);o--&&t(n[o],o,n);)r++}else r=null==t||e?1:t||r;return s(n,0,Se(Ee(0,u-r),u))},Y.intersection=function(e){for(var r=arguments,u=r.length,i=-1,f=a(),l=-1,s=vt(),v=e?e.length:0,h=[],g=a();++i<u;){var y=r[i];f[i]=s===n&&(y?y.length:0)>=b&&o(i?r[i]:g)}n:for(;++l<v;){var m=f[0],y=e[l];if(0>(m?t(m,y):s(g,y))){for(i=u,(m||g).push(y);--i;)if(m=f[i],0>(m?t(m,y):s(r[i],y)))continue n;h.push(y)}}for(;u--;)(m=f[u])&&p(m);return c(f),c(g),h},Y.invert=bt,Y.invoke=function(n,t){var e=s(arguments,2),r=-1,u=typeof t=="function",o=n?n.length:0,i=Yt(typeof o=="number"?o:0);
return Et(n,function(n){i[++r]=(u?t:n[t]).apply(n,e)}),i},Y.keys=We,Y.map=Rt,Y.max=At,Y.memoize=function(n,t){function e(){var r=e.cache,u=t?t.apply(this,arguments):_+arguments[0];return _e.call(r,u)?r[u]:r[u]=n.apply(this,arguments)}if(!dt(n))throw new ae;return e.cache={},e},Y.merge=function(n){var t=arguments,e=2;if(!wt(n))return n;if("number"!=typeof t[2]&&(e=t.length),3<e&&"function"==typeof t[e-2])var r=ut(t[--e-1],t[e--],2);else 2<e&&"function"==typeof t[e-1]&&(r=t[--e]);for(var t=s(arguments,1,e),u=-1,o=a(),i=a();++u<e;)at(n,t[u],r,o,i);
return c(o),c(i),n},Y.min=function(n,t,e){var u=1/0,o=u;if(typeof t!="function"&&e&&e[t]===n&&(t=null),null==t&&Be(n)){e=-1;for(var i=n.length;++e<i;){var a=n[e];a<o&&(o=a)}}else t=null==t&&kt(n)?r:Y.createCallback(t,e,3),Et(n,function(n,e,r){e=t(n,e,r),e<u&&(u=e,o=n)});return o},Y.omit=function(n,t,e){var r=vt(),u=typeof t=="function",o={};if(u)t=Y.createCallback(t,e,3);else var i=ot(arguments,!0,!1,1);return d(n,function(n,e,a){(u?!t(n,e,a):0>r(i,e))&&(o[e]=n)}),o},Y.once=function(n){var t,e;if(!dt(n))throw new ae;
return function(){return t?e:(t=!0,e=n.apply(this,arguments),n=null,e)}},Y.pairs=function(n){for(var t=-1,e=We(n),r=e.length,u=Yt(r);++t<r;){var o=e[t];u[t]=[o,n[o]]}return u},Y.partial=function(n){return pt(n,16,s(arguments,1))},Y.partialRight=function(n){return pt(n,32,null,s(arguments,1))},Y.pick=function(n,t,e){var r={};if(typeof t!="function")for(var u=-1,o=ot(arguments,!0,!1,1),i=wt(n)?o.length:0;++u<i;){var a=o[u];a in n&&(r[a]=n[a])}else t=Y.createCallback(t,e,3),d(n,function(n,e,u){t(n,e,u)&&(r[e]=n)
});return r},Y.pluck=Dt,Y.pull=function(n){for(var t=arguments,e=0,r=t.length,u=n?n.length:0;++e<r;)for(var o=-1,i=t[e];++o<u;)n[o]===i&&(je.call(n,o--,1),u--);return n},Y.range=function(n,t,e){n=+n||0,e=typeof e=="number"?e:+e||1,null==t&&(t=n,n=0);var r=-1;t=Ee(0,ve((t-n)/(e||1)));for(var u=Yt(t);++r<t;)u[r]=n,n+=e;return u},Y.reject=function(n,t,e){return t=Y.createCallback(t,e,3),It(n,function(n,e,r){return!t(n,e,r)})},Y.remove=function(n,t,e){var r=-1,u=n?n.length:0,o=[];for(t=Y.createCallback(t,e,3);++r<u;)e=n[r],t(e,r,n)&&(o.push(e),je.call(n,r--,1),u--);
return o},Y.rest=Pt,Y.shuffle=Tt,Y.sortBy=function(n,t,e){var r=-1,o=n?n.length:0,i=Yt(typeof o=="number"?o:0);for(t=Y.createCallback(t,e,3),Et(n,function(n,e,u){var o=i[++r]=f();o.m=t(n,e,u),o.n=r,o.o=n}),o=i.length,i.sort(u);o--;)n=i[o],i[o]=n.o,p(n);return i},Y.tap=function(n,t){return t(n),n},Y.throttle=function(n,t,e){var r=!0,u=!0;if(!dt(n))throw new ae;return false===e?r=!1:wt(e)&&(r="leading"in e?e.leading:r,u="trailing"in e?e.trailing:u),M.leading=r,M.maxWait=t,M.trailing=u,Gt(n,t,M)},Y.times=function(n,t,e){n=-1<(n=+n)?n:0;
var r=-1,u=Yt(n);for(t=ut(t,e,1);++r<n;)u[r]=t(r);return u},Y.toArray=function(n){return n&&typeof n.length=="number"?s(n):xt(n)},Y.transform=function(n,t,e,r){var u=Be(n);if(null==e)if(u)e=[];else{var o=n&&n.constructor;e=rt(o&&o.prototype)}return t&&(t=ut(t,r,4),(u?Et:y)(n,function(n,r,u){return t(e,n,r,u)})),e},Y.union=function(){return lt(ot(arguments,!0,!0))},Y.uniq=Lt,Y.values=xt,Y.where=It,Y.without=function(n){return Wt(n,s(arguments,1))},Y.wrap=function(n,t){return pt(t,16,[n])},Y.zip=Mt,Y.zipObject=Ut,Y.collect=Rt,Y.drop=Pt,Y.each=Et,Y.eachRight=St,Y.extend=J,Y.methods=_t,Y.object=Ut,Y.select=It,Y.tail=Pt,Y.unique=Lt,Y.unzip=Mt,Qt(Y),Y.clone=function(n,t,e,r){return typeof t!="boolean"&&null!=t&&(r=e,e=t,t=!1),et(n,t,typeof e=="function"&&ut(e,r,1))
},Y.cloneDeep=function(n,t,e){return et(n,!0,typeof t=="function"&&ut(t,e,1))},Y.contains=Ct,Y.escape=function(n){return null==n?"":ie(n).replace(Ke,st)},Y.every=Ot,Y.find=Nt,Y.findIndex=function(n,t,e){var r=-1,u=n?n.length:0;for(t=Y.createCallback(t,e,3);++r<u;)if(t(n[r],r,n))return r;return-1},Y.findKey=function(n,t,e){var r;return t=Y.createCallback(t,e,3),y(n,function(n,e,u){return t(n,e,u)?(r=e,!1):void 0}),r},Y.findLast=function(n,t,e){var r;return t=Y.createCallback(t,e,3),St(n,function(n,e,u){return t(n,e,u)?(r=n,!1):void 0
}),r},Y.findLastIndex=function(n,t,e){var r=n?n.length:0;for(t=Y.createCallback(t,e,3);r--;)if(t(n[r],r,n))return r;return-1},Y.findLastKey=function(n,t,e){var r;return t=Y.createCallback(t,e,3),mt(n,function(n,e,u){return t(n,e,u)?(r=e,!1):void 0}),r},Y.has=function(n,t){return n?_e.call(n,t):!1},Y.identity=Jt,Y.indexOf=zt,Y.isArguments=yt,Y.isArray=Be,Y.isBoolean=function(n){return true===n||false===n||n&&typeof n=="object"&&pe.call(n)==T||!1},Y.isDate=function(n){return n&&typeof n=="object"&&pe.call(n)==B||!1
},Y.isElement=function(n){return n&&1===n.nodeType||!1},Y.isEmpty=function(n){var t=!0;if(!n)return t;var e=pe.call(n),r=n.length;return e==F||e==K||e==$||e==z&&typeof r=="number"&&dt(n.splice)?!r:(y(n,function(){return t=!1}),t)},Y.isEqual=function(n,t,e,r){return it(n,t,typeof e=="function"&&ut(e,r,2))},Y.isFinite=function(n){return Oe(n)&&!Ie(parseFloat(n))},Y.isFunction=dt,Y.isNaN=function(n){return jt(n)&&n!=+n},Y.isNull=function(n){return null===n},Y.isNumber=jt,Y.isObject=wt,Y.isPlainObject=g,Y.isRegExp=function(n){return n&&typeof n=="object"&&pe.call(n)==P||!1
},Y.isString=kt,Y.isUndefined=function(n){return typeof n=="undefined"},Y.lastIndexOf=function(n,t,e){var r=n?n.length:0;for(typeof e=="number"&&(r=(0>e?Ee(0,r+e):Se(e,r-1))+1);r--;)if(n[r]===t)return r;return-1},Y.mixin=Qt,Y.noConflict=function(){return e._=ce,this},Y.parseInt=Ve,Y.random=function(n,t,e){var r=null==n,u=null==t;return null==e&&(typeof n=="boolean"&&u?(e=n,n=1):u||typeof t!="boolean"||(e=t,u=!0)),r&&u&&(t=1),n=+n||0,u?(t=n,n=0):t=+t||0,e||n%1||t%1?(e=Ae(),Se(n+e*(t-n+parseFloat("1e-"+((e+"").length-1))),t)):ft(n,t)
},Y.reduce=$t,Y.reduceRight=Ft,Y.result=function(n,t){if(n){var e=n[t];return dt(e)?n[t]():e}},Y.runInContext=v,Y.size=function(n){var t=n?n.length:0;return typeof t=="number"?t:We(n).length},Y.some=Bt,Y.sortedIndex=Kt,Y.template=function(n,t,e){var r=Y.templateSettings;n=ie(n||""),e=G({},e,r);var u,o=G({},e.imports,r.imports),r=We(o),o=xt(o),a=0,f=e.interpolate||S,l="__p+='",f=oe((e.escape||S).source+"|"+f.source+"|"+(f===N?C:S).source+"|"+(e.evaluate||S).source+"|$","g");n.replace(f,function(t,e,r,o,f,c){return r||(r=o),l+=n.slice(a,c).replace(A,i),e&&(l+="'+__e("+e+")+'"),f&&(u=!0,l+="';"+f+";\n__p+='"),r&&(l+="'+((__t=("+r+"))==null?'':__t)+'"),a=c+t.length,t
}),l+="';",f=e=e.variable,f||(e="obj",l="with("+e+"){"+l+"}"),l=(u?l.replace(j,""):l).replace(k,"$1").replace(x,"$1;"),l="function("+e+"){"+(f?"":e+"||("+e+"={});")+"var __t,__p='',__e=_.escape"+(u?",__j=Array.prototype.join;function print(){__p+=__j.call(arguments,'')}":";")+l+"return __p}";try{var c=te(r,"return "+l).apply(h,o)}catch(p){throw p.source=l,p}return t?c(t):(c.source=l,c)},Y.unescape=function(n){return null==n?"":ie(n).replace(Pe,gt)},Y.uniqueId=function(n){var t=++m;return ie(null==n?"":n)+t
},Y.all=Ot,Y.any=Bt,Y.detect=Nt,Y.findWhere=Nt,Y.foldl=$t,Y.foldr=Ft,Y.include=Ct,Y.inject=$t,y(Y,function(n,t){Y.prototype[t]||(Y.prototype[t]=function(){var t=[this.__wrapped__],e=this.__chain__;return de.apply(t,arguments),t=n.apply(Y,t),e?new nt(t,e):t})}),Y.first=qt,Y.last=function(n,t,e){var r=0,u=n?n.length:0;if(typeof t!="number"&&null!=t){var o=u;for(t=Y.createCallback(t,e,3);o--&&t(n[o],o,n);)r++}else if(r=t,null==r||e)return n?n[u-1]:h;return s(n,Ee(0,u-r))},Y.sample=function(n,t,e){return n&&typeof n.length!="number"&&(n=xt(n)),null==t||e?n?n[ft(0,n.length-1)]:h:(n=Tt(n),n.length=Se(Ee(0,t),n.length),n)
},Y.take=qt,Y.head=qt,y(Y,function(n,t){var e="sample"!==t;Y.prototype[t]||(Y.prototype[t]=function(t,r){var u=this.__chain__,o=n(this.__wrapped__,t,r);return u||null!=t&&(!r||e&&typeof t=="function")?new nt(o,u):o})}),Y.VERSION="2.2.1",Y.prototype.chain=function(){return this.__chain__=!0,this},Y.prototype.toString=function(){return ie(this.__wrapped__)},Y.prototype.value=Xt,Y.prototype.valueOf=Xt,Et(["join","pop","shift"],function(n){var t=fe[n];Y.prototype[n]=function(){var n=this.__chain__,e=t.apply(this.__wrapped__,arguments);
return n?new nt(e,n):e}}),Et(["push","reverse","sort","unshift"],function(n){var t=fe[n];Y.prototype[n]=function(){return t.apply(this.__wrapped__,arguments),this}}),Et(["concat","slice","splice"],function(n){var t=fe[n];Y.prototype[n]=function(){return new nt(t.apply(this.__wrapped__,arguments),this.__chain__)}}),Y}var h,g=[],y=[],m=0,_=+new Date+"",b=75,d=40,w=" \t\x0B\f\xa0\ufeff\n\r\u2028\u2029\u1680\u180e\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000",j=/\b__p\+='';/g,k=/\b(__p\+=)''\+/g,x=/(__e\(.*?\)|\b__t\))\+'';/g,C=/\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g,O=/\w*$/,I=/^function[ \n\r\t]+\w/,N=/<%=([\s\S]+?)%>/g,E=RegExp("^["+w+"]*0+(?=.$)"),S=/($^)/,R=/\bthis\b/,A=/['\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]",F="[object Array]",T="[object Boolean]",B="[object Date]",W="[object Function]",q="[object Number]",z="[object Object]",P="[object RegExp]",K="[object String]",L={};
}function l(){}function c(n){n.length=0,g.length<d&&g.push(n)}function p(n){var t=n.l;t&&p(t),n.k=n.l=n.m=n.object=n.number=n.string=n.o=null,y.length<d&&y.push(n)}function s(n,t,e){t||(t=0),typeof e=="undefined"&&(e=n?n.length:0);var r=-1;e=e-t||0;for(var u=Array(0>e?0:e);++r<e;)u[r]=n[t+r];return u}function v(e){function g(n){if(!n||se.call(n)!=z)return!1;var t=n.valueOf,e=typeof t=="function"&&(e=_e(t))&&_e(e);return e?n==e||_e(n)==e:gt(n)}function y(n,t,e){if(!n||!V[typeof n])return n;t=t&&typeof e=="undefined"?t:ut(t,e,3);
for(var r=-1,u=V[typeof n]&&qe(n),o=u?u.length:0;++r<o&&(e=u[r],false!==t(n[e],e,n)););return n}function d(n,t,e){var r;if(!n||!V[typeof n])return n;t=t&&typeof e=="undefined"?t:ut(t,e,3);for(r in n)if(false===t(n[r],r,n))break;return n}function G(n,t,e){var r,u=n,o=u;if(!u)return o;for(var i=arguments,a=0,f=typeof e=="number"?2:i.length;++a<f;)if((u=i[a])&&V[typeof u])for(var l=-1,c=V[typeof u]&&qe(u),p=c?c.length:0;++l<p;)r=c[l],"undefined"==typeof o[r]&&(o[r]=u[r]);return o}function J(n,t,e){var r,u=n,o=u;
if(!u)return o;var i=arguments,a=0,f=typeof e=="number"?2:i.length;if(3<f&&"function"==typeof i[f-2])var l=ut(i[--f-1],i[f--],2);else 2<f&&"function"==typeof i[f-1]&&(l=i[--f]);for(;++a<f;)if((u=i[a])&&V[typeof u])for(var c=-1,p=V[typeof u]&&qe(u),s=p?p.length:0;++c<s;)r=p[c],o[r]=l?l(o[r],u[r]):u[r];return o}function Q(n){var t,e=[];if(!n||!V[typeof n])return e;for(t in n)be.call(n,t)&&e.push(t);return e}function Y(n){return n&&typeof n=="object"&&!We(n)&&be.call(n,"__wrapped__")?n:new nt(n)}function nt(n,t){this.__chain__=!!t,this.__wrapped__=n
}function tt(n,t,e){function r(){if(e){var u=e.slice();we.apply(u,arguments)}if(this instanceof r){var o=rt(n.prototype),u=n.apply(o,u||arguments);return jt(u)?u:o}return n.apply(t,u||arguments)}return r}function et(n,t,e,r,u){if(e){var o=e(n);if(typeof o!="undefined")return o}if(!jt(n))return n;var i=se.call(n);if(!L[i])return n;var f=Fe[i];switch(i){case T:case B:return new f(+n);case q:case K:return new f(n);case P:return o=f(n.source,O.exec(n)),o.lastIndex=n.lastIndex,o}if(i=We(n),t){var l=!r;
r||(r=a()),u||(u=a());for(var p=r.length;p--;)if(r[p]==n)return u[p];o=i?f(n.length):{}}else o=i?s(n):J({},n);return i&&(be.call(n,"index")&&(o.index=n.index),be.call(n,"input")&&(o.input=n.input)),t?(r.push(n),u.push(o),(i?St:y)(n,function(n,i){o[i]=et(n,t,e,r,u)}),l&&(c(r),c(u)),o):o}function rt(n){return jt(n)?Ce(n):{}}function ut(n,t,e){if(typeof n!="function")return Qt;if(typeof t=="undefined"||!("prototype"in n))return n;var r=n.__bindData__;if(typeof r=="undefined"&&(Te.funcNames&&(r=!n.name),r=r||!Te.funcDecomp,!r)){var u=me.call(n);
Te.funcNames||(r=!I.test(u)),r||(r=R.test(u),Be(n,r))}if(false===r||true!==r&&1&r[1])return n;switch(e){case 1:return function(e){return n.call(t,e)};case 2:return function(e,r){return n.call(t,e,r)};case 3:return function(e,r,u){return n.call(t,e,r,u)};case 4:return function(e,r,u,o){return n.call(t,e,r,u,o)}}return Gt(n,t)}function ot(n,t,e,r,u,o){function i(){var g=a?u:this;if(l||p||v){if(p){var y=e.slice();we.apply(y,arguments)}if((v||l)&&(y||(y=s(arguments)),v&&we.apply(y,r),l&&y.length<o))return t|=16,st(n,c?t:-4&t,y,null,u,o)
}return y||(y=arguments),f&&(n=g[h]),this instanceof i?(g=rt(n.prototype),y=n.apply(g,y),jt(y)?y:g):n.apply(g,y)}var a=1&t,f=2&t,l=4&t,c=8&t,p=16&t,v=32&t,h=n;return i}function it(n,t,e,r){r=(r||0)-1;for(var u=n?n.length:0,o=[];++r<u;){var i=n[r];if(i&&typeof i=="object"&&typeof i.length=="number"&&(We(i)||mt(i))){t||(i=it(i,t,e));var a=-1,f=i.length,l=o.length;for(o.length+=f;++a<f;)o[l++]=i[a]}else e||o.push(i)}return o}function at(n,t,e,r,u,o){if(e){var i=e(n,t);if(typeof i!="undefined")return!!i
}if(n===t)return 0!==n||1/n==1/t;if(n===n&&!(n&&V[typeof n]||t&&V[typeof t]))return!1;if(null==n||null==t)return n===t;var f=se.call(n),l=se.call(t);if(f==$&&(f=z),l==$&&(l=z),f!=l)return!1;switch(f){case T:case B:return+n==+t;case q:return n!=+n?t!=+t:0==n?1/n==1/t:n==+t;case P:case K:return n==ae(t)}if(l=f==F,!l){if(be.call(n,"__wrapped__")||be.call(t,"__wrapped__"))return at(n.__wrapped__||n,t.__wrapped__||t,e,r,u,o);if(f!=z)return!1;var f=n.constructor,p=t.constructor;if(f!=p&&!(wt(f)&&f instanceof f&&wt(p)&&p instanceof p)&&"constructor"in n&&"constructor"in t)return!1
}for(p=!u,u||(u=a()),o||(o=a()),f=u.length;f--;)if(u[f]==n)return o[f]==t;var s=0,i=!0;if(u.push(n),o.push(t),l){if(f=n.length,s=t.length,i=s==n.length,!i&&!r)return i;for(;s--;)if(l=f,p=t[s],r)for(;l--&&!(i=at(n[l],p,e,r,u,o)););else if(!(i=at(n[s],p,e,r,u,o)))break;return i}return d(t,function(t,a,f){return be.call(f,a)?(s++,i=be.call(n,a)&&at(n[a],t,e,r,u,o)):void 0}),i&&!r&&d(n,function(n,t,e){return be.call(e,t)?i=-1<--s:void 0}),p&&(c(u),c(o)),i}function ft(n,t,e,r,u){(We(t)?St:y)(t,function(t,o){var i,a,f=t,l=n[o];
if(t&&((a=We(t))||g(t))){for(f=r.length;f--;)if(i=r[f]==t){l=u[f];break}if(!i){var c;e&&(f=e(l,t),c=typeof f!="undefined")&&(l=f),c||(l=a?We(l)?l:[]:g(l)?l:{}),r.push(t),u.push(l),c||ft(l,t,e,r,u)}}else e&&(f=e(l,t),typeof f=="undefined"&&(f=t)),typeof f!="undefined"&&(l=f);n[o]=l})}function lt(n,t){return n+ye(De()*(t-n+1))}function ct(e,r,u){var i=-1,f=ht(),l=e?e.length:0,s=[],v=!r&&l>=b&&f===n,h=u||v?a():s;if(v){var g=o(h);g?(f=t,h=g):(v=!1,h=u?h:(c(h),s))}for(;++i<l;){var g=e[i],y=u?u(g,i,e):g;
(r?!i||h[h.length-1]!==y:0>f(h,y))&&((u||v)&&h.push(y),s.push(g))}return v?(c(h.k),p(h)):u&&c(h),s}function pt(n){return function(t,e,r){var u={};e=Y.createCallback(e,r,3),r=-1;var o=t?t.length:0;if(typeof o=="number")for(;++r<o;){var i=t[r];n(u,i,e(i,r,t),t)}else y(t,function(t,r,o){n(u,t,e(t,r,o),o)});return u}}function st(n,t,e,r,u,o){var i=1&t,a=4&t,f=16&t,l=32&t;if(!(2&t||wt(n)))throw new fe;f&&!e.length&&(t&=-17,f=e=!1),l&&!r.length&&(t&=-33,l=r=!1);var c=n&&n.__bindData__;return c&&true!==c?(c=c.slice(),!i||1&c[1]||(c[4]=u),!i&&1&c[1]&&(t|=8),!a||4&c[1]||(c[5]=o),f&&we.apply(c[2]||(c[2]=[]),e),l&&we.apply(c[3]||(c[3]=[]),r),c[1]|=t,st.apply(null,c)):(i=1==t||17===t?tt(n,u,e):ot(n,t,e,r,u,o),Be(i,[n,t,e,r,u,o]),i)
}function vt(n){return ze[n]}function ht(){var t=(t=Y.indexOf)===Pt?n:t;return t}function gt(n){var t,e;return n&&se.call(n)==z&&(t=n.constructor,!wt(t)||t instanceof t)?(d(n,function(n,t){e=t}),typeof e=="undefined"||be.call(n,e)):!1}function yt(n){return Pe[n]}function mt(n){return n&&typeof n=="object"&&typeof n.length=="number"&&se.call(n)==$||!1}function _t(n,t,e){var r=qe(n),u=r.length;for(t=ut(t,e,3);u--&&(e=r[u],false!==t(n[e],e,n)););return n}function bt(n){var t=[];return d(n,function(n,e){wt(n)&&t.push(e)
}),t.sort()}function dt(n){for(var t=-1,e=qe(n),r=e.length,u={};++t<r;){var o=e[t];u[n[o]]=o}return u}function wt(n){return typeof n=="function"}function jt(n){return!(!n||!V[typeof n])}function kt(n){return typeof n=="number"||n&&typeof n=="object"&&se.call(n)==q||!1}function xt(n){return typeof n=="string"||n&&typeof n=="object"&&se.call(n)==K||!1}function Ct(n){for(var t=-1,e=qe(n),r=e.length,u=Zt(r);++t<r;)u[t]=n[e[t]];return u}function Ot(n,t,e){var r=-1,u=ht(),o=n?n.length:0,i=!1;return e=(0>e?Se(0,o+e):e)||0,We(n)?i=-1<u(n,t,e):typeof o=="number"?i=-1<(xt(n)?n.indexOf(t,e):u(n,t,e)):y(n,function(n){return++r<e?void 0:!(i=n===t)
}),i}function It(n,t,e){var r=!0;t=Y.createCallback(t,e,3),e=-1;var u=n?n.length:0;if(typeof u=="number")for(;++e<u&&(r=!!t(n[e],e,n)););else y(n,function(n,e,u){return r=!!t(n,e,u)});return r}function Nt(n,t,e){var r=[];t=Y.createCallback(t,e,3),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 y(n,function(n,e,u){t(n,e,u)&&r.push(n)});return r}function Et(n,t,e){t=Y.createCallback(t,e,3),e=-1;var r=n?n.length:0;if(typeof r!="number"){var u;return y(n,function(n,e,r){return t(n,e,r)?(u=n,!1):void 0
}),u}for(;++e<r;){var o=n[e];if(t(o,e,n))return o}}function St(n,t,e){var r=-1,u=n?n.length:0;if(t=t&&typeof e=="undefined"?t:ut(t,e,3),typeof u=="number")for(;++r<u&&false!==t(n[r],r,n););else y(n,t);return n}function Rt(n,t,e){var r=n?n.length:0;if(t=t&&typeof e=="undefined"?t:ut(t,e,3),typeof r=="number")for(;r--&&false!==t(n[r],r,n););else{var u=qe(n),r=u.length;y(n,function(n,e,o){return e=u?u[--r]:--r,t(o[e],e,o)})}return n}function At(n,t,e){var r=-1,u=n?n.length:0;if(t=Y.createCallback(t,e,3),typeof u=="number")for(var o=Zt(u);++r<u;)o[r]=t(n[r],r,n);
else o=[],y(n,function(n,e,u){o[++r]=t(n,e,u)});return o}function Dt(n,t,e){var u=-1/0,o=u;if(typeof t!="function"&&e&&e[t]===n&&(t=null),null==t&&We(n)){e=-1;for(var i=n.length;++e<i;){var a=n[e];a>o&&(o=a)}}else t=null==t&&xt(n)?r:Y.createCallback(t,e,3),St(n,function(n,e,r){e=t(n,e,r),e>u&&(u=e,o=n)});return o}function $t(n,t){var e=-1,r=n?n.length:0;if(typeof r=="number")for(var u=Zt(r);++e<r;)u[e]=n[e][t];return u||At(n,t)}function Ft(n,t,e,r){if(!n)return e;var u=3>arguments.length;t=ut(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 y(n,function(n,r,o){e=u?(u=!1,n):t(e,n,r,o)});return e}function Tt(n,t,e,r){var u=3>arguments.length;return t=ut(t,r,4),Rt(n,function(n,r,o){e=u?(u=!1,n):t(e,n,r,o)}),e}function Bt(n){var t=-1,e=n?n.length:0,r=Zt(typeof e=="number"?e:0);return St(n,function(n){var e=lt(0,++t);r[t]=r[e],r[e]=n}),r}function Wt(n,t,e){var r;t=Y.createCallback(t,e,3),e=-1;var u=n?n.length:0;if(typeof u=="number")for(;++e<u&&!(r=t(n[e],e,n)););else y(n,function(n,e,u){return!(r=t(n,e,u))
});return!!r}function qt(e){var r=-1,u=ht(),i=e?e.length:0,a=it(arguments,!0,!0,1),f=[],l=i>=b&&u===n;if(l){var c=o(a);c?(u=t,a=c):l=!1}for(;++r<i;)c=e[r],0>u(a,c)&&f.push(c);return l&&p(a),f}function zt(n,t,e){var r=0,u=n?n.length:0;if(typeof t!="number"&&null!=t){var o=-1;for(t=Y.createCallback(t,e,3);++o<u&&t(n[o],o,n);)r++}else if(r=t,null==r||e)return n?n[0]:h;return s(n,0,Re(Se(0,r),u))}function Pt(t,e,r){if(typeof r=="number"){var u=t?t.length:0;r=0>r?Se(0,u+r):r||0}else if(r)return r=Lt(t,e),t[r]===e?r:-1;
return n(t,e,r)}function Kt(n,t,e){if(typeof t!="number"&&null!=t){var r=0,u=-1,o=n?n.length:0;for(t=Y.createCallback(t,e,3);++u<o&&t(n[u],u,n);)r++}else r=null==t||e?1:Se(0,t);return s(n,r)}function Lt(n,t,e,r){var u=0,o=n?n.length:u;for(e=e?Y.createCallback(e,r,1):Qt,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){return typeof t!="boolean"&&null!=t&&(r=e,e=typeof t!="function"&&r&&r[t]===n?null:t,t=!1),null!=e&&(e=Y.createCallback(e,r,3)),ct(n,t,e)}function Ut(){for(var n=1<arguments.length?arguments:arguments[0],t=-1,e=n?Dt($t(n,"length")):0,r=Zt(0>e?0:e);++t<e;)r[t]=$t(n,t);
return r}function Vt(n,t){for(var e=-1,r=n?n.length:0,u={};++e<r;){var o=n[e];t?u[o]=t[e]:o&&(u[o[0]]=o[1])}return u}function Gt(n,t){return 2<arguments.length?st(n,17,s(arguments,2),null,t):st(n,1,null,null,t)}function Ht(n,t,e){function r(){c&&ge(c),i=c=p=h,(g||v!==t)&&(s=de(),a=n.apply(l,o))}function u(){var e=t-(de()-f);0<e?c=je(u,e):(i&&ge(i),e=p,i=c=p=h,e&&(s=de(),a=n.apply(l,o)))}var o,i,a,f,l,c,p,s=0,v=!1,g=!0;if(!wt(n))throw new fe;if(t=Se(0,t)||0,true===e)var y=!0,g=!1;else jt(e)&&(y=e.leading,v="maxWait"in e&&(Se(t,e.maxWait)||0),g="trailing"in e?e.trailing:g);
return function(){if(o=arguments,f=de(),l=this,p=g&&(c||!y),false===v)var e=y&&!c;else{i||y||(s=f);var h=v-(f-s);0<h?i||(i=je(r,h)):(i&&(i=ge(i)),s=f,a=n.apply(l,o))}return c||t===v||(c=je(u,t)),e&&(a=n.apply(l,o)),a}}function Jt(n){if(!wt(n))throw new fe;var t=s(arguments,1);return je(function(){n.apply(h,t)},1)}function Qt(n){return n}function Xt(n,t){var e=n,r=!t||wt(e);t||(e=nt,t=n,n=Y),St(bt(t),function(u){var o=n[u]=t[u];r&&(e.prototype[u]=function(){var t=this.__wrapped__,r=[t];return we.apply(r,arguments),r=o.apply(n,r),t&&typeof t=="object"&&t===r?this:(r=new e(r),r.__chain__=this.__chain__,r)
})})}function Yt(){return this.__wrapped__}e=e?Z.defaults(H.Object(),e,Z.pick(H,D)):H;var Zt=e.Array,ne=e.Boolean,te=e.Date,ee=e.Function,re=e.Math,ue=e.Number,oe=e.Object,ie=e.RegExp,ae=e.String,fe=e.TypeError,le=[],ce=oe.prototype,pe=e._,se=ce.toString,ve=ie("^"+ae(se).replace(/[.*+?^${}()|[\]\\]/g,"\\$&").replace(/toString| for [^\]]+/g,".*?")+"$"),he=re.ceil,ge=e.clearTimeout,ye=re.floor,me=ee.prototype.toString,_e=ve.test(_e=oe.getPrototypeOf)&&_e,be=ce.hasOwnProperty,de=ve.test(de=te.now)&&de||function(){return+new te
},we=le.push,je=e.setTimeout,ke=le.splice,xe=function(){try{var n={},t=ve.test(t=oe.defineProperty)&&t,e=t(n,n,n)&&t}catch(r){}return e}(),Ce=ve.test(Ce=oe.create)&&Ce,Oe=ve.test(Oe=Zt.isArray)&&Oe,Ie=e.isFinite,Ne=e.isNaN,Ee=ve.test(Ee=oe.keys)&&Ee,Se=re.max,Re=re.min,Ae=e.parseInt,De=re.random,$e=typeof($e=Ce&&"function"==!/\n/.test(Ce)&&!ve.test(e.attachEvent)&&X&&e.setImmediate)&&$e,Fe={};Fe[F]=Zt,Fe[T]=ne,Fe[B]=te,Fe[W]=ee,Fe[z]=oe,Fe[q]=ue,Fe[P]=ie,Fe[K]=ae,nt.prototype=Y.prototype;var Te=Y.support={};
Te.funcDecomp=!ve.test(e.a)&&R.test(v),Te.funcNames=typeof ee.name=="string",Y.templateSettings={escape:/<%-([\s\S]+?)%>/g,evaluate:/<%([\s\S]+?)%>/g,interpolate:N,variable:"",imports:{_:Y}},Ce||(rt=function(n){if(jt(n)){l.prototype=n;var t=new l;l.prototype=null}return t||{}});var Be=xe?function(n,t){U.value=t,xe(n,"__bindData__",U)}:l,We=Oe||function(n){return n&&typeof n=="object"&&typeof n.length=="number"&&se.call(n)==F||!1},qe=Ee?function(n){return jt(n)?Ee(n):[]}:Q,ze={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;"},Pe=dt(ze),Ke=ie("("+qe(Pe).join("|")+")","g"),Le=ie("["+qe(ze).join("")+"]","g"),Me=pt(function(n,t,e){be.call(n,e)?n[e]++:n[e]=1
}),Ue=pt(function(n,t,e){(be.call(n,e)?n[e]:n[e]=[]).push(t)}),Ve=pt(function(n,t,e){n[e]=t});$e&&(Jt=function(n){if(!wt(n))throw new fe;return $e.apply(e,arguments)});var Ge=8==Ae(w+"08")?Ae:function(n,t){return Ae(xt(n)?n.replace(E,""):n,t||0)};return Y.after=function(n,t){if(!wt(t))throw new fe;return function(){return 1>--n?t.apply(this,arguments):void 0}},Y.assign=J,Y.at=function(n){for(var t=arguments,e=-1,r=it(t,!0,!1,1),t=t[2]&&t[2][t[1]]===n?1:r.length,u=Zt(t);++e<t;)u[e]=n[r[e]];return u
},Y.bind=Gt,Y.bindAll=function(n){for(var t=1<arguments.length?it(arguments,!0,!1,1):bt(n),e=-1,r=t.length;++e<r;){var u=t[e];n[u]=st(n[u],1,null,null,n)}return n},Y.bindKey=function(n,t){return 2<arguments.length?st(t,19,s(arguments,2),null,n):st(t,3,null,null,n)},Y.chain=function(n){return n=new nt(n),n.__chain__=!0,n},Y.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},Y.compose=function(){for(var n=arguments,t=n.length;t--;)if(!wt(n[t]))throw new fe;
return function(){for(var t=arguments,e=n.length;e--;)t=[n[e].apply(this,t)];return t[0]}},Y.countBy=Me,Y.create=function(n,t){var e=rt(n);return t?J(e,t):e},Y.createCallback=function(n,t,e){var r=typeof n;if(null==n||"function"==r)return ut(n,t,e);if("object"!=r)return function(t){return t[n]};var u=qe(n),o=u[0],i=n[o];return 1!=u.length||i!==i||jt(i)?function(t){for(var e=u.length,r=!1;e--&&(r=at(t[u[e]],n[u[e]],null,!0)););return r}:function(n){return n=n[o],i===n&&(0!==i||1/i==1/n)}},Y.curry=function(n,t){return t=typeof t=="number"?t:+t||n.length,st(n,4,null,null,null,t)
},Y.debounce=Ht,Y.defaults=G,Y.defer=Jt,Y.delay=function(n,t){if(!wt(n))throw new fe;var e=s(arguments,2);return je(function(){n.apply(h,e)},t)},Y.difference=qt,Y.filter=Nt,Y.flatten=function(n,t,e,r){return typeof t!="boolean"&&null!=t&&(r=e,e=typeof t!="function"&&r&&r[t]===n?null:t,t=!1),null!=e&&(n=At(n,e,r)),it(n,t)},Y.forEach=St,Y.forEachRight=Rt,Y.forIn=d,Y.forInRight=function(n,t,e){var r=[];d(n,function(n,t){r.push(t,n)});var u=r.length;for(t=ut(t,e,3);u--&&false!==t(r[u--],r[u],n););return n
},Y.forOwn=y,Y.forOwnRight=_t,Y.functions=bt,Y.groupBy=Ue,Y.indexBy=Ve,Y.initial=function(n,t,e){var r=0,u=n?n.length:0;if(typeof t!="number"&&null!=t){var o=u;for(t=Y.createCallback(t,e,3);o--&&t(n[o],o,n);)r++}else r=null==t||e?1:t||r;return s(n,0,Re(Se(0,u-r),u))},Y.intersection=function(e){for(var r=arguments,u=r.length,i=-1,f=a(),l=-1,s=ht(),v=e?e.length:0,h=[],g=a();++i<u;){var y=r[i];f[i]=s===n&&(y?y.length:0)>=b&&o(i?r[i]:g)}n:for(;++l<v;){var m=f[0],y=e[l];if(0>(m?t(m,y):s(g,y))){for(i=u,(m||g).push(y);--i;)if(m=f[i],0>(m?t(m,y):s(r[i],y)))continue n;
h.push(y)}}for(;u--;)(m=f[u])&&p(m);return c(f),c(g),h},Y.invert=dt,Y.invoke=function(n,t){var e=s(arguments,2),r=-1,u=typeof t=="function",o=n?n.length:0,i=Zt(typeof o=="number"?o:0);return St(n,function(n){i[++r]=(u?t:n[t]).apply(n,e)}),i},Y.keys=qe,Y.map=At,Y.max=Dt,Y.memoize=function(n,t){function e(){var r=e.cache,u=t?t.apply(this,arguments):_+arguments[0];return be.call(r,u)?r[u]:r[u]=n.apply(this,arguments)}if(!wt(n))throw new fe;return e.cache={},e},Y.merge=function(n){var t=arguments,e=2;
if(!jt(n))return n;if("number"!=typeof t[2]&&(e=t.length),3<e&&"function"==typeof t[e-2])var r=ut(t[--e-1],t[e--],2);else 2<e&&"function"==typeof t[e-1]&&(r=t[--e]);for(var t=s(arguments,1,e),u=-1,o=a(),i=a();++u<e;)ft(n,t[u],r,o,i);return c(o),c(i),n},Y.min=function(n,t,e){var u=1/0,o=u;if(typeof t!="function"&&e&&e[t]===n&&(t=null),null==t&&We(n)){e=-1;for(var i=n.length;++e<i;){var a=n[e];a<o&&(o=a)}}else t=null==t&&xt(n)?r:Y.createCallback(t,e,3),St(n,function(n,e,r){e=t(n,e,r),e<u&&(u=e,o=n)
});return o},Y.omit=function(n,t,e){var r=ht(),u=typeof t=="function",o={};if(u)t=Y.createCallback(t,e,3);else var i=it(arguments,!0,!1,1);return d(n,function(n,e,a){(u?!t(n,e,a):0>r(i,e))&&(o[e]=n)}),o},Y.once=function(n){var t,e;if(!wt(n))throw new fe;return function(){return t?e:(t=!0,e=n.apply(this,arguments),n=null,e)}},Y.pairs=function(n){for(var t=-1,e=qe(n),r=e.length,u=Zt(r);++t<r;){var o=e[t];u[t]=[o,n[o]]}return u},Y.partial=function(n){return st(n,16,s(arguments,1))},Y.partialRight=function(n){return st(n,32,null,s(arguments,1))
},Y.pick=function(n,t,e){var r={};if(typeof t!="function")for(var u=-1,o=it(arguments,!0,!1,1),i=jt(n)?o.length:0;++u<i;){var a=o[u];a in n&&(r[a]=n[a])}else t=Y.createCallback(t,e,3),d(n,function(n,e,u){t(n,e,u)&&(r[e]=n)});return r},Y.pluck=$t,Y.pull=function(n){for(var t=arguments,e=0,r=t.length,u=n?n.length:0;++e<r;)for(var o=-1,i=t[e];++o<u;)n[o]===i&&(ke.call(n,o--,1),u--);return n},Y.range=function(n,t,e){n=+n||0,e=typeof e=="number"?e:+e||1,null==t&&(t=n,n=0);var r=-1;t=Se(0,he((t-n)/(e||1)));
for(var u=Zt(t);++r<t;)u[r]=n,n+=e;return u},Y.reject=function(n,t,e){return t=Y.createCallback(t,e,3),Nt(n,function(n,e,r){return!t(n,e,r)})},Y.remove=function(n,t,e){var r=-1,u=n?n.length:0,o=[];for(t=Y.createCallback(t,e,3);++r<u;)e=n[r],t(e,r,n)&&(o.push(e),ke.call(n,r--,1),u--);return o},Y.rest=Kt,Y.shuffle=Bt,Y.sortBy=function(n,t,e){var r=-1,o=n?n.length:0,i=Zt(typeof o=="number"?o:0);for(t=Y.createCallback(t,e,3),St(n,function(n,e,u){var o=i[++r]=f();o.m=t(n,e,u),o.n=r,o.o=n}),o=i.length,i.sort(u);o--;)n=i[o],i[o]=n.o,p(n);
return i},Y.tap=function(n,t){return t(n),n},Y.throttle=function(n,t,e){var r=!0,u=!0;if(!wt(n))throw new fe;return false===e?r=!1:jt(e)&&(r="leading"in e?e.leading:r,u="trailing"in e?e.trailing:u),M.leading=r,M.maxWait=t,M.trailing=u,Ht(n,t,M)},Y.times=function(n,t,e){n=-1<(n=+n)?n:0;var r=-1,u=Zt(n);for(t=ut(t,e,1);++r<n;)u[r]=t(r);return u},Y.toArray=function(n){return n&&typeof n.length=="number"?s(n):Ct(n)},Y.transform=function(n,t,e,r){var u=We(n);if(null==e)if(u)e=[];else{var o=n&&n.constructor;
e=rt(o&&o.prototype)}return t&&(t=ut(t,r,4),(u?St:y)(n,function(n,r,u){return t(e,n,r,u)})),e},Y.union=function(){return ct(it(arguments,!0,!0))},Y.uniq=Mt,Y.values=Ct,Y.where=Nt,Y.without=function(n){return qt(n,s(arguments,1))},Y.wrap=function(n,t){return st(t,16,[n])},Y.zip=Ut,Y.zipObject=Vt,Y.collect=At,Y.drop=Kt,Y.each=St,Y.eachRight=Rt,Y.extend=J,Y.methods=bt,Y.object=Vt,Y.select=Nt,Y.tail=Kt,Y.unique=Mt,Y.unzip=Ut,Xt(Y),Y.clone=function(n,t,e,r){return typeof t!="boolean"&&null!=t&&(r=e,e=t,t=!1),et(n,t,typeof e=="function"&&ut(e,r,1))
},Y.cloneDeep=function(n,t,e){return et(n,!0,typeof t=="function"&&ut(t,e,1))},Y.contains=Ot,Y.escape=function(n){return null==n?"":ae(n).replace(Le,vt)},Y.every=It,Y.find=Et,Y.findIndex=function(n,t,e){var r=-1,u=n?n.length:0;for(t=Y.createCallback(t,e,3);++r<u;)if(t(n[r],r,n))return r;return-1},Y.findKey=function(n,t,e){var r;return t=Y.createCallback(t,e,3),y(n,function(n,e,u){return t(n,e,u)?(r=e,!1):void 0}),r},Y.findLast=function(n,t,e){var r;return t=Y.createCallback(t,e,3),Rt(n,function(n,e,u){return t(n,e,u)?(r=n,!1):void 0
}),r},Y.findLastIndex=function(n,t,e){var r=n?n.length:0;for(t=Y.createCallback(t,e,3);r--;)if(t(n[r],r,n))return r;return-1},Y.findLastKey=function(n,t,e){var r;return t=Y.createCallback(t,e,3),_t(n,function(n,e,u){return t(n,e,u)?(r=e,!1):void 0}),r},Y.has=function(n,t){return n?be.call(n,t):!1},Y.identity=Qt,Y.indexOf=Pt,Y.isArguments=mt,Y.isArray=We,Y.isBoolean=function(n){return true===n||false===n||n&&typeof n=="object"&&se.call(n)==T||!1},Y.isDate=function(n){return n&&typeof n=="object"&&se.call(n)==B||!1
},Y.isElement=function(n){return n&&1===n.nodeType||!1},Y.isEmpty=function(n){var t=!0;if(!n)return t;var e=se.call(n),r=n.length;return e==F||e==K||e==$||e==z&&typeof r=="number"&&wt(n.splice)?!r:(y(n,function(){return t=!1}),t)},Y.isEqual=function(n,t,e,r){return at(n,t,typeof e=="function"&&ut(e,r,2))},Y.isFinite=function(n){return Ie(n)&&!Ne(parseFloat(n))},Y.isFunction=wt,Y.isNaN=function(n){return kt(n)&&n!=+n},Y.isNull=function(n){return null===n},Y.isNumber=kt,Y.isObject=jt,Y.isPlainObject=g,Y.isRegExp=function(n){return n&&typeof n=="object"&&se.call(n)==P||!1
},Y.isString=xt,Y.isUndefined=function(n){return typeof n=="undefined"},Y.lastIndexOf=function(n,t,e){var r=n?n.length:0;for(typeof e=="number"&&(r=(0>e?Se(0,r+e):Re(e,r-1))+1);r--;)if(n[r]===t)return r;return-1},Y.mixin=Xt,Y.noConflict=function(){return e._=pe,this},Y.parseInt=Ge,Y.random=function(n,t,e){var r=null==n,u=null==t;return null==e&&(typeof n=="boolean"&&u?(e=n,n=1):u||typeof t!="boolean"||(e=t,u=!0)),r&&u&&(t=1),n=+n||0,u?(t=n,n=0):t=+t||0,e||n%1||t%1?(e=De(),Re(n+e*(t-n+parseFloat("1e-"+((e+"").length-1))),t)):lt(n,t)
},Y.reduce=Ft,Y.reduceRight=Tt,Y.result=function(n,t){if(n){var e=n[t];return wt(e)?n[t]():e}},Y.runInContext=v,Y.size=function(n){var t=n?n.length:0;return typeof t=="number"?t:qe(n).length},Y.some=Wt,Y.sortedIndex=Lt,Y.template=function(n,t,e){var r=Y.templateSettings;n=ae(n||""),e=G({},e,r);var u,o=G({},e.imports,r.imports),r=qe(o),o=Ct(o),a=0,f=e.interpolate||S,l="__p+='",f=ie((e.escape||S).source+"|"+f.source+"|"+(f===N?C:S).source+"|"+(e.evaluate||S).source+"|$","g");n.replace(f,function(t,e,r,o,f,c){return r||(r=o),l+=n.slice(a,c).replace(A,i),e&&(l+="'+__e("+e+")+'"),f&&(u=!0,l+="';"+f+";\n__p+='"),r&&(l+="'+((__t=("+r+"))==null?'':__t)+'"),a=c+t.length,t
}),l+="';",f=e=e.variable,f||(e="obj",l="with("+e+"){"+l+"}"),l=(u?l.replace(j,""):l).replace(k,"$1").replace(x,"$1;"),l="function("+e+"){"+(f?"":e+"||("+e+"={});")+"var __t,__p='',__e=_.escape"+(u?",__j=Array.prototype.join;function print(){__p+=__j.call(arguments,'')}":";")+l+"return __p}";try{var c=ee(r,"return "+l).apply(h,o)}catch(p){throw p.source=l,p}return t?c(t):(c.source=l,c)},Y.unescape=function(n){return null==n?"":ae(n).replace(Ke,yt)},Y.uniqueId=function(n){var t=++m;return ae(null==n?"":n)+t
},Y.all=It,Y.any=Wt,Y.detect=Et,Y.findWhere=Et,Y.foldl=Ft,Y.foldr=Tt,Y.include=Ot,Y.inject=Ft,y(Y,function(n,t){Y.prototype[t]||(Y.prototype[t]=function(){var t=[this.__wrapped__],e=this.__chain__;return we.apply(t,arguments),t=n.apply(Y,t),e?new nt(t,e):t})}),Y.first=zt,Y.last=function(n,t,e){var r=0,u=n?n.length:0;if(typeof t!="number"&&null!=t){var o=u;for(t=Y.createCallback(t,e,3);o--&&t(n[o],o,n);)r++}else if(r=t,null==r||e)return n?n[u-1]:h;return s(n,Se(0,u-r))},Y.sample=function(n,t,e){return n&&typeof n.length!="number"&&(n=Ct(n)),null==t||e?n?n[lt(0,n.length-1)]:h:(n=Bt(n),n.length=Re(Se(0,t),n.length),n)
},Y.take=zt,Y.head=zt,y(Y,function(n,t){var e="sample"!==t;Y.prototype[t]||(Y.prototype[t]=function(t,r){var u=this.__chain__,o=n(this.__wrapped__,t,r);return u||null!=t&&(!r||e&&typeof t=="function")?new nt(o,u):o})}),Y.VERSION="2.2.1",Y.prototype.chain=function(){return this.__chain__=!0,this},Y.prototype.toString=function(){return ae(this.__wrapped__)},Y.prototype.value=Yt,Y.prototype.valueOf=Yt,St(["join","pop","shift"],function(n){var t=le[n];Y.prototype[n]=function(){var n=this.__chain__,e=t.apply(this.__wrapped__,arguments);
return n?new nt(e,n):e}}),St(["push","reverse","sort","unshift"],function(n){var t=le[n];Y.prototype[n]=function(){return t.apply(this.__wrapped__,arguments),this}}),St(["concat","slice","splice"],function(n){var t=le[n];Y.prototype[n]=function(){return new nt(t.apply(this.__wrapped__,arguments),this.__chain__)}}),Y}var h,g=[],y=[],m=0,_=+new Date+"",b=75,d=40,w=" \t\x0B\f\xa0\ufeff\n\r\u2028\u2029\u1680\u180e\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000",j=/\b__p\+='';/g,k=/\b(__p\+=)''\+/g,x=/(__e\(.*?\)|\b__t\))\+'';/g,C=/\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g,O=/\w*$/,I=/^function[ \n\r\t]+\w/,N=/<%=([\s\S]+?)%>/g,E=RegExp("^["+w+"]*0+(?=.$)"),S=/($^)/,R=/\bthis\b/,A=/['\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]",F="[object Array]",T="[object Boolean]",B="[object Date]",W="[object Function]",q="[object Number]",z="[object Object]",P="[object RegExp]",K="[object String]",L={};
L[W]=!1,L[$]=L[F]=L[T]=L[B]=L[q]=L[z]=L[P]=L[K]=!0;var M={leading:!1,maxWait:0,trailing:!1},U={configurable:!1,enumerable:!1,value:null,writable:!1},V={"boolean":!1,"function":!0,object:!0,number:!1,string:!1,undefined:!1},G={"\\":"\\","'":"'","\n":"n","\r":"r","\t":"t","\u2028":"u2028","\u2029":"u2029"},H=V[typeof window]&&window||this,J=V[typeof exports]&&exports&&!exports.nodeType&&exports,Q=V[typeof module]&&module&&!module.nodeType&&module,X=Q&&Q.exports===J&&J,Y=V[typeof global]&&global;!Y||Y.global!==Y&&Y.window!==Y||(H=Y);
var Z=v();typeof define=="function"&&typeof define.amd=="object"&&define.amd?(H._=Z, define(function(){return Z})):J&&Q?X?(Q.exports=Z)._=Z:J._=Z:H._=Z}).call(this);

View File

@@ -476,6 +476,62 @@
return bind(func, thisArg);
}
/**
* The base implementation of `createWrapper` without `func` type checking
* or support for setting meta data.
*
* @private
* @param {Function|string} func The function or method name to reference.
* @param {number} bitmask The bitmask of method flags to compose.
* @param {Array} [partialArgs] An array of arguments to prepend to those
* provided to the new function.
* @param {Array} [partialRightArgs] An array of arguments to append to those
* provided to the new function.
* @param {*} [thisArg] The `this` binding of `func`.
* @param {number} [arity] The arity of `func`.
* @returns {Function} Returns the new function.
*/
function baseCreateWrapper(func, bitmask, partialArgs, partialRightArgs, thisArg, arity) {
var isBind = bitmask & 1,
isBindKey = bitmask & 2,
isCurry = bitmask & 4,
isCurryBound = bitmask & 8,
isPartial = bitmask & 16,
isPartialRight = bitmask & 32,
key = func;
function bound() {
var thisBinding = isBind ? thisArg : this;
if (isCurry || isPartial || isPartialRight) {
if (isPartial) {
var args = partialArgs.slice();
push.apply(args, arguments);
}
if (isPartialRight || isCurry) {
args || (args = slice(arguments));
if (isPartialRight) {
push.apply(args, partialRightArgs);
}
if (isCurry && args.length < arity) {
bitmask |= 16 & ~32;
return createWrapper(func, (isCurryBound ? bitmask : bitmask & ~3), args, null, thisArg, arity);
}
}
}
args || (args = arguments);
if (isBindKey) {
func = thisBinding[key];
}
if (this instanceof bound) {
thisBinding = baseCreate(func.prototype);
var result = func.apply(thisBinding, args);
return isObject(result) ? result : thisBinding;
}
return func.apply(thisBinding, args);
}
return bound;
}
/**
* The base implementation of `_.flatten` without support for callback
* shorthands or `thisArg` binding.
@@ -726,16 +782,15 @@
* provided to the new function.
* @param {*} [thisArg] The `this` binding of `func`.
* @param {number} [arity] The arity of `func`.
* @returns {Function} Returns the new bound function.
* @returns {Function} Returns the new function.
*/
function createBound(func, bitmask, partialArgs, partialRightArgs, thisArg, arity) {
function createWrapper(func, bitmask, partialArgs, partialRightArgs, thisArg, arity) {
var isBind = bitmask & 1,
isBindKey = bitmask & 2,
isCurry = bitmask & 4,
isCurryBound = bitmask & 8,
isPartial = bitmask & 16,
isPartialRight = bitmask & 32,
key = func;
isPartialRight = bitmask & 32;
if (!isBindKey && !isFunction(func)) {
throw new TypeError;
@@ -749,41 +804,11 @@
isPartialRight = partialRightArgs = false;
}
// fast path for `_.bind`
if (bitmask == 1 || bitmask === 17) {
var bound = baseBind(func, thisArg, partialArgs);
}
else {
bound = function() {
var thisBinding = isBind ? thisArg : this;
if (isCurry || isPartial || isPartialRight) {
if (isPartial) {
var args = partialArgs.slice();
push.apply(args, arguments);
}
if (isPartialRight || isCurry) {
args || (args = slice(arguments));
if (isPartialRight) {
push.apply(args, partialRightArgs);
}
if (isCurry && args.length < arity) {
bitmask |= 16 & ~32;
return createBound(func, (isCurryBound ? bitmask : bitmask & ~3), args, null, thisArg, arity);
}
}
}
args || (args = arguments);
if (isBindKey) {
func = thisBinding[key];
}
if (this instanceof bound) {
thisBinding = baseCreate(func.prototype);
var result = func.apply(thisBinding, args);
return isObject(result) ? result : thisBinding;
}
return func.apply(thisBinding, args);
};
}
return bound;
var result = (bitmask == 1 || bitmask === 17)
? baseBind(func, thisArg, partialArgs)
: baseCreateWrapper(func, bitmask, partialArgs, partialRightArgs, thisArg, arity);
return result;
}
/**
@@ -3630,8 +3655,8 @@
*/
function bind(func, thisArg) {
return arguments.length > 2
? createBound(func, 17, slice(arguments, 2), null, thisArg)
: createBound(func, 1, null, null, thisArg);
? createWrapper(func, 17, slice(arguments, 2), null, thisArg)
: createWrapper(func, 1, null, null, thisArg);
}
/**
@@ -3665,7 +3690,7 @@
while (++index < length) {
var key = funcs[index];
object[key] = createBound(object[key], 1, null, null, object);
object[key] = createWrapper(object[key], 1, null, null, object);
}
return object;
}
@@ -4052,7 +4077,7 @@
* // => 'hi fred'
*/
function partial(func) {
return createBound(func, 16, slice(arguments, 1));
return createWrapper(func, 16, slice(arguments, 1));
}
/**
@@ -4129,7 +4154,7 @@
* // => '<p>Fred, Wilma, &amp; Pebbles</p>'
*/
function wrap(value, wrapper) {
return createBound(wrapper, 16, [value]);
return createWrapper(wrapper, 16, [value]);
}
/*--------------------------------------------------------------------------*/

View File

@@ -3,37 +3,37 @@
* Lo-Dash 2.2.1 (Custom Build) lodash.com/license | Underscore.js 1.5.2 underscorejs.org/LICENSE
* Build: `lodash underscore exports="amd,commonjs,global,node" -o ./dist/lodash.underscore.js`
*/
;(function(){function n(n,r,t){t=(t||0)-1;for(var e=n?n.length:0;++t<e;)if(n[t]===r)return t;return-1}function r(n,r){var t=n.m,e=r.m;if(t!==e){if(t>e||typeof t=="undefined")return 1;if(t<e||typeof e=="undefined")return-1}return n.n-r.n}function t(n){return"\\"+vr[n]}function e(){}function u(n,r,t){r||(r=0),typeof t=="undefined"&&(t=n?n.length:0);var e=-1;t=t-r||0;for(var u=Array(0>t?0:t);++e<t;)u[e]=n[r+e];return u}function o(n){return n instanceof o?n:new i(n)}function i(n,r){this.__chain__=!!r,this.__wrapped__=n
}function f(n,r,t){function e(){if(t){var u=t.slice();Nr.apply(u,arguments)}if(this instanceof e){var o=a(n.prototype),u=n.apply(o,u||arguments);return E(u)?u:o}return n.apply(r,u||arguments)}return e}function a(n){return E(n)?Rr(n):{}}function l(n,r,t){if(typeof n!="function")return Y;if(typeof r=="undefined"||!("prototype"in n))return n;switch(t){case 1:return function(t){return n.call(r,t)};case 2:return function(t,e){return n.call(r,t,e)};case 3:return function(t,e,u){return n.call(r,t,e,u)};
case 4:return function(t,e,u,o){return n.call(r,t,e,u,o)}}return L(n,r)}function c(n,r,t,e){e=(e||0)-1;for(var u=n?n.length:0,o=[];++e<u;){var i=n[e];if(i&&typeof i=="object"&&typeof i.length=="number"&&(zr(i)||_(i))){r||(i=c(i,r,t));var f=-1,a=i.length,l=o.length;for(o.length+=a;++f<a;)o[l++]=i[f]}else t||o.push(i)}return o}function p(n,r,t,e){if(n===r)return 0!==n||1/n==1/r;if(n===n&&!(n&&hr[typeof n]||r&&hr[typeof r]))return!1;if(null==n||null==r)return n===r;var u=Ar.call(n),i=Ar.call(r);if(u!=i)return!1;
switch(u){case ar:case lr:return+n==+r;case cr:return n!=+n?r!=+r:0==n?1/n==1/r:n==+r;case sr:case gr:return n==r+""}if(i=u==fr,!i){if(Sr.call(n,"__wrapped__")||r instanceof o)return p(n.__wrapped__||n,r.__wrapped__||r,t,e);if(u!=pr)return!1;var u=n.constructor,f=r.constructor;if(u!=f&&!(A(u)&&u instanceof u&&A(f)&&f instanceof f)&&"constructor"in n&&"constructor"in r)return!1}for(t||(t=[]),e||(e=[]),u=t.length;u--;)if(t[u]==n)return e[u]==r;var a=!0,l=0;if(t.push(n),e.push(r),i){if(l=r.length,a=l==n.length)for(;l--&&(a=p(n[l],r[l],t,e)););return a
}return Jr(r,function(r,u,o){return Sr.call(o,u)?(l++,!(a=Sr.call(n,u)&&p(n[u],r,t,e))&&tr):void 0}),a&&Jr(n,function(n,r,t){return Sr.call(t,r)?!(a=-1<--l)&&tr:void 0}),a}function s(n,r,t){for(var e=-1,u=y(),o=n?n.length:0,i=[],f=t?[]:i;++e<o;){var a=n[e],l=t?t(a,e,n):a;(r?!e||f[f.length-1]!==l:0>u(f,l))&&(t&&f.push(l),i.push(a))}return i}function g(n){return function(r,t,e){var u={};t=Q(t,e,3),e=-1;var o=r?r.length:0;if(typeof o=="number")for(;++e<o;){var i=r[e];n(u,i,t(i,e,r),r)}else Kr(r,function(r,e,o){n(u,r,t(r,e,o),o)
});return u}}function h(n,r,t,e,o,i){var l=1&r,c=2&r,p=4&r,s=8&r,g=16&r,v=32&r,y=n;if(!c&&!A(n))throw new TypeError;g&&!t.length&&(r&=-17,g=t=!1),v&&!e.length&&(r&=-33,v=e=!1);var m=1==r||17===r?f(n,o,t):function(){var f=l?o:this;if(p||g||v){if(g){var _=t.slice();Nr.apply(_,arguments)}if((v||p)&&(_||(_=u(arguments)),v&&Nr.apply(_,e),p&&_.length<i))return r|=16,h(n,s?r:-4&r,_,null,o,i)}return _||(_=arguments),c&&(n=f[y]),this instanceof m?(f=a(n.prototype),_=n.apply(f,_),E(_)?_:f):n.apply(f,_)};return m
}function v(n){return Ur[n]}function y(){var r=(r=o.indexOf)===G?n:r;return r}function m(n){return Vr[n]}function _(n){return n&&typeof n=="object"&&typeof n.length=="number"&&Ar.call(n)==ir||!1}function d(n){if(!n)return n;for(var r=1,t=arguments.length;r<t;r++){var e=arguments[r];if(e)for(var u in e)n[u]=e[u]}return n}function b(n){if(!n)return n;for(var r=1,t=arguments.length;r<t;r++){var e=arguments[r];if(e)for(var u in e)"undefined"==typeof n[u]&&(n[u]=e[u])}return n}function w(n){var r=[];return Jr(n,function(n,t){A(n)&&r.push(t)
}),r.sort()}function j(n){for(var r=-1,t=Pr(n),e=t.length,u={};++r<e;){var o=t[r];u[n[o]]=o}return u}function x(n){if(!n)return!0;if(zr(n)||O(n))return!n.length;for(var r in n)if(Sr.call(n,r))return!1;return!0}function A(n){return typeof n=="function"}function E(n){return!(!n||!hr[typeof n])}function T(n){return typeof n=="number"||n&&typeof n=="object"&&Ar.call(n)==cr||!1}function O(n){return typeof n=="string"||n&&typeof n=="object"&&Ar.call(n)==gr||!1}function S(n){for(var r=-1,t=Pr(n),e=t.length,u=Array(e);++r<e;)u[r]=n[t[r]];
return u}function k(n,r){var t=y(),e=n?n.length:0,u=!1;return e&&typeof e=="number"?u=-1<t(n,r):Kr(n,function(n){return(u=n===r)&&tr}),u}function N(n,r,t){var e=!0;r=Q(r,t,3),t=-1;var u=n?n.length:0;if(typeof u=="number")for(;++t<u&&(e=!!r(n[t],t,n)););else Kr(n,function(n,t,u){return!(e=!!r(n,t,u))&&tr});return e}function R(n,r,t){var e=[];r=Q(r,t,3),t=-1;var u=n?n.length:0;if(typeof u=="number")for(;++t<u;){var o=n[t];r(o,t,n)&&e.push(o)}else Kr(n,function(n,t,u){r(n,t,u)&&e.push(n)});return e}function B(n,r,t){r=Q(r,t,3),t=-1;
var e=n?n.length:0;if(typeof e!="number"){var u;return Kr(n,function(n,t,e){return r(n,t,e)?(u=n,tr):void 0}),u}for(;++t<e;){var o=n[t];if(r(o,t,n))return o}}function F(n,r,t){var e=-1,u=n?n.length:0;if(r=r&&typeof t=="undefined"?r:l(r,t,3),typeof u=="number")for(;++e<u&&r(n[e],e,n)!==tr;);else Kr(n,r)}function q(n,r){var t=n?n.length:0;if(typeof t=="number")for(;t--&&false!==r(n[t],t,n););else{var e=Pr(n),t=e.length;Kr(n,function(n,u,o){return u=e?e[--t]:--t,false===r(o[u],u,o)&&tr})}}function D(n,r,t){var e=-1,u=n?n.length:0;
if(r=Q(r,t,3),typeof u=="number")for(var o=Array(u);++e<u;)o[e]=r(n[e],e,n);else o=[],Kr(n,function(n,t,u){o[++e]=r(n,t,u)});return o}function M(n,r,t){var e=-1/0,u=e;typeof r!="function"&&t&&t[r]===n&&(r=null);var o=-1,i=n?n.length:0;if(null==r&&typeof i=="number")for(;++o<i;)t=n[o],t>u&&(u=t);else r=null==r&&O(n)?charAtCallback:Q(r,t,3),F(n,function(n,t,o){t=r(n,t,o),t>e&&(e=t,u=n)});return u}function $(n,r){var t=-1,e=n?n.length:0;if(typeof e=="number")for(var u=Array(e);++t<e;)u[t]=n[t][r];return u||D(n,r)
}function I(n,r,t,e){if(!n)return t;var u=3>arguments.length;r=l(r,e,4);var o=-1,i=n.length;if(typeof i=="number")for(u&&(t=n[++o]);++o<i;)t=r(t,n[o],o,n);else Kr(n,function(n,e,o){t=u?(u=!1,n):r(t,n,e,o)});return t}function W(n,r,t,e){var u=3>arguments.length;return r=l(r,e,4),q(n,function(n,e,o){t=u?(u=!1,n):r(t,n,e,o)}),t}function z(n){var r=-1,t=n?n.length:0,e=Array(typeof t=="number"?t:0);return F(n,function(n){var t;t=++r,t=0+Or(Ir()*(t-0+1)),e[r]=e[t],e[t]=n}),e}function C(n,r,t){var e;r=Q(r,t,3),t=-1;
var u=n?n.length:0;if(typeof u=="number")for(;++t<u&&!(e=r(n[t],t,n)););else Kr(n,function(n,t,u){return(e=r(n,t,u))&&tr});return!!e}function P(n,r,t){return t&&x(r)?nr:(t?B:R)(n,r)}function U(n){for(var r=-1,t=y(),e=n?n.length:0,u=c(arguments,!0,!0,1),o=[];++r<e;){var i=n[r];0>t(u,i)&&o.push(i)}return o}function V(n,r,t){var e=0,o=n?n.length:0;if(typeof r!="number"&&null!=r){var i=-1;for(r=Q(r,t,3);++i<o&&r(n[i],i,n);)e++}else if(e=r,null==e||t)return n?n[0]:nr;return u(n,0,$r(Mr(0,e),o))}function G(r,t,e){if(typeof e=="number"){var u=r?r.length:0;
e=0>e?Mr(0,u+e):e||0}else if(e)return e=J(r,t),r[e]===t?e:-1;return n(r,t,e)}function H(n,r,t){if(typeof r!="number"&&null!=r){var e=0,o=-1,i=n?n.length:0;for(r=Q(r,t,3);++o<i&&r(n[o],o,n);)e++}else e=null==r||t?1:Mr(0,r);return u(n,e)}function J(n,r,t,e){var u=0,o=n?n.length:u;for(t=t?Q(t,e,1):Y,r=t(r);u<o;)e=u+o>>>1,t(n[e])<r?u=e+1:o=e;return u}function K(n,r,t,e){return typeof r!="boolean"&&null!=r&&(e=t,t=typeof r!="function"&&e&&e[r]===n?null:r,r=!1),null!=t&&(t=Q(t,e,3)),s(n,r,t)}function L(n,r){return 2<arguments.length?h(n,17,u(arguments,2),null,r):h(n,1,null,null,r)
}function Q(n,r,t){var e=typeof n;if(null==n||"function"==e)return l(n,r,t);if("object"!=e)return function(r){return r[n]};var u=Pr(n);return function(r){for(var t=u.length,e=!1;t--&&(e=r[u[t]]===n[u[t]]););return e}}function X(n,r,t){var e,u,o,i,f,a,l,c=0,p=!1,s=!0;if(!A(n))throw new TypeError;if(r=Mr(0,r)||0,true===t)var g=!0,s=!1;else E(t)&&(g=t.leading,p="maxWait"in t&&(Mr(r,t.maxWait)||0),s="trailing"in t?t.trailing:s);var h=function(){var t=r-(kr()-i);0<t?a=setTimeout(h,t):(u&&clearTimeout(u),t=l,u=a=l=nr,t&&(c=kr(),o=n.apply(f,e)))
},v=function(){a&&clearTimeout(a),u=a=l=nr,(s||p!==r)&&(c=kr(),o=n.apply(f,e))};return function(){if(e=arguments,i=kr(),f=this,l=s&&(a||!g),false===p)var t=g&&!a;else{u||g||(c=i);var y=p-(i-c);0<y?u||(u=setTimeout(v,y)):(u&&(u=clearTimeout(u)),c=i,o=n.apply(f,e))}return a||r===p||(a=setTimeout(h,r)),t&&(o=n.apply(f,e)),o}}function Y(n){return n}function Z(n){F(w(n),function(r){var t=o[r]=n[r];o.prototype[r]=function(){var n=[this.__wrapped__];return Nr.apply(n,arguments),n=t.apply(o,n),this.__chain__?new i(n,!0):n
}})}var nr,rr=0,tr={},er=+new Date+"",ur=/($^)/,or=/['\n\r\t\u2028\u2029\\]/g,ir="[object Arguments]",fr="[object Array]",ar="[object Boolean]",lr="[object Date]",cr="[object Number]",pr="[object Object]",sr="[object RegExp]",gr="[object String]",hr={"boolean":!1,"function":!0,object:!0,number:!1,string:!1,undefined:!1},vr={"\\":"\\","'":"'","\n":"n","\r":"r","\t":"t","\u2028":"u2028","\u2029":"u2029"},yr=hr[typeof window]&&window||this,mr=hr[typeof exports]&&exports&&!exports.nodeType&&exports,_r=hr[typeof module]&&module&&!module.nodeType&&module,dr=_r&&_r.exports===mr&&mr,br=hr[typeof global]&&global;
!br||br.global!==br&&br.window!==br||(yr=br);var wr=[],jr=Object.prototype,xr=yr._,Ar=jr.toString,Er=RegExp("^"+(Ar+"").replace(/[.*+?^${}()|[\]\\]/g,"\\$&").replace(/toString| for [^\]]+/g,".*?")+"$"),Tr=Math.ceil,Or=Math.floor,Sr=jr.hasOwnProperty,kr=Er.test(kr=Date.now)&&kr||function(){return+new Date},Nr=wr.push,Rr=Er.test(Rr=Object.create)&&Rr,Br=Er.test(Br=Array.isArray)&&Br,Fr=yr.isFinite,qr=yr.isNaN,Dr=Er.test(Dr=Object.keys)&&Dr,Mr=Math.max,$r=Math.min,Ir=Math.random;i.prototype=o.prototype;
var Wr={};!function(){var n={0:1,length:1};Wr.spliceObjects=(wr.splice.call(n,0,1),!n[0])}(1),o.templateSettings={escape:/<%-([\s\S]+?)%>/g,evaluate:/<%([\s\S]+?)%>/g,interpolate:/<%=([\s\S]+?)%>/g,variable:""},Rr||(a=function(n){if(E(n)){e.prototype=n;var r=new e;e.prototype=null}return r||{}}),_(arguments)||(_=function(n){return n&&typeof n=="object"&&typeof n.length=="number"&&Sr.call(n,"callee")||!1});var zr=Br||function(n){return n&&typeof n=="object"&&typeof n.length=="number"&&Ar.call(n)==fr||!1
},Cr=function(n){var r,t=[];if(!n||!hr[typeof n])return t;for(r in n)Sr.call(n,r)&&t.push(r);return t},Pr=Dr?function(n){return E(n)?Dr(n):[]}:Cr,Ur={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#x27;"},Vr=j(Ur),Gr=RegExp("("+Pr(Vr).join("|")+")","g"),Hr=RegExp("["+Pr(Ur).join("")+"]","g"),Jr=function(n,r){var t;if(!n||!hr[typeof n])return n;for(t in n)if(r(n[t],t,n)===tr)break;return n},Kr=function(n,r){var t;if(!n||!hr[typeof n])return n;for(t in n)if(Sr.call(n,t)&&r(n[t],t,n)===tr)break;
return n};A(/x/)&&(A=function(n){return typeof n=="function"&&"[object Function]"==Ar.call(n)});var Lr=g(function(n,r,t){Sr.call(n,t)?n[t]++:n[t]=1}),Qr=g(function(n,r,t){(Sr.call(n,t)?n[t]:n[t]=[]).push(r)}),Xr=g(function(n,r,t){n[t]=r});o.after=function(n,r){if(!A(r))throw new TypeError;return function(){return 1>--n?r.apply(this,arguments):void 0}},o.bind=L,o.bindAll=function(n){for(var r=1<arguments.length?c(arguments,!0,!1,1):w(n),t=-1,e=r.length;++t<e;){var u=r[t];n[u]=h(n[u],1,null,null,n)}return n
},o.chain=function(n){return n=new i(n),n.__chain__=!0,n},o.compact=function(n){for(var r=-1,t=n?n.length:0,e=[];++r<t;){var u=n[r];u&&e.push(u)}return e},o.compose=function(){for(var n=arguments,r=n.length;r--;)if(!A(n[r]))throw new TypeError;return function(){for(var r=arguments,t=n.length;t--;)r=[n[t].apply(this,r)];return r[0]}},o.countBy=Lr,o.debounce=X,o.defaults=b,o.defer=function(n){if(!A(n))throw new TypeError;var r=u(arguments,1);return setTimeout(function(){n.apply(nr,r)},1)},o.delay=function(n,r){if(!A(n))throw new TypeError;
var t=u(arguments,2);return setTimeout(function(){n.apply(nr,t)},r)},o.difference=U,o.filter=R,o.flatten=function(n,r){return c(n,r)},o.forEach=F,o.functions=w,o.groupBy=Qr,o.indexBy=Xr,o.initial=function(n,r,t){var e=0,o=n?n.length:0;if(typeof r!="number"&&null!=r){var i=o;for(r=Q(r,t,3);i--&&r(n[i],i,n);)e++}else e=null==r||t?1:r||e;return u(n,0,$r(Mr(0,o-e),o))},o.intersection=function(n){var r=arguments,t=r.length,e=-1,u=y(),o=n?n.length:0,i=[];n:for(;++e<o;){var f=n[e];if(0>u(i,f)){for(var a=t;--a;)if(0>u(r[a],f))continue n;
i.push(f)}}return i},o.invert=j,o.invoke=function(n,r){var t=u(arguments,2),e=-1,o=typeof r=="function",i=n?n.length:0,f=Array(typeof i=="number"?i:0);return F(n,function(n){f[++e]=(o?r:n[r]).apply(n,t)}),f},o.keys=Pr,o.map=D,o.max=M,o.memoize=function(n,r){var t={};return function(){var e=r?r.apply(this,arguments):er+arguments[0];return Sr.call(t,e)?t[e]:t[e]=n.apply(this,arguments)}},o.min=function(n,r,t){var e=1/0,u=e;typeof r!="function"&&t&&t[r]===n&&(r=null);var o=-1,i=n?n.length:0;if(null==r&&typeof i=="number")for(;++o<i;)t=n[o],t<u&&(u=t);
else r=null==r&&O(n)?charAtCallback:Q(r,t,3),F(n,function(n,t,o){t=r(n,t,o),t<e&&(e=t,u=n)});return u},o.omit=function(n){var r=y(),t=c(arguments,!0,!1,1),e={};return Jr(n,function(n,u){0>r(t,u)&&(e[u]=n)}),e},o.once=function(n){var r,t;if(!A(n))throw new TypeError;return function(){return r?t:(r=!0,t=n.apply(this,arguments),n=null,t)}},o.pairs=function(n){for(var r=-1,t=Pr(n),e=t.length,u=Array(e);++r<e;){var o=t[r];u[r]=[o,n[o]]}return u},o.partial=function(n){return h(n,16,u(arguments,1))},o.pick=function(n){for(var r=-1,t=c(arguments,!0,!1,1),e=t.length,u={};++r<e;){var o=t[r];
o in n&&(u[o]=n[o])}return u},o.pluck=$,o.range=function(n,r,t){n=+n||0,t=+t||1,null==r&&(r=n,n=0);var e=-1;r=Mr(0,Tr((r-n)/t));for(var u=Array(r);++e<r;)u[e]=n,n+=t;return u},o.reject=function(n,r,t){return r=Q(r,t,3),R(n,function(n,t,e){return!r(n,t,e)})},o.rest=H,o.shuffle=z,o.sortBy=function(n,t,e){var u=-1,o=n?n.length:0,i=Array(typeof o=="number"?o:0);for(t=Q(t,e,3),F(n,function(n,r,e){i[++u]={m:t(n,r,e),n:u,o:n}}),o=i.length,i.sort(r);o--;)i[o]=i[o].o;return i},o.tap=function(n,r){return r(n),n
},o.throttle=function(n,r,t){var e=!0,u=!0;if(!A(n))throw new TypeError;return false===t?e=!1:E(t)&&(e="leading"in t?t.leading:e,u="trailing"in t?t.trailing:u),t={},t.leading=e,t.maxWait=r,t.trailing=u,X(n,r,t)},o.times=function(n,r,t){n=-1<(n=+n)?n:0;var e=-1,u=Array(n);for(r=l(r,t,1);++e<n;)u[e]=r(e);return u},o.toArray=function(n){return zr(n)?u(n):n&&typeof n.length=="number"?D(n):S(n)},o.union=function(){return s(c(arguments,!0,!0))},o.uniq=K,o.values=S,o.where=P,o.without=function(n){return U(n,u(arguments,1))
},o.wrap=function(n,r){return h(r,16,[n])},o.zip=function(){for(var n=-1,r=M($(arguments,"length")),t=Array(0>r?0:r);++n<r;)t[n]=$(arguments,n);return t},o.collect=D,o.drop=H,o.each=F,o.extend=d,o.methods=w,o.object=function(n,r){for(var t=-1,e=n?n.length:0,u={};++t<e;){var o=n[t];r?u[o]=r[t]:o&&(u[o[0]]=o[1])}return u},o.select=R,o.tail=H,o.unique=K,o.clone=function(n){return E(n)?zr(n)?u(n):d({},n):n},o.contains=k,o.escape=function(n){return null==n?"":(n+"").replace(Hr,v)},o.every=N,o.find=B,o.has=function(n,r){return n?Sr.call(n,r):!1
},o.identity=Y,o.indexOf=G,o.isArguments=_,o.isArray=zr,o.isBoolean=function(n){return true===n||false===n||n&&typeof n=="object"&&Ar.call(n)==ar||!1},o.isDate=function(n){return n&&typeof n=="object"&&Ar.call(n)==lr||!1},o.isElement=function(n){return n&&1===n.nodeType||!1},o.isEmpty=x,o.isEqual=function(n,r){return p(n,r)},o.isFinite=function(n){return Fr(n)&&!qr(parseFloat(n))},o.isFunction=A,o.isNaN=function(n){return T(n)&&n!=+n},o.isNull=function(n){return null===n},o.isNumber=T,o.isObject=E,o.isRegExp=function(n){return n&&hr[typeof n]&&Ar.call(n)==sr||!1
},o.isString=O,o.isUndefined=function(n){return typeof n=="undefined"},o.lastIndexOf=function(n,r,t){var e=n?n.length:0;for(typeof t=="number"&&(e=(0>t?Mr(0,e+t):$r(t,e-1))+1);e--;)if(n[e]===r)return e;return-1},o.mixin=Z,o.noConflict=function(){return yr._=xr,this},o.random=function(n,r){return null==n&&null==r&&(r=1),n=+n||0,null==r?(r=n,n=0):r=+r||0,n+Or(Ir()*(r-n+1))},o.reduce=I,o.reduceRight=W,o.result=function(n,r){if(n){var t=n[r];return A(t)?n[r]():t}},o.size=function(n){var r=n?n.length:0;
return typeof r=="number"?r:Pr(n).length},o.some=C,o.sortedIndex=J,o.template=function(n,r,e){var u=o,i=u.templateSettings;n=(n||"")+"",e=b({},e,i);var f=0,a="__p+='",i=e.variable;n.replace(RegExp((e.escape||ur).source+"|"+(e.interpolate||ur).source+"|"+(e.evaluate||ur).source+"|$","g"),function(r,e,u,o,i){return a+=n.slice(f,i).replace(or,t),e&&(a+="'+_.escape("+e+")+'"),o&&(a+="';"+o+";\n__p+='"),u&&(a+="'+((__t=("+u+"))==null?'':__t)+'"),f=i+r.length,r}),a+="';",i||(i="obj",a="with("+i+"||{}){"+a+"}"),a="function("+i+"){var __t,__p='',__j=Array.prototype.join;function print(){__p+=__j.call(arguments,'')}"+a+"return __p}";
try{var l=Function("_","return "+a)(u)}catch(c){throw c.source=a,c}return r?l(r):(l.source=a,l)},o.unescape=function(n){return null==n?"":(n+"").replace(Gr,m)},o.uniqueId=function(n){var r=++rr+"";return n?n+r:r},o.all=N,o.any=C,o.detect=B,o.findWhere=function(n,r){return P(n,r,!0)},o.foldl=I,o.foldr=W,o.include=k,o.inject=I,o.first=V,o.last=function(n,r,t){var e=0,o=n?n.length:0;if(typeof r!="number"&&null!=r){var i=o;for(r=Q(r,t,3);i--&&r(n[i],i,n);)e++}else if(e=r,null==e||t)return n?n[o-1]:nr;
return u(n,Mr(0,o-e))},o.sample=function(n,r,t){return n&&typeof n.length!="number"&&(n=S(n)),null==r||t?n?n[0+Or(Ir()*(n.length-1-0+1))]:nr:(n=z(n),n.length=$r(Mr(0,r),n.length),n)},o.take=V,o.head=V,Z(o),o.VERSION="2.2.1",o.prototype.chain=function(){return this.__chain__=!0,this},o.prototype.value=function(){return this.__wrapped__},F("pop push reverse shift sort splice unshift".split(" "),function(n){var r=wr[n];o.prototype[n]=function(){var n=this.__wrapped__;return r.apply(n,arguments),Wr.spliceObjects||0!==n.length||delete n[0],this
}}),F(["concat","join","slice"],function(n){var r=wr[n];o.prototype[n]=function(){var n=r.apply(this.__wrapped__,arguments);return this.__chain__&&(n=new i(n),n.__chain__=!0),n}}),typeof define=="function"&&typeof define.amd=="object"&&define.amd?(yr._=o, define(function(){return o})):mr&&_r?dr?(_r.exports=o)._=o:mr._=o:yr._=o}).call(this);
;(function(){function n(n,r,t){t=(t||0)-1;for(var e=n?n.length:0;++t<e;)if(n[t]===r)return t;return-1}function r(n,r){var t=n.m,e=r.m;if(t!==e){if(t>e||typeof t=="undefined")return 1;if(t<e||typeof e=="undefined")return-1}return n.n-r.n}function t(n){return"\\"+yr[n]}function e(){}function u(n,r,t){r||(r=0),typeof t=="undefined"&&(t=n?n.length:0);var e=-1;t=t-r||0;for(var u=Array(0>t?0:t);++e<t;)u[e]=n[r+e];return u}function o(n){return n instanceof o?n:new i(n)}function i(n,r){this.__chain__=!!r,this.__wrapped__=n
}function f(n,r,t){function e(){if(t){var u=t.slice();Rr.apply(u,arguments)}if(this instanceof e){var o=a(n.prototype),u=n.apply(o,u||arguments);return T(u)?u:o}return n.apply(r,u||arguments)}return e}function a(n){return T(n)?Br(n):{}}function l(n,r,t){if(typeof n!="function")return Z;if(typeof r=="undefined"||!("prototype"in n))return n;switch(t){case 1:return function(t){return n.call(r,t)};case 2:return function(t,e){return n.call(r,t,e)};case 3:return function(t,e,u){return n.call(r,t,e,u)};
case 4:return function(t,e,u,o){return n.call(r,t,e,u,o)}}return Q(n,r)}function c(n,r,t,e,o,i){function f(){var m=l?o:this;if(p||g||h){if(g){var _=t.slice();Rr.apply(_,arguments)}if((h||p)&&(_||(_=u(arguments)),h&&Rr.apply(_,e),p&&_.length<i))return r|=16,v(n,s?r:-4&r,_,null,o,i)}return _||(_=arguments),c&&(n=m[y]),this instanceof f?(m=a(n.prototype),_=n.apply(m,_),T(_)?_:m):n.apply(m,_)}var l=1&r,c=2&r,p=4&r,s=8&r,g=16&r,h=32&r,y=n;return f}function p(n,r,t,e){e=(e||0)-1;for(var u=n?n.length:0,o=[];++e<u;){var i=n[e];
if(i&&typeof i=="object"&&typeof i.length=="number"&&(Cr(i)||d(i))){r||(i=p(i,r,t));var f=-1,a=i.length,l=o.length;for(o.length+=a;++f<a;)o[l++]=i[f]}else t||o.push(i)}return o}function s(n,r,t,e){if(n===r)return 0!==n||1/n==1/r;if(n===n&&!(n&&vr[typeof n]||r&&vr[typeof r]))return!1;if(null==n||null==r)return n===r;var u=Er.call(n),i=Er.call(r);if(u!=i)return!1;switch(u){case lr:case cr:return+n==+r;case pr:return n!=+n?r!=+r:0==n?1/n==1/r:n==+r;case gr:case hr:return n==r+""}if(i=u==ar,!i){if(kr.call(n,"__wrapped__")||r instanceof o)return s(n.__wrapped__||n,r.__wrapped__||r,t,e);
if(u!=sr)return!1;var u=n.constructor,f=r.constructor;if(u!=f&&!(E(u)&&u instanceof u&&E(f)&&f instanceof f)&&"constructor"in n&&"constructor"in r)return!1}for(t||(t=[]),e||(e=[]),u=t.length;u--;)if(t[u]==n)return e[u]==r;var a=!0,l=0;if(t.push(n),e.push(r),i){if(l=r.length,a=l==n.length)for(;l--&&(a=s(n[l],r[l],t,e)););return a}return Kr(r,function(r,u,o){return kr.call(o,u)?(l++,!(a=kr.call(n,u)&&s(n[u],r,t,e))&&er):void 0}),a&&Kr(n,function(n,r,t){return kr.call(t,r)?!(a=-1<--l)&&er:void 0}),a
}function g(n,r,t){for(var e=-1,u=m(),o=n?n.length:0,i=[],f=t?[]:i;++e<o;){var a=n[e],l=t?t(a,e,n):a;(r?!e||f[f.length-1]!==l:0>u(f,l))&&(t&&f.push(l),i.push(a))}return i}function h(n){return function(r,t,e){var u={};t=X(t,e,3),e=-1;var o=r?r.length:0;if(typeof o=="number")for(;++e<o;){var i=r[e];n(u,i,t(i,e,r),r)}else Lr(r,function(r,e,o){n(u,r,t(r,e,o),o)});return u}}function v(n,r,t,e,u,o){var i=16&r,a=32&r;if(!(2&r||E(n)))throw new TypeError;return i&&!t.length&&(r&=-17,t=!1),a&&!e.length&&(r&=-33,e=!1),1==r||17===r?f(n,u,t):c(n,r,t,e,u,o)
}function y(n){return Vr[n]}function m(){var r=(r=o.indexOf)===H?n:r;return r}function _(n){return Gr[n]}function d(n){return n&&typeof n=="object"&&typeof n.length=="number"&&Er.call(n)==fr||!1}function b(n){if(!n)return n;for(var r=1,t=arguments.length;r<t;r++){var e=arguments[r];if(e)for(var u in e)n[u]=e[u]}return n}function w(n){if(!n)return n;for(var r=1,t=arguments.length;r<t;r++){var e=arguments[r];if(e)for(var u in e)"undefined"==typeof n[u]&&(n[u]=e[u])}return n}function j(n){var r=[];return Kr(n,function(n,t){E(n)&&r.push(t)
}),r.sort()}function x(n){for(var r=-1,t=Ur(n),e=t.length,u={};++r<e;){var o=t[r];u[n[o]]=o}return u}function A(n){if(!n)return!0;if(Cr(n)||S(n))return!n.length;for(var r in n)if(kr.call(n,r))return!1;return!0}function E(n){return typeof n=="function"}function T(n){return!(!n||!vr[typeof n])}function O(n){return typeof n=="number"||n&&typeof n=="object"&&Er.call(n)==pr||!1}function S(n){return typeof n=="string"||n&&typeof n=="object"&&Er.call(n)==hr||!1}function k(n){for(var r=-1,t=Ur(n),e=t.length,u=Array(e);++r<e;)u[r]=n[t[r]];
return u}function N(n,r){var t=m(),e=n?n.length:0,u=!1;return e&&typeof e=="number"?u=-1<t(n,r):Lr(n,function(n){return(u=n===r)&&er}),u}function R(n,r,t){var e=!0;r=X(r,t,3),t=-1;var u=n?n.length:0;if(typeof u=="number")for(;++t<u&&(e=!!r(n[t],t,n)););else Lr(n,function(n,t,u){return!(e=!!r(n,t,u))&&er});return e}function B(n,r,t){var e=[];r=X(r,t,3),t=-1;var u=n?n.length:0;if(typeof u=="number")for(;++t<u;){var o=n[t];r(o,t,n)&&e.push(o)}else Lr(n,function(n,t,u){r(n,t,u)&&e.push(n)});return e}function F(n,r,t){r=X(r,t,3),t=-1;
var e=n?n.length:0;if(typeof e!="number"){var u;return Lr(n,function(n,t,e){return r(n,t,e)?(u=n,er):void 0}),u}for(;++t<e;){var o=n[t];if(r(o,t,n))return o}}function q(n,r,t){var e=-1,u=n?n.length:0;if(r=r&&typeof t=="undefined"?r:l(r,t,3),typeof u=="number")for(;++e<u&&r(n[e],e,n)!==er;);else Lr(n,r)}function D(n,r){var t=n?n.length:0;if(typeof t=="number")for(;t--&&false!==r(n[t],t,n););else{var e=Ur(n),t=e.length;Lr(n,function(n,u,o){return u=e?e[--t]:--t,false===r(o[u],u,o)&&er})}}function M(n,r,t){var e=-1,u=n?n.length:0;
if(r=X(r,t,3),typeof u=="number")for(var o=Array(u);++e<u;)o[e]=r(n[e],e,n);else o=[],Lr(n,function(n,t,u){o[++e]=r(n,t,u)});return o}function $(n,r,t){var e=-1/0,u=e;typeof r!="function"&&t&&t[r]===n&&(r=null);var o=-1,i=n?n.length:0;if(null==r&&typeof i=="number")for(;++o<i;)t=n[o],t>u&&(u=t);else r=null==r&&S(n)?charAtCallback:X(r,t,3),q(n,function(n,t,o){t=r(n,t,o),t>e&&(e=t,u=n)});return u}function I(n,r){var t=-1,e=n?n.length:0;if(typeof e=="number")for(var u=Array(e);++t<e;)u[t]=n[t][r];return u||M(n,r)
}function W(n,r,t,e){if(!n)return t;var u=3>arguments.length;r=l(r,e,4);var o=-1,i=n.length;if(typeof i=="number")for(u&&(t=n[++o]);++o<i;)t=r(t,n[o],o,n);else Lr(n,function(n,e,o){t=u?(u=!1,n):r(t,n,e,o)});return t}function z(n,r,t,e){var u=3>arguments.length;return r=l(r,e,4),D(n,function(n,e,o){t=u?(u=!1,n):r(t,n,e,o)}),t}function C(n){var r=-1,t=n?n.length:0,e=Array(typeof t=="number"?t:0);return q(n,function(n){var t;t=++r,t=0+Sr(Wr()*(t-0+1)),e[r]=e[t],e[t]=n}),e}function P(n,r,t){var e;r=X(r,t,3),t=-1;
var u=n?n.length:0;if(typeof u=="number")for(;++t<u&&!(e=r(n[t],t,n)););else Lr(n,function(n,t,u){return(e=r(n,t,u))&&er});return!!e}function U(n,r,t){return t&&A(r)?rr:(t?F:B)(n,r)}function V(n){for(var r=-1,t=m(),e=n?n.length:0,u=p(arguments,!0,!0,1),o=[];++r<e;){var i=n[r];0>t(u,i)&&o.push(i)}return o}function G(n,r,t){var e=0,o=n?n.length:0;if(typeof r!="number"&&null!=r){var i=-1;for(r=X(r,t,3);++i<o&&r(n[i],i,n);)e++}else if(e=r,null==e||t)return n?n[0]:rr;return u(n,0,Ir($r(0,e),o))}function H(r,t,e){if(typeof e=="number"){var u=r?r.length:0;
e=0>e?$r(0,u+e):e||0}else if(e)return e=K(r,t),r[e]===t?e:-1;return n(r,t,e)}function J(n,r,t){if(typeof r!="number"&&null!=r){var e=0,o=-1,i=n?n.length:0;for(r=X(r,t,3);++o<i&&r(n[o],o,n);)e++}else e=null==r||t?1:$r(0,r);return u(n,e)}function K(n,r,t,e){var u=0,o=n?n.length:u;for(t=t?X(t,e,1):Z,r=t(r);u<o;)e=u+o>>>1,t(n[e])<r?u=e+1:o=e;return u}function L(n,r,t,e){return typeof r!="boolean"&&null!=r&&(e=t,t=typeof r!="function"&&e&&e[r]===n?null:r,r=!1),null!=t&&(t=X(t,e,3)),g(n,r,t)}function Q(n,r){return 2<arguments.length?v(n,17,u(arguments,2),null,r):v(n,1,null,null,r)
}function X(n,r,t){var e=typeof n;if(null==n||"function"==e)return l(n,r,t);if("object"!=e)return function(r){return r[n]};var u=Ur(n);return function(r){for(var t=u.length,e=!1;t--&&(e=r[u[t]]===n[u[t]]););return e}}function Y(n,r,t){var e,u,o,i,f,a,l,c=0,p=!1,s=!0;if(!E(n))throw new TypeError;if(r=$r(0,r)||0,true===t)var g=!0,s=!1;else T(t)&&(g=t.leading,p="maxWait"in t&&($r(r,t.maxWait)||0),s="trailing"in t?t.trailing:s);var h=function(){var t=r-(Nr()-i);0<t?a=setTimeout(h,t):(u&&clearTimeout(u),t=l,u=a=l=rr,t&&(c=Nr(),o=n.apply(f,e)))
},v=function(){a&&clearTimeout(a),u=a=l=rr,(s||p!==r)&&(c=Nr(),o=n.apply(f,e))};return function(){if(e=arguments,i=Nr(),f=this,l=s&&(a||!g),false===p)var t=g&&!a;else{u||g||(c=i);var y=p-(i-c);0<y?u||(u=setTimeout(v,y)):(u&&(u=clearTimeout(u)),c=i,o=n.apply(f,e))}return a||r===p||(a=setTimeout(h,r)),t&&(o=n.apply(f,e)),o}}function Z(n){return n}function nr(n){q(j(n),function(r){var t=o[r]=n[r];o.prototype[r]=function(){var n=[this.__wrapped__];return Rr.apply(n,arguments),n=t.apply(o,n),this.__chain__?new i(n,!0):n
}})}var rr,tr=0,er={},ur=+new Date+"",or=/($^)/,ir=/['\n\r\t\u2028\u2029\\]/g,fr="[object Arguments]",ar="[object Array]",lr="[object Boolean]",cr="[object Date]",pr="[object Number]",sr="[object Object]",gr="[object RegExp]",hr="[object String]",vr={"boolean":!1,"function":!0,object:!0,number:!1,string:!1,undefined:!1},yr={"\\":"\\","'":"'","\n":"n","\r":"r","\t":"t","\u2028":"u2028","\u2029":"u2029"},mr=vr[typeof window]&&window||this,_r=vr[typeof exports]&&exports&&!exports.nodeType&&exports,dr=vr[typeof module]&&module&&!module.nodeType&&module,br=dr&&dr.exports===_r&&_r,wr=vr[typeof global]&&global;
!wr||wr.global!==wr&&wr.window!==wr||(mr=wr);var jr=[],xr=Object.prototype,Ar=mr._,Er=xr.toString,Tr=RegExp("^"+(Er+"").replace(/[.*+?^${}()|[\]\\]/g,"\\$&").replace(/toString| for [^\]]+/g,".*?")+"$"),Or=Math.ceil,Sr=Math.floor,kr=xr.hasOwnProperty,Nr=Tr.test(Nr=Date.now)&&Nr||function(){return+new Date},Rr=jr.push,Br=Tr.test(Br=Object.create)&&Br,Fr=Tr.test(Fr=Array.isArray)&&Fr,qr=mr.isFinite,Dr=mr.isNaN,Mr=Tr.test(Mr=Object.keys)&&Mr,$r=Math.max,Ir=Math.min,Wr=Math.random;i.prototype=o.prototype;
var zr={};!function(){var n={0:1,length:1};zr.spliceObjects=(jr.splice.call(n,0,1),!n[0])}(1),o.templateSettings={escape:/<%-([\s\S]+?)%>/g,evaluate:/<%([\s\S]+?)%>/g,interpolate:/<%=([\s\S]+?)%>/g,variable:""},Br||(a=function(n){if(T(n)){e.prototype=n;var r=new e;e.prototype=null}return r||{}}),d(arguments)||(d=function(n){return n&&typeof n=="object"&&typeof n.length=="number"&&kr.call(n,"callee")||!1});var Cr=Fr||function(n){return n&&typeof n=="object"&&typeof n.length=="number"&&Er.call(n)==ar||!1
},Pr=function(n){var r,t=[];if(!n||!vr[typeof n])return t;for(r in n)kr.call(n,r)&&t.push(r);return t},Ur=Mr?function(n){return T(n)?Mr(n):[]}:Pr,Vr={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#x27;"},Gr=x(Vr),Hr=RegExp("("+Ur(Gr).join("|")+")","g"),Jr=RegExp("["+Ur(Vr).join("")+"]","g"),Kr=function(n,r){var t;if(!n||!vr[typeof n])return n;for(t in n)if(r(n[t],t,n)===er)break;return n},Lr=function(n,r){var t;if(!n||!vr[typeof n])return n;for(t in n)if(kr.call(n,t)&&r(n[t],t,n)===er)break;
return n};E(/x/)&&(E=function(n){return typeof n=="function"&&"[object Function]"==Er.call(n)});var Qr=h(function(n,r,t){kr.call(n,t)?n[t]++:n[t]=1}),Xr=h(function(n,r,t){(kr.call(n,t)?n[t]:n[t]=[]).push(r)}),Yr=h(function(n,r,t){n[t]=r});o.after=function(n,r){if(!E(r))throw new TypeError;return function(){return 1>--n?r.apply(this,arguments):void 0}},o.bind=Q,o.bindAll=function(n){for(var r=1<arguments.length?p(arguments,!0,!1,1):j(n),t=-1,e=r.length;++t<e;){var u=r[t];n[u]=v(n[u],1,null,null,n)}return n
},o.chain=function(n){return n=new i(n),n.__chain__=!0,n},o.compact=function(n){for(var r=-1,t=n?n.length:0,e=[];++r<t;){var u=n[r];u&&e.push(u)}return e},o.compose=function(){for(var n=arguments,r=n.length;r--;)if(!E(n[r]))throw new TypeError;return function(){for(var r=arguments,t=n.length;t--;)r=[n[t].apply(this,r)];return r[0]}},o.countBy=Qr,o.debounce=Y,o.defaults=w,o.defer=function(n){if(!E(n))throw new TypeError;var r=u(arguments,1);return setTimeout(function(){n.apply(rr,r)},1)},o.delay=function(n,r){if(!E(n))throw new TypeError;
var t=u(arguments,2);return setTimeout(function(){n.apply(rr,t)},r)},o.difference=V,o.filter=B,o.flatten=function(n,r){return p(n,r)},o.forEach=q,o.functions=j,o.groupBy=Xr,o.indexBy=Yr,o.initial=function(n,r,t){var e=0,o=n?n.length:0;if(typeof r!="number"&&null!=r){var i=o;for(r=X(r,t,3);i--&&r(n[i],i,n);)e++}else e=null==r||t?1:r||e;return u(n,0,Ir($r(0,o-e),o))},o.intersection=function(n){var r=arguments,t=r.length,e=-1,u=m(),o=n?n.length:0,i=[];n:for(;++e<o;){var f=n[e];if(0>u(i,f)){for(var a=t;--a;)if(0>u(r[a],f))continue n;
i.push(f)}}return i},o.invert=x,o.invoke=function(n,r){var t=u(arguments,2),e=-1,o=typeof r=="function",i=n?n.length:0,f=Array(typeof i=="number"?i:0);return q(n,function(n){f[++e]=(o?r:n[r]).apply(n,t)}),f},o.keys=Ur,o.map=M,o.max=$,o.memoize=function(n,r){var t={};return function(){var e=r?r.apply(this,arguments):ur+arguments[0];return kr.call(t,e)?t[e]:t[e]=n.apply(this,arguments)}},o.min=function(n,r,t){var e=1/0,u=e;typeof r!="function"&&t&&t[r]===n&&(r=null);var o=-1,i=n?n.length:0;if(null==r&&typeof i=="number")for(;++o<i;)t=n[o],t<u&&(u=t);
else r=null==r&&S(n)?charAtCallback:X(r,t,3),q(n,function(n,t,o){t=r(n,t,o),t<e&&(e=t,u=n)});return u},o.omit=function(n){var r=m(),t=p(arguments,!0,!1,1),e={};return Kr(n,function(n,u){0>r(t,u)&&(e[u]=n)}),e},o.once=function(n){var r,t;if(!E(n))throw new TypeError;return function(){return r?t:(r=!0,t=n.apply(this,arguments),n=null,t)}},o.pairs=function(n){for(var r=-1,t=Ur(n),e=t.length,u=Array(e);++r<e;){var o=t[r];u[r]=[o,n[o]]}return u},o.partial=function(n){return v(n,16,u(arguments,1))},o.pick=function(n){for(var r=-1,t=p(arguments,!0,!1,1),e=t.length,u={};++r<e;){var o=t[r];
o in n&&(u[o]=n[o])}return u},o.pluck=I,o.range=function(n,r,t){n=+n||0,t=+t||1,null==r&&(r=n,n=0);var e=-1;r=$r(0,Or((r-n)/t));for(var u=Array(r);++e<r;)u[e]=n,n+=t;return u},o.reject=function(n,r,t){return r=X(r,t,3),B(n,function(n,t,e){return!r(n,t,e)})},o.rest=J,o.shuffle=C,o.sortBy=function(n,t,e){var u=-1,o=n?n.length:0,i=Array(typeof o=="number"?o:0);for(t=X(t,e,3),q(n,function(n,r,e){i[++u]={m:t(n,r,e),n:u,o:n}}),o=i.length,i.sort(r);o--;)i[o]=i[o].o;return i},o.tap=function(n,r){return r(n),n
},o.throttle=function(n,r,t){var e=!0,u=!0;if(!E(n))throw new TypeError;return false===t?e=!1:T(t)&&(e="leading"in t?t.leading:e,u="trailing"in t?t.trailing:u),t={},t.leading=e,t.maxWait=r,t.trailing=u,Y(n,r,t)},o.times=function(n,r,t){n=-1<(n=+n)?n:0;var e=-1,u=Array(n);for(r=l(r,t,1);++e<n;)u[e]=r(e);return u},o.toArray=function(n){return Cr(n)?u(n):n&&typeof n.length=="number"?M(n):k(n)},o.union=function(){return g(p(arguments,!0,!0))},o.uniq=L,o.values=k,o.where=U,o.without=function(n){return V(n,u(arguments,1))
},o.wrap=function(n,r){return v(r,16,[n])},o.zip=function(){for(var n=-1,r=$(I(arguments,"length")),t=Array(0>r?0:r);++n<r;)t[n]=I(arguments,n);return t},o.collect=M,o.drop=J,o.each=q,o.extend=b,o.methods=j,o.object=function(n,r){for(var t=-1,e=n?n.length:0,u={};++t<e;){var o=n[t];r?u[o]=r[t]:o&&(u[o[0]]=o[1])}return u},o.select=B,o.tail=J,o.unique=L,o.clone=function(n){return T(n)?Cr(n)?u(n):b({},n):n},o.contains=N,o.escape=function(n){return null==n?"":(n+"").replace(Jr,y)},o.every=R,o.find=F,o.has=function(n,r){return n?kr.call(n,r):!1
},o.identity=Z,o.indexOf=H,o.isArguments=d,o.isArray=Cr,o.isBoolean=function(n){return true===n||false===n||n&&typeof n=="object"&&Er.call(n)==lr||!1},o.isDate=function(n){return n&&typeof n=="object"&&Er.call(n)==cr||!1},o.isElement=function(n){return n&&1===n.nodeType||!1},o.isEmpty=A,o.isEqual=function(n,r){return s(n,r)},o.isFinite=function(n){return qr(n)&&!Dr(parseFloat(n))},o.isFunction=E,o.isNaN=function(n){return O(n)&&n!=+n},o.isNull=function(n){return null===n},o.isNumber=O,o.isObject=T,o.isRegExp=function(n){return n&&vr[typeof n]&&Er.call(n)==gr||!1
},o.isString=S,o.isUndefined=function(n){return typeof n=="undefined"},o.lastIndexOf=function(n,r,t){var e=n?n.length:0;for(typeof t=="number"&&(e=(0>t?$r(0,e+t):Ir(t,e-1))+1);e--;)if(n[e]===r)return e;return-1},o.mixin=nr,o.noConflict=function(){return mr._=Ar,this},o.random=function(n,r){return null==n&&null==r&&(r=1),n=+n||0,null==r?(r=n,n=0):r=+r||0,n+Sr(Wr()*(r-n+1))},o.reduce=W,o.reduceRight=z,o.result=function(n,r){if(n){var t=n[r];return E(t)?n[r]():t}},o.size=function(n){var r=n?n.length:0;
return typeof r=="number"?r:Ur(n).length},o.some=P,o.sortedIndex=K,o.template=function(n,r,e){var u=o,i=u.templateSettings;n=(n||"")+"",e=w({},e,i);var f=0,a="__p+='",i=e.variable;n.replace(RegExp((e.escape||or).source+"|"+(e.interpolate||or).source+"|"+(e.evaluate||or).source+"|$","g"),function(r,e,u,o,i){return a+=n.slice(f,i).replace(ir,t),e&&(a+="'+_.escape("+e+")+'"),o&&(a+="';"+o+";\n__p+='"),u&&(a+="'+((__t=("+u+"))==null?'':__t)+'"),f=i+r.length,r}),a+="';",i||(i="obj",a="with("+i+"||{}){"+a+"}"),a="function("+i+"){var __t,__p='',__j=Array.prototype.join;function print(){__p+=__j.call(arguments,'')}"+a+"return __p}";
try{var l=Function("_","return "+a)(u)}catch(c){throw c.source=a,c}return r?l(r):(l.source=a,l)},o.unescape=function(n){return null==n?"":(n+"").replace(Hr,_)},o.uniqueId=function(n){var r=++tr+"";return n?n+r:r},o.all=R,o.any=P,o.detect=F,o.findWhere=function(n,r){return U(n,r,!0)},o.foldl=W,o.foldr=z,o.include=N,o.inject=W,o.first=G,o.last=function(n,r,t){var e=0,o=n?n.length:0;if(typeof r!="number"&&null!=r){var i=o;for(r=X(r,t,3);i--&&r(n[i],i,n);)e++}else if(e=r,null==e||t)return n?n[o-1]:rr;
return u(n,$r(0,o-e))},o.sample=function(n,r,t){return n&&typeof n.length!="number"&&(n=k(n)),null==r||t?n?n[0+Sr(Wr()*(n.length-1-0+1))]:rr:(n=C(n),n.length=Ir($r(0,r),n.length),n)},o.take=G,o.head=G,nr(o),o.VERSION="2.2.1",o.prototype.chain=function(){return this.__chain__=!0,this},o.prototype.value=function(){return this.__wrapped__},q("pop push reverse shift sort splice unshift".split(" "),function(n){var r=jr[n];o.prototype[n]=function(){var n=this.__wrapped__;return r.apply(n,arguments),zr.spliceObjects||0!==n.length||delete n[0],this
}}),q(["concat","join","slice"],function(n){var r=jr[n];o.prototype[n]=function(){var n=r.apply(this.__wrapped__,arguments);return this.__chain__&&(n=new i(n),n.__chain__=!0),n}}),typeof define=="function"&&typeof define.amd=="object"&&define.amd?(mr._=o, define(function(){return o})):_r&&dr?br?(dr.exports=o)._=o:_r._=o:mr._=o}).call(this);

145
lodash.js
View File

@@ -528,6 +528,10 @@
splice = arrayRef.splice,
unshift = arrayRef.unshift;
/** Used to detect `setImmediate` in Node.js */
var setImmediate = typeof (setImmediate = freeGlobal && moduleExports && freeGlobal.setImmediate) == 'function' &&
!reNative.test(setImmediate) && setImmediate;
/** Used to set meta data */
var defineProperty = (function() {
// IE 8 only accepts DOM elements
@@ -550,10 +554,6 @@
nativeParseInt = context.parseInt,
nativeRandom = Math.random;
/** Used to detect `setImmediate` in Node.js */
var isV8 = nativeCreate && !/\n/.test(nativeCreate) && !reNative.test(context.attachEvent),
setImmediate = typeof (setImmediate = isV8 && moduleExports && context.setImmediate) == 'function' && setImmediate;
/** Used to lookup a built-in constructor by [[Class]] */
var ctorByClass = {};
ctorByClass[arrayClass] = Array;
@@ -995,16 +995,18 @@
/*--------------------------------------------------------------------------*/
/**
* The base implementation of `_.bind` without `func` type checking or support
* for setting meta data.
* The base implementation of `_.bind` that creates the bound function and
* sets its meta data.
*
* @private
* @param {Function} func The function to bind.
* @param {*} [thisArg] The `this` binding of `func`.
* @param {Array} [partialArgs] An array of arguments to be partially applied.
* @param {Array} bindData The bind data array.
* @returns {Function} Returns the new bound function.
*/
function baseBind(func, thisArg, partialArgs) {
function baseBind(bindData) {
var func = bindData[0],
partialArgs = bindData[2],
thisArg = bindData[4];
function bound() {
// `Function#bind` spec
// http://es5.github.io/#x15.3.4.5
@@ -1022,6 +1024,7 @@
}
return func.apply(thisArg, args || arguments);
}
setBindData(bound, bindData);
return bound;
}
@@ -1197,6 +1200,61 @@
return bind(func, thisArg);
}
/**
* The base implementation of `createWrapper` that creates the wrapper and
* sets its meta data.
*
* @private
* @param {Array} bindData The bind data array.
* @returns {Function} Returns the new function.
*/
function baseCreateWrapper(bindData) {
var func = bindData[0],
bitmask = bindData[1],
partialArgs = bindData[2],
partialRightArgs = bindData[3],
thisArg = bindData[4],
arity = bindData[5];
var isBind = bitmask & 1,
isBindKey = bitmask & 2,
isCurry = bitmask & 4,
isCurryBound = bitmask & 8,
key = func;
function bound() {
var thisBinding = isBind ? thisArg : this;
if (isCurry || partialArgs || partialRightArgs) {
if (partialArgs) {
var args = partialArgs.slice();
push.apply(args, arguments);
}
if (partialRightArgs || isCurry) {
args || (args = slice(arguments));
if (partialRightArgs) {
push.apply(args, partialRightArgs);
}
if (isCurry && args.length < arity) {
bitmask |= 16 & ~32;
return baseCreateWrapper([func, (isCurryBound ? bitmask : bitmask & ~3), args, null, thisArg, arity]);
}
}
}
args || (args = arguments);
if (isBindKey) {
func = thisBinding[key];
}
if (this instanceof bound) {
thisBinding = baseCreate(func.prototype);
var result = func.apply(thisBinding, args);
return isObject(result) ? result : thisBinding;
}
return func.apply(thisBinding, args);
}
setBindData(bound, bindData);
return bound;
}
/**
* The base implementation of `_.flatten` without support for callback
* shorthands or `thisArg` binding.
@@ -1588,16 +1646,15 @@
* provided to the new function.
* @param {*} [thisArg] The `this` binding of `func`.
* @param {number} [arity] The arity of `func`.
* @returns {Function} Returns the new bound function.
* @returns {Function} Returns the new function.
*/
function createBound(func, bitmask, partialArgs, partialRightArgs, thisArg, arity) {
function createWrapper(func, bitmask, partialArgs, partialRightArgs, thisArg, arity) {
var isBind = bitmask & 1,
isBindKey = bitmask & 2,
isCurry = bitmask & 4,
isCurryBound = bitmask & 8,
isPartial = bitmask & 16,
isPartialRight = bitmask & 32,
key = func;
isPartialRight = bitmask & 32;
if (!isBindKey && !isFunction(func)) {
throw new TypeError;
@@ -1636,45 +1693,11 @@
}
// merge flags
bindData[1] |= bitmask;
return createBound.apply(null, bindData);
return createWrapper.apply(null, bindData);
}
// fast path for `_.bind`
if (bitmask == 1 || bitmask === 17) {
var bound = baseBind(func, thisArg, partialArgs);
}
else {
bound = function() {
var thisBinding = isBind ? thisArg : this;
if (isCurry || isPartial || isPartialRight) {
if (isPartial) {
var args = partialArgs.slice();
push.apply(args, arguments);
}
if (isPartialRight || isCurry) {
args || (args = slice(arguments));
if (isPartialRight) {
push.apply(args, partialRightArgs);
}
if (isCurry && args.length < arity) {
bitmask |= 16 & ~32;
return createBound(func, (isCurryBound ? bitmask : bitmask & ~3), args, null, thisArg, arity);
}
}
}
args || (args = arguments);
if (isBindKey) {
func = thisBinding[key];
}
if (this instanceof bound) {
thisBinding = baseCreate(func.prototype);
var result = func.apply(thisBinding, args);
return isObject(result) ? result : thisBinding;
}
return func.apply(thisBinding, args);
};
}
setBindData(bound, [func, bitmask, partialArgs, partialRightArgs, thisArg, arity]);
return bound;
var creater = (bitmask == 1 || bitmask === 17) ? baseBind : baseCreateWrapper;
return creater([func, bitmask, partialArgs, partialRightArgs, thisArg, arity]);
}
/**
@@ -1755,7 +1778,7 @@
*
* @private
* @param {Function} func The function to set data on.
* @param {*} value The value to set.
* @param {Array} value The data array to set.
*/
var setBindData = !defineProperty ? noop : function(func, value) {
descriptor.value = value;
@@ -5372,8 +5395,8 @@
*/
function bind(func, thisArg) {
return arguments.length > 2
? createBound(func, 17, slice(arguments, 2), null, thisArg)
: createBound(func, 1, null, null, thisArg);
? createWrapper(func, 17, slice(arguments, 2), null, thisArg)
: createWrapper(func, 1, null, null, thisArg);
}
/**
@@ -5407,7 +5430,7 @@
while (++index < length) {
var key = funcs[index];
object[key] = createBound(object[key], 1, null, null, object);
object[key] = createWrapper(object[key], 1, null, null, object);
}
return object;
}
@@ -5448,8 +5471,8 @@
*/
function bindKey(object, key) {
return arguments.length > 2
? createBound(key, 19, slice(arguments, 2), null, object)
: createBound(key, 3, null, null, object);
? createWrapper(key, 19, slice(arguments, 2), null, object)
: createWrapper(key, 3, null, null, object);
}
/**
@@ -5600,7 +5623,7 @@
*/
function curry(func, arity) {
arity = typeof arity == 'number' ? arity : (+arity || func.length);
return createBound(func, 4, null, null, null, arity);
return createWrapper(func, 4, null, null, null, arity);
}
/**
@@ -5894,7 +5917,7 @@
* // => 'hi fred'
*/
function partial(func) {
return createBound(func, 16, slice(arguments, 1));
return createWrapper(func, 16, slice(arguments, 1));
}
/**
@@ -5925,7 +5948,7 @@
* // => { '_': _, 'jq': $ }
*/
function partialRight(func) {
return createBound(func, 32, null, slice(arguments, 1));
return createWrapper(func, 32, null, slice(arguments, 1));
}
/**
@@ -6001,7 +6024,7 @@
* // => '<p>Fred, Wilma, &amp; Pebbles</p>'
*/
function wrap(value, wrapper) {
return createBound(wrapper, 16, [value]);
return createWrapper(wrapper, 16, [value]);
}
/*--------------------------------------------------------------------------*/