Make _.runInContext not require a fully populated context object.

Former-commit-id: 11bf3cad2bfd3e922e7701eb7b0f48028f522ba6
This commit is contained in:
John-David Dalton
2013-02-27 00:53:12 -08:00
parent eb8953e784
commit b3c550b7c0
8 changed files with 183 additions and 129 deletions

View File

@@ -151,7 +151,7 @@
'reject': ['filter', 'identity', 'isEqual', 'keys'],
'rest': [],
'result': ['isFunction'],
'runInContext': [],
'runInContext': ['extend'],
'shuffle': ['forEach'],
'size': ['keys'],
'some': ['identity', 'isArray', 'isEqual', 'keys'],
@@ -972,15 +972,16 @@
if (snippet) {
if (funcName == 'runInContext') {
source = source.replace(snippet, function() {
return snippet.replace(/^[\s\S]+?\n( *).+?context *=.+(\n[\s\S]+?\n)\1return lodash[\s\S]+$/, function() {
return arguments[2].replace(/^ {4}/gm, ' ');
});
return snippet
.replace(/^[\s\S]+?function runInContext[\s\S]+?context *= *context.+| *return lodash[\s\S]+$/g, '')
.replace(/^ {4}/gm, ' ');
});
source = source
.replace(/context/g, 'window')
.replace(/(?:\n +\/\*[^*]*\*+(?:[^\/][^*]*\*+)*\/)?\n *var Array *=[\s\S]+?;\n/, '')
.replace(/^ *var lodash *= *runInContext.+\n+/m, '');
.replace(/(return *|= *)_([;)])/g, '$1lodash$2')
.replace(/^ *var _ *=.+\n+/m, '');
}
else {
source = source.replace(snippet, '');

34
dist/lodash.compat.js vendored
View File

@@ -123,7 +123,7 @@
* @returns {Function} Returns the `lodash` function.
*/
function runInContext(context) {
context || (context = window);
context = context ? _.extend(createObject(window), context) : window;
/** Native constructor references */
var Array = context.Array,
@@ -623,10 +623,8 @@
: partialArgs;
}
if (this instanceof bound) {
// ensure `new bound` is an instance of `bound` and `func`
noop.prototype = func.prototype;
thisBinding = new noop;
noop.prototype = null;
// ensure `new bound` is an instance of `func`
thisBinding = createObject(func.prototype);
// mimic the constructor's `return` behavior
// http://es5.github.com/#x13.2.2
@@ -750,6 +748,20 @@
);
}
/**
* Creates a new object that inherits from the given `prototype` object.
*
* @private
* @param {Object} prototype The prototype object.
* @returns {Object} Returns the new object.
*/
function createObject(prototype) {
noop.prototype = prototype;
var result = new noop;
noop.prototype = null;
return result;
}
/**
* A function compiled to iterate `arguments` objects, arrays, objects, and
* strings consistenly across environments, executing the `callback` for each
@@ -5161,7 +5173,7 @@
/*--------------------------------------------------------------------------*/
// expose Lo-Dash
var lodash = runInContext();
var _ = runInContext();
// some AMD build optimizers, like r.js, check for specific condition patterns like the following:
if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) {
@@ -5169,27 +5181,27 @@
// case Lo-Dash was injected by a third-party script and not intended to be
// loaded as a module. The global assignment can be reverted in the Lo-Dash
// module via its `noConflict()` method.
window._ = lodash;
window._ = _;
// define as an anonymous module so, through path mapping, it can be
// referenced as the "underscore" module
define(function() {
return lodash;
return _;
});
}
// check for `exports` after `define` in case a build optimizer adds an `exports` object
else if (freeExports) {
// in Node.js or RingoJS v0.8.0+
if (freeModule) {
(freeModule.exports = lodash)._ = lodash;
(freeModule.exports = _)._ = _;
}
// in Narwhal or RingoJS v0.7.0-
else {
freeExports._ = lodash;
freeExports._ = _;
}
}
else {
// in a browser or Rhino
window._ = lodash;
window._ = _;
}
}(this));

View File

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

34
dist/lodash.js vendored
View File

@@ -117,7 +117,7 @@
* @returns {Function} Returns the `lodash` function.
*/
function runInContext(context) {
context || (context = window);
context = context ? _.extend(createObject(window), context) : window;
/** Native constructor references */
var Array = context.Array,
@@ -505,10 +505,8 @@
: partialArgs;
}
if (this instanceof bound) {
// ensure `new bound` is an instance of `bound` and `func`
noop.prototype = func.prototype;
thisBinding = new noop;
noop.prototype = null;
// ensure `new bound` is an instance of `func`
thisBinding = createObject(func.prototype);
// mimic the constructor's `return` behavior
// http://es5.github.com/#x13.2.2
@@ -627,6 +625,20 @@
);
}
/**
* Creates a new object that inherits from the given `prototype` object.
*
* @private
* @param {Object} prototype The prototype object.
* @returns {Object} Returns the new object.
*/
function createObject(prototype) {
noop.prototype = prototype;
var result = new noop;
noop.prototype = null;
return result;
}
/**
* A function compiled to iterate `arguments` objects, arrays, objects, and
* strings consistenly across environments, executing the `callback` for each
@@ -4986,7 +4998,7 @@
/*--------------------------------------------------------------------------*/
// expose Lo-Dash
var lodash = runInContext();
var _ = runInContext();
// some AMD build optimizers, like r.js, check for specific condition patterns like the following:
if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) {
@@ -4994,27 +5006,27 @@
// case Lo-Dash was injected by a third-party script and not intended to be
// loaded as a module. The global assignment can be reverted in the Lo-Dash
// module via its `noConflict()` method.
window._ = lodash;
window._ = _;
// define as an anonymous module so, through path mapping, it can be
// referenced as the "underscore" module
define(function() {
return lodash;
return _;
});
}
// check for `exports` after `define` in case a build optimizer adds an `exports` object
else if (freeExports) {
// in Node.js or RingoJS v0.8.0+
if (freeModule) {
(freeModule.exports = lodash)._ = lodash;
(freeModule.exports = _)._ = _;
}
// in Narwhal or RingoJS v0.7.0-
else {
freeExports._ = lodash;
freeExports._ = _;
}
}
else {
// in a browser or Rhino
window._ = lodash;
window._ = _;
}
}(this));

