
(function(){var p=this,B=p._,l={},h=Array.prototype,m=Object.prototype,f=h.slice,C=h.unshift,D=m.toString,n=m.hasOwnProperty,r=h.forEach,s=h.map,t=h.reduce,u=h.reduceRight,v=h.filter,w=h.every,x=h.some,o=h.indexOf,y=h.lastIndexOf,m=Array.isArray,E=Object.keys,b=function(a){return new k(a)};typeof module!=="undefined"&&module.exports?(module.exports=b,b._=b):p._=b;b.VERSION="1.1.4";var i=b.each=b.forEach=function(a,c,d){if(a!=null)if(r&&a.forEach===r)a.forEach(c,d);else if(b.isNumber(a.length))for(var e=
0,j=a.length;e<j;e++){if(c.call(d,a[e],e,a)===l)break}else for(e in a)if(n.call(a,e)&&c.call(d,a[e],e,a)===l)break};b.map=function(a,c,b){var e=[];if(a==null)return e;if(s&&a.map===s)return a.map(c,b);i(a,function(a,g,F){e[e.length]=c.call(b,a,g,F)});return e};b.reduce=b.foldl=b.inject=function(a,c,d,e){var j=d!==void 0;a==null&&(a=[]);if(t&&a.reduce===t)return e&&(c=b.bind(c,e)),j?a.reduce(c,d):a.reduce(c);i(a,function(a,b,f){!j&&b===0?(d=a,j=!0):d=c.call(e,d,a,b,f)});if(!j)throw new TypeError("Reduce of empty array with no initial value");
return d};b.reduceRight=b.foldr=function(a,c,d,e){a==null&&(a=[]);if(u&&a.reduceRight===u)return e&&(c=b.bind(c,e)),d!==void 0?a.reduceRight(c,d):a.reduceRight(c);a=(b.isArray(a)?a.slice():b.toArray(a)).reverse();return b.reduce(a,c,d,e)};b.find=b.detect=function(a,c,b){var e;z(a,function(a,g,f){if(c.call(b,a,g,f))return e=a,!0});return e};b.filter=b.select=function(a,c,b){var e=[];if(a==null)return e;if(v&&a.filter===v)return a.filter(c,b);i(a,function(a,g,f){c.call(b,a,g,f)&&(e[e.length]=a)});return e};
b.reject=function(a,c,b){var e=[];if(a==null)return e;i(a,function(a,g,f){c.call(b,a,g,f)||(e[e.length]=a)});return e};b.every=b.all=function(a,c,d){var c=c||b.identity,e=!0;if(a==null)return e;if(w&&a.every===w)return a.every(c,d);i(a,function(a,b,f){if(!(e=e&&c.call(d,a,b,f)))return l});return e};var z=b.some=b.any=function(a,c,d){var c=c||b.identity,e=!1;if(a==null)return e;if(x&&a.some===x)return a.some(c,d);i(a,function(a,b,f){if(e=c.call(d,a,b,f))return l});return e};b.include=b.contains=function(a,
b){var d=!1;if(a==null)return d;if(o&&a.indexOf===o)return a.indexOf(b)!=-1;z(a,function(a){if(d=a===b)return!0});return d};b.invoke=function(a,c){var d=f.call(arguments,2);return b.map(a,function(a){return(c?a[c]:a).apply(a,d)})};b.pluck=function(a,c){return b.map(a,function(a){return a[c]})};b.max=function(a,c,d){if(!c&&b.isArray(a))return Math.max.apply(Math,a);var e={computed:-Infinity};i(a,function(a,b,f){b=c?c.call(d,a,b,f):a;b>=e.computed&&(e={value:a,computed:b})});return e.value};b.min=function(a,
c,d){if(!c&&b.isArray(a))return Math.min.apply(Math,a);var e={computed:Infinity};i(a,function(a,b,f){b=c?c.call(d,a,b,f):a;b<e.computed&&(e={value:a,computed:b})});return e.value};b.sortBy=function(a,c,d){return b.pluck(b.map(a,function(a,b,f){return{value:a,criteria:c.call(d,a,b,f)}}).sort(function(a,b){var c=a.criteria,d=b.criteria;return c<d?-1:c>d?1:0}),"value")};b.sortedIndex=function(a,c,d){for(var d=d||b.identity,e=0,f=a.length;e<f;){var g=e+f>>1;d(a[g])<d(c)?e=g+1:f=g}return e};b.toArray=
function(a){return!a?[]:a.toArray?a.toArray():b.isArray(a)?a:b.isArguments(a)?f.call(a):b.values(a)};b.size=function(a){return b.toArray(a).length};b.first=b.head=function(a,b,d){return b&&!d?f.call(a,0,b):a[0]};b.rest=b.tail=function(a,c,d){return f.call(a,b.isUndefined(c)||d?1:c)};b.last=function(a){return a[a.length-1]};b.compact=function(a){return b.filter(a,function(a){return!!a})};b.flatten=function(a){return b.reduce(a,function(a,d){if(b.isArray(d))return a.concat(b.flatten(d));a[a.length]=
d;return a},[])};b.without=function(a){var c=f.call(arguments,1);return b.filter(a,function(a){return!b.include(c,a)})};b.uniq=b.unique=function(a,c){return b.reduce(a,function(a,e,f){if(0==f||(c===!0?b.last(a)!=e:!b.include(a,e)))a[a.length]=e;return a},[])};b.intersect=function(a){var c=f.call(arguments,1);return b.filter(b.uniq(a),function(a){return b.every(c,function(c){return b.indexOf(c,a)>=0})})};b.zip=function(){for(var a=f.call(arguments),c=b.max(b.pluck(a,"length")),d=Array(c),e=0;e<c;e++)d[e]=
b.pluck(a,""+e);return d};b.indexOf=function(a,c,d){if(a==null)return-1;if(d)return d=b.sortedIndex(a,c),a[d]===c?d:-1;if(o&&a.indexOf===o)return a.indexOf(c);for(var d=0,e=a.length;d<e;d++)if(a[d]===c)return d;return-1};b.lastIndexOf=function(a,b){if(a==null)return-1;if(y&&a.lastIndexOf===y)return a.lastIndexOf(b);for(var d=a.length;d--;)if(a[d]===b)return d;return-1};b.range=function(a,b,d){for(var e=f.call(arguments),j=e.length<=1,a=j?0:e[0],b=j?e[0]:e[1],d=e[2]||1,e=Math.max(Math.ceil((b-a)/d),
0),j=0,g=Array(e);j<e;)g[j++]=a,a+=d;return g};b.bind=function(a,b){var d=f.call(arguments,2);return function(){return a.apply(b||{},d.concat(f.call(arguments)))}};b.bindAll=function(a){var c=f.call(arguments,1);c.length==0&&(c=b.functions(a));i(c,function(c){a[c]=b.bind(a[c],a)});return a};b.memoize=function(a,c){var d={},c=c||b.identity;return function(){var b=c.apply(this,arguments);return b in d?d[b]:d[b]=a.apply(this,arguments)}};b.delay=function(a,b){var d=f.call(arguments,2);return setTimeout(function(){return a.apply(a,
d)},b)};b.defer=function(a){return b.delay.apply(b,[a,1].concat(f.call(arguments,1)))};var A=function(a,b,d){var e;return function(){var f=this,g=arguments,h=function(){e=null;a.apply(f,g)};d&&clearTimeout(e);if(d||!e)e=setTimeout(h,b)}};b.throttle=function(a,b){return A(a,b,!1)};b.debounce=function(a,b){return A(a,b,!0)};b.wrap=function(a,b){return function(){var d=[a].concat(f.call(arguments));return b.apply(this,d)}};b.compose=function(){var a=f.call(arguments);return function(){for(var b=f.call(arguments),
d=a.length-1;d>=0;d--)b=[a[d].apply(this,b)];return b[0]}};b.keys=E||function(a){if(b.isArray(a))return b.range(0,a.length);var c=[],d;for(d in a)n.call(a,d)&&(c[c.length]=d);return c};b.values=function(a){return b.map(a,b.identity)};b.functions=b.methods=function(a){return b.filter(b.keys(a),function(c){return b.isFunction(a[c])}).sort()};b.extend=function(a){i(f.call(arguments,1),function(b){for(var d in b)a[d]=b[d]});return a};b.clone=function(a){return b.isArray(a)?a.slice():b.extend({},a)};b.tap=
function(a,b){b(a);return a};b.isEqual=function(a,c){if(a===c)return!0;var d=typeof a;if(d!=typeof c)return!1;if(a==c)return!0;if(!a&&c||a&&!c)return!1;if(a._chain)a=a._wrapped;if(c._chain)c=c._wrapped;if(a.isEqual)return a.isEqual(c);if(b.isDate(a)&&b.isDate(c))return a.getTime()===c.getTime();if(b.isNaN(a)&&b.isNaN(c))return!1;if(b.isRegExp(a)&&b.isRegExp(c))return a.source===c.source&&a.global===c.global&&a.ignoreCase===c.ignoreCase&&a.multiline===c.multiline;if(d!=="object")return!1;if(a.length&&
a.length!==c.length)return!1;var d=b.keys(a),e=b.keys(c);if(d.length!=e.length)return!1;for(var f in a)if(!(f in c)||!b.isEqual(a[f],c[f]))return!1;return!0};b.isEmpty=function(a){if(b.isArray(a)||b.isString(a))return a.length===0;for(var c in a)if(n.call(a,c))return!1;return!0};b.isElement=function(a){return!!(a&&a.nodeType==1)};b.isArray=m||function(a){return D.call(a)==="[object Array]"};b.isArguments=function(a){return!(!a||!n.call(a,"callee"))};b.isFunction=function(a){return!(!a||!a.constructor||
!a.call||!a.apply)};b.isString=function(a){return!!(a===""||a&&a.charCodeAt&&a.substr)};b.isNumber=function(a){return!!(a===0||a&&a.toExponential&&a.toFixed)};b.isNaN=function(a){return a!==a};b.isBoolean=function(a){return a===!0||a===!1};b.isDate=function(a){return!(!a||!a.getTimezoneOffset||!a.setUTCFullYear)};b.isRegExp=function(a){return!(!a||!a.test||!a.exec||!(a.ignoreCase||a.ignoreCase===!1))};b.isNull=function(a){return a===null};b.isUndefined=function(a){return a===void 0};b.noConflict=
function(){p._=B;return this};b.identity=function(a){return a};b.times=function(a,b,d){for(var e=0;e<a;e++)b.call(d,e)};b.mixin=function(a){i(b.functions(a),function(c){G(c,b[c]=a[c])})};var H=0;b.uniqueId=function(a){var b=H++;return a?a+b:b};b.templateSettings={evaluate:/<%([\s\S]+?)%>/g,interpolate:/<%=([\s\S]+?)%>/g};b.template=function(a,c){var d=b.templateSettings,d="var __p=[],print=function(){__p.push.apply(__p,arguments);};with(obj||{}){__p.push('"+a.replace(/\\/g,"\\\\").replace(/'/g,"\\'").replace(d.interpolate,
function(a,b){return"',"+b.replace(/\\'/g,"'")+",'"}).replace(d.evaluate||null,function(a,b){return"');"+b.replace(/\\'/g,"'").replace(/[\r\n\t]/g," ")+"__p.push('"}).replace(/\r/g,"\\r").replace(/\n/g,"\\n").replace(/\t/g,"\\t")+"');}return __p.join('');",d=new Function("obj",d);return c?d(c):d};var k=function(a){this._wrapped=a};b.prototype=k.prototype;var q=function(a,c){return c?b(a).chain():a},G=function(a,c){k.prototype[a]=function(){var a=f.call(arguments);C.call(a,this._wrapped);return q(c.apply(b,
a),this._chain)}};b.mixin(b);i("pop,push,reverse,shift,sort,splice,unshift".split(","),function(a){var b=h[a];k.prototype[a]=function(){b.apply(this._wrapped,arguments);return q(this._wrapped,this._chain)}});i(["concat","join","slice"],function(a){var b=h[a];k.prototype[a]=function(){return q(b.apply(this._wrapped,arguments),this._chain)}});k.prototype.chain=function(){this._chain=!0;return this};k.prototype.value=function(){return this._wrapped}})();