66
dist/lodash.min.js vendored
View File

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

View File

@@ -333,10 +333,8 @@
: partialArgs;
}
if (this instanceof bound) {
// ensure `new bound` is an instance of `bound` and `func`
noop.prototype = func.prototype;
thisBinding = new noop;
noop.prototype = null;
// ensure `new bound` is an instance of `func`
thisBinding = createObject(func.prototype);
// mimic the constructor's `return` behavior
// http://es5.github.com/#x13.2.2
@@ -406,6 +404,20 @@
return func;
}
/**
* Creates a new object that inherits from the given `prototype` object.
*
* @private
* @param {Object} prototype The prototype object.
* @returns {Object} Returns the new object.
*/
function createObject(prototype) {
noop.prototype = prototype;
var result = new noop;
noop.prototype = null;
return result;
}
/**
* A function compiled to iterate `arguments` objects, arrays, objects, and
* strings consistenly across environments, executing the `callback` for each

View File

@@ -122,7 +122,7 @@
* @returns {Function} Returns the `lodash` function.
*/
function runInContext(context) {
context || (context = window);
context = context ? _.extend(createObject(window), context) : window;
/** Native constructor references */
var Array = context.Array,
@@ -630,10 +630,8 @@
: partialArgs;
}
if (this instanceof bound) {
// ensure `new bound` is an instance of `bound` and `func`
noop.prototype = func.prototype;
thisBinding = new noop;
noop.prototype = null;
// ensure `new bound` is an instance of `func`
thisBinding = createObject(func.prototype);
// mimic the constructor's `return` behavior
// http://es5.github.com/#x13.2.2
@@ -757,6 +755,20 @@
);
}
/**
* Creates a new object that inherits from the given `prototype` object.
*
* @private
* @param {Object} prototype The prototype object.
* @returns {Object} Returns the new object.
*/
function createObject(prototype) {
noop.prototype = prototype;
var result = new noop;
noop.prototype = null;
return result;
}
/**
* A function compiled to iterate `arguments` objects, arrays, objects, and
* strings consistenly across environments, executing the `callback` for each
@@ -5172,7 +5184,7 @@
/*--------------------------------------------------------------------------*/
// expose Lo-Dash
var lodash = runInContext();
var _ = runInContext();
// some AMD build optimizers, like r.js, check for specific condition patterns like the following:
if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) {
@@ -5180,27 +5192,27 @@
// case Lo-Dash was injected by a third-party script and not intended to be
// loaded as a module. The global assignment can be reverted in the Lo-Dash
// module via its `noConflict()` method.
window._ = lodash;
window._ = _;
// define as an anonymous module so, through path mapping, it can be
// referenced as the "underscore" module
define(function() {
return lodash;
return _;
});
}
// check for `exports` after `define` in case a build optimizer adds an `exports` object
else if (freeExports) {
// in Node.js or RingoJS v0.8.0+
if (freeModule) {
(freeModule.exports = lodash)._ = lodash;
(freeModule.exports = _)._ = _;
}
// in Narwhal or RingoJS v0.7.0-
else {
freeExports._ = lodash;
freeExports._ = _;
}
}
else {
// in a browser or Rhino
window._ = lodash;
window._ = _;
}
}(this));

View File

@@ -2114,6 +2114,25 @@
/*--------------------------------------------------------------------------*/
QUnit.module('lodash.runInContext');
(function() {
test('should not require a fully populated `context` object', function() {
var pass = false;
var lodash = _.runInContext({
'setTimeout': function(callback) {
callback();
}
});
lodash.delay(function() { pass = true; }, 32);
ok(pass);
});
}());
/*--------------------------------------------------------------------------*/
QUnit.module('lodash.shuffle');
(function() {
@@ -2406,26 +2425,11 @@
var callCount = 0,
dateCount = 0;
var context = {
'Array': Array,
'Boolean': Boolean,
'Function': Function,
'Object': Object,
'Math': Math,
'Number': Number,
'RegExp': RegExp,
'String': String,
'clearTimeout': clearTimeout,
'isFinite': isFinite,
'isNaN': isNaN,
'setTimeout': setTimeout
};
var lodash = _.runInContext(_.extend(context, {
var lodash = _.runInContext({
'Date': function() {
return ++dateCount < 3 ? new Date : Object(Infinity);
}
}));
});
var throttled = lodash.throttle(function() {
callCount++;