Compare commits

..

75 Commits
3.5.0 ... 3.6.0

Author SHA1 Message Date
jdalton
a7252b1a7f Bump to v3.6.0. 2015-03-24 22:41:59 -07:00
jdalton
a4e58e4d55 Rebuild lodash and docs. 2015-03-24 22:41:53 -07:00
jdalton
4241e01364 Cleanup comment links. [ci skip] 2015-03-24 22:34:57 -07:00
jdalton
d7d7952138 Increase test coverage by modifying the source to hit the branch of getFuncName used for minified builds. 2015-03-24 20:15:33 -07:00
jdalton
9cc2253339 Add npm i step to contributing.md. [ci skip] 2015-03-24 08:15:32 -07:00
jdalton
6831802590 Rename predicate to iteratee in _.uniq, _.countBy, _.groupBy, _.indexBy, & _.map docs. [closes #1071] [ci skip] 2015-03-23 23:34:33 -07:00
jdalton
9d79cc7e87 Make _.deburr handle combining diacritical marks. [closes #1070] 2015-03-23 20:50:04 -07:00
jdalton
763b003a11 Add note about _.runInContext to _.mixin docs. [ci skip] 2015-03-23 20:04:13 -07:00
jdalton
d560e2a558 Remove unused bar reFuncName. 2015-03-23 19:58:25 -07:00
jdalton
f914f080b1 Simplify ctor check flag in equalObjects. 2015-03-23 09:24:55 -07:00
jdalton
600a4e86e1 Ensure _.matches and _.matchesProperty work with function value params. 2015-03-23 09:24:05 -07:00
jdalton
e7b4ada65f Add _.restParam test for functions with more than 3 params. 2015-03-23 09:06:45 -07:00
jdalton
95f31be096 Add doc blocks for getFuncName and isLaziable. [ci skip] 2015-03-23 09:01:19 -07:00
jdalton
ad6db7eaae Adjust object checks in baseIsMatch, baseMatches, baseMatchesProperty, & isMatch. 2015-03-22 23:44:11 -07:00
jdalton
d7a99c6618 Add _.matches and _.matchesProperty tests for inherited properties. 2015-03-22 00:45:36 -07:00
jdalton
f20d8f5cc0 Loosen _.matches to match objects with inherited properties. [closes #1067] 2015-03-21 23:33:19 -07:00
jdalton
8930e6b393 Add baseWhile and createBaseEach. 2015-03-21 22:07:19 -07:00
jdalton
f26886acb0 Add createSortedIndex. 2015-03-21 18:08:35 -07:00
jdalton
820ab8d486 Add test for _.escapeRegExp with eval and Function. 2015-03-21 11:43:18 -07:00
jdalton
8e425fb358 Tweak _.at and _.matchesProperty doc examples. [ci skip] 2015-03-21 10:01:46 -07:00
jdalton
6006f499ac Fix doc bugs in _.runInContext, _.thru, _.forEachRight, & _.escapeRegExp. [closes #1065] [ci skip] 2015-03-21 10:01:17 -07:00
Christopher Venning
3caa740fc4 Fixed errors in documentation examples for _.trim, _.matchesProperty, & _.property. [ci skip] 2015-03-21 08:53:49 -07:00
jdalton
007ea9ea20 Add length check test to _.flow & _.flowRight. 2015-03-20 23:49:31 -07:00
jdalton
5d248d261d Expand part of shortcut fusion test. 2015-03-20 23:22:36 -07:00
jdalton
26908cba64 Don't assume a lodash method will exist. 2015-03-20 15:15:06 -07:00
jdalton
18d118746e Add _.fill doc example. [ci skip] 2015-03-20 12:37:49 -07:00
jdalton
9a633f5f2e Update root detection in WeakMap and Set shims. 2015-03-20 12:01:37 -07:00
jdalton
5aa44e98d5 Fix rhino and other old environment test fail. 2015-03-20 12:00:29 -07:00
jdalton
33916fa975 No need to redeclare funcName in createFlow. 2015-03-20 11:49:18 -07:00
jdalton
eab18df403 Cleanup isLaziable and getFuncNames. 2015-03-20 09:24:56 -07:00
jdalton
002caceb05 Cleanup isXyz methods. 2015-03-20 09:24:13 -07:00
jdalton
c250aa804a Ensure _.merge correctly coerces objects to arrays. [closes #1061] 2015-03-19 08:58:56 -07:00
jdalton
94ca50883f Drop funcDecomp optimization in baseCallback and ensure shortcut fusion for _.flow and _.flowRight works in minified builds. 2015-03-19 08:40:45 -07:00
jdalton
462c482873 Add support for shortcut fusion to _.flow and _.flowRight. 2015-03-18 10:27:45 -07:00
jdalton
e28e04a990 Add freeSelf as a fallback for when freeWindow is unavailable. 2015-03-17 20:13:10 -07:00
Rocco Nicosia
6438385d64 Fix _.zipObject docs to more clearly demonstrate it as _.pairs inverse. [ci skip] 2015-03-17 16:50:00 -07:00
jdalton
bfb08ce003 Use opposite instead of inverse to describe _.propertyOf. [ci skip] 2015-03-17 16:49:30 -07:00
jdalton
3590a06f40 Update _.zipObject docs to tie into _.pairs. [ci skip] 2015-03-17 16:45:01 -07:00
jdalton
23ca6c5e10 Rename createPad to createPadding and cleanup docs of pad methods. 2015-03-17 15:57:12 -07:00
jdalton
1aea5bcd50 Finish adding comment blocks to creator function. [ci skip] 2015-03-17 13:54:33 -07:00
jdalton
82c5d8ed28 Rename createComposer to createFlow. 2015-03-17 10:27:52 -07:00
jdalton
5dcd58a75f Tweak _.findIndex docs and correct _.findKey docs. [ci skip] 2015-03-17 10:23:59 -07:00
jdalton
dc605a4ee1 More more docs for creator functions. [ci skip] 2015-03-17 10:23:26 -07:00
Justin Ridgewell
fec940ab8b Allocate proper size in in _.restParam.
Since we're putting `rest` at `start` index, `array.length; // => {start + 1}`
2015-03-17 08:50:41 -07:00
jdalton
05fd7cecf4 Add docs for baseSum and arraySum. [ci skip] 2015-03-17 08:48:21 -07:00
jdalton
2f52730b48 Use and consistently. [ci skip] 2015-03-17 08:44:51 -07:00
jdalton
4c1819c7dd Ensure _.sum provides the correct arguments when iterating an object. 2015-03-15 19:49:14 -07:00
jdalton
c58c0df30e Cleanup creator functions. 2015-03-15 17:12:33 -07:00
jdalton
c5902b3144 Cleanup _.sum. 2015-03-15 17:01:40 -07:00
qsona
519eb424e7 Documentation nits. [ci skip] 2015-03-15 14:57:53 -07:00
qsona
03478afea4 Add support for _.sum to take iteratee. 2015-03-15 14:57:13 -07:00
jdalton
306ef8addf Add creator functions. 2015-03-15 14:48:32 -07:00
jdalton
d4659b261d Add baseFindIndex. 2015-03-15 11:22:25 -07:00
jdalton
69ce41807a Add _.restParam. 2015-03-15 10:57:21 -07:00
jdalton
cc81da5aa4 Update Chrome version in saucelabs.js. 2015-03-14 00:14:21 -07:00
jdalton
eee714f52b Add iteratee guard to _.includes. 2015-03-13 13:39:14 -07:00
jdalton
c976b637d8 Adjust test descriptions to be more generic. 2015-03-13 12:33:19 -07:00
jdalton
ea93515d53 Add well-known symbols test for _.uniq. 2015-03-13 09:03:09 -07:00
jdalton
652499bdcf Cleanup sortedIndex test. 2015-03-13 08:51:56 -07:00
Benjamin Tan
819862199a Documentation: Rename predicate to iteratee.
Closes #1049.
[ci skip]
2015-03-13 08:43:05 -07:00
jdalton
6c1bc1d7bb Semicolons out colons in. [ci skip] 2015-03-13 08:43:00 -07:00
octref
36ebe76e0a Fix _.reduce doc 2015-03-13 08:39:10 -07:00
Benjamin Tan
8f8d35dec7 Simplify test/saucelabs.js.
Remove repeated assignment operations.
2015-03-13 19:29:39 +08:00
jdalton
ac1e436339 Simplify isCommon and isCombo checks in mergeData. 2015-03-13 00:12:51 -07:00
jdalton
78d4812b0e Whitespace nits. [ci skip] 2015-03-12 23:02:23 -07:00
jdalton
6a1b7626e3 Add NaN tests for _.indexOf and _.lastIndexOf with a fromIndex. 2015-03-12 22:42:02 -07:00
bryce-gibson
b6ccb4c96f Add example of alternative _.zipObject syntax. [ci skip] 2015-03-12 07:41:15 -07:00
jdalton
9712ac550c Set metadata for curried lazy lodash methods. 2015-03-11 23:41:41 -07:00
jdalton
5b173766c6 Add symbol tests for _.isObject and _.uniq. 2015-03-11 20:52:34 -07:00
jdalton
b535c4f321 Optimize _.reduce and _.reduceRight. 2015-03-11 11:40:51 -07:00
jdalton
56c5ebcb71 Ensure the result of _.difference is based on the values of the first param only. [#1038] 2015-03-10 21:31:46 -07:00
jdalton
028234ba86 Update guard info in _.reduce docs. [ci skip] 2015-03-10 09:21:38 -07:00
jdalton
f063b4d231 Add isIterateeCall guards to _.every and _.some. [closes #1035] 2015-03-10 09:21:01 -07:00
Teoman Soygul
508f27cc32 Fix _.property documentation typo. [ci skip] 2015-03-10 08:44:54 -07:00
jdalton
d4783170e5 Minor cleanup of setting __actions__ in _.mixin. 2015-03-09 08:33:19 -07:00
14 changed files with 2995 additions and 2166 deletions

View File

@@ -58,7 +58,7 @@ before_install:
- "git clone --depth=10 --branch=master git://github.com/lodash/lodash-cli.git ./node_modules/lodash-cli && mkdir $_/node_modules && cd $_ && ln -s ../../../ ./lodash-compat && cd ../ && npm i && cd ../../" - "git clone --depth=10 --branch=master git://github.com/lodash/lodash-cli.git ./node_modules/lodash-cli && mkdir $_/node_modules && cd $_ && ln -s ../../../ ./lodash-compat && cd ../ && npm i && cd ../../"
- "node ./node_modules/lodash-cli/bin/lodash $BUILD -o ./lodash.$BUILD.js" - "node ./node_modules/lodash-cli/bin/lodash $BUILD -o ./lodash.$BUILD.js"
script: script:
- "[ $ISTANBUL == false ] || (cp ./lodash.$BUILD.js ./lodash.js && node ./node_modules/istanbul/lib/cli.js cover -x \"**/vendor/**\" --report lcovonly ./test/test.js -- ./lodash.js)" - "[ $ISTANBUL == false ] || (cp ./lodash.$BUILD.js ./lodash.js && sed -i'' 's|constant\\.name == '\\''constant'\\''|false|' $_ && node ./node_modules/istanbul/lib/cli.js cover -x \"**/vendor/**\" --report lcovonly ./test/test.js -- ./lodash.js)"
- "[ $ISTANBUL == false ] || [ $TRAVIS_SECURE_ENV_VARS == false ] || (cat ./coverage/lcov.info | coveralls)" - "[ $ISTANBUL == false ] || [ $TRAVIS_SECURE_ENV_VARS == false ] || (cat ./coverage/lcov.info | coveralls)"
- "[ $SAUCE_LABS == true ] || [ $ISTANBUL == true ] || cd ./test" - "[ $SAUCE_LABS == true ] || [ $ISTANBUL == true ] || cd ./test"
- "[ $SAUCE_LABS == true ] || [ $ISTANBUL == true ] || $BIN $OPTION ./test.js ../lodash.$BUILD.js" - "[ $SAUCE_LABS == true ] || [ $ISTANBUL == true ] || $BIN $OPTION ./test.js ../lodash.$BUILD.js"

View File

@@ -8,7 +8,9 @@ Please make sure to [search the issue tracker](https://github.com/lodash/lodash/
Include updated unit tests in the `test` directory as part of your pull request. Include updated unit tests in the `test` directory as part of your pull request.
Dont worry about regenerating the documentation, lodash.js, or lodash.min.js. Dont worry about regenerating the documentation, lodash.js, or lodash.min.js.
You can run the tests from the command line via `node test/test`, or open `test/index.html` in a web browser. Before running the unit tests youll need to install, `npm i`, [development dependencies](https://docs.npmjs.com/files/package.json#devdependencies).
Run unit tests from the command-line via `node test/test`, or open `test/index.html` in a web browser.
The `test/run-test.sh` script attempts to run the tests in [Rhino](https://developer.mozilla.org/en-US/docs/Mozilla/Projects/Rhino), [RingoJS](http://ringojs.org/), [PhantomJS](http://phantomjs.org/), & [Node](http://nodejs.org/), before running them in your default browser. The `test/run-test.sh` script attempts to run the tests in [Rhino](https://developer.mozilla.org/en-US/docs/Mozilla/Projects/Rhino), [RingoJS](http://ringojs.org/), [PhantomJS](http://phantomjs.org/), & [Node](http://nodejs.org/), before running them in your default browser.
The [Backbone](http://backbonejs.org/) & [Underscore](http://underscorejs.org/) test suites are included as well. The [Backbone](http://backbonejs.org/) & [Underscore](http://underscorejs.org/) test suites are included as well.

View File

@@ -1,4 +1,4 @@
# lodash v3.5.0 # lodash v3.6.0
The [modern build](https://github.com/lodash/lodash/wiki/Build-Differences) of [lodash](https://lodash.com/) with packages for [Bower](http://bower.io/), [Component](http://component.github.io/), & [Volo](http://volojs.org/). The [modern build](https://github.com/lodash/lodash/wiki/Build-Differences) of [lodash](https://lodash.com/) with packages for [Bower](http://bower.io/), [Component](http://component.github.io/), & [Volo](http://volojs.org/).
@@ -16,8 +16,8 @@ $ lodash modern -o ./lodash.js
lodash is also available in a variety of other builds & module formats. lodash is also available in a variety of other builds & module formats.
* npm packages for [modern](https://www.npmjs.com/package/lodash), [compatibility](https://www.npmjs.com/package/lodash-compat), & [per method](https://www.npmjs.com/browse/keyword/lodash-modularized) builds * npm packages for [modern](https://www.npmjs.com/package/lodash), [compatibility](https://www.npmjs.com/package/lodash-compat), & [per method](https://www.npmjs.com/browse/keyword/lodash-modularized) builds
* AMD modules for [modern](https://github.com/lodash/lodash/tree/3.5.0-amd) & [compatibility](https://github.com/lodash/lodash-compat/tree/3.5.0-amd) builds * AMD modules for [modern](https://github.com/lodash/lodash/tree/3.6.0-amd) & [compatibility](https://github.com/lodash/lodash-compat/tree/3.6.0-amd) builds
* ES modules for the [modern](https://github.com/lodash/lodash/tree/3.5.0-es) build * ES modules for the [modern](https://github.com/lodash/lodash/tree/3.6.0-es) build
## Further Reading ## Further Reading

View File

@@ -1,6 +1,6 @@
{ {
"name": "lodash", "name": "lodash",
"version": "3.5.0", "version": "3.6.0",
"main": "lodash.js", "main": "lodash.js",
"ignore": [ "ignore": [
".*", ".*",

View File

@@ -1,7 +1,7 @@
{ {
"name": "lodash", "name": "lodash",
"repo": "lodash/lodash", "repo": "lodash/lodash",
"version": "3.5.0", "version": "3.6.0",
"description": "The modern build of lodash.", "description": "The modern build of lodash.",
"license": "MIT", "license": "MIT",
"main": "lodash.js", "main": "lodash.js",

File diff suppressed because it is too large Load Diff

1780
lodash.js

File diff suppressed because it is too large Load Diff

170
lodash.min.js vendored
View File

@@ -1,89 +1,89 @@
/** /**
* @license * @license
* lodash 3.5.0 (Custom Build) lodash.com/license | Underscore.js 1.8.2 underscorejs.org/LICENSE * lodash 3.6.0 (Custom Build) lodash.com/license | Underscore.js 1.8.2 underscorejs.org/LICENSE
* Build: `lodash modern -o ./lodash.js` * Build: `lodash modern -o ./lodash.js`
*/ */
;(function(){function n(n,t){if(n!==t){var r=n===n,e=t===t;if(n>t||!r||typeof n=="undefined"&&e)return 1;if(n<t||!e||typeof t=="undefined"&&r)return-1}return 0}function t(n,t,r){if(t!==t)return s(n,r);r-=1;for(var e=n.length;++r<e;)if(n[r]===t)return r;return-1}function r(n){return typeof n=="function"||false}function e(n){return typeof n=="string"?n:null==n?"":n+""}function u(n){return n.charCodeAt(0)}function o(n,t){for(var r=-1,e=n.length;++r<e&&-1<t.indexOf(n.charAt(r)););return r}function i(n,t){for(var r=n.length;r--&&-1<t.indexOf(n.charAt(r)););return r ;(function(){function n(n,t){if(n!==t){var r=n===n,e=t===t;if(n>t||!r||typeof n=="undefined"&&e)return 1;if(n<t||!e||typeof t=="undefined"&&r)return-1}return 0}function t(n,t,r){for(var e=n.length,u=r?e:-1;r?u--:++u<e;)if(t(n[u],u,n))return u;return-1}function r(n,t,r){if(t!==t)return s(n,r);r-=1;for(var e=n.length;++r<e;)if(n[r]===t)return r;return-1}function e(n){return typeof n=="function"||false}function u(n){return typeof n=="string"?n:null==n?"":n+""}function o(n){return n.charCodeAt(0)}function i(n,t){for(var r=-1,e=n.length;++r<e&&-1<t.indexOf(n.charAt(r)););return r
}function f(t,r){return n(t.a,r.a)||t.b-r.b}function a(n){return Tt[n]}function c(n){return St[n]}function l(n){return"\\"+Ft[n]}function s(n,t,r){var e=n.length;for(t+=r?0:-1;r?t--:++t<e;){var u=n[t];if(u!==u)return t}return-1}function p(n){return n&&typeof n=="object"||false}function h(n){return 160>=n&&9<=n&&13>=n||32==n||160==n||5760==n||6158==n||8192<=n&&(8202>=n||8232==n||8233==n||8239==n||8287==n||12288==n||65279==n)}function _(n,t){for(var r=-1,e=n.length,u=-1,o=[];++r<e;)n[r]===t&&(n[r]=L,o[++u]=r); }function f(n,t){for(var r=n.length;r--&&-1<t.indexOf(n.charAt(r)););return r}function a(t,r){return n(t.a,r.a)||t.b-r.b}function c(n){return Wt[n]}function l(n){return Tt[n]}function p(n){return"\\"+Nt[n]}function s(n,t,r){var e=n.length;for(t+=r?0:-1;r?t--:++t<e;){var u=n[t];if(u!==u)return t}return-1}function h(n){return!!n&&typeof n=="object"}function _(n){return 160>=n&&9<=n&&13>=n||32==n||160==n||5760==n||6158==n||8192<=n&&(8202>=n||8232==n||8233==n||8239==n||8287==n||12288==n||65279==n)}function v(n,t){for(var r=-1,e=n.length,u=-1,o=[];++r<e;)n[r]===t&&(n[r]=B,o[++u]=r);
return o}function g(n){for(var t=-1,r=n.length;++t<r&&h(n.charCodeAt(t)););return t}function v(n){for(var t=n.length;t--&&h(n.charCodeAt(t)););return t}function y(n){return Nt[n]}function d(h){function Tt(n){if(p(n)&&!(Uo(n)||n instanceof Ut)){if(n instanceof Nt)return n;if(Lu.call(n,"__chain__")&&Lu.call(n,"__wrapped__"))return ve(n)}return new Nt(n)}function St(){}function Nt(n,t,r){this.__wrapped__=n,this.__actions__=r||[],this.__chain__=!!t}function Ut(n){this.__wrapped__=n,this.__actions__=null,this.__dir__=1,this.__filtered__=false,this.__iteratees__=null,this.__takeCount__=_o,this.__views__=null return o}function g(n){for(var t=-1,r=n.length;++t<r&&_(n.charCodeAt(t)););return t}function y(n){for(var t=n.length;t--&&_(n.charCodeAt(t)););return t}function d(n){return Ut[n]}function m(_){function Wt(n){if(h(n)&&!(si(n)||n instanceof Ft)){if(n instanceof Ut)return n;if(Nu.call(n,"__chain__")&&Nu.call(n,"__wrapped__"))return Ee(n)}return new Ut(n)}function Tt(){}function Ut(n,t,r){this.__wrapped__=n,this.__actions__=r||[],this.__chain__=!!t}function Ft(n){this.__wrapped__=n,this.__actions__=null,this.__dir__=1,this.__filtered__=false,this.__iteratees__=null,this.__takeCount__=so,this.__views__=null
}function Ft(){this.__data__={}}function $t(n){var t=n?n.length:0;for(this.data={hash:uo(null),set:new Xu};t--;)this.push(n[t])}function Lt(n,t){var r=n.data;return(typeof t=="string"||Qe(t)?r.set.has(t):r.hash[t])?0:-1}function Bt(n,t){var r=-1,e=n.length;for(t||(t=xu(e));++r<e;)t[r]=n[r];return t}function Mt(n,t){for(var r=-1,e=n.length;++r<e&&false!==t(n[r],r,n););return n}function qt(n,t){for(var r=-1,e=n.length;++r<e;)if(!t(n[r],r,n))return false;return true}function Pt(n,t){for(var r=-1,e=n.length,u=-1,o=[];++r<e;){var i=n[r]; }function Nt(){this.__data__={}}function $t(n){var t=n?n.length:0;for(this.data={hash:ro(null),set:new Gu};t--;)this.push(n[t])}function Lt(n,t){var r=n.data;return(typeof t=="string"||He(t)?r.set.has(t):r.hash[t])?0:-1}function Bt(n,t){var r=-1,e=n.length;for(t||(t=wu(e));++r<e;)t[r]=n[r];return t}function zt(n,t){for(var r=-1,e=n.length;++r<e&&false!==t(n[r],r,n););return n}function Pt(n,t){for(var r=-1,e=n.length;++r<e;)if(!t(n[r],r,n))return false;return true}function qt(n,t){for(var r=-1,e=n.length,u=-1,o=[];++r<e;){var i=n[r];
t(i,r,n)&&(o[++u]=i)}return o}function Kt(n,t){for(var r=-1,e=n.length,u=xu(e);++r<e;)u[r]=t(n[r],r,n);return u}function Vt(n){for(var t=-1,r=n.length,e=ho;++t<r;){var u=n[t];u>e&&(e=u)}return e}function Yt(n,t,r,e){var u=-1,o=n.length;for(e&&o&&(r=n[++u]);++u<o;)r=t(r,n[u],u,n);return r}function Zt(n,t,r,e){var u=n.length;for(e&&u&&(r=n[--u]);u--;)r=t(r,n[u],u,n);return r}function Gt(n,t){for(var r=-1,e=n.length;++r<e;)if(t(n[r],r,n))return true;return false}function Jt(n,t){return typeof n=="undefined"?t:n t(i,r,n)&&(o[++u]=i)}return o}function Kt(n,t){for(var r=-1,e=n.length,u=wu(e);++r<e;)u[r]=t(n[r],r,n);return u}function Vt(n){for(var t=-1,r=n.length,e=po;++t<r;){var u=n[t];u>e&&(e=u)}return e}function Yt(n,t){for(var r=-1,e=n.length;++r<e;)if(t(n[r],r,n))return true;return false}function Zt(n,t){return typeof n=="undefined"?t:n}function Gt(n,t,r,e){return typeof n!="undefined"&&Nu.call(e,r)?n:t}function Jt(n,t,r){var e=ji(t);if(!r)return Ht(t,n,e);for(var u=-1,o=e.length;++u<o;){var i=e[u],f=n[i],a=r(f,t[i],i,n,t);
}function Xt(n,t,r,e){return typeof n!="undefined"&&Lu.call(e,r)?n:t}function Ht(n,t,r){var e=zo(t);if(!r)return nr(t,n,e);for(var u=-1,o=e.length;++u<o;){var i=e[u],f=n[i],a=r(f,t[i],i,n,t);(a===a?a===f:f!==f)&&(typeof f!="undefined"||i in n)||(n[i]=a)}return n}function Qt(n,t){for(var r=-1,e=n.length,u=ae(e),o=t.length,i=xu(o);++r<o;){var f=t[r];u?(f=parseFloat(f),i[r]=ie(f,e)?n[f]:m):i[r]=n[f]}return i}function nr(n,t,r){r||(r=t,t={});for(var e=-1,u=r.length;++e<u;){var o=r[e];t[o]=n[o]}return t (a===a?a===f:f!==f)&&(typeof f!="undefined"||i in n)||(n[i]=a)}return n}function Xt(n,t){for(var r=-1,e=n.length,u=de(e),o=t.length,i=wu(o);++r<o;){var f=t[r];u?(f=parseFloat(f),i[r]=ve(f,e)?n[f]:w):i[r]=n[f]}return i}function Ht(n,t,r){r||(r=t,t={});for(var e=-1,u=r.length;++e<u;){var o=r[e];t[o]=n[o]}return t}function Qt(n,t,r){var e=typeof n;return"function"==e?typeof t=="undefined"?n:Wr(n,t,r):null==n?gu:"object"==e?vr(n):typeof t=="undefined"?dr(n+""):gr(n+"",t)}function nr(n,t,r,e,u,o,i){var f;
}function tr(n,t,r){var e=typeof n;if("function"==e){if(e=typeof t!="undefined"){var e=Tt.support,u=!(e.funcNames?n.name:e.funcDecomp);if(!u){var o=Fu.call(n);e.funcNames||(u=!yt.test(o)),u||(u=jt.test(o)||nu(n),jo(n,u))}e=u}n=e?Fr(n,t,r):n}else n=null==n?du:"object"==e?wr(n):typeof t=="undefined"?jr(n+""):xr(n+"",t);return n}function rr(n,t,r,e,u,o,i){var f;if(r&&(f=u?r(n,e,u):r(n)),typeof f!="undefined")return f;if(!Qe(n))return n;if(e=Uo(n)){if(f=ee(n),!t)return Bt(n,f)}else{var a=zu.call(n),c=a==P; if(r&&(f=u?r(n,e,u):r(n)),typeof f!="undefined")return f;if(!He(n))return n;if(e=si(n)){if(f=se(n),!t)return Bt(n,f)}else{var a=Lu.call(n),c=a==K;if(a!=Y&&a!=z&&(!c||u))return Ct[a]?_e(n,a,t):u?n:{};if(f=he(c?{}:n),!t)return Ht(n,f,ji(n))}for(o||(o=[]),i||(i=[]),u=o.length;u--;)if(o[u]==n)return i[u];return o.push(n),i.push(f),(e?zt:ar)(n,function(e,u){f[u]=nr(e,t,r,u,n,o,i)}),f}function tr(n,t,r){if(typeof n!="function")throw new Ru(L);return Ju(function(){n.apply(w,r)},t)}function rr(n,t){var e=n?n.length:0,u=[];
if(a!=V&&a!=B&&(!c||u))return Ct[a]?oe(n,a,t):u?n:{};if(f=ue(c?{}:n),!t)return nr(n,f,zo(n))}for(o||(o=[]),i||(i=[]),u=o.length;u--;)if(o[u]==n)return i[u];return o.push(n),i.push(f),(e?Mt:_r)(n,function(e,u){f[u]=rr(e,t,r,u,n,o,i)}),f}function er(n,t,r,e){if(typeof n!="function")throw new Wu($);return Hu(function(){n.apply(m,Rr(r,e))},t)}function ur(n,r){var e=n?n.length:0,u=[];if(!e)return u;var o=-1,i=re(),f=i==t,a=f&&200<=r.length?ko(r):null,c=r.length;a&&(i=Lt,f=false,r=a);n:for(;++o<e;)if(a=n[o],f&&a===a){for(var l=c;l--;)if(r[l]===a)continue n; if(!e)return u;var o=-1,i=pe(),f=i==r,a=f&&200<=t.length?Oo(t):null,c=t.length;a&&(i=Lt,f=false,t=a);n:for(;++o<e;)if(a=n[o],f&&a===a){for(var l=c;l--;)if(t[l]===a)continue n;u.push(a)}else 0>i(t,a,0)&&u.push(a);return u}function er(n,t){var r=true;return Ao(n,function(n,e,u){return r=!!t(n,e,u)}),r}function ur(n,t){var r=[];return Ao(n,function(n,e,u){t(n,e,u)&&r.push(n)}),r}function or(n,t,r,e){var u;return r(n,function(n,r,o){return t(n,r,o)?(u=e?r:n,false):void 0}),u}function ir(n,t,r){for(var e=-1,u=n.length,o=-1,i=[];++e<u;){var f=n[e];
u.push(a)}else 0>i(r,a,0)&&u.push(a);return u}function or(n,t){var r=n?n.length:0;if(!ae(r))return _r(n,t);for(var e=-1,u=ge(n);++e<r&&false!==t(u[e],e,u););return n}function ir(n,t){var r=n?n.length:0;if(!ae(r))return gr(n,t);for(var e=ge(n);r--&&false!==t(e[r],r,e););return n}function fr(n,t){var r=true;return or(n,function(n,e,u){return r=!!t(n,e,u)}),r}function ar(n,t){var r=[];return or(n,function(n,e,u){t(n,e,u)&&r.push(n)}),r}function cr(n,t,r,e){var u;return r(n,function(n,r,o){return t(n,r,o)?(u=e?r:n,false):void 0 if(h(f)&&de(f.length)&&(si(f)||Ge(f))){t&&(f=ir(f,t,r));var a=-1,c=f.length;for(i.length+=c;++a<c;)i[++o]=f[a]}else r||(i[++o]=f)}return i}function fr(n,t){ko(n,t,iu)}function ar(n,t){return ko(n,t,ji)}function cr(n,t){return Eo(n,t,ji)}function lr(n,t){for(var r=-1,e=t.length,u=-1,o=[];++r<e;){var i=t[r];_i(n[i])&&(o[++u]=i)}return o}function pr(n,t,r,e,u,o){if(n===t)return 0!==n||1/n==1/t;var i=typeof n,f=typeof t;return"function"!=i&&"object"!=i&&"function"!=f&&"object"!=f||null==n||null==t?n!==n&&t!==t:sr(n,t,pr,r,e,u,o)
}),u}function lr(n,t,r,e){e-=1;for(var u=n.length,o=-1,i=[];++e<u;){var f=n[e];if(p(f)&&ae(f.length)&&(Uo(f)||Je(f))){t&&(f=lr(f,t,r,0));var a=-1,c=f.length;for(i.length+=c;++a<c;)i[++o]=f[a]}else r||(i[++o]=f)}return i}function sr(n,t,r){var e=-1,u=ge(n);r=r(n);for(var o=r.length;++e<o;){var i=r[e];if(false===t(u[i],i,u))break}return n}function pr(n,t,r){var e=ge(n);r=r(n);for(var u=r.length;u--;){var o=r[u];if(false===t(e[o],o,e))break}return n}function hr(n,t){sr(n,t,fu)}function _r(n,t){return sr(n,t,zo) }function sr(n,t,r,e,u,o,i){var f=si(n),a=si(t),c=M,l=M;f||(c=Lu.call(n),c==z?c=Y:c!=Y&&(f=eu(n))),a||(l=Lu.call(t),l==z?l=Y:l!=Y&&eu(t));var p=c==Y||u&&c==K,a=l==Y||u&&l==K;if((l=c==l)&&!f&&!p)return fe(n,t,c);if(u){if(!(l||p&&a))return false}else{if(c=p&&Nu.call(n,"__wrapped__"),a=a&&Nu.call(t,"__wrapped__"),c||a)return r(c?n.value():n,a?t.value():t,e,u,o,i);if(!l)return false}for(o||(o=[]),i||(i=[]),c=o.length;c--;)if(o[c]==n)return i[c]==t;return o.push(n),i.push(t),n=(f?ie:ae)(n,t,r,e,u,o,i),o.pop(),i.pop(),n
}function gr(n,t){return pr(n,t,zo)}function vr(n,t){for(var r=-1,e=t.length,u=-1,o=[];++r<e;){var i=t[r];$o(n[i])&&(o[++u]=i)}return o}function yr(n,t,r){var e=-1,u=typeof t=="function",o=n?n.length:0,i=ae(o)?xu(o):[];return or(n,function(n){var o=u?t:null!=n&&n[t];i[++e]=o?o.apply(n,r):m}),i}function dr(n,t,r,e,u,o){if(n===t)return 0!==n||1/n==1/t;var i=typeof n,f=typeof t;if("function"!=i&&"object"!=i&&"function"!=f&&"object"!=f||null==n||null==t)n=n!==n&&t!==t;else n:{var i=dr,f=Uo(n),a=Uo(t),c=z,l=z; }function hr(n,t,r,e,u){for(var o=-1,i=t.length,f=!u;++o<i;)if(f&&e[o]?r[o]!==n[t[o]]:!(t[o]in n))return false;for(o=-1;++o<i;){var a=t[o],c=n[a],l=r[o];if(f&&e[o]?a=typeof c!="undefined"||a in n:(a=u?u(c,l,a):w,typeof a=="undefined"&&(a=pr(l,c,u,true))),!a)return false}return true}function _r(n,t){var r=[];return Ao(n,function(n,e,u){r.push(t(n,e,u))}),r}function vr(n){var t=ji(n),r=t.length;if(!r)return vu(true);if(1==r){var e=t[0],u=n[e];if(me(u))return function(n){return null!=n&&n[e]===u&&(typeof u!="undefined"||e in ke(n))
f||(c=zu.call(n),c==B?c=V:c!=V&&(f=uu(n))),a||(l=zu.call(t),l==B?l=V:l!=V&&uu(t));var s=c==V,a=l==V,l=c==l;if(!l||f||s)if(c=s&&Lu.call(n,"__wrapped__"),a=a&&Lu.call(t,"__wrapped__"),c||a)n=i(c?n.value():n,a?t.value():t,r,e,u,o);else if(l){for(u||(u=[]),o||(o=[]),c=u.length;c--;)if(u[c]==n){n=o[c]==t;break n}u.push(n),o.push(t),n=(f?Xr:Qr)(n,t,i,r,e,u,o),u.pop(),o.pop()}else n=false;else n=Hr(n,t,c)}return n}function mr(n,t,r,e,u){var o=t.length;if(null==n)return!o;for(var i=-1,f=!u;++i<o;)if(f&&e[i]?r[i]!==n[t[i]]:!Lu.call(n,t[i]))return false; }}for(var o=wu(r),i=wu(r);r--;)u=n[t[r]],o[r]=u,i[r]=me(u);return function(n){return null!=n&&hr(ke(n),t,o,i)}}function gr(n,t){return me(t)?function(r){return null!=r&&r[n]===t&&(typeof t!="undefined"||n in ke(r))}:function(r){return null!=r&&pr(t,r[n],null,true)}}function yr(n,t,r,e,u){if(!He(n))return n;var o=de(t.length)&&(si(t)||eu(t));return(o?zt:ar)(t,function(t,i,f){if(h(t)){e||(e=[]),u||(u=[]);n:{t=e;for(var a=u,c=t.length,l=f[i];c--;)if(t[c]==l){n[i]=a[c],i=void 0;break n}c=n[i],f=r?r(c,l,i,n,f):w;
for(i=-1;++i<o;){var a=t[i];if(f&&e[i])a=Lu.call(n,a);else{var c=n[a],l=r[i],a=u?u(c,l,a):m;typeof a=="undefined"&&(a=dr(l,c,u,true))}if(!a)return false}return true}function br(n,t){var r=[];return or(n,function(n,e,u){r.push(t(n,e,u))}),r}function wr(n){var t=zo(n),r=t.length;if(1==r){var e=t[0],u=n[e];if(ce(u))return function(n){return null!=n&&n[e]===u&&Lu.call(n,e)}}for(var o=xu(r),i=xu(r);r--;)u=n[t[r]],o[r]=u,i[r]=ce(u);return function(n){return mr(n,t,o,i)}}function xr(n,t){return ce(t)?function(r){return null!=r&&r[n]===t var p=typeof f=="undefined";p&&(f=l,de(l.length)&&(si(l)||eu(l))?f=si(c)?c:c&&c.length?Bt(c):[]:vi(l)||Ge(l)?f=Ge(c)?uu(c):vi(c)?c:{}:p=false),t.push(l),a.push(f),p?n[i]=yr(f,l,r,t,a):(f===f?f!==c:c===c)&&(n[i]=f),i=void 0}return i}a=n[i],f=r?r(a,t,i,n,f):w,(l=typeof f=="undefined")&&(f=t),!o&&typeof f=="undefined"||!l&&(f===f?f===a:a!==a)||(n[i]=f)}),n}function dr(n){return function(t){return null==t?w:t[n]}}function mr(n,t){return n+Ku(lo()*(t-n+1))}function wr(n,t,r,e,u){return u(n,function(n,u,o){r=e?(e=false,n):t(r,n,u,o)
}:function(r){return null!=r&&dr(t,r[n],null,true)}}function Ar(n,t,r,e,u){if(!Qe(n))return n;var o=ae(t.length)&&(Uo(t)||uu(t));return(o?Mt:_r)(t,function(t,i,f){if(p(t)){e||(e=[]),u||(u=[]);n:{t=e;for(var a=u,c=t.length,l=f[i];c--;)if(t[c]==l){n[i]=a[c],i=void 0;break n}c=n[i],f=r?r(c,l,i,n,f):m;var s=typeof f=="undefined";s&&(f=l,ae(l.length)&&(Uo(l)||uu(l))?f=Uo(c)?c:c?Bt(c):[]:Lo(l)||Je(l)?f=Je(c)?ou(c):Lo(c)?c:{}:s=false),t.push(l),a.push(f),s?n[i]=Ar(f,l,r,t,a):(f===f?f!==c:c===c)&&(n[i]=f),i=void 0 }),r}function br(n,t,r){var e=-1,u=n.length;for(t=null==t?0:+t||0,0>t&&(t=-t>u?0:u+t),r=typeof r=="undefined"||r>u?u:+r||0,0>r&&(r+=u),u=t>r?0:r-t>>>0,t>>>=0,r=wu(u);++e<u;)r[e]=n[e+t];return r}function xr(n,t){var r;return Ao(n,function(n,e,u){return r=t(n,e,u),!r}),!!r}function Ar(n,t){var r=n.length;for(n.sort(t);r--;)n[r]=n[r].c;return n}function jr(t,r,e){var u=-1,o=t.length,i=de(o)?wu(o):[];return Ao(t,function(n){for(var t=r.length,e=wu(t);t--;)e[t]=null==n?w:n[r[t]];i[++u]={a:e,b:u,c:n}}),Ar(i,function(t,r){var u;
}return i}a=n[i],f=r?r(a,t,i,n,f):m,(l=typeof f=="undefined")&&(f=t),!o&&typeof f=="undefined"||!l&&(f===f?f===a:a!==a)||(n[i]=f)}),n}function jr(n){return function(t){return null==t?m:t[n]}}function kr(n,t){return n+Yu(po()*(t-n+1))}function Er(n,t,r,e,u){return u(n,function(n,u,o){r=e?(e=false,n):t(r,n,u,o)}),r}function Rr(n,t,r){var e=-1,u=n.length;for(t=null==t?0:+t||0,0>t&&(t=-t>u?0:u+t),r=typeof r=="undefined"||r>u?u:+r||0,0>r&&(r+=u),u=t>r?0:r-t>>>0,t>>>=0,r=xu(u);++e<u;)r[e]=n[e+t];return r}function Ir(n,t){var r; n:{u=-1;for(var o=t.a,i=r.a,f=o.length,a=e.length;++u<f;){var c=n(o[u],i[u]);if(c){u=u<a?c*(e[u]?1:-1):c;break n}}u=t.b-r.b}return u})}function kr(n,t){var r=0;return Ao(n,function(n,e,u){r+=+t(n,e,u)||0}),r}function Er(n,t){var e=-1,u=pe(),o=n.length,i=u==r,f=i&&200<=o,a=f?Oo():null,c=[];a?(u=Lt,i=false):(f=false,a=t?[]:c);n:for(;++e<o;){var l=n[e],p=t?t(l,e,n):l;if(i&&l===l){for(var s=a.length;s--;)if(a[s]===p)continue n;t&&a.push(p),c.push(l)}else 0>u(a,p,0)&&((t||f)&&a.push(p),c.push(l))}return c}function Ir(n,t){for(var r=-1,e=t.length,u=wu(e);++r<e;)u[r]=n[t[r]];
return or(n,function(n,e,u){return r=t(n,e,u),!r}),!!r}function Or(n,t){var r=n.length;for(n.sort(t);r--;)n[r]=n[r].c;return n}function Cr(t,r,e){var u=-1,o=t.length,i=ae(o)?xu(o):[];return or(t,function(n){for(var t=r.length,e=xu(t);t--;)e[t]=null==n?m:n[r[t]];i[++u]={a:e,b:u,c:n}}),Or(i,function(t,r){var u;n:{u=-1;for(var o=t.a,i=r.a,f=o.length,a=e.length;++u<f;){var c=n(o[u],i[u]);if(c){u=u<a?c*(e[u]?1:-1):c;break n}}u=t.b-r.b}return u})}function Wr(n,r){var e=-1,u=re(),o=n.length,i=u==t,f=i&&200<=o,a=f?ko():null,c=[]; return u}function Or(n,t,r,e){for(var u=n.length,o=e?u:-1;(e?o--:++o<u)&&t(n[o],o,n););return r?br(n,e?0:o,e?o+1:u):br(n,e?o+1:0,e?u:o)}function Rr(n,t){var r=n;r instanceof Ft&&(r=r.value());for(var e=-1,u=t.length;++e<u;){var r=[r],o=t[e];Yu.apply(r,o.args),r=o.func.apply(o.thisArg,r)}return r}function Cr(n,t,r){var e=0,u=n?n.length:e;if(typeof t=="number"&&t===t&&u<=vo){for(;e<u;){var o=e+u>>>1,i=n[o];(r?i<=t:i<t)?e=o+1:u=o}return u}return Sr(n,t,gu,r)}function Sr(n,t,r,e){t=r(t);for(var u=0,o=n?n.length:0,i=t!==t,f=typeof t=="undefined";u<o;){var a=Ku((u+o)/2),c=r(n[a]),l=c===c;
a?(u=Lt,i=false):(f=false,a=r?[]:c);n:for(;++e<o;){var l=n[e],s=r?r(l,e,n):l;if(i&&l===l){for(var p=a.length;p--;)if(a[p]===s)continue n;r&&a.push(s),c.push(l)}else 0>u(a,s,0)&&((r||f)&&a.push(s),c.push(l))}return c}function Tr(n,t){for(var r=-1,e=t.length,u=xu(e);++r<e;)u[r]=n[t[r]];return u}function Sr(n,t){var r=n;r instanceof Ut&&(r=r.value());for(var e=-1,u=t.length;++e<u;){var r=[r],o=t[e];Gu.apply(r,o.args),r=o.func.apply(o.thisArg,r)}return r}function Nr(n,t,r){var e=0,u=n?n.length:e;if(typeof t=="number"&&t===t&&u<=yo){for(;e<u;){var o=e+u>>>1,i=n[o]; (i?l||e:f?l&&(e||typeof c!="undefined"):e?c<=t:c<t)?u=a+1:o=a}return io(o,_o)}function Wr(n,t,r){if(typeof n!="function")return gu;if(typeof t=="undefined")return n;switch(r){case 1:return function(r){return n.call(t,r)};case 3:return function(r,e,u){return n.call(t,r,e,u)};case 4:return function(r,e,u,o){return n.call(t,r,e,u,o)};case 5:return function(r,e,u,o,i){return n.call(t,r,e,u,o,i)}}return function(){return n.apply(t,arguments)}}function Tr(n){return Du.call(n,0)}function Ur(n,t,r){for(var e=r.length,u=-1,o=oo(n.length-e,0),i=-1,f=t.length,a=wu(o+f);++i<f;)a[i]=t[i];
(r?i<=t:i<t)?e=o+1:u=o}return u}return Ur(n,t,du,r)}function Ur(n,t,r,e){t=r(t);for(var u=0,o=n?n.length:0,i=t!==t,f=typeof t=="undefined";u<o;){var a=Yu((u+o)/2),c=r(n[a]),l=c===c;(i?l||e:f?l&&(e||typeof c!="undefined"):e?c<=t:c<t)?u=a+1:o=a}return ao(o,vo)}function Fr(n,t,r){if(typeof n!="function")return du;if(typeof t=="undefined")return n;switch(r){case 1:return function(r){return n.call(t,r)};case 3:return function(r,e,u){return n.call(t,r,e,u)};case 4:return function(r,e,u,o){return n.call(t,r,e,u,o) for(;++u<e;)a[r[u]]=n[u];for(;o--;)a[i++]=n[u++];return a}function Fr(n,t,r){for(var e=-1,u=r.length,o=-1,i=oo(n.length-u,0),f=-1,a=t.length,c=wu(i+a);++o<i;)c[o]=n[o];for(i=o;++f<a;)c[i+f]=t[f];for(;++e<u;)c[i+r[e]]=n[o++];return c}function Nr(n,t){return function(r,e,u){var o=t?t():{};if(e=le(e,u,3),si(r)){u=-1;for(var i=r.length;++u<i;){var f=r[u];n(o,f,e(f,u,r),r)}}else Ao(r,function(t,r,u){n(o,t,e(t,r,u),u)});return o}}function $r(n){return function(){var t=arguments,r=t.length,e=t[0];if(2>r||null==e)return e;
};case 5:return function(r,e,u,o,i){return n.call(t,r,e,u,o,i)}}return function(){return n.apply(t,arguments)}}function $r(n){return Pu.call(n,0)}function Lr(n,t,r){for(var e=r.length,u=-1,o=fo(n.length-e,0),i=-1,f=t.length,a=xu(o+f);++i<f;)a[i]=t[i];for(;++u<e;)a[r[u]]=n[u];for(;o--;)a[i++]=n[u++];return a}function Br(n,t,r){for(var e=-1,u=r.length,o=-1,i=fo(n.length-u,0),f=-1,a=t.length,c=xu(i+a);++o<i;)c[o]=n[o];for(i=o;++f<a;)c[i+f]=t[f];for(;++e<u;)c[i+r[e]]=n[o++];return c}function zr(n,t){return function(r,e,u){var o=t?t():{}; var u=t[r-2],o=t[r-1],i=t[3];for(3<r&&typeof u=="function"?(u=Wr(u,o,5),r-=2):(u=2<r&&typeof o=="function"?o:null,r-=u?1:0),i&&ge(t[1],t[2],i)&&(u=3==r?null:u,r=2),o=0;++o<r;)(i=t[o])&&n(e,i,u);return e}}function Lr(n,t){return function(r,e){var u=r?r.length:0;if(!de(u))return n(r,e);for(var o=t?u:-1,i=ke(r);(t?o--:++o<u)&&false!==e(i[o],o,i););return r}}function Br(n){return function(t,r,e){var u=ke(t);e=e(t);for(var o=e.length,i=n?o:-1;n?i--:++i<o;){var f=e[i];if(false===r(u[f],f,u))break}return t}}function zr(n,t){function r(){return(this&&this!==Mt&&this instanceof r?e:n).apply(t,arguments)
if(e=te(e,u,3),Uo(r)){u=-1;for(var i=r.length;++u<i;){var f=r[u];n(o,f,e(f,u,r),r)}}else or(r,function(t,r,u){n(o,t,e(t,r,u),u)});return o}}function Dr(n){return function(){var t=arguments,r=t.length,e=t[0];if(2>r||null==e)return e;var u=t[r-2],o=t[r-1],i=t[3];for(3<r&&typeof u=="function"?(u=Fr(u,o,5),r-=2):(u=2<r&&typeof o=="function"?o:null,r-=u?1:0),i&&fe(t[1],t[2],i)&&(u=3==r?null:u,r=2),o=0;++o<r;)(i=t[o])&&n(e,i,u);return e}}function Mr(n,t){function r(){return(this&&this!==zt&&this instanceof r?e:n).apply(t,arguments) }var e=Dr(n);return r}function Mr(n){return function(t){var r=-1;t=hu(au(t));for(var e=t.length,u="";++r<e;)u=n(u,t[r],r);return u}}function Dr(n){return function(){var t=xo(n.prototype),r=n.apply(t,arguments);return He(r)?r:t}}function Pr(n){function t(r,e,u){return u&&ge(r,e,u)&&(e=null),r=oe(r,n,null,null,null,null,null,e),r.placeholder=t.placeholder,r}return t}function qr(n,t){return function(r,e,u){u&&ge(r,e,u)&&(e=null);var i=le(),f=null==e;if(i===Qt&&f||(f=false,e=i(e,u,3)),f){if(e=si(r),e||!ru(r))return n(e?r:je(r));
}var e=Kr(n);return r}function qr(n){return function(){var t=arguments.length,r=t,e=n?t-1:0;if(!t)return function(n){return n};for(var u=xu(t);r--;)if(u[r]=arguments[r],"function"!=typeof u[r])throw new Wu($);return function(){for(var r=e,o=u[r].apply(this,arguments);n?r--:++r<t;)o=u[r].call(this,o);return o}}}function Pr(n){return function(t){var r=-1;t=_u(cu(t));for(var e=t.length,u="";++r<e;)u=n(u,t[r],r);return u}}function Kr(n){return function(){var t=Ao(n.prototype),r=n.apply(t,arguments);return Qe(r)?r:t e=o}return ce(r,e,t)}}function Kr(n,r){return function(e,u,o){return u=le(u,o,3),si(e)?(u=t(e,u,r),-1<u?e[u]:w):or(e,u,n)}}function Vr(n){return function(r,e,u){return r&&r.length?(e=le(e,u,3),t(r,e,n)):-1}}function Yr(n){return function(t,r,e){return r=le(r,e,3),or(t,r,n,true)}}function Zr(n){return function(){var t=arguments.length;if(!t)return function(){return arguments[0]};for(var r,e=n?t:-1,u=0,o=wu(t);n?e--:++e<t;){var i=o[u++]=arguments[e];if(typeof i!="function")throw new Ru(L);var f=r?"":Co(i);
}}function Vr(n,t){return function(r,e,o){o&&fe(r,e,o)&&(e=null);var i=te(),f=null==e;if(i===tr&&f||(f=false,e=i(e,o,3)),f){if(e=Uo(r),e||!eu(r))return n(e?r:_e(r));e=u}return ne(r,e,t)}}function Yr(n,t,r,e,u,o,i,f,a,c){function l(){for(var A=arguments.length,j=A,k=xu(A);j--;)k[j]=arguments[j];if(e&&(k=Lr(k,e,u)),o&&(k=Br(k,o,i)),g||y){var j=l.placeholder,I=_(k,j),A=A-I.length;if(A<c){var O=f?Bt(f):null,A=fo(c-A,0),C=g?I:null,I=g?null:I,W=g?k:null,k=g?null:k;return t|=g?E:R,t&=~(g?R:E),v||(t&=~(w|x)),k=Yr(n,t,r,W,C,k,I,O,a,A),k.placeholder=j,k r="wrapper"==f?new Ut([]):r}for(e=r?-1:t;++e<t;)i=o[e],f=Co(i),r=(u="wrapper"==f?Ro(i):null)&&ye(u[0])?r[Co(u[0])].apply(r,u[3]):1==i.length&&ye(i)?r[f]():r.thru(i);return function(){var n=arguments;if(r&&1==n.length&&si(n[0]))return r.plant(n[0]).value();for(var e=0,n=o[e].apply(this,n);++e<t;)n=o[e].call(this,n);return n}}}function Gr(n,t){return function(r,e,u){return typeof e=="function"&&typeof u=="undefined"&&si(r)?n(r,e):t(r,Wr(e,u,3))}}function Jr(n){return function(t,r,e){return(typeof r!="function"||typeof e!="undefined")&&(r=Wr(r,e,3)),n(t,r,iu)
}}if(j=p?r:this,h&&(n=j[b]),f)for(O=k.length,A=ao(f.length,O),C=Bt(k);A--;)I=f[A],k[A]=ie(I,O)?C[I]:m;return s&&a<k.length&&(k.length=a),(this&&this!==zt&&this instanceof l?d||Kr(n):n).apply(j,k)}var s=t&O,p=t&w,h=t&x,g=t&j,v=t&A,y=t&k,d=!h&&Kr(n),b=n;return l}function Zr(n,t,r){return n=n.length,t=+t,n<t&&oo(t)?(t-=n,r=null==r?" ":r+"",pu(r,Ku(t/r.length)).slice(0,t)):""}function Gr(n,t,r,e){function u(){for(var t=-1,f=arguments.length,a=-1,c=e.length,l=xu(f+c);++a<c;)l[a]=e[a];for(;f--;)l[a++]=arguments[++t]; }}function Xr(n){return function(t,r,e){return(typeof r!="function"||typeof e!="undefined")&&(r=Wr(r,e,3)),n(t,r)}}function Hr(n){return function(t,r,e){return(t=u(t))&&(n?t:"")+re(t,r,e)+(n?"":t)}}function Qr(n){var t=Ze(function(r,e){var u=v(e,t.placeholder);return oe(r,n,null,e,u)});return t}function ne(n,t){return function(r,e,u,o){var i=3>arguments.length;return typeof e=="function"&&typeof o=="undefined"&&si(r)?n(r,e,u,i):wr(r,le(e,o,4),u,i,t)}}function te(n,t,r,e,u,o,i,f,a,c){function l(){for(var b=arguments.length,j=b,k=wu(b);j--;)k[j]=arguments[j];
return(this&&this!==zt&&this instanceof u?i:n).apply(o?r:this,l)}var o=t&w,i=Kr(n);return u}function Jr(n,t,r,e,u,o,i,f){var a=t&x;if(!a&&typeof n!="function")throw new Wu($);var c=e?e.length:0;if(c||(t&=~(E|R),e=u=null),c-=u?u.length:0,t&R){var l=e,s=u;e=u=null}var p=!a&&Eo(n);if(r=[n,t,r,e,u,l,s,o,i,f],p&&true!==p){e=r[1],t=p[1],f=e|t,o=O|I,u=w|x,i=o|u|A|k;var l=e&O&&!(t&O),s=e&I&&!(t&I),h=(s?r:p)[7],g=(l?r:p)[8];o=f>=o&&f<=i&&(e<I||(s||l)&&h.length<=g),(!(e>=I&&t>u||e>u&&t>=I)||o)&&(t&w&&(r[2]=p[2],f|=e&w?0:A),(e=p[3])&&(u=r[3],r[3]=u?Lr(u,e,p[4]):Bt(e),r[4]=u?_(r[3],L):Bt(p[4])),(e=p[5])&&(u=r[5],r[5]=u?Br(u,e,p[6]):Bt(e),r[6]=u?_(r[5],L):Bt(p[6])),(e=p[7])&&(r[7]=Bt(e)),t&O&&(r[8]=null==r[8]?p[8]:ao(r[8],p[8])),null==r[9]&&(r[9]=p[9]),r[0]=p[0],r[1]=f),t=r[1],f=r[9] if(e&&(k=Ur(k,e,u)),o&&(k=Fr(k,o,i)),_||y){var j=l.placeholder,E=v(k,j),b=b-E.length;if(b<c){var R=f?Bt(f):null,b=oo(c-b,0),C=_?E:null,E=_?null:E,S=_?k:null,k=_?null:k;return t|=_?I:O,t&=~(_?O:I),g||(t&=~(x|A)),k=[n,t,r,S,C,k,E,R,a,b],R=te.apply(w,k),ye(n)&&So(R,k),R.placeholder=j,R}}if(j=s?r:this,h&&(n=j[m]),f)for(R=k.length,b=io(f.length,R),C=Bt(k);b--;)E=f[b],k[b]=ve(E,R)?C[E]:w;return p&&a<k.length&&(k.length=a),(this&&this!==Mt&&this instanceof l?d||Dr(n):n).apply(j,k)}var p=t&R,s=t&x,h=t&A,_=t&k,g=t&j,y=t&E,d=!h&&Dr(n),m=n;
}return r[9]=null==f?a?0:n.length:fo(f-c,0)||0,(p?jo:Ro)(t==w?Mr(r[0],r[2]):t!=E&&t!=(w|E)||r[4].length?Yr.apply(m,r):Gr.apply(m,r),r)}function Xr(n,t,r,e,u,o,i){var f=-1,a=n.length,c=t.length,l=true;if(a!=c&&(!u||c<=a))return false;for(;l&&++f<a;){var s=n[f],p=t[f],l=m;if(e&&(l=u?e(p,s,f):e(s,p,f)),typeof l=="undefined")if(u)for(var h=c;h--&&(p=t[h],!(l=s&&s===p||r(s,p,e,u,o,i))););else l=s&&s===p||r(s,p,e,u,o,i)}return!!l}function Hr(n,t,r){switch(r){case D:case M:return+n==+t;case q:return n.name==t.name&&n.message==t.message; return l}function re(n,t,r){return n=n.length,t=+t,n<t&&eo(t)?(t-=n,r=null==r?" ":r+"",pu(r,Pu(t/r.length)).slice(0,t)):""}function ee(n,t,r,e){function u(){for(var t=-1,f=arguments.length,a=-1,c=e.length,l=wu(f+c);++a<c;)l[a]=e[a];for(;f--;)l[a++]=arguments[++t];return(this&&this!==Mt&&this instanceof u?i:n).apply(o?r:this,l)}var o=t&x,i=Dr(n);return u}function ue(n){return function(t,r,e,u){var o=le(e);return o===Qt&&null==e?Cr(t,r,n):Sr(t,r,o(e,u,1),n)}}function oe(n,t,r,e,u,o,i,f){var a=t&A;if(!a&&typeof n!="function")throw new Ru(L);
case K:return n!=+n?t!=+t:0==n?1/n==1/t:n==+t;case Y:case Z:return n==t+""}return false}function Qr(n,t,r,e,u,o,i){var f=zo(n),a=f.length,c=zo(t).length;if(a!=c&&!u)return false;for(var l,c=-1;++c<a;){var s=f[c],p=Lu.call(t,s);if(p){var h=n[s],_=t[s],p=m;e&&(p=u?e(_,h,s):e(h,_,s)),typeof p=="undefined"&&(p=h&&h===_||r(h,_,e,u,o,i))}if(!p)return false;l||(l="constructor"==s)}return l||(r=n.constructor,e=t.constructor,!(r!=e&&"constructor"in n&&"constructor"in t)||typeof r=="function"&&r instanceof r&&typeof e=="function"&&e instanceof e)?true:false var c=e?e.length:0;if(c||(t&=~(I|O),e=u=null),c-=u?u.length:0,t&O){var l=e,p=u;e=u=null}var s=a?null:Ro(n);return r=[n,t,r,e,u,l,p,o,i,f],s&&(e=r[1],t=s[1],f=e|t,u=t==R&&e==k||t==R&&e==C&&r[7].length<=s[8]||t==(R|C)&&e==k,(f<R||u)&&(t&x&&(r[2]=s[2],f|=e&x?0:j),(e=s[3])&&(u=r[3],r[3]=u?Ur(u,e,s[4]):Bt(e),r[4]=u?v(r[3],B):Bt(s[4])),(e=s[5])&&(u=r[5],r[5]=u?Fr(u,e,s[6]):Bt(e),r[6]=u?v(r[5],B):Bt(s[6])),(e=s[7])&&(r[7]=Bt(e)),t&R&&(r[8]=null==r[8]?s[8]:io(r[8],s[8])),null==r[9]&&(r[9]=s[9]),r[0]=s[0],r[1]=f),t=r[1],f=r[9]),r[9]=null==f?a?0:n.length:oo(f-c,0)||0,(s?Io:So)(t==x?zr(r[0],r[2]):t!=I&&t!=(x|I)||r[4].length?te.apply(w,r):ee.apply(w,r),r)
}function ne(n,t,r){var e=r?_o:ho,u=e,o=u;return or(n,function(n,i,f){i=t(n,i,f),((r?i<u:i>u)||i===e&&i===o)&&(u=i,o=n)}),o}function te(n,t,r){var e=Tt.callback||vu,e=e===vu?tr:e;return r?e(n,t,r):e}function re(n,r,e){var u=Tt.indexOf||we,u=u===we?t:u;return n?u(n,r,e):u}function ee(n){var t=n.length,r=new n.constructor(t);return t&&"string"==typeof n[0]&&Lu.call(n,"index")&&(r.index=n.index,r.input=n.input),r}function ue(n){return n=n.constructor,typeof n=="function"&&n instanceof n||(n=Iu),new n }function ie(n,t,r,e,u,o,i){var f=-1,a=n.length,c=t.length,l=true;if(a!=c&&(!u||c<=a))return false;for(;l&&++f<a;){var p=n[f],s=t[f],l=w;if(e&&(l=u?e(s,p,f):e(p,s,f)),typeof l=="undefined")if(u)for(var h=c;h--&&(s=t[h],!(l=p&&p===s||r(p,s,e,u,o,i))););else l=p&&p===s||r(p,s,e,u,o,i)}return!!l}function fe(n,t,r){switch(r){case D:case P:return+n==+t;case q:return n.name==t.name&&n.message==t.message;case V:return n!=+n?t!=+t:0==n?1/n==1/t:n==+t;case Z:case G:return n==t+""}return false}function ae(n,t,r,e,u,o,i){var f=ji(n),a=f.length,c=ji(t).length;
}function oe(n,t,r){var e=n.constructor;switch(t){case G:return $r(n);case D:case M:return new e(+n);case J:case X:case H:case Q:case nt:case tt:case rt:case et:case ut:return t=n.buffer,new e(r?$r(t):t,n.byteOffset,n.length);case K:case Z:return new e(n);case Y:var u=new e(n.source,vt.exec(n));u.lastIndex=n.lastIndex}return u}function ie(n,t){return n=+n,t=null==t?bo:t,-1<n&&0==n%1&&n<t}function fe(n,t,r){if(!Qe(r))return false;var e=typeof t;return"number"==e?(e=r.length,e=ae(e)&&ie(t,e)):e="string"==e&&t in r,e?(t=r[t],n===n?n===t:t!==t):false if(a!=c&&!u)return false;for(var c=u,l=-1;++l<a;){var p=f[l],s=u?p in t:Nu.call(t,p);if(s){var h=n[p],_=t[p],s=w;e&&(s=u?e(_,h,p):e(h,_,p)),typeof s=="undefined"&&(s=h&&h===_||r(h,_,e,u,o,i))}if(!s)return false;c||(c="constructor"==p)}return c||(r=n.constructor,e=t.constructor,!(r!=e&&"constructor"in n&&"constructor"in t)||typeof r=="function"&&r instanceof r&&typeof e=="function"&&e instanceof e)?true:false}function ce(n,t,r){var e=r?so:po,u=e,o=u;return Ao(n,function(n,i,f){i=t(n,i,f),((r?i<u:i>u)||i===e&&i===o)&&(u=i,o=n)
}function ae(n){return typeof n=="number"&&-1<n&&0==n%1&&n<=bo}function ce(n){return n===n&&(0===n?0<1/n:!Qe(n))}function le(n,t){n=ge(n);for(var r=-1,e=t.length,u={};++r<e;){var o=t[r];o in n&&(u[o]=n[o])}return u}function se(n,t){var r={};return hr(n,function(n,e,u){t(n,e,u)&&(r[e]=n)}),r}function pe(n){var t;if(!p(n)||zu.call(n)!=V||!(Lu.call(n,"constructor")||(t=n.constructor,typeof t!="function"||t instanceof t)))return false;var r;return hr(n,function(n,t){r=t}),typeof r=="undefined"||Lu.call(n,r) }),o}function le(n,t,r){var e=Wt.callback||_u,e=e===_u?Qt:e;return r?e(n,t,r):e}function pe(n,t,e){var u=Wt.indexOf||Ce,u=u===Ce?r:u;return n?u(n,t,e):u}function se(n){var t=n.length,r=new n.constructor(t);return t&&"string"==typeof n[0]&&Nu.call(n,"index")&&(r.index=n.index,r.input=n.input),r}function he(n){return n=n.constructor,typeof n=="function"&&n instanceof n||(n=Eu),new n}function _e(n,t,r){var e=n.constructor;switch(t){case J:return Tr(n);case D:case P:return new e(+n);case X:case H:case Q:case nt:case tt:case rt:case et:case ut:case ot:return t=n.buffer,new e(r?Tr(t):t,n.byteOffset,n.length);
}function he(n){for(var t=fu(n),r=t.length,e=r&&n.length,u=Tt.support,u=e&&ae(e)&&(Uo(n)||u.nonEnumArgs&&Je(n)),o=-1,i=[];++o<r;){var f=t[o];(u&&ie(f,e)||Lu.call(n,f))&&i.push(f)}return i}function _e(n){return null==n?[]:ae(n.length)?Qe(n)?n:Iu(n):au(n)}function ge(n){return Qe(n)?n:Iu(n)}function ve(n){return n instanceof Ut?n.clone():new Nt(n.__wrapped__,n.__chain__,Bt(n.__actions__))}function ye(n,t,r){return n&&n.length?((r?fe(n,t,r):null==t)&&(t=1),Rr(n,0>t?0:t)):[]}function de(n,t,r){var e=n?n.length:0; case V:case G:return new e(n);case Z:var u=new e(n.source,dt.exec(n));u.lastIndex=n.lastIndex}return u}function ve(n,t){return n=+n,t=null==t?yo:t,-1<n&&0==n%1&&n<t}function ge(n,t,r){if(!He(r))return false;var e=typeof t;return"number"==e?(e=r.length,e=de(e)&&ve(t,e)):e="string"==e&&t in r,e?(t=r[t],n===n?n===t:t!==t):false}function ye(n){var t=Co(n);return!!t&&n===Wt[t]&&t in Ft.prototype}function de(n){return typeof n=="number"&&-1<n&&0==n%1&&n<=yo}function me(n){return n===n&&(0===n?0<1/n:!He(n))}function we(n,t){n=ke(n);
return e?((r?fe(n,t,r):null==t)&&(t=1),t=e-(+t||0),Rr(n,0,0>t?0:t)):[]}function me(n,t,r){var e=-1,u=n?n.length:0;for(t=te(t,r,3);++e<u;)if(t(n[e],e,n))return e;return-1}function be(n){return n?n[0]:m}function we(n,r,e){var u=n?n.length:0;if(!u)return-1;if(typeof e=="number")e=0>e?fo(u+e,0):e;else if(e)return e=Nr(n,r),n=n[e],(r===r?r===n:n!==n)?e:-1;return t(n,r,e||0)}function xe(n){var t=n?n.length:0;return t?n[t-1]:m}function Ae(n){return ye(n,1)}function je(n,r,e,u){if(!n||!n.length)return[]; for(var r=-1,e=t.length,u={};++r<e;){var o=t[r];o in n&&(u[o]=n[o])}return u}function be(n,t){var r={};return fr(n,function(n,e,u){t(n,e,u)&&(r[e]=n)}),r}function xe(n){var t;if(!h(n)||Lu.call(n)!=Y||!(Nu.call(n,"constructor")||(t=n.constructor,typeof t!="function"||t instanceof t)))return false;var r;return fr(n,function(n,t){r=t}),typeof r=="undefined"||Nu.call(n,r)}function Ae(n){for(var t=iu(n),r=t.length,e=r&&n.length,u=Wt.support,u=e&&de(e)&&(si(n)||u.nonEnumArgs&&Ge(n)),o=-1,i=[];++o<r;){var f=t[o];
null!=r&&typeof r!="boolean"&&(u=e,e=fe(n,r,u)?null:r,r=false);var o=te();if((o!==tr||null!=e)&&(e=o(e,u,3)),r&&re()==t){r=e;var i;e=-1,u=n.length;for(var o=-1,f=[];++e<u;){var a=n[e],c=r?r(a,e,n):a;e&&i===c||(i=c,f[++o]=a)}n=f}else n=Wr(n,e);return n}function ke(n){for(var t=-1,r=(n&&n.length&&Vt(Kt(n,$u)))>>>0,e=xu(r);++t<r;)e[t]=Kt(n,jr(t));return e}function Ee(n,t){var r=-1,e=n?n.length:0,u={};for(!e||t||Uo(n[0])||(t=[]);++r<e;){var o=n[r];t?u[o]=t[r]:o&&(u[o[0]]=o[1])}return u}function Re(n){return n=Tt(n),n.__chain__=true,n (u&&ve(f,e)||Nu.call(n,f))&&i.push(f)}return i}function je(n){return null==n?[]:de(n.length)?He(n)?n:Eu(n):fu(n)}function ke(n){return He(n)?n:Eu(n)}function Ee(n){return n instanceof Ft?n.clone():new Ut(n.__wrapped__,n.__chain__,Bt(n.__actions__))}function Ie(n,t,r){return n&&n.length?((r?ge(n,t,r):null==t)&&(t=1),br(n,0>t?0:t)):[]}function Oe(n,t,r){var e=n?n.length:0;return e?((r?ge(n,t,r):null==t)&&(t=1),t=e-(+t||0),br(n,0,0>t?0:t)):[]}function Re(n){return n?n[0]:w}function Ce(n,t,e){var u=n?n.length:0;
}function Ie(n,t,r){return t.call(r,n)}function Oe(n,t,r){var e=Uo(n)?qt:fr;return(typeof t!="function"||typeof r!="undefined")&&(t=te(t,r,3)),e(n,t)}function Ce(n,t,r){var e=Uo(n)?Pt:ar;return t=te(t,r,3),e(n,t)}function We(n,t,r){return Uo(n)?(t=me(n,t,r),-1<t?n[t]:m):(t=te(t,r,3),cr(n,t,or))}function Te(n,t,r){return typeof t=="function"&&typeof r=="undefined"&&Uo(n)?Mt(n,t):or(n,Fr(t,r,3))}function Se(n,t,r){if(typeof t=="function"&&typeof r=="undefined"&&Uo(n))for(r=n.length;r--&&false!==t(n[r],r,n););else n=ir(n,Fr(t,r,3)); if(!u)return-1;if(typeof e=="number")e=0>e?oo(u+e,0):e;else if(e)return e=Cr(n,t),n=n[e],(t===t?t===n:n!==n)?e:-1;return r(n,t,e||0)}function Se(n){var t=n?n.length:0;return t?n[t-1]:w}function We(n){return Ie(n,1)}function Te(n,t,e,u){if(!n||!n.length)return[];null!=t&&typeof t!="boolean"&&(u=e,e=ge(n,t,u)?null:t,t=false);var o=le();if((o!==Qt||null!=e)&&(e=o(e,u,3)),t&&pe()==r){t=e;var i;e=-1,u=n.length;for(var o=-1,f=[];++e<u;){var a=n[e],c=t?t(a,e,n):a;e&&i===c||(i=c,f[++o]=a)}n=f}else n=Er(n,e);
return n}function Ne(n,t,r){var e=n?n.length:0;return ae(e)||(n=au(n),e=n.length),e?(r=typeof r=="number"?0>r?fo(e+r,0):r||0:0,typeof n=="string"||!Uo(n)&&eu(n)?r<e&&-1<n.indexOf(t,r):-1<re(n,t,r)):false}function Ue(n,t,r){var e=Uo(n)?Kt:br;return t=te(t,r,3),e(n,t)}function Fe(n,t,r,e){return(Uo(n)?Yt:Er)(n,te(t,e,4),r,3>arguments.length,or)}function $e(n,t,r,e){return(Uo(n)?Zt:Er)(n,te(t,e,4),r,3>arguments.length,ir)}function Le(n,t,r){return(r?fe(n,t,r):null==t)?(n=_e(n),t=n.length,0<t?n[kr(0,t-1)]:m):(n=Be(n),n.length=ao(0>t?0:+t||0,n.length),n) return n}function Ue(n){for(var t=-1,r=(n&&n.length&&Vt(Kt(n,Fu)))>>>0,e=wu(r);++t<r;)e[t]=Kt(n,dr(t));return e}function Fe(n,t){var r=-1,e=n?n.length:0,u={};for(!e||t||si(n[0])||(t=[]);++r<e;){var o=n[r];t?u[o]=t[r]:o&&(u[o[0]]=o[1])}return u}function Ne(n){return n=Wt(n),n.__chain__=true,n}function $e(n,t,r){return t.call(r,n)}function Le(n,t,r){var e=si(n)?Pt:er;return r&&ge(n,t,r)&&(t=null),(typeof t!="function"||typeof r!="undefined")&&(t=le(t,r,3)),e(n,t)}function Be(n,t,r){var e=si(n)?qt:ur;
}function Be(n){n=_e(n);for(var t=-1,r=n.length,e=xu(r);++t<r;){var u=kr(0,t);t!=u&&(e[t]=e[u]),e[u]=n[t]}return e}function ze(n,t,r){var e=Uo(n)?Gt:Ir;return(typeof t!="function"||typeof r!="undefined")&&(t=te(t,r,3)),e(n,t)}function De(n,t){var r;if(typeof t!="function"){if(typeof n!="function")throw new Wu($);var e=n;n=t,t=e}return function(){return 0<--n?r=t.apply(this,arguments):t=null,r}}function Me(n,t){var r=w;if(2<arguments.length)var e=Rr(arguments,2),u=_(e,Me.placeholder),r=r|E;return Jr(n,r,t,e,u) return t=le(t,r,3),e(n,t)}function ze(n,t,r,e){var u=n?n.length:0;return de(u)||(n=fu(n),u=n.length),u?(r=typeof r!="number"||e&&ge(t,r,e)?0:0>r?oo(u+r,0):r||0,typeof n=="string"||!si(n)&&ru(n)?r<u&&-1<n.indexOf(t,r):-1<pe(n,t,r)):false}function Me(n,t,r){var e=si(n)?Kt:_r;return t=le(t,r,3),e(n,t)}function De(n,t,r){return(r?ge(n,t,r):null==t)?(n=je(n),t=n.length,0<t?n[mr(0,t-1)]:w):(n=Pe(n),n.length=io(0>t?0:+t||0,n.length),n)}function Pe(n){n=je(n);for(var t=-1,r=n.length,e=wu(r);++t<r;){var u=mr(0,t);
}function qe(n,t){var r=w|x;if(2<arguments.length)var e=Rr(arguments,2),u=_(e,qe.placeholder),r=r|E;return Jr(t,r,n,e,u)}function Pe(n,t,r){return r&&fe(n,t,r)&&(t=null),n=Jr(n,j,null,null,null,null,null,t),n.placeholder=Pe.placeholder,n}function Ke(n,t,r){return r&&fe(n,t,r)&&(t=null),n=Jr(n,k,null,null,null,null,null,t),n.placeholder=Ke.placeholder,n}function Ve(n,t,r){function e(){var r=t-(To()-c);0>=r||r>t?(f&&Vu(f),r=p,f=s=p=m,r&&(h=To(),a=n.apply(l,i),s||f||(i=l=null))):s=Hu(e,r)}function u(){s&&Vu(s),f=s=p=m,(g||_!==t)&&(h=To(),a=n.apply(l,i),s||f||(i=l=null)) t!=u&&(e[t]=e[u]),e[u]=n[t]}return e}function qe(n,t,r){var e=si(n)?Yt:xr;return r&&ge(n,t,r)&&(t=null),(typeof t!="function"||typeof r!="undefined")&&(t=le(t,r,3)),e(n,t)}function Ke(n,t){var r;if(typeof t!="function"){if(typeof n!="function")throw new Ru(L);var e=n;n=t,t=e}return function(){return 0<--n?r=t.apply(this,arguments):t=null,r}}function Ve(n,t,r){function e(){var r=t-(Qo()-c);0>=r||r>t?(f&&qu(f),r=s,f=p=s=w,r&&(h=Qo(),a=n.apply(l,i),p||f||(i=l=null))):p=Ju(e,r)}function u(){p&&qu(p),f=p=s=w,(v||_!==t)&&(h=Qo(),a=n.apply(l,i),p||f||(i=l=null))
}function o(){if(i=arguments,c=To(),l=this,p=g&&(s||!v),false===_)var r=v&&!s;else{f||v||(h=c);var o=_-(c-h),y=0>=o||o>_;y?(f&&(f=Vu(f)),h=c,a=n.apply(l,i)):f||(f=Hu(u,o))}return y&&s?s=Vu(s):s||t===_||(s=Hu(e,t)),r&&(y=true,a=n.apply(l,i)),!y||s||f||(i=l=null),a}var i,f,a,c,l,s,p,h=0,_=false,g=true;if(typeof n!="function")throw new Wu($);if(t=0>t?0:+t||0,true===r)var v=true,g=false;else Qe(r)&&(v=r.leading,_="maxWait"in r&&fo(+r.maxWait||0,t),g="trailing"in r?r.trailing:g);return o.cancel=function(){s&&Vu(s),f&&Vu(f),f=s=p=m }function o(){if(i=arguments,c=Qo(),l=this,s=v&&(p||!g),false===_)var r=g&&!p;else{f||g||(h=c);var o=_-(c-h),y=0>=o||o>_;y?(f&&(f=qu(f)),h=c,a=n.apply(l,i)):f||(f=Ju(u,o))}return y&&p?p=qu(p):p||t===_||(p=Ju(e,t)),r&&(y=true,a=n.apply(l,i)),!y||p||f||(i=l=null),a}var i,f,a,c,l,p,s,h=0,_=false,v=true;if(typeof n!="function")throw new Ru(L);if(t=0>t?0:+t||0,true===r)var g=true,v=false;else He(r)&&(g=r.leading,_="maxWait"in r&&oo(+r.maxWait||0,t),v="trailing"in r?r.trailing:v);return o.cancel=function(){p&&qu(p),f&&qu(f),f=p=s=w
},o}function Ye(n,t){function r(){var e=arguments,u=r.cache,o=t?t.apply(this,e):e[0];return u.has(o)?u.get(o):(e=n.apply(this,e),u.set(o,e),e)}if(typeof n!="function"||t&&typeof t!="function")throw new Wu($);return r.cache=new Ye.Cache,r}function Ze(n){var t=Rr(arguments,1),r=_(t,Ze.placeholder);return Jr(n,E,null,t,r)}function Ge(n){var t=Rr(arguments,1),r=_(t,Ge.placeholder);return Jr(n,R,null,t,r)}function Je(n){return ae(p(n)?n.length:m)&&zu.call(n)==B||false}function Xe(n){return n&&1===n.nodeType&&p(n)&&-1<zu.call(n).indexOf("Element")||false },o}function Ye(n,t){function r(){var e=arguments,u=r.cache,o=t?t.apply(this,e):e[0];return u.has(o)?u.get(o):(e=n.apply(this,e),u.set(o,e),e)}if(typeof n!="function"||t&&typeof t!="function")throw new Ru(L);return r.cache=new Ye.Cache,r}function Ze(n,t){if(typeof n!="function")throw new Ru(L);return t=oo(typeof t=="undefined"?n.length-1:+t||0,0),function(){for(var r=arguments,e=-1,u=oo(r.length-t,0),o=wu(u);++e<u;)o[e]=r[t+e];switch(t){case 0:return n.call(this,o);case 1:return n.call(this,r[0],o);
}function He(n){return p(n)&&typeof n.message=="string"&&zu.call(n)==q||false}function Qe(n){var t=typeof n;return"function"==t||n&&"object"==t||false}function nu(n){return null==n?false:zu.call(n)==P?Mu.test(Fu.call(n)):p(n)&&mt.test(n)||false}function tu(n){return typeof n=="number"||p(n)&&zu.call(n)==K||false}function ru(n){return p(n)&&zu.call(n)==Y||false}function eu(n){return typeof n=="string"||p(n)&&zu.call(n)==Z||false}function uu(n){return p(n)&&ae(n.length)&&Ot[zu.call(n)]||false}function ou(n){return nr(n,fu(n)) case 2:return n.call(this,r[0],r[1],o)}for(u=wu(t+1),e=-1;++e<t;)u[e]=r[e];return u[t]=o,n.apply(this,u)}}function Ge(n){return de(h(n)?n.length:w)&&Lu.call(n)==z}function Je(n){return!!n&&1===n.nodeType&&h(n)&&-1<Lu.call(n).indexOf("Element")}function Xe(n){return h(n)&&typeof n.message=="string"&&Lu.call(n)==q}function He(n){var t=typeof n;return"function"==t||!!n&&"object"==t}function Qe(n){return null==n?false:Lu.call(n)==K?zu.test(Uu.call(n)):h(n)&&wt.test(n)}function nu(n){return typeof n=="number"||h(n)&&Lu.call(n)==V
}function iu(n){return vr(n,fu(n))}function fu(n){if(null==n)return[];Qe(n)||(n=Iu(n));for(var t=n.length,t=t&&ae(t)&&(Uo(n)||xo.nonEnumArgs&&Je(n))&&t||0,r=n.constructor,e=-1,r=typeof r=="function"&&r.prototype===n,u=xu(t),o=0<t;++e<t;)u[e]=e+"";for(var i in n)o&&ie(i,t)||"constructor"==i&&(r||!Lu.call(n,i))||u.push(i);return u}function au(n){return Tr(n,zo(n))}function cu(n){return(n=e(n))&&n.replace(bt,a)}function lu(n){return(n=e(n))&&At.test(n)?n.replace(xt,"\\$&"):n}function su(n,t,r){return r&&fe(n,t,r)&&(t=0),so(n,t) }function tu(n){return h(n)&&Lu.call(n)==Z||false}function ru(n){return typeof n=="string"||h(n)&&Lu.call(n)==G}function eu(n){return h(n)&&de(n.length)&&!!Rt[Lu.call(n)]}function uu(n){return Ht(n,iu(n))}function ou(n){return lr(n,iu(n))}function iu(n){if(null==n)return[];He(n)||(n=Eu(n));for(var t=n.length,t=t&&de(t)&&(si(n)||bo.nonEnumArgs&&Ge(n))&&t||0,r=n.constructor,e=-1,r=typeof r=="function"&&r.prototype===n,u=wu(t),o=0<t;++e<t;)u[e]=e+"";for(var i in n)o&&ve(i,t)||"constructor"==i&&(r||!Nu.call(n,i))||u.push(i);
}function pu(n,t){var r="";if(n=e(n),t=+t,1>t||!n||!oo(t))return r;do t%2&&(r+=n),t=Yu(t/2),n+=n;while(t);return r}function hu(n,t,r){var u=n;return(n=e(n))?(r?fe(u,t,r):null==t)?n.slice(g(n),v(n)+1):(t+="",n.slice(o(n,t),i(n,t)+1)):n}function _u(n,t,r){return r&&fe(n,t,r)&&(t=null),n=e(n),n.match(t||Et)||[]}function gu(){for(var n=arguments[0],t=arguments.length,r=xu(t?t-1:0);0<--t;)r[t-1]=arguments[t];try{return n.apply(m,r)}catch(e){return He(e)?e:new ju(e)}}function vu(n,t,r){return r&&fe(n,t,r)&&(t=null),p(n)?mu(n):tr(n,t) return u}function fu(n){return Ir(n,ji(n))}function au(n){return(n=u(n))&&n.replace(bt,c).replace(gt,"")}function cu(n){return(n=u(n))&&jt.test(n)?n.replace(At,"\\$&"):n}function lu(n,t,r){return r&&ge(n,t,r)&&(t=0),co(n,t)}function pu(n,t){var r="";if(n=u(n),t=+t,1>t||!n||!eo(t))return r;do t%2&&(r+=n),t=Ku(t/2),n+=n;while(t);return r}function su(n,t,r){var e=n;return(n=u(n))?(r?ge(e,t,r):null==t)?n.slice(g(n),y(n)+1):(t+="",n.slice(i(n,t),f(n,t)+1)):n}function hu(n,t,r){return r&&ge(n,t,r)&&(t=null),n=u(n),n.match(t||Et)||[]
}function yu(n){return function(){return n}}function du(n){return n}function mu(n){return wr(rr(n,true))}function bu(n,t,r){if(null==r){var e=Qe(t),u=e&&zo(t);((u=u&&u.length&&vr(t,u))?u.length:e)||(u=false,r=t,t=n,n=this)}u||(u=vr(t,zo(t)));var o=true,e=-1,i=$o(n),f=u.length;false===r?o=false:Qe(r)&&"chain"in r&&(o=r.chain);for(;++e<f;){r=u[e];var a=t[r];n[r]=a,i&&(n.prototype[r]=function(t){return function(){var r=this.__chain__;if(o||r){var e=n(this.__wrapped__);return(e.__actions__=Bt(this.__actions__)).push({func:t,args:arguments,thisArg:n}),e.__chain__=r,e }function _u(n,t,r){return r&&ge(n,t,r)&&(t=null),h(n)?yu(n):Qt(n,t)}function vu(n){return function(){return n}}function gu(n){return n}function yu(n){return vr(nr(n,true))}function du(n,t,r){if(null==r){var e=He(t),u=e&&ji(t);((u=u&&u.length&&lr(t,u))?u.length:e)||(u=false,r=t,t=n,n=this)}u||(u=lr(t,ji(t)));var o=true,e=-1,i=_i(n),f=u.length;false===r?o=false:He(r)&&"chain"in r&&(o=r.chain);for(;++e<f;){r=u[e];var a=t[r];n[r]=a,i&&(n.prototype[r]=function(t){return function(){var r=this.__chain__;if(o||r){var e=n(this.__wrapped__);
}return r=[this.value()],Gu.apply(r,arguments),t.apply(n,r)}}(a))}return n}function wu(){}h=h?Dt.defaults(zt.Object(),h,Dt.pick(zt,It)):zt;var xu=h.Array,Au=h.Date,ju=h.Error,ku=h.Function,Eu=h.Math,Ru=h.Number,Iu=h.Object,Ou=h.RegExp,Cu=h.String,Wu=h.TypeError,Tu=xu.prototype,Su=Iu.prototype,Nu=Cu.prototype,Uu=(Uu=h.window)&&Uu.document,Fu=ku.prototype.toString,$u=jr("length"),Lu=Su.hasOwnProperty,Bu=0,zu=Su.toString,Du=h._,Mu=Ou("^"+lu(zu).replace(/toString|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),qu=nu(qu=h.ArrayBuffer)&&qu,Pu=nu(Pu=qu&&new qu(0).slice)&&Pu,Ku=Eu.ceil,Vu=h.clearTimeout,Yu=Eu.floor,Zu=nu(Zu=Iu.getPrototypeOf)&&Zu,Gu=Tu.push,Ju=Su.propertyIsEnumerable,Xu=nu(Xu=h.Set)&&Xu,Hu=h.setTimeout,Qu=Tu.splice,no=nu(no=h.Uint8Array)&&no,to=nu(to=h.WeakMap)&&to,ro=function(){try{var n=nu(n=h.Float64Array)&&n,t=new n(new qu(10),0,1)&&n return(e.__actions__=Bt(this.__actions__)).push({func:t,args:arguments,thisArg:n}),e.__chain__=r,e}return r=[this.value()],Yu.apply(r,arguments),t.apply(n,r)}}(a))}return n}function mu(){}_=_?Dt.defaults(Mt.Object(),_,Dt.pick(Mt,Ot)):Mt;var wu=_.Array,bu=_.Date,xu=_.Error,Au=_.Function,ju=_.Math,ku=_.Number,Eu=_.Object,Iu=_.RegExp,Ou=_.String,Ru=_.TypeError,Cu=wu.prototype,Su=Eu.prototype,Wu=Ou.prototype,Tu=(Tu=_.window)&&Tu.document,Uu=Au.prototype.toString,Fu=dr("length"),Nu=Su.hasOwnProperty,$u=0,Lu=Su.toString,Bu=_._,zu=Iu("^"+cu(Lu).replace(/toString|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),Mu=Qe(Mu=_.ArrayBuffer)&&Mu,Du=Qe(Du=Mu&&new Mu(0).slice)&&Du,Pu=ju.ceil,qu=_.clearTimeout,Ku=ju.floor,Vu=Qe(Vu=Eu.getPrototypeOf)&&Vu,Yu=Cu.push,Zu=Su.propertyIsEnumerable,Gu=Qe(Gu=_.Set)&&Gu,Ju=_.setTimeout,Xu=Cu.splice,Hu=Qe(Hu=_.Uint8Array)&&Hu,Qu=Qe(Qu=_.WeakMap)&&Qu,no=function(){try{var n=Qe(n=_.Float64Array)&&n,t=new n(new Mu(10),0,1)&&n
}catch(r){}return t}(),eo=nu(eo=xu.isArray)&&eo,uo=nu(uo=Iu.create)&&uo,oo=h.isFinite,io=nu(io=Iu.keys)&&io,fo=Eu.max,ao=Eu.min,co=nu(co=Au.now)&&co,lo=nu(lo=Ru.isFinite)&&lo,so=h.parseInt,po=Eu.random,ho=Ru.NEGATIVE_INFINITY,_o=Ru.POSITIVE_INFINITY,go=Eu.pow(2,32)-1,vo=go-1,yo=go>>>1,mo=ro?ro.BYTES_PER_ELEMENT:0,bo=Eu.pow(2,53)-1,wo=to&&new to,xo=Tt.support={};!function(n){xo.funcDecomp=!nu(h.WinRTError)&&jt.test(d),xo.funcNames=typeof ku.name=="string";try{xo.dom=11===Uu.createDocumentFragment().nodeType }catch(r){}return t}(),to=Qe(to=wu.isArray)&&to,ro=Qe(ro=Eu.create)&&ro,eo=_.isFinite,uo=Qe(uo=Eu.keys)&&uo,oo=ju.max,io=ju.min,fo=Qe(fo=bu.now)&&fo,ao=Qe(ao=ku.isFinite)&&ao,co=_.parseInt,lo=ju.random,po=ku.NEGATIVE_INFINITY,so=ku.POSITIVE_INFINITY,ho=ju.pow(2,32)-1,_o=ho-1,vo=ho>>>1,go=no?no.BYTES_PER_ELEMENT:0,yo=ju.pow(2,53)-1,mo=Qu&&new Qu,wo={},bo=Wt.support={};!function(n){bo.funcDecomp=/\bthis\b/.test(function(){return this}),bo.funcNames=typeof Au.name=="string";try{bo.dom=11===Tu.createDocumentFragment().nodeType
}catch(t){xo.dom=false}try{xo.nonEnumArgs=!Ju.call(arguments,1)}catch(r){xo.nonEnumArgs=true}}(0,0),Tt.templateSettings={escape:pt,evaluate:ht,interpolate:_t,variable:"",imports:{_:Tt}};var Ao=function(){function n(){}return function(t){if(Qe(t)){n.prototype=t;var r=new n;n.prototype=null}return r||h.Object()}}(),jo=wo?function(n,t){return wo.set(n,t),n}:du;Pu||($r=qu&&no?function(n){var t=n.byteLength,r=ro?Yu(t/mo):0,e=r*mo,u=new qu(t);if(r){var o=new ro(u,0,r);o.set(new ro(n,0,r))}return t!=e&&(o=new no(u,e),o.set(new no(n,e))),u }catch(t){bo.dom=false}try{bo.nonEnumArgs=!Zu.call(arguments,1)}catch(r){bo.nonEnumArgs=true}}(0,0),Wt.templateSettings={escape:ht,evaluate:_t,interpolate:vt,variable:"",imports:{_:Wt}};var xo=function(){function n(){}return function(t){if(He(t)){n.prototype=t;var r=new n;n.prototype=null}return r||_.Object()}}(),Ao=Lr(ar),jo=Lr(cr,true),ko=Br(),Eo=Br(true),Io=mo?function(n,t){return mo.set(n,t),n}:gu;Du||(Tr=Mu&&Hu?function(n){var t=n.byteLength,r=no?Ku(t/go):0,e=r*go,u=new Mu(t);if(r){var o=new no(u,0,r);
}:yu(null));var ko=uo&&Xu?function(n){return new $t(n)}:yu(null),Eo=wo?function(n){return wo.get(n)}:wu,Ro=function(){var n=0,t=0;return function(r,e){var u=To(),o=S-(u-t);if(t=u,0<o){if(++n>=T)return r}else n=0;return jo(r,e)}}(),Io=zr(function(n,t,r){Lu.call(n,r)?++n[r]:n[r]=1}),Oo=zr(function(n,t,r){Lu.call(n,r)?n[r].push(t):n[r]=[t]}),Co=zr(function(n,t,r){n[r]=t}),Wo=zr(function(n,t,r){n[r?0:1].push(t)},function(){return[[],[]]}),To=co||function(){return(new Au).getTime()},So=qr(),No=qr(true),Uo=eo||function(n){return p(n)&&ae(n.length)&&zu.call(n)==z||false o.set(new no(n,0,r))}return t!=e&&(o=new Hu(u,e),o.set(new Hu(n,e))),u}:vu(null));var Oo=ro&&Gu?function(n){return new $t(n)}:vu(null),Ro=mo?function(n){return mo.get(n)}:mu,Co=function(){return bo.funcNames?"constant"==vu.name?dr("name"):function(n){for(var t=n.name,r=wo[t],e=r?r.length:0;e--;){var u=r[e],o=u.func;if(null==o||o==n)return u.name}return t}:vu("")}(),So=function(){var n=0,t=0;return function(r,e){var u=Qo(),o=U-(u-t);if(t=u,0<o){if(++n>=T)return r}else n=0;return Io(r,e)}}(),Wo=Ze(function(n,t){return si(n)||Ge(n)?rr(n,ir(t,false,true)):[]
};xo.dom||(Xe=function(n){return n&&1===n.nodeType&&p(n)&&!Lo(n)||false});var Fo=lo||function(n){return typeof n=="number"&&oo(n)},$o=r(/x/)||no&&!r(no)?function(n){return zu.call(n)==P}:r,Lo=Zu?function(n){if(!n||zu.call(n)!=V)return false;var t=n.valueOf,r=nu(t)&&(r=Zu(t))&&Zu(r);return r?n==r||Zu(n)==r:pe(n)}:pe,Bo=Dr(Ht),zo=io?function(n){if(n)var t=n.constructor,r=n.length;return typeof t=="function"&&t.prototype===n||typeof n!="function"&&r&&ae(r)?he(n):Qe(n)?io(n):[]}:he,Do=Dr(Ar),Mo=Pr(function(n,t,r){return t=t.toLowerCase(),n+(r?t.charAt(0).toUpperCase()+t.slice(1):t) }),To=Vr(),Uo=Vr(true),Fo=Ze(function(t,r){t||(t=[]),r=ir(r);var e=r.length,u=Xt(t,r);for(r.sort(n);e--;){var o=parseFloat(r[e]);if(o!=i&&ve(o)){var i=o;Xu.call(t,o,1)}}return u}),No=ue(),$o=ue(true),Lo=Ze(function(n){return Er(ir(n,false,true))}),Bo=Ze(function(n,t){return si(n)||Ge(n)?rr(n,t):[]}),zo=Ze(Ue),Mo=Ze(function(n,t){return de(n?n.length:0)&&(n=je(n)),Xt(n,ir(t))}),Do=Nr(function(n,t,r){Nu.call(n,r)?++n[r]:n[r]=1}),Po=Kr(Ao),qo=Kr(jo,true),Ko=Gr(zt,Ao),Vo=Gr(function(n,t){for(var r=n.length;r--&&false!==t(n[r],r,n););return n
}),qo=Pr(function(n,t,r){return n+(r?"-":"")+t.toLowerCase()});8!=so(Rt+"08")&&(su=function(n,t,r){return(r?fe(n,t,r):null==t)?t=0:t&&(t=+t),n=hu(n),so(n,t||(dt.test(n)?16:10))});var Po=Pr(function(n,t,r){return n+(r?"_":"")+t.toLowerCase()}),Ko=Pr(function(n,t,r){return n+(r?" ":"")+(t.charAt(0).toUpperCase()+t.slice(1))}),Vo=Vr(Vt),Yo=Vr(function(n){for(var t=-1,r=n.length,e=_o;++t<r;){var u=n[t];u<e&&(e=u)}return e},true);return Tt.prototype=St.prototype,Nt.prototype=Ao(St.prototype),Nt.prototype.constructor=Nt,Ut.prototype=Ao(St.prototype),Ut.prototype.constructor=Ut,Ft.prototype["delete"]=function(n){return this.has(n)&&delete this.__data__[n] },jo),Yo=Nr(function(n,t,r){Nu.call(n,r)?n[r].push(t):n[r]=[t]}),Zo=Nr(function(n,t,r){n[r]=t}),Go=Ze(function(n,t,r){var e=-1,u=typeof t=="function",o=n?n.length:0,i=de(o)?wu(o):[];return Ao(n,function(n){var o=u?t:null!=n&&n[t];i[++e]=o?o.apply(n,r):w}),i}),Jo=Nr(function(n,t,r){n[r?0:1].push(t)},function(){return[[],[]]}),Xo=ne(function(n,t,r,e){var u=-1,o=n.length;for(e&&o&&(r=n[++u]);++u<o;)r=t(r,n[u],u,n);return r},Ao),Ho=ne(function(n,t,r,e){var u=n.length;for(e&&u&&(r=n[--u]);u--;)r=t(r,n[u],u,n);
},Ft.prototype.get=function(n){return"__proto__"==n?m:this.__data__[n]},Ft.prototype.has=function(n){return"__proto__"!=n&&Lu.call(this.__data__,n)},Ft.prototype.set=function(n,t){return"__proto__"!=n&&(this.__data__[n]=t),this},$t.prototype.push=function(n){var t=this.data;typeof n=="string"||Qe(n)?t.set.add(n):t.hash[n]=true},Ye.Cache=Ft,Tt.after=function(n,t){if(typeof t!="function"){if(typeof n!="function")throw new Wu($);var r=n;n=t,t=r}return n=oo(n=+n)?n:0,function(){return 1>--n?t.apply(this,arguments):void 0 return r},jo),Qo=fo||function(){return(new bu).getTime()},ni=Ze(function(n,t,r){var e=x;if(r.length)var u=v(r,ni.placeholder),e=e|I;return oe(n,e,t,r,u)}),ti=Ze(function(n,t){t=t.length?ir(t):ou(n);for(var r=-1,e=t.length;++r<e;){var u=t[r];n[u]=oe(n[u],x,n)}return n}),ri=Ze(function(n,t,r){var e=x|A;if(r.length)var u=v(r,ri.placeholder),e=e|I;return oe(t,e,n,r,u)}),ei=Pr(k),ui=Pr(E),oi=Ze(function(n,t){return tr(n,1,t)}),ii=Ze(function(n,t,r){return tr(n,t,r)}),fi=Zr(),ai=Zr(true),ci=Qr(I),li=Qr(O),pi=Ze(function(n,t){return oe(n,C,null,null,null,ir(t))
}},Tt.ary=function(n,t,r){return r&&fe(n,t,r)&&(t=null),t=n&&null==t?n.length:fo(+t||0,0),Jr(n,O,null,null,null,null,t)},Tt.assign=Bo,Tt.at=function(n){return ae(n?n.length:0)&&(n=_e(n)),Qt(n,lr(arguments,false,false,1))},Tt.before=De,Tt.bind=Me,Tt.bindAll=function(n){for(var t=n,r=1<arguments.length?lr(arguments,false,false,1):iu(n),e=-1,u=r.length;++e<u;){var o=r[e];t[o]=Jr(t[o],w,t)}return t},Tt.bindKey=qe,Tt.callback=vu,Tt.chain=Re,Tt.chunk=function(n,t,r){t=(r?fe(n,t,r):null==t)?1:fo(+t||1,1),r=0;for(var e=n?n.length:0,u=-1,o=xu(Ku(e/t));r<e;)o[++u]=Rr(n,r,r+=t); }),si=to||function(n){return h(n)&&de(n.length)&&Lu.call(n)==M};bo.dom||(Je=function(n){return!!n&&1===n.nodeType&&h(n)&&!vi(n)});var hi=ao||function(n){return typeof n=="number"&&eo(n)},_i=e(/x/)||Hu&&!e(Hu)?function(n){return Lu.call(n)==K}:e,vi=Vu?function(n){if(!n||Lu.call(n)!=Y)return false;var t=n.valueOf,r=Qe(t)&&(r=Vu(t))&&Vu(r);return r?n==r||Vu(n)==r:xe(n)}:xe,gi=$r(Jt),yi=Ze(function(n){var t=n[0];return null==t?t:(n.push(Zt),gi.apply(w,n))}),di=Yr(ar),mi=Yr(cr),wi=Jr(ko),bi=Jr(Eo),xi=Xr(ar),Ai=Xr(cr),ji=uo?function(n){if(n)var t=n.constructor,r=n.length;
return o},Tt.compact=function(n){for(var t=-1,r=n?n.length:0,e=-1,u=[];++t<r;){var o=n[t];o&&(u[++e]=o)}return u},Tt.constant=yu,Tt.countBy=Io,Tt.create=function(n,t,r){var e=Ao(n);return r&&fe(n,t,r)&&(t=null),t?nr(t,e,zo(t)):e},Tt.curry=Pe,Tt.curryRight=Ke,Tt.debounce=Ve,Tt.defaults=function(n){if(null==n)return n;var t=Bt(arguments);return t.push(Jt),Bo.apply(m,t)},Tt.defer=function(n){return er(n,1,arguments,1)},Tt.delay=function(n,t){return er(n,t,arguments,2)},Tt.difference=function(){for(var n=arguments,t=-1,r=n.length;++t<r;){var e=n[t]; return typeof t=="function"&&t.prototype===n||typeof n!="function"&&r&&de(r)?Ae(n):He(n)?uo(n):[]}:Ae,ki=$r(yr),Ei=Ze(function(n,t){if(null==n)return{};if("function"!=typeof t[0])return t=Kt(ir(t),Ou),we(n,rr(iu(n),t));var r=Wr(t[0],t[1],3);return be(n,function(n,t,e){return!r(n,t,e)})}),Ii=Ze(function(n,t){return null==n?{}:"function"==typeof t[0]?be(n,Wr(t[0],t[1],3)):we(n,ir(t))}),Oi=Mr(function(n,t,r){return t=t.toLowerCase(),n+(r?t.charAt(0).toUpperCase()+t.slice(1):t)}),Ri=Mr(function(n,t,r){return n+(r?"-":"")+t.toLowerCase()
if(Uo(e)||Je(e))break}return ur(e,lr(n,false,true,++t))},Tt.drop=ye,Tt.dropRight=de,Tt.dropRightWhile=function(n,t,r){var e=n?n.length:0;if(!e)return[];for(t=te(t,r,3);e--&&t(n[e],e,n););return Rr(n,0,e+1)},Tt.dropWhile=function(n,t,r){var e=n?n.length:0;if(!e)return[];var u=-1;for(t=te(t,r,3);++u<e&&t(n[u],u,n););return Rr(n,u)},Tt.fill=function(n,t,r,e){var u=n?n.length:0;if(!u)return[];for(r&&typeof r!="number"&&fe(n,t,r)&&(r=0,e=u),u=n.length,r=null==r?0:+r||0,0>r&&(r=-r>u?0:u+r),e=typeof e=="undefined"||e>u?u:+e||0,0>e&&(e+=u),u=r>e?0:e>>>0,r>>>=0;r<u;)n[r++]=t; }),Ci=Hr(),Si=Hr(true);8!=co(It+"08")&&(lu=function(n,t,r){return(r?ge(n,t,r):null==t)?t=0:t&&(t=+t),n=su(n),co(n,t||(mt.test(n)?16:10))});var Wi=Mr(function(n,t,r){return n+(r?"_":"")+t.toLowerCase()}),Ti=Mr(function(n,t,r){return n+(r?" ":"")+(t.charAt(0).toUpperCase()+t.slice(1))}),Ui=Ze(function(n,t){try{return n.apply(w,t)}catch(r){return Xe(r)?r:new xu(r)}}),Fi=qr(Vt),Ni=qr(function(n){for(var t=-1,r=n.length,e=so;++t<r;){var u=n[t];u<e&&(e=u)}return e},true);return Wt.prototype=Tt.prototype,Ut.prototype=xo(Tt.prototype),Ut.prototype.constructor=Ut,Ft.prototype=xo(Tt.prototype),Ft.prototype.constructor=Ft,Nt.prototype["delete"]=function(n){return this.has(n)&&delete this.__data__[n]
return n},Tt.filter=Ce,Tt.flatten=function(n,t,r){var e=n?n.length:0;return r&&fe(n,t,r)&&(t=false),e?lr(n,t,false,0):[]},Tt.flattenDeep=function(n){return n&&n.length?lr(n,true,false,0):[]},Tt.flow=So,Tt.flowRight=No,Tt.forEach=Te,Tt.forEachRight=Se,Tt.forIn=function(n,t,r){return(typeof t!="function"||typeof r!="undefined")&&(t=Fr(t,r,3)),sr(n,t,fu)},Tt.forInRight=function(n,t,r){return t=Fr(t,r,3),pr(n,t,fu)},Tt.forOwn=function(n,t,r){return(typeof t!="function"||typeof r!="undefined")&&(t=Fr(t,r,3)),_r(n,t) },Nt.prototype.get=function(n){return"__proto__"==n?w:this.__data__[n]},Nt.prototype.has=function(n){return"__proto__"!=n&&Nu.call(this.__data__,n)},Nt.prototype.set=function(n,t){return"__proto__"!=n&&(this.__data__[n]=t),this},$t.prototype.push=function(n){var t=this.data;typeof n=="string"||He(n)?t.set.add(n):t.hash[n]=true},Ye.Cache=Nt,Wt.after=function(n,t){if(typeof t!="function"){if(typeof n!="function")throw new Ru(L);var r=n;n=t,t=r}return n=eo(n=+n)?n:0,function(){return 1>--n?t.apply(this,arguments):void 0
},Tt.forOwnRight=function(n,t,r){return t=Fr(t,r,3),pr(n,t,zo)},Tt.functions=iu,Tt.groupBy=Oo,Tt.indexBy=Co,Tt.initial=function(n){return de(n,1)},Tt.intersection=function(){for(var n=[],r=-1,e=arguments.length,u=[],o=re(),i=o==t;++r<e;){var f=arguments[r];(Uo(f)||Je(f))&&(n.push(f),u.push(i&&120<=f.length?ko(r&&f):null))}var e=n.length,i=n[0],a=-1,c=i?i.length:0,l=[],s=u[0];n:for(;++a<c;)if(f=i[a],0>(s?Lt(s,f):o(l,f,0))){for(r=e;--r;){var p=u[r];if(0>(p?Lt(p,f):o(n[r],f,0)))continue n}s&&s.push(f),l.push(f) }},Wt.ary=function(n,t,r){return r&&ge(n,t,r)&&(t=null),t=n&&null==t?n.length:oo(+t||0,0),oe(n,R,null,null,null,null,t)},Wt.assign=gi,Wt.at=Mo,Wt.before=Ke,Wt.bind=ni,Wt.bindAll=ti,Wt.bindKey=ri,Wt.callback=_u,Wt.chain=Ne,Wt.chunk=function(n,t,r){t=(r?ge(n,t,r):null==t)?1:oo(+t||1,1),r=0;for(var e=n?n.length:0,u=-1,o=wu(Pu(e/t));r<e;)o[++u]=br(n,r,r+=t);return o},Wt.compact=function(n){for(var t=-1,r=n?n.length:0,e=-1,u=[];++t<r;){var o=n[t];o&&(u[++e]=o)}return u},Wt.constant=vu,Wt.countBy=Do,Wt.create=function(n,t,r){var e=xo(n);
}return l},Tt.invert=function(n,t,r){r&&fe(n,t,r)&&(t=null),r=-1;for(var e=zo(n),u=e.length,o={};++r<u;){var i=e[r],f=n[i];t?Lu.call(o,f)?o[f].push(i):o[f]=[i]:o[f]=i}return o},Tt.invoke=function(n,t){return yr(n,t,Rr(arguments,2))},Tt.keys=zo,Tt.keysIn=fu,Tt.map=Ue,Tt.mapValues=function(n,t,r){var e={};return t=te(t,r,3),_r(n,function(n,r,u){e[r]=t(n,r,u)}),e},Tt.matches=mu,Tt.matchesProperty=function(n,t){return xr(n+"",rr(t,true))},Tt.memoize=Ye,Tt.merge=Do,Tt.mixin=bu,Tt.negate=function(n){if(typeof n!="function")throw new Wu($); return r&&ge(n,t,r)&&(t=null),t?Ht(t,e,ji(t)):e},Wt.curry=ei,Wt.curryRight=ui,Wt.debounce=Ve,Wt.defaults=yi,Wt.defer=oi,Wt.delay=ii,Wt.difference=Wo,Wt.drop=Ie,Wt.dropRight=Oe,Wt.dropRightWhile=function(n,t,r){return n&&n.length?Or(n,le(t,r,3),true,true):[]},Wt.dropWhile=function(n,t,r){return n&&n.length?Or(n,le(t,r,3),true):[]},Wt.fill=function(n,t,r,e){var u=n?n.length:0;if(!u)return[];for(r&&typeof r!="number"&&ge(n,t,r)&&(r=0,e=u),u=n.length,r=null==r?0:+r||0,0>r&&(r=-r>u?0:u+r),e=typeof e=="undefined"||e>u?u:+e||0,0>e&&(e+=u),u=r>e?0:e>>>0,r>>>=0;r<u;)n[r++]=t;
return function(){return!n.apply(this,arguments)}},Tt.omit=function(n,t,r){if(null==n)return{};if(typeof t!="function"){var e=Kt(lr(arguments,false,false,1),Cu);return le(n,ur(fu(n),e))}return t=Fr(t,r,3),se(n,function(n,r,e){return!t(n,r,e)})},Tt.once=function(n){return De(n,2)},Tt.pairs=function(n){for(var t=-1,r=zo(n),e=r.length,u=xu(e);++t<e;){var o=r[t];u[t]=[o,n[o]]}return u},Tt.partial=Ze,Tt.partialRight=Ge,Tt.partition=Wo,Tt.pick=function(n,t,r){return null==n?{}:typeof t=="function"?se(n,Fr(t,r,3)):le(n,lr(arguments,false,false,1)) return n},Wt.filter=Be,Wt.flatten=function(n,t,r){var e=n?n.length:0;return r&&ge(n,t,r)&&(t=false),e?ir(n,t):[]},Wt.flattenDeep=function(n){return n&&n.length?ir(n,true):[]},Wt.flow=fi,Wt.flowRight=ai,Wt.forEach=Ko,Wt.forEachRight=Vo,Wt.forIn=wi,Wt.forInRight=bi,Wt.forOwn=xi,Wt.forOwnRight=Ai,Wt.functions=ou,Wt.groupBy=Yo,Wt.indexBy=Zo,Wt.initial=function(n){return Oe(n,1)},Wt.intersection=function(){for(var n=[],t=-1,e=arguments.length,u=[],o=pe(),i=o==r;++t<e;){var f=arguments[t];(si(f)||Ge(f))&&(n.push(f),u.push(i&&120<=f.length?Oo(t&&f):null))
},Tt.pluck=function(n,t){return Ue(n,jr(t))},Tt.property=function(n){return jr(n+"")},Tt.propertyOf=function(n){return function(t){return null==n?m:n[t]}},Tt.pull=function(){var n=arguments,t=n[0];if(!t||!t.length)return t;for(var r=0,e=re(),u=n.length;++r<u;)for(var o=0,i=n[r];-1<(o=e(t,i,o));)Qu.call(t,o,1);return t},Tt.pullAt=function(t){var r=t||[],e=lr(arguments,false,false,1),u=e.length,o=Qt(r,e);for(e.sort(n);u--;){var i=parseFloat(e[u]);if(i!=f&&ie(i)){var f=i;Qu.call(r,i,1)}}return o},Tt.range=function(n,t,r){r&&fe(n,t,r)&&(t=r=null),n=+n||0,r=null==r?1:+r||0,null==t?(t=n,n=0):t=+t||0; }var e=n.length,i=n[0],a=-1,c=i?i.length:0,l=[],p=u[0];n:for(;++a<c;)if(f=i[a],0>(p?Lt(p,f):o(l,f,0))){for(t=e;--t;){var s=u[t];if(0>(s?Lt(s,f):o(n[t],f,0)))continue n}p&&p.push(f),l.push(f)}return l},Wt.invert=function(n,t,r){r&&ge(n,t,r)&&(t=null),r=-1;for(var e=ji(n),u=e.length,o={};++r<u;){var i=e[r],f=n[i];t?Nu.call(o,f)?o[f].push(i):o[f]=[i]:o[f]=i}return o},Wt.invoke=Go,Wt.keys=ji,Wt.keysIn=iu,Wt.map=Me,Wt.mapValues=function(n,t,r){var e={};return t=le(t,r,3),ar(n,function(n,r,u){e[r]=t(n,r,u)
var e=-1;t=fo(Ku((t-n)/(r||1)),0);for(var u=xu(t);++e<t;)u[e]=n,n+=r;return u},Tt.rearg=function(n){var t=lr(arguments,false,false,1);return Jr(n,I,null,null,null,t)},Tt.reject=function(n,t,r){var e=Uo(n)?Pt:ar;return t=te(t,r,3),e(n,function(n,r,e){return!t(n,r,e)})},Tt.remove=function(n,t,r){var e=-1,u=n?n.length:0,o=[];for(t=te(t,r,3);++e<u;)r=n[e],t(r,e,n)&&(o.push(r),Qu.call(n,e--,1),u--);return o},Tt.rest=Ae,Tt.shuffle=Be,Tt.slice=function(n,t,r){var e=n?n.length:0;return e?(r&&typeof r!="number"&&fe(n,t,r)&&(t=0,r=e),Rr(n,t,r)):[] }),e},Wt.matches=yu,Wt.matchesProperty=function(n,t){return gr(n+"",nr(t,true))},Wt.memoize=Ye,Wt.merge=ki,Wt.mixin=du,Wt.negate=function(n){if(typeof n!="function")throw new Ru(L);return function(){return!n.apply(this,arguments)}},Wt.omit=Ei,Wt.once=function(n){return Ke(n,2)},Wt.pairs=function(n){for(var t=-1,r=ji(n),e=r.length,u=wu(e);++t<e;){var o=r[t];u[t]=[o,n[o]]}return u},Wt.partial=ci,Wt.partialRight=li,Wt.partition=Jo,Wt.pick=Ii,Wt.pluck=function(n,t){return Me(n,dr(t))},Wt.property=function(n){return dr(n+"")
},Tt.sortBy=function(n,t,r){if(null==n)return[];var e=-1,u=n.length,o=ae(u)?xu(u):[];return r&&fe(n,t,r)&&(t=null),t=te(t,r,3),or(n,function(n,r,u){o[++e]={a:t(n,r,u),b:e,c:n}}),Or(o,f)},Tt.sortByAll=function(n){if(null==n)return[];var t=arguments,r=t[3];return r&&fe(t[1],t[2],r)&&(t=[n,t[1]]),Cr(n,lr(t,false,false,1),[])},Tt.sortByOrder=function(n,t,r,e){return null==n?[]:(e&&fe(t,r,e)&&(r=null),Uo(t)||(t=null==t?[]:[t]),Uo(r)||(r=null==r?[]:[r]),Cr(n,t,r))},Tt.spread=function(n){if(typeof n!="function")throw new Wu($); },Wt.propertyOf=function(n){return function(t){return null==n?w:n[t]}},Wt.pull=function(){var n=arguments,t=n[0];if(!t||!t.length)return t;for(var r=0,e=pe(),u=n.length;++r<u;)for(var o=0,i=n[r];-1<(o=e(t,i,o));)Xu.call(t,o,1);return t},Wt.pullAt=Fo,Wt.range=function(n,t,r){r&&ge(n,t,r)&&(t=r=null),n=+n||0,r=null==r?1:+r||0,null==t?(t=n,n=0):t=+t||0;var e=-1;t=oo(Pu((t-n)/(r||1)),0);for(var u=wu(t);++e<t;)u[e]=n,n+=r;return u},Wt.rearg=pi,Wt.reject=function(n,t,r){var e=si(n)?qt:ur;return t=le(t,r,3),e(n,function(n,r,e){return!t(n,r,e)
return function(t){return n.apply(this,t)}},Tt.take=function(n,t,r){return n&&n.length?((r?fe(n,t,r):null==t)&&(t=1),Rr(n,0,0>t?0:t)):[]},Tt.takeRight=function(n,t,r){var e=n?n.length:0;return e?((r?fe(n,t,r):null==t)&&(t=1),t=e-(+t||0),Rr(n,0>t?0:t)):[]},Tt.takeRightWhile=function(n,t,r){var e=n?n.length:0;if(!e)return[];for(t=te(t,r,3);e--&&t(n[e],e,n););return Rr(n,e+1)},Tt.takeWhile=function(n,t,r){var e=n?n.length:0;if(!e)return[];var u=-1;for(t=te(t,r,3);++u<e&&t(n[u],u,n););return Rr(n,0,u) })},Wt.remove=function(n,t,r){var e=-1,u=n?n.length:0,o=[];for(t=le(t,r,3);++e<u;)r=n[e],t(r,e,n)&&(o.push(r),Xu.call(n,e--,1),u--);return o},Wt.rest=We,Wt.restParam=Ze,Wt.shuffle=Pe,Wt.slice=function(n,t,r){var e=n?n.length:0;return e?(r&&typeof r!="number"&&ge(n,t,r)&&(t=0,r=e),br(n,t,r)):[]},Wt.sortBy=function(n,t,r){if(null==n)return[];var e=-1,u=n.length,o=de(u)?wu(u):[];return r&&ge(n,t,r)&&(t=null),t=le(t,r,3),Ao(n,function(n,r,u){o[++e]={a:t(n,r,u),b:e,c:n}}),Ar(o,a)},Wt.sortByAll=function(){var n=arguments,t=n[0],r=n[3],e=0,u=n.length-1;
},Tt.tap=function(n,t,r){return t.call(r,n),n},Tt.throttle=function(n,t,r){var e=true,u=true;if(typeof n!="function")throw new Wu($);return false===r?e=false:Qe(r)&&(e="leading"in r?!!r.leading:e,u="trailing"in r?!!r.trailing:u),Wt.leading=e,Wt.maxWait=+t,Wt.trailing=u,Ve(n,t,Wt)},Tt.thru=Ie,Tt.times=function(n,t,r){if(n=+n,1>n||!oo(n))return[];var e=-1,u=xu(ao(n,go));for(t=Fr(t,r,1);++e<n;)e<go?u[e]=t(e):t(e);return u},Tt.toArray=function(n){var t=n?n.length:0;return ae(t)?t?Bt(n):[]:au(n)},Tt.toPlainObject=ou,Tt.transform=function(n,t,r,e){var u=Uo(n)||uu(n); if(null==t)return[];for(var o=wu(u);e<u;)o[e]=n[++e];return r&&ge(n[1],n[2],r)&&(o=n[1]),jr(t,ir(o),[])},Wt.sortByOrder=function(n,t,r,e){return null==n?[]:(e&&ge(t,r,e)&&(r=null),si(t)||(t=null==t?[]:[t]),si(r)||(r=null==r?[]:[r]),jr(n,t,r))},Wt.spread=function(n){if(typeof n!="function")throw new Ru(L);return function(t){return n.apply(this,t)}},Wt.take=function(n,t,r){return n&&n.length?((r?ge(n,t,r):null==t)&&(t=1),br(n,0,0>t?0:t)):[]},Wt.takeRight=function(n,t,r){var e=n?n.length:0;return e?((r?ge(n,t,r):null==t)&&(t=1),t=e-(+t||0),br(n,0>t?0:t)):[]
return t=te(t,e,4),null==r&&(u||Qe(n)?(e=n.constructor,r=u?Uo(n)?new e:[]:Ao($o(e)&&e.prototype)):r={}),(u?Mt:_r)(n,function(n,e,u){return t(r,n,e,u)}),r},Tt.union=function(){return Wr(lr(arguments,false,true,0))},Tt.uniq=je,Tt.unzip=ke,Tt.values=au,Tt.valuesIn=function(n){return Tr(n,fu(n))},Tt.where=function(n,t){return Ce(n,wr(t))},Tt.without=function(n){return ur(n,Rr(arguments,1))},Tt.wrap=function(n,t){return t=null==t?du:t,Jr(t,E,null,[n],[])},Tt.xor=function(){for(var n=-1,t=arguments.length;++n<t;){var r=arguments[n]; },Wt.takeRightWhile=function(n,t,r){return n&&n.length?Or(n,le(t,r,3),false,true):[]},Wt.takeWhile=function(n,t,r){return n&&n.length?Or(n,le(t,r,3)):[]},Wt.tap=function(n,t,r){return t.call(r,n),n},Wt.throttle=function(n,t,r){var e=true,u=true;if(typeof n!="function")throw new Ru(L);return false===r?e=false:He(r)&&(e="leading"in r?!!r.leading:e,u="trailing"in r?!!r.trailing:u),St.leading=e,St.maxWait=+t,St.trailing=u,Ve(n,t,St)},Wt.thru=$e,Wt.times=function(n,t,r){if(n=+n,1>n||!eo(n))return[];var e=-1,u=wu(io(n,ho));
if(Uo(r)||Je(r))var e=e?ur(e,r).concat(ur(r,e)):r}return e?Wr(e):[]},Tt.zip=function(){for(var n=arguments.length,t=xu(n);n--;)t[n]=arguments[n];return ke(t)},Tt.zipObject=Ee,Tt.backflow=No,Tt.collect=Ue,Tt.compose=No,Tt.each=Te,Tt.eachRight=Se,Tt.extend=Bo,Tt.iteratee=vu,Tt.methods=iu,Tt.object=Ee,Tt.select=Ce,Tt.tail=Ae,Tt.unique=je,bu(Tt,Tt),Tt.add=function(n,t){return n+t},Tt.attempt=gu,Tt.camelCase=Mo,Tt.capitalize=function(n){return(n=e(n))&&n.charAt(0).toUpperCase()+n.slice(1)},Tt.clone=function(n,t,r,e){return t&&typeof t!="boolean"&&fe(n,t,r)?t=false:typeof t=="function"&&(e=r,r=t,t=false),r=typeof r=="function"&&Fr(r,e,1),rr(n,t,r) for(t=Wr(t,r,1);++e<n;)e<ho?u[e]=t(e):t(e);return u},Wt.toArray=function(n){var t=n?n.length:0;return de(t)?t?Bt(n):[]:fu(n)},Wt.toPlainObject=uu,Wt.transform=function(n,t,r,e){var u=si(n)||eu(n);return t=le(t,e,4),null==r&&(u||He(n)?(e=n.constructor,r=u?si(n)?new e:[]:xo(_i(e)&&e.prototype)):r={}),(u?zt:ar)(n,function(n,e,u){return t(r,n,e,u)}),r},Wt.union=Lo,Wt.uniq=Te,Wt.unzip=Ue,Wt.values=fu,Wt.valuesIn=function(n){return Ir(n,iu(n))},Wt.where=function(n,t){return Be(n,vr(t))},Wt.without=Bo,Wt.wrap=function(n,t){return t=null==t?gu:t,oe(t,I,null,[n],[])
},Tt.cloneDeep=function(n,t,r){return t=typeof t=="function"&&Fr(t,r,1),rr(n,true,t)},Tt.deburr=cu,Tt.endsWith=function(n,t,r){n=e(n),t+="";var u=n.length;return r=typeof r=="undefined"?u:ao(0>r?0:+r||0,u),r-=t.length,0<=r&&n.indexOf(t,r)==r},Tt.escape=function(n){return(n=e(n))&&st.test(n)?n.replace(ct,c):n},Tt.escapeRegExp=lu,Tt.every=Oe,Tt.find=We,Tt.findIndex=me,Tt.findKey=function(n,t,r){return t=te(t,r,3),cr(n,t,_r,true)},Tt.findLast=function(n,t,r){return t=te(t,r,3),cr(n,t,ir)},Tt.findLastIndex=function(n,t,r){var e=n?n.length:0; },Wt.xor=function(){for(var n=-1,t=arguments.length;++n<t;){var r=arguments[n];if(si(r)||Ge(r))var e=e?rr(e,r).concat(rr(r,e)):r}return e?Er(e):[]},Wt.zip=zo,Wt.zipObject=Fe,Wt.backflow=ai,Wt.collect=Me,Wt.compose=ai,Wt.each=Ko,Wt.eachRight=Vo,Wt.extend=gi,Wt.iteratee=_u,Wt.methods=ou,Wt.object=Fe,Wt.select=Be,Wt.tail=We,Wt.unique=Te,du(Wt,Wt),Wt.add=function(n,t){return n+t},Wt.attempt=Ui,Wt.camelCase=Oi,Wt.capitalize=function(n){return(n=u(n))&&n.charAt(0).toUpperCase()+n.slice(1)},Wt.clone=function(n,t,r,e){return t&&typeof t!="boolean"&&ge(n,t,r)?t=false:typeof t=="function"&&(e=r,r=t,t=false),r=typeof r=="function"&&Wr(r,e,1),nr(n,t,r)
for(t=te(t,r,3);e--;)if(t(n[e],e,n))return e;return-1},Tt.findLastKey=function(n,t,r){return t=te(t,r,3),cr(n,t,gr,true)},Tt.findWhere=function(n,t){return We(n,wr(t))},Tt.first=be,Tt.has=function(n,t){return n?Lu.call(n,t):false},Tt.identity=du,Tt.includes=Ne,Tt.indexOf=we,Tt.inRange=function(n,t,r){return t=+t||0,"undefined"===typeof r?(r=t,t=0):r=+r||0,n>=t&&n<r},Tt.isArguments=Je,Tt.isArray=Uo,Tt.isBoolean=function(n){return true===n||false===n||p(n)&&zu.call(n)==D||false},Tt.isDate=function(n){return p(n)&&zu.call(n)==M||false },Wt.cloneDeep=function(n,t,r){return t=typeof t=="function"&&Wr(t,r,1),nr(n,true,t)},Wt.deburr=au,Wt.endsWith=function(n,t,r){n=u(n),t+="";var e=n.length;return r=typeof r=="undefined"?e:io(0>r?0:+r||0,e),r-=t.length,0<=r&&n.indexOf(t,r)==r},Wt.escape=function(n){return(n=u(n))&&st.test(n)?n.replace(lt,l):n},Wt.escapeRegExp=cu,Wt.every=Le,Wt.find=Po,Wt.findIndex=To,Wt.findKey=di,Wt.findLast=qo,Wt.findLastIndex=Uo,Wt.findLastKey=mi,Wt.findWhere=function(n,t){return Po(n,vr(t))},Wt.first=Re,Wt.has=function(n,t){return n?Nu.call(n,t):false
},Tt.isElement=Xe,Tt.isEmpty=function(n){if(null==n)return true;var t=n.length;return ae(t)&&(Uo(n)||eu(n)||Je(n)||p(n)&&$o(n.splice))?!t:!zo(n).length},Tt.isEqual=function(n,t,r,e){return r=typeof r=="function"&&Fr(r,e,3),!r&&ce(n)&&ce(t)?n===t:(e=r?r(n,t):m,typeof e=="undefined"?dr(n,t,r):!!e)},Tt.isError=He,Tt.isFinite=Fo,Tt.isFunction=$o,Tt.isMatch=function(n,t,r,e){var u=zo(t),o=u.length;if(r=typeof r=="function"&&Fr(r,e,3),!r&&1==o){var i=u[0];if(e=t[i],ce(e))return null!=n&&e===n[i]&&Lu.call(n,i) },Wt.identity=gu,Wt.includes=ze,Wt.indexOf=Ce,Wt.inRange=function(n,t,r){return t=+t||0,"undefined"===typeof r?(r=t,t=0):r=+r||0,n>=t&&n<r},Wt.isArguments=Ge,Wt.isArray=si,Wt.isBoolean=function(n){return true===n||false===n||h(n)&&Lu.call(n)==D},Wt.isDate=function(n){return h(n)&&Lu.call(n)==P},Wt.isElement=Je,Wt.isEmpty=function(n){if(null==n)return true;var t=n.length;return de(t)&&(si(n)||ru(n)||Ge(n)||h(n)&&_i(n.splice))?!t:!ji(n).length},Wt.isEqual=function(n,t,r,e){return r=typeof r=="function"&&Wr(r,e,3),!r&&me(n)&&me(t)?n===t:(e=r?r(n,t):w,typeof e=="undefined"?pr(n,t,r):!!e)
}for(var i=xu(o),f=xu(o);o--;)e=i[o]=t[u[o]],f[o]=ce(e);return mr(n,u,i,f,r)},Tt.isNaN=function(n){return tu(n)&&n!=+n},Tt.isNative=nu,Tt.isNull=function(n){return null===n},Tt.isNumber=tu,Tt.isObject=Qe,Tt.isPlainObject=Lo,Tt.isRegExp=ru,Tt.isString=eu,Tt.isTypedArray=uu,Tt.isUndefined=function(n){return typeof n=="undefined"},Tt.kebabCase=qo,Tt.last=xe,Tt.lastIndexOf=function(n,t,r){var e=n?n.length:0;if(!e)return-1;var u=e;if(typeof r=="number")u=(0>r?fo(e+r,0):ao(r||0,e-1))+1;else if(r)return u=Nr(n,t,true)-1,n=n[u],(t===t?t===n:n!==n)?u:-1; },Wt.isError=Xe,Wt.isFinite=hi,Wt.isFunction=_i,Wt.isMatch=function(n,t,r,e){var u=ji(t),o=u.length;if(!o)return true;if(null==n)return false;if(r=typeof r=="function"&&Wr(r,e,3),!r&&1==o){var i=u[0];if(e=t[i],me(e))return e===n[i]&&(typeof e!="undefined"||i in ke(n))}for(var i=wu(o),f=wu(o);o--;)e=i[o]=t[u[o]],f[o]=me(e);return hr(ke(n),u,i,f,r)},Wt.isNaN=function(n){return nu(n)&&n!=+n},Wt.isNative=Qe,Wt.isNull=function(n){return null===n},Wt.isNumber=nu,Wt.isObject=He,Wt.isPlainObject=vi,Wt.isRegExp=tu,Wt.isString=ru,Wt.isTypedArray=eu,Wt.isUndefined=function(n){return typeof n=="undefined"
if(t!==t)return s(n,u,true);for(;u--;)if(n[u]===t)return u;return-1},Tt.max=Vo,Tt.min=Yo,Tt.noConflict=function(){return h._=Du,this},Tt.noop=wu,Tt.now=To,Tt.pad=function(n,t,r){n=e(n),t=+t;var u=n.length;return u<t&&oo(t)?(u=(t-u)/2,t=Yu(u),u=Ku(u),r=Zr("",u,r),r.slice(0,t)+n+r):n},Tt.padLeft=function(n,t,r){return(n=e(n))&&Zr(n,t,r)+n},Tt.padRight=function(n,t,r){return(n=e(n))&&n+Zr(n,t,r)},Tt.parseInt=su,Tt.random=function(n,t,r){r&&fe(n,t,r)&&(t=r=null);var e=null==n,u=null==t;return null==r&&(u&&typeof n=="boolean"?(r=n,n=1):typeof t=="boolean"&&(r=t,u=true)),e&&u&&(t=1,u=false),n=+n||0,u?(t=n,n=0):t=+t||0,r||n%1||t%1?(r=po(),ao(n+r*(t-n+parseFloat("1e-"+((r+"").length-1))),t)):kr(n,t) },Wt.kebabCase=Ri,Wt.last=Se,Wt.lastIndexOf=function(n,t,r){var e=n?n.length:0;if(!e)return-1;var u=e;if(typeof r=="number")u=(0>r?oo(e+r,0):io(r||0,e-1))+1;else if(r)return u=Cr(n,t,true)-1,n=n[u],(t===t?t===n:n!==n)?u:-1;if(t!==t)return s(n,u,true);for(;u--;)if(n[u]===t)return u;return-1},Wt.max=Fi,Wt.min=Ni,Wt.noConflict=function(){return _._=Bu,this},Wt.noop=mu,Wt.now=Qo,Wt.pad=function(n,t,r){n=u(n),t=+t;var e=n.length;return e<t&&eo(t)?(e=(t-e)/2,t=Ku(e),e=Pu(e),r=re("",e,r),r.slice(0,t)+n+r):n
},Tt.reduce=Fe,Tt.reduceRight=$e,Tt.repeat=pu,Tt.result=function(n,t,r){return t=null==n?m:n[t],typeof t=="undefined"&&(t=r),$o(t)?t.call(n):t},Tt.runInContext=d,Tt.size=function(n){var t=n?n.length:0;return ae(t)?t:zo(n).length},Tt.snakeCase=Po,Tt.some=ze,Tt.sortedIndex=function(n,t,r,e){var u=te(r);return u===tr&&null==r?Nr(n,t):Ur(n,t,u(r,e,1))},Tt.sortedLastIndex=function(n,t,r,e){var u=te(r);return u===tr&&null==r?Nr(n,t,true):Ur(n,t,u(r,e,1),true)},Tt.startCase=Ko,Tt.startsWith=function(n,t,r){return n=e(n),r=null==r?0:ao(0>r?0:+r||0,n.length),n.lastIndexOf(t,r)==r },Wt.padLeft=Ci,Wt.padRight=Si,Wt.parseInt=lu,Wt.random=function(n,t,r){r&&ge(n,t,r)&&(t=r=null);var e=null==n,u=null==t;return null==r&&(u&&typeof n=="boolean"?(r=n,n=1):typeof t=="boolean"&&(r=t,u=true)),e&&u&&(t=1,u=false),n=+n||0,u?(t=n,n=0):t=+t||0,r||n%1||t%1?(r=lo(),io(n+r*(t-n+parseFloat("1e-"+((r+"").length-1))),t)):mr(n,t)},Wt.reduce=Xo,Wt.reduceRight=Ho,Wt.repeat=pu,Wt.result=function(n,t,r){return t=null==n?w:n[t],typeof t=="undefined"&&(t=r),_i(t)?t.call(n):t},Wt.runInContext=m,Wt.size=function(n){var t=n?n.length:0;
},Tt.sum=function(n){Uo(n)||(n=_e(n));for(var t=n.length,r=0;t--;)r+=+n[t]||0;return r},Tt.template=function(n,t,r){var u=Tt.templateSettings;r&&fe(n,t,r)&&(t=r=null),n=e(n),t=Ht(Ht({},r||t),u,Xt),r=Ht(Ht({},t.imports),u.imports,Xt);var o,i,f=zo(r),a=Tr(r,f),c=0;r=t.interpolate||wt;var s="__p+='";r=Ou((t.escape||wt).source+"|"+r.source+"|"+(r===_t?gt:wt).source+"|"+(t.evaluate||wt).source+"|$","g");var p="sourceURL"in t?"//# sourceURL="+t.sourceURL+"\n":"";if(n.replace(r,function(t,r,e,u,f,a){return e||(e=u),s+=n.slice(c,a).replace(kt,l),r&&(o=true,s+="'+__e("+r+")+'"),f&&(i=true,s+="';"+f+";\n__p+='"),e&&(s+="'+((__t=("+e+"))==null?'':__t)+'"),c=a+t.length,t return de(t)?t:ji(n).length},Wt.snakeCase=Wi,Wt.some=qe,Wt.sortedIndex=No,Wt.sortedLastIndex=$o,Wt.startCase=Ti,Wt.startsWith=function(n,t,r){return n=u(n),r=null==r?0:io(0>r?0:+r||0,n.length),n.lastIndexOf(t,r)==r},Wt.sum=function(n,t,r){r&&ge(n,t,r)&&(t=null);var e=le(),u=null==t;if(e===Qt&&u||(u=false,t=e(t,r,3)),u){for(n=si(n)?n:je(n),t=n.length,r=0;t--;)r+=+n[t]||0;n=r}else n=kr(n,t);return n},Wt.template=function(n,t,r){var e=Wt.templateSettings;r&&ge(n,t,r)&&(t=r=null),n=u(n),t=Jt(Jt({},r||t),e,Gt),r=Jt(Jt({},t.imports),e.imports,Gt);
}),s+="';",(t=t.variable)||(s="with(obj){"+s+"}"),s=(i?s.replace(ot,""):s).replace(it,"$1").replace(ft,"$1;"),s="function("+(t||"obj")+"){"+(t?"":"obj||(obj={});")+"var __t,__p=''"+(o?",__e=_.escape":"")+(i?",__j=Array.prototype.join;function print(){__p+=__j.call(arguments,'')}":";")+s+"return __p}",t=gu(function(){return ku(f,p+"return "+s).apply(m,a)}),t.source=s,He(t))throw t;return t},Tt.trim=hu,Tt.trimLeft=function(n,t,r){var u=n;return(n=e(n))?n.slice((r?fe(u,t,r):null==t)?g(n):o(n,t+"")):n var o,i,f=ji(r),a=Ir(r,f),c=0;r=t.interpolate||xt;var l="__p+='";r=Iu((t.escape||xt).source+"|"+r.source+"|"+(r===vt?yt:xt).source+"|"+(t.evaluate||xt).source+"|$","g");var s="sourceURL"in t?"//# sourceURL="+t.sourceURL+"\n":"";if(n.replace(r,function(t,r,e,u,f,a){return e||(e=u),l+=n.slice(c,a).replace(kt,p),r&&(o=true,l+="'+__e("+r+")+'"),f&&(i=true,l+="';"+f+";\n__p+='"),e&&(l+="'+((__t=("+e+"))==null?'':__t)+'"),c=a+t.length,t}),l+="';",(t=t.variable)||(l="with(obj){"+l+"}"),l=(i?l.replace(it,""):l).replace(ft,"$1").replace(at,"$1;"),l="function("+(t||"obj")+"){"+(t?"":"obj||(obj={});")+"var __t,__p=''"+(o?",__e=_.escape":"")+(i?",__j=Array.prototype.join;function print(){__p+=__j.call(arguments,'')}":";")+l+"return __p}",t=Ui(function(){return Au(f,s+"return "+l).apply(w,a)
},Tt.trimRight=function(n,t,r){var u=n;return(n=e(n))?(r?fe(u,t,r):null==t)?n.slice(0,v(n)+1):n.slice(0,i(n,t+"")+1):n},Tt.trunc=function(n,t,r){r&&fe(n,t,r)&&(t=null);var u=C;if(r=W,null!=t)if(Qe(t)){var o="separator"in t?t.separator:o,u="length"in t?+t.length||0:u;r="omission"in t?e(t.omission):r}else u=+t||0;if(n=e(n),u>=n.length)return n;if(u-=r.length,1>u)return r;if(t=n.slice(0,u),null==o)return t+r;if(ru(o)){if(n.slice(u).search(o)){var i,f=n.slice(0,u);for(o.global||(o=Ou(o.source,(vt.exec(o)||"")+"g")),o.lastIndex=0;n=o.exec(f);)i=n.index; }),t.source=l,Xe(t))throw t;return t},Wt.trim=su,Wt.trimLeft=function(n,t,r){var e=n;return(n=u(n))?n.slice((r?ge(e,t,r):null==t)?g(n):i(n,t+"")):n},Wt.trimRight=function(n,t,r){var e=n;return(n=u(n))?(r?ge(e,t,r):null==t)?n.slice(0,y(n)+1):n.slice(0,f(n,t+"")+1):n},Wt.trunc=function(n,t,r){r&&ge(n,t,r)&&(t=null);var e=S;if(r=W,null!=t)if(He(t)){var o="separator"in t?t.separator:o,e="length"in t?+t.length||0:e;r="omission"in t?u(t.omission):r}else e=+t||0;if(n=u(n),e>=n.length)return n;if(e-=r.length,1>e)return r;
t=t.slice(0,null==i?u:i)}}else n.indexOf(o,u)!=u&&(o=t.lastIndexOf(o),-1<o&&(t=t.slice(0,o)));return t+r},Tt.unescape=function(n){return(n=e(n))&&lt.test(n)?n.replace(at,y):n},Tt.uniqueId=function(n){var t=++Bu;return e(n)+t},Tt.words=_u,Tt.all=Oe,Tt.any=ze,Tt.contains=Ne,Tt.detect=We,Tt.foldl=Fe,Tt.foldr=$e,Tt.head=be,Tt.include=Ne,Tt.inject=Fe,bu(Tt,function(){var n={};return _r(Tt,function(t,r){Tt.prototype[r]||(n[r]=t)}),n}(),false),Tt.sample=Le,Tt.prototype.sample=function(n){return this.__chain__||null!=n?this.thru(function(t){return Le(t,n) if(t=n.slice(0,e),null==o)return t+r;if(tu(o)){if(n.slice(e).search(o)){var i,f=n.slice(0,e);for(o.global||(o=Iu(o.source,(dt.exec(o)||"")+"g")),o.lastIndex=0;n=o.exec(f);)i=n.index;t=t.slice(0,null==i?e:i)}}else n.indexOf(o,e)!=e&&(o=t.lastIndexOf(o),-1<o&&(t=t.slice(0,o)));return t+r},Wt.unescape=function(n){return(n=u(n))&&pt.test(n)?n.replace(ct,d):n},Wt.uniqueId=function(n){var t=++$u;return u(n)+t},Wt.words=hu,Wt.all=Le,Wt.any=qe,Wt.contains=ze,Wt.detect=Po,Wt.foldl=Xo,Wt.foldr=Ho,Wt.head=Re,Wt.include=ze,Wt.inject=Xo,du(Wt,function(){var n={};
}):Le(this.value())},Tt.VERSION=b,Mt("bind bindKey curry curryRight partial partialRight".split(" "),function(n){Tt[n].placeholder=Tt}),Mt(["dropWhile","filter","map","takeWhile"],function(n,t){var r=t!=F,e=t==N;Ut.prototype[n]=function(n,u){var o=this.__filtered__,i=o&&e?new Ut(this):this.clone();return(i.__iteratees__||(i.__iteratees__=[])).push({done:false,count:0,index:0,iteratee:te(n,u,1),limit:-1,type:t}),i.__filtered__=o||r,i}}),Mt(["drop","take"],function(n,t){var r=n+"While";Ut.prototype[n]=function(r){var e=this.__filtered__,u=e&&!t?this.dropWhile():this.clone(); return ar(Wt,function(t,r){Wt.prototype[r]||(n[r]=t)}),n}(),false),Wt.sample=De,Wt.prototype.sample=function(n){return this.__chain__||null!=n?this.thru(function(t){return De(t,n)}):De(this.value())},Wt.VERSION=b,zt("bind bindKey curry curryRight partial partialRight".split(" "),function(n){Wt[n].placeholder=Wt}),zt(["dropWhile","filter","map","takeWhile"],function(n,t){var r=t!=$,e=t==F;Ft.prototype[n]=function(n,u){var o=this.__filtered__,i=o&&e?new Ft(this):this.clone();return(i.__iteratees__||(i.__iteratees__=[])).push({done:false,count:0,index:0,iteratee:le(n,u,1),limit:-1,type:t}),i.__filtered__=o||r,i
return r=null==r?1:fo(Yu(r)||0,0),e?t?u.__takeCount__=ao(u.__takeCount__,r):xe(u.__iteratees__).limit=r:(u.__views__||(u.__views__=[])).push({size:r,type:n+(0>u.__dir__?"Right":"")}),u},Ut.prototype[n+"Right"]=function(t){return this.reverse()[n](t).reverse()},Ut.prototype[n+"RightWhile"]=function(n,t){return this.reverse()[r](n,t).reverse()}}),Mt(["first","last"],function(n,t){var r="take"+(t?"Right":"");Ut.prototype[n]=function(){return this[r](1).value()[0]}}),Mt(["initial","rest"],function(n,t){var r="drop"+(t?"":"Right"); }}),zt(["drop","take"],function(n,t){var r=n+"While";Ft.prototype[n]=function(r){var e=this.__filtered__,u=e&&!t?this.dropWhile():this.clone();return r=null==r?1:oo(Ku(r)||0,0),e?t?u.__takeCount__=io(u.__takeCount__,r):Se(u.__iteratees__).limit=r:(u.__views__||(u.__views__=[])).push({size:r,type:n+(0>u.__dir__?"Right":"")}),u},Ft.prototype[n+"Right"]=function(t){return this.reverse()[n](t).reverse()},Ft.prototype[n+"RightWhile"]=function(n,t){return this.reverse()[r](n,t).reverse()}}),zt(["first","last"],function(n,t){var r="take"+(t?"Right":"");
Ut.prototype[n]=function(){return this[r](1)}}),Mt(["pluck","where"],function(n,t){var r=t?"filter":"map",e=t?wr:jr;Ut.prototype[n]=function(n){return this[r](e(n))}}),Ut.prototype.compact=function(){return this.filter(du)},Ut.prototype.reject=function(n,t){return n=te(n,t,1),this.filter(function(t){return!n(t)})},Ut.prototype.slice=function(n,t){n=null==n?0:+n||0;var r=0>n?this.takeRight(-n):this.drop(n);return typeof t!="undefined"&&(t=+t||0,r=0>t?r.dropRight(-t):r.take(t-n)),r},Ut.prototype.toArray=function(){return this.drop(0) Ft.prototype[n]=function(){return this[r](1).value()[0]}}),zt(["initial","rest"],function(n,t){var r="drop"+(t?"":"Right");Ft.prototype[n]=function(){return this[r](1)}}),zt(["pluck","where"],function(n,t){var r=t?"filter":"map",e=t?vr:dr;Ft.prototype[n]=function(n){return this[r](e(n))}}),Ft.prototype.compact=function(){return this.filter(gu)},Ft.prototype.reject=function(n,t){return n=le(n,t,1),this.filter(function(t){return!n(t)})},Ft.prototype.slice=function(n,t){n=null==n?0:+n||0;var r=0>n?this.takeRight(-n):this.drop(n);
},_r(Ut.prototype,function(n,t){var r=Tt[t],e=/^(?:filter|map|reject)|While$/.test(t),u=/^(?:first|last)$/.test(t);Tt.prototype[t]=function(){function t(n){return n=[n],Gu.apply(n,o),r.apply(Tt,n)}var o=arguments,i=this.__chain__,f=this.__wrapped__,a=!!this.__actions__.length,c=f instanceof Ut,l=o[0],s=c||Uo(f);return s&&e&&typeof l=="function"&&1!=l.length&&(c=s=false),c=c&&!a,u&&!i?c?n.call(f):r.call(Tt,this.value()):s?(f=n.apply(c?f:new Ut(this),o),u||!a&&!f.__actions__||(f.__actions__||(f.__actions__=[])).push({func:Ie,args:[t],thisArg:Tt}),new Nt(f,i)):this.thru(t) return typeof t!="undefined"&&(t=+t||0,r=0>t?r.dropRight(-t):r.take(t-n)),r},Ft.prototype.toArray=function(){return this.drop(0)},ar(Ft.prototype,function(n,t){var r=Wt[t];if(r){var e=/^(?:filter|map|reject)|While$/.test(t),u=/^(?:first|last)$/.test(t);Wt.prototype[t]=function(){function t(n){return n=[n],Yu.apply(n,o),r.apply(Wt,n)}var o=arguments,i=this.__chain__,f=this.__wrapped__,a=!!this.__actions__.length,c=f instanceof Ft,l=o[0],p=c||si(f);return p&&e&&typeof l=="function"&&1!=l.length&&(c=p=false),c=c&&!a,u&&!i?c?n.call(f):r.call(Wt,this.value()):p?(f=n.apply(c?f:new Ft(this),o),u||!a&&!f.__actions__||(f.__actions__||(f.__actions__=[])).push({func:$e,args:[t],thisArg:Wt}),new Ut(f,i)):this.thru(t)
}}),Mt("concat join pop push replace shift sort splice split unshift".split(" "),function(n){var t=(/^(?:replace|split)$/.test(n)?Nu:Tu)[n],r=/^(?:push|sort|unshift)$/.test(n)?"tap":"thru",e=/^(?:join|pop|replace|shift)$/.test(n);Tt.prototype[n]=function(){var n=arguments;return e&&!this.__chain__?t.apply(this.value(),n):this[r](function(r){return t.apply(r,n)})}}),Ut.prototype.clone=function(){var n=this.__actions__,t=this.__iteratees__,r=this.__views__,e=new Ut(this.__wrapped__);return e.__actions__=n?Bt(n):null,e.__dir__=this.__dir__,e.__filtered__=this.__filtered__,e.__iteratees__=t?Bt(t):null,e.__takeCount__=this.__takeCount__,e.__views__=r?Bt(r):null,e }}}),zt("concat join pop push replace shift sort splice split unshift".split(" "),function(n){var t=(/^(?:replace|split)$/.test(n)?Wu:Cu)[n],r=/^(?:push|sort|unshift)$/.test(n)?"tap":"thru",e=/^(?:join|pop|replace|shift)$/.test(n);Wt.prototype[n]=function(){var n=arguments;return e&&!this.__chain__?t.apply(this.value(),n):this[r](function(r){return t.apply(r,n)})}}),ar(Ft.prototype,function(n,t){var r=Wt[t];if(r){var e=r.name;(wo[e]||(wo[e]=[])).push({name:t,func:r})}}),wo[te(null,A).name]=[{name:"wrapper",func:null}],Ft.prototype.clone=function(){var n=this.__actions__,t=this.__iteratees__,r=this.__views__,e=new Ft(this.__wrapped__);
},Ut.prototype.reverse=function(){if(this.__filtered__){var n=new Ut(this);n.__dir__=-1,n.__filtered__=true}else n=this.clone(),n.__dir__*=-1;return n},Ut.prototype.value=function(){var n=this.__wrapped__.value();if(!Uo(n))return Sr(n,this.__actions__);var t,r=this.__dir__,e=0>r;t=n.length;for(var u=this.__views__,o=0,i=-1,f=u?u.length:0;++i<f;){var a=u[i],c=a.size;switch(a.type){case"drop":o+=c;break;case"dropRight":t-=c;break;case"take":t=ao(t,o+c);break;case"takeRight":o=fo(o,t-c)}}t={start:o,end:t},u=t.start,o=t.end,t=o-u,u=e?o:u-1,o=ao(t,this.__takeCount__),f=(i=this.__iteratees__)?i.length:0,a=0,c=[]; return e.__actions__=n?Bt(n):null,e.__dir__=this.__dir__,e.__filtered__=this.__filtered__,e.__iteratees__=t?Bt(t):null,e.__takeCount__=this.__takeCount__,e.__views__=r?Bt(r):null,e},Ft.prototype.reverse=function(){if(this.__filtered__){var n=new Ft(this);n.__dir__=-1,n.__filtered__=true}else n=this.clone(),n.__dir__*=-1;return n},Ft.prototype.value=function(){var n=this.__wrapped__.value();if(!si(n))return Rr(n,this.__actions__);var t,r=this.__dir__,e=0>r;t=n.length;for(var u=this.__views__,o=0,i=-1,f=u?u.length:0;++i<f;){var a=u[i],c=a.size;
n:for(;t--&&a<o;){for(var u=u+r,l=-1,s=n[u];++l<f;){var p=i[l],h=p.iteratee,_=p.type;if(_==N){if(p.done&&(e?u>p.index:u<p.index)&&(p.count=0,p.done=false),p.index=u,!(p.done||(_=p.limit,p.done=-1<_?p.count++>=_:!h(s))))continue n}else if(p=h(s),_==F)s=p;else if(!p){if(_==U)continue n;break n}}c[a++]=s}return c},Tt.prototype.chain=function(){return Re(this)},Tt.prototype.commit=function(){return new Nt(this.value(),this.__chain__)},Tt.prototype.plant=function(n){for(var t,r=this;r instanceof St;){var e=ve(r); switch(a.type){case"drop":o+=c;break;case"dropRight":t-=c;break;case"take":t=io(t,o+c);break;case"takeRight":o=oo(o,t-c)}}t={start:o,end:t},u=t.start,o=t.end,t=o-u,u=e?o:u-1,o=io(t,this.__takeCount__),f=(i=this.__iteratees__)?i.length:0,a=0,c=[];n:for(;t--&&a<o;){for(var u=u+r,l=-1,p=n[u];++l<f;){var s=i[l],h=s.iteratee,_=s.type;if(_==F){if(s.done&&(e?u>s.index:u<s.index)&&(s.count=0,s.done=false),s.index=u,!(s.done||(_=s.limit,s.done=-1<_?s.count++>=_:!h(p))))continue n}else if(s=h(p),_==$)p=s;else if(!s){if(_==N)continue n;
t?u.__wrapped__=e:t=e;var u=e,r=r.__wrapped__}return u.__wrapped__=n,t},Tt.prototype.reverse=function(){var n=this.__wrapped__;return n instanceof Ut?(this.__actions__.length&&(n=new Ut(this)),new Nt(n.reverse(),this.__chain__)):this.thru(function(n){return n.reverse()})},Tt.prototype.toString=function(){return this.value()+""},Tt.prototype.run=Tt.prototype.toJSON=Tt.prototype.valueOf=Tt.prototype.value=function(){return Sr(this.__wrapped__,this.__actions__)},Tt.prototype.collect=Tt.prototype.map,Tt.prototype.head=Tt.prototype.first,Tt.prototype.select=Tt.prototype.filter,Tt.prototype.tail=Tt.prototype.rest,Tt break n}}c[a++]=p}return c},Wt.prototype.chain=function(){return Ne(this)},Wt.prototype.commit=function(){return new Ut(this.value(),this.__chain__)},Wt.prototype.plant=function(n){for(var t,r=this;r instanceof Tt;){var e=Ee(r);t?u.__wrapped__=e:t=e;var u=e,r=r.__wrapped__}return u.__wrapped__=n,t},Wt.prototype.reverse=function(){var n=this.__wrapped__;return n instanceof Ft?(this.__actions__.length&&(n=new Ft(this)),new Ut(n.reverse(),this.__chain__)):this.thru(function(n){return n.reverse()})},Wt.prototype.toString=function(){return this.value()+""
}var m,b="3.5.0",w=1,x=2,A=4,j=8,k=16,E=32,R=64,I=128,O=256,C=30,W="...",T=150,S=16,N=0,U=1,F=2,$="Expected a function",L="__lodash_placeholder__",B="[object Arguments]",z="[object Array]",D="[object Boolean]",M="[object Date]",q="[object Error]",P="[object Function]",K="[object Number]",V="[object Object]",Y="[object RegExp]",Z="[object String]",G="[object ArrayBuffer]",J="[object Float32Array]",X="[object Float64Array]",H="[object Int8Array]",Q="[object Int16Array]",nt="[object Int32Array]",tt="[object Uint8Array]",rt="[object Uint8ClampedArray]",et="[object Uint16Array]",ut="[object Uint32Array]",ot=/\b__p\+='';/g,it=/\b(__p\+=)''\+/g,ft=/(__e\(.*?\)|\b__t\))\+'';/g,at=/&(?:amp|lt|gt|quot|#39|#96);/g,ct=/[&<>"'`]/g,lt=RegExp(at.source),st=RegExp(ct.source),pt=/<%-([\s\S]+?)%>/g,ht=/<%([\s\S]+?)%>/g,_t=/<%=([\s\S]+?)%>/g,gt=/\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g,vt=/\w*$/,yt=/^\s*function[ \n\r\t]+\w/,dt=/^0[xX]/,mt=/^\[object .+?Constructor\]$/,bt=/[\xc0-\xd6\xd8-\xde\xdf-\xf6\xf8-\xff]/g,wt=/($^)/,xt=/[.*+?^${}()|[\]\/\\]/g,At=RegExp(xt.source),jt=/\bthis\b/,kt=/['\n\r\u2028\u2029\\]/g,Et=RegExp("[A-Z\\xc0-\\xd6\\xd8-\\xde]+(?=[A-Z\\xc0-\\xd6\\xd8-\\xde][a-z\\xdf-\\xf6\\xf8-\\xff]+)|[A-Z\\xc0-\\xd6\\xd8-\\xde]?[a-z\\xdf-\\xf6\\xf8-\\xff]+|[A-Z\\xc0-\\xd6\\xd8-\\xde]+|[0-9]+","g"),Rt=" \t\x0b\f\xa0\ufeff\n\r\u2028\u2029\u1680\u180e\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000",It="Array ArrayBuffer Date Error Float32Array Float64Array Function Int8Array Int16Array Int32Array Math Number Object RegExp Set String _ clearTimeout document isFinite parseInt setTimeout TypeError Uint8Array Uint8ClampedArray Uint16Array Uint32Array WeakMap window WinRTError".split(" "),Ot={}; },Wt.prototype.run=Wt.prototype.toJSON=Wt.prototype.valueOf=Wt.prototype.value=function(){return Rr(this.__wrapped__,this.__actions__)},Wt.prototype.collect=Wt.prototype.map,Wt.prototype.head=Wt.prototype.first,Wt.prototype.select=Wt.prototype.filter,Wt.prototype.tail=Wt.prototype.rest,Wt}var w,b="3.6.0",x=1,A=2,j=4,k=8,E=16,I=32,O=64,R=128,C=256,S=30,W="...",T=150,U=16,F=0,N=1,$=2,L="Expected a function",B="__lodash_placeholder__",z="[object Arguments]",M="[object Array]",D="[object Boolean]",P="[object Date]",q="[object Error]",K="[object Function]",V="[object Number]",Y="[object Object]",Z="[object RegExp]",G="[object String]",J="[object ArrayBuffer]",X="[object Float32Array]",H="[object Float64Array]",Q="[object Int8Array]",nt="[object Int16Array]",tt="[object Int32Array]",rt="[object Uint8Array]",et="[object Uint8ClampedArray]",ut="[object Uint16Array]",ot="[object Uint32Array]",it=/\b__p\+='';/g,ft=/\b(__p\+=)''\+/g,at=/(__e\(.*?\)|\b__t\))\+'';/g,ct=/&(?:amp|lt|gt|quot|#39|#96);/g,lt=/[&<>"'`]/g,pt=RegExp(ct.source),st=RegExp(lt.source),ht=/<%-([\s\S]+?)%>/g,_t=/<%([\s\S]+?)%>/g,vt=/<%=([\s\S]+?)%>/g,gt=/[\u0300-\u036f\ufe20-\ufe23]/g,yt=/\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g,dt=/\w*$/,mt=/^0[xX]/,wt=/^\[object .+?Constructor\]$/,bt=/[\xc0-\xd6\xd8-\xde\xdf-\xf6\xf8-\xff]/g,xt=/($^)/,At=/[.*+?^${}()|[\]\/\\]/g,jt=RegExp(At.source),kt=/['\n\r\u2028\u2029\\]/g,Et=RegExp("[A-Z\\xc0-\\xd6\\xd8-\\xde]+(?=[A-Z\\xc0-\\xd6\\xd8-\\xde][a-z\\xdf-\\xf6\\xf8-\\xff]+)|[A-Z\\xc0-\\xd6\\xd8-\\xde]?[a-z\\xdf-\\xf6\\xf8-\\xff]+|[A-Z\\xc0-\\xd6\\xd8-\\xde]+|[0-9]+","g"),It=" \t\x0b\f\xa0\ufeff\n\r\u2028\u2029\u1680\u180e\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000",Ot="Array ArrayBuffer Date Error Float32Array Float64Array Function Int8Array Int16Array Int32Array Math Number Object RegExp Set String _ clearTimeout document isFinite parseInt setTimeout TypeError Uint8Array Uint8ClampedArray Uint16Array Uint32Array WeakMap window".split(" "),Rt={};
Ot[J]=Ot[X]=Ot[H]=Ot[Q]=Ot[nt]=Ot[tt]=Ot[rt]=Ot[et]=Ot[ut]=true,Ot[B]=Ot[z]=Ot[G]=Ot[D]=Ot[M]=Ot[q]=Ot[P]=Ot["[object Map]"]=Ot[K]=Ot[V]=Ot[Y]=Ot["[object Set]"]=Ot[Z]=Ot["[object WeakMap]"]=false;var Ct={};Ct[B]=Ct[z]=Ct[G]=Ct[D]=Ct[M]=Ct[J]=Ct[X]=Ct[H]=Ct[Q]=Ct[nt]=Ct[K]=Ct[V]=Ct[Y]=Ct[Z]=Ct[tt]=Ct[rt]=Ct[et]=Ct[ut]=true,Ct[q]=Ct[P]=Ct["[object Map]"]=Ct["[object Set]"]=Ct["[object WeakMap]"]=false;var Wt={leading:false,maxWait:0,trailing:false},Tt={"\xc0":"A","\xc1":"A","\xc2":"A","\xc3":"A","\xc4":"A","\xc5":"A","\xe0":"a","\xe1":"a","\xe2":"a","\xe3":"a","\xe4":"a","\xe5":"a","\xc7":"C","\xe7":"c","\xd0":"D","\xf0":"d","\xc8":"E","\xc9":"E","\xca":"E","\xcb":"E","\xe8":"e","\xe9":"e","\xea":"e","\xeb":"e","\xcc":"I","\xcd":"I","\xce":"I","\xcf":"I","\xec":"i","\xed":"i","\xee":"i","\xef":"i","\xd1":"N","\xf1":"n","\xd2":"O","\xd3":"O","\xd4":"O","\xd5":"O","\xd6":"O","\xd8":"O","\xf2":"o","\xf3":"o","\xf4":"o","\xf5":"o","\xf6":"o","\xf8":"o","\xd9":"U","\xda":"U","\xdb":"U","\xdc":"U","\xf9":"u","\xfa":"u","\xfb":"u","\xfc":"u","\xdd":"Y","\xfd":"y","\xff":"y","\xc6":"Ae","\xe6":"ae","\xde":"Th","\xfe":"th","\xdf":"ss"},St={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;","`":"&#96;"},Nt={"&amp;":"&","&lt;":"<","&gt;":">","&quot;":'"',"&#39;":"'","&#96;":"`"},Ut={"function":true,object:true},Ft={"\\":"\\","'":"'","\n":"n","\r":"r","\u2028":"u2028","\u2029":"u2029"},$t=Ut[typeof exports]&&exports&&!exports.nodeType&&exports,Lt=Ut[typeof module]&&module&&!module.nodeType&&module,Ut=Ut[typeof window]&&window,Bt=Lt&&Lt.exports===$t&&$t,zt=$t&&Lt&&typeof global=="object"&&global||Ut!==(this&&this.window)&&Ut||this,Dt=d(); Rt[X]=Rt[H]=Rt[Q]=Rt[nt]=Rt[tt]=Rt[rt]=Rt[et]=Rt[ut]=Rt[ot]=true,Rt[z]=Rt[M]=Rt[J]=Rt[D]=Rt[P]=Rt[q]=Rt[K]=Rt["[object Map]"]=Rt[V]=Rt[Y]=Rt[Z]=Rt["[object Set]"]=Rt[G]=Rt["[object WeakMap]"]=false;var Ct={};Ct[z]=Ct[M]=Ct[J]=Ct[D]=Ct[P]=Ct[X]=Ct[H]=Ct[Q]=Ct[nt]=Ct[tt]=Ct[V]=Ct[Y]=Ct[Z]=Ct[G]=Ct[rt]=Ct[et]=Ct[ut]=Ct[ot]=true,Ct[q]=Ct[K]=Ct["[object Map]"]=Ct["[object Set]"]=Ct["[object WeakMap]"]=false;var St={leading:false,maxWait:0,trailing:false},Wt={"\xc0":"A","\xc1":"A","\xc2":"A","\xc3":"A","\xc4":"A","\xc5":"A","\xe0":"a","\xe1":"a","\xe2":"a","\xe3":"a","\xe4":"a","\xe5":"a","\xc7":"C","\xe7":"c","\xd0":"D","\xf0":"d","\xc8":"E","\xc9":"E","\xca":"E","\xcb":"E","\xe8":"e","\xe9":"e","\xea":"e","\xeb":"e","\xcc":"I","\xcd":"I","\xce":"I","\xcf":"I","\xec":"i","\xed":"i","\xee":"i","\xef":"i","\xd1":"N","\xf1":"n","\xd2":"O","\xd3":"O","\xd4":"O","\xd5":"O","\xd6":"O","\xd8":"O","\xf2":"o","\xf3":"o","\xf4":"o","\xf5":"o","\xf6":"o","\xf8":"o","\xd9":"U","\xda":"U","\xdb":"U","\xdc":"U","\xf9":"u","\xfa":"u","\xfb":"u","\xfc":"u","\xdd":"Y","\xfd":"y","\xff":"y","\xc6":"Ae","\xe6":"ae","\xde":"Th","\xfe":"th","\xdf":"ss"},Tt={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;","`":"&#96;"},Ut={"&amp;":"&","&lt;":"<","&gt;":">","&quot;":'"',"&#39;":"'","&#96;":"`"},Ft={"function":true,object:true},Nt={"\\":"\\","'":"'","\n":"n","\r":"r","\u2028":"u2028","\u2029":"u2029"},$t=Ft[typeof exports]&&exports&&!exports.nodeType&&exports,Lt=Ft[typeof module]&&module&&!module.nodeType&&module,Bt=Ft[typeof self]&&self&&self.Object&&self,Ft=Ft[typeof window]&&window&&window.Object&&window,zt=Lt&&Lt.exports===$t&&$t,Mt=$t&&Lt&&typeof global=="object"&&global||Ft!==(this&&this.window)&&Ft||Bt||this,Dt=m();
typeof define=="function"&&typeof define.amd=="object"&&define.amd?(zt._=Dt, define(function(){return Dt})):$t&&Lt?Bt?(Lt.exports=Dt)._=Dt:$t._=Dt:zt._=Dt}).call(this); typeof define=="function"&&typeof define.amd=="object"&&define.amd?(Mt._=Dt, define(function(){return Dt})):$t&&Lt?zt?(Lt.exports=Dt)._=Dt:$t._=Dt:Mt._=Dt}).call(this);

File diff suppressed because it is too large Load Diff

View File

@@ -1,6 +1,6 @@
{ {
"name": "lodash", "name": "lodash",
"version": "3.5.0", "version": "3.6.0",
"main": "lodash.src.js", "main": "lodash.src.js",
"private": true, "private": true,
"devDependencies": { "devDependencies": {

View File

@@ -9,17 +9,28 @@
/** Used as the `Set#toString` return value. */ /** Used as the `Set#toString` return value. */
var nativeString = String(Object.prototype.toString).replace(/toString/g, 'Set'); var nativeString = String(Object.prototype.toString).replace(/toString/g, 'Set');
/** Used as a reference to the global object. */
var root = (objectTypes[typeof window] && window) || this;
/** Detect free variable `exports`. */ /** Detect free variable `exports`. */
var freeExports = objectTypes[typeof exports] && exports && !exports.nodeType && exports; var freeExports = objectTypes[typeof exports] && exports && !exports.nodeType && exports;
/** Detect free variable `global` from Node.js or Browserified code and use it as `root`. */ /** Detect free variable `module`. */
var freeGlobal = objectTypes[typeof global] && global; var freeModule = objectTypes[typeof module] && module && !module.nodeType && module;
if (freeGlobal && (freeGlobal.global === freeGlobal || freeGlobal.window === freeGlobal || freeGlobal.self === freeGlobal)) {
root = freeGlobal; /** Detect free variable `global` from Node.js. */
} var freeGlobal = freeExports && freeModule && typeof global == 'object' && global;
/** Detect free variable `self`. */
var freeSelf = objectTypes[typeof self] && self && self.Object && self;
/** Detect free variable `window`. */
var freeWindow = objectTypes[typeof window] && window && window.Object && window;
/**
* Used as a reference to the global object.
*
* The `this` value is used if it is the global object to avoid Greasemonkey's
* restricted `window` object, otherwise the `window` object is used.
*/
var root = freeGlobal || ((freeWindow !== (this && this.window)) && freeWindow) || freeSelf || this;
/*--------------------------------------------------------------------------*/ /*--------------------------------------------------------------------------*/

View File

@@ -9,17 +9,28 @@
/** Used as the `WeakMap#toString` return value. */ /** Used as the `WeakMap#toString` return value. */
var nativeString = String(Object.prototype.toString).replace(/toString/g, 'WeakMap'); var nativeString = String(Object.prototype.toString).replace(/toString/g, 'WeakMap');
/** Used as a reference to the global object. */
var root = (objectTypes[typeof window] && window) || this;
/** Detect free variable `exports`. */ /** Detect free variable `exports`. */
var freeExports = objectTypes[typeof exports] && exports && !exports.nodeType && exports; var freeExports = objectTypes[typeof exports] && exports && !exports.nodeType && exports;
/** Detect free variable `global` from Node.js or Browserified code and use it as `root`. */ /** Detect free variable `module`. */
var freeGlobal = objectTypes[typeof global] && global; var freeModule = objectTypes[typeof module] && module && !module.nodeType && module;
if (freeGlobal && (freeGlobal.global === freeGlobal || freeGlobal.window === freeGlobal || freeGlobal.self === freeGlobal)) {
root = freeGlobal; /** Detect free variable `global` from Node.js. */
} var freeGlobal = freeExports && freeModule && typeof global == 'object' && global;
/** Detect free variable `self`. */
var freeSelf = objectTypes[typeof self] && self && self.Object && self;
/** Detect free variable `window`. */
var freeWindow = objectTypes[typeof window] && window && window.Object && window;
/**
* Used as a reference to the global object.
*
* The `this` value is used if it is the global object to avoid Greasemonkey's
* restricted `window` object, otherwise the `window` object is used.
*/
var root = freeGlobal || ((freeWindow !== (this && this.window)) && freeWindow) || freeSelf || this;
/*--------------------------------------------------------------------------*/ /*--------------------------------------------------------------------------*/

View File

@@ -108,8 +108,8 @@ var platforms = [
['Windows 8.1', 'firefox', '36'], ['Windows 8.1', 'firefox', '36'],
['Windows 8.1', 'firefox', '35'], ['Windows 8.1', 'firefox', '35'],
['Windows 8.1', 'firefox', '20'], ['Windows 8.1', 'firefox', '20'],
['Windows 8.1', 'chrome', '41'],
['Windows 8.1', 'chrome', '40'], ['Windows 8.1', 'chrome', '40'],
['Windows 8.1', 'chrome', '39'],
['Windows 8.1', 'internet explorer', '11'], ['Windows 8.1', 'internet explorer', '11'],
['Windows 8', 'internet explorer', '10'], ['Windows 8', 'internet explorer', '10'],
['Windows 7', 'internet explorer', '9'], ['Windows 7', 'internet explorer', '9'],
@@ -543,9 +543,6 @@ function Job(properties) {
EventEmitter.call(this); EventEmitter.call(this);
this.options = {}; this.options = {};
this.retries = maxJobRetries;
this.statusInterval = statusInterval;
_.merge(this, properties); _.merge(this, properties);
_.defaults(this.options, _.cloneDeep(jobOptions)); _.defaults(this.options, _.cloneDeep(jobOptions));
@@ -706,7 +703,6 @@ Job.prototype.stop = function(callback) {
function Tunnel(properties) { function Tunnel(properties) {
EventEmitter.call(this); EventEmitter.call(this);
this.retries = maxTunnelRetries;
_.merge(this, properties); _.merge(this, properties);
var active = [], var active = [],

View File

@@ -54,8 +54,10 @@
params = root.arguments, params = root.arguments,
push = arrayProto.push, push = arrayProto.push,
slice = arrayProto.slice, slice = arrayProto.slice,
Symbol = root.Symbol,
system = root.system, system = root.system,
Uint8Array = root.Uint8Array; Uint8Array = root.Uint8Array,
WeakMap = root.WeakMap;
/** Math helpers. */ /** Math helpers. */
var add = function(x, y) { return x + y; }, var add = function(x, y) { return x + y; },
@@ -233,6 +235,22 @@
'\xef', '\xf0', '\xf1', '\xf2', '\xf3', '\xf4', '\xf5', '\xf6', '\xf8', '\xf9', '\xfa', '\xfb', '\xfc', '\xfd', '\xfe', '\xff' '\xef', '\xf0', '\xf1', '\xf2', '\xf3', '\xf4', '\xf5', '\xf6', '\xf8', '\xf9', '\xfa', '\xfb', '\xfc', '\xfd', '\xfe', '\xff'
]; ];
/** List of combining diacritical marks for spanning multiple characters. */
var comboHalfs = [
'\ufe20', '\ufe21', '\ufe22', '\ufe23'
];
/** List of common combining diacritical marks. */
var comboMarks = [
'\u0300', '\u0301', '\u0302', '\u0303', '\u0304', '\u0305', '\u0306', '\u0307', '\u0308', '\u0309', '\u030a', '\u030b', '\u030c', '\u030d', '\u030e', '\u030f',
'\u0310', '\u0311', '\u0312', '\u0313', '\u0314', '\u0315', '\u0316', '\u0317', '\u0318', '\u0319', '\u031a', '\u031b', '\u031c', '\u031d', '\u031e', '\u031f',
'\u0320', '\u0321', '\u0322', '\u0323', '\u0324', '\u0325', '\u0326', '\u0327', '\u0328', '\u0329', '\u032a', '\u032b', '\u032c', '\u032d', '\u032e', '\u032f',
'\u0330', '\u0331', '\u0332', '\u0333', '\u0334', '\u0335', '\u0336', '\u0337', '\u0338', '\u0339', '\u033a', '\u033b', '\u033c', '\u033d', '\u033e', '\u033f',
'\u0340', '\u0341', '\u0342', '\u0343', '\u0344', '\u0345', '\u0346', '\u0347', '\u0348', '\u0349', '\u034a', '\u034b', '\u034c', '\u034d', '\u034e', '\u034f',
'\u0350', '\u0351', '\u0352', '\u0353', '\u0354', '\u0355', '\u0356', '\u0357', '\u0358', '\u0359', '\u035a', '\u035b', '\u035c', '\u035d', '\u035e', '\u035f',
'\u0360', '\u0361', '\u0362', '\u0363', '\u0364', '\u0365', '\u0366', '\u0367', '\u0368', '\u0369', '\u036a', '\u036b', '\u036c', '\u036d', '\u036e', '\u036f'
];
/** List of `burredLetters` translated to basic latin letters. */ /** List of `burredLetters` translated to basic latin letters. */
var deburredLetters = [ var deburredLetters = [
'A', 'A', 'A', 'A', 'A', 'A', 'Ae', 'C', 'E', 'E', 'E', 'E', 'I', 'I', 'I', 'A', 'A', 'A', 'A', 'A', 'A', 'Ae', 'C', 'E', 'E', 'E', 'E', 'I', 'I', 'I',
@@ -1069,7 +1087,7 @@
deepEqual(capped('a'), ['a']); deepEqual(capped('a'), ['a']);
}); });
test('should work as an iteratee for `_.map`', 1, function() { test('should work as an iteratee for methods like `_.map`', 1, function() {
var funcs = _.map([fn], _.ary), var funcs = _.map([fn], _.ary),
actual = funcs[0]('a', 'b', 'c'); actual = funcs[0]('a', 'b', 'c');
@@ -1880,7 +1898,7 @@
deepEqual(actual, expected); deepEqual(actual, expected);
}); });
test('should work as an iteratee for `_.map`', 1, function() { test('should work as an iteratee for methods like `_.map`', 1, function() {
var actual = _.map([[1, 2], [3, 4]], _.chunk); var actual = _.map([[1, 2], [3, 4]], _.chunk);
deepEqual(actual, [[[1], [2]], [[3], [4]]]); deepEqual(actual, [[[1], [2]], [[3], [4]]]);
}); });
@@ -2102,7 +2120,7 @@
} }
}); });
test('`_.' + methodName + '` should perform a ' + (isDeep ? 'deep' : 'shallow') + ' clone when used as an iteratee for `_.map`', 3, function() { test('`_.' + methodName + '` should perform a ' + (isDeep ? 'deep' : 'shallow') + ' clone when used as an iteratee for methods like `_.map`', 3, function() {
var expected = [{ 'a': [0] }, { 'b': [1] }], var expected = [{ 'a': [0] }, { 'b': [1] }],
actual = _.map(expected, func); actual = _.map(expected, func);
@@ -2220,7 +2238,7 @@
notStrictEqual(func(_.noop), _.noop); notStrictEqual(func(_.noop), _.noop);
}); });
test('`_.' + methodName + '` should return an identity function when no arguments are provided', 2, function() { test('`_.' + methodName + '` should return an identity function when no arguments are provided', 3, function() {
var combined = func(); var combined = func();
try { try {
@@ -2228,9 +2246,37 @@
} catch(e) { } catch(e) {
ok(false, e.message); ok(false, e.message);
} }
strictEqual(combined.length, 0);
notStrictEqual(combined, _.identity); notStrictEqual(combined, _.identity);
}); });
test('`_.' + methodName + '` should support shortcut fusion', 3, function() {
var filterCount = 0,
mapCount = 0;
var map = _.curry(_.rearg(_.ary(_.map, 2), 1, 0), 2),
filter = _.curry(_.rearg(_.ary(_.filter, 2), 1, 0), 2),
take = _.curry(_.rearg(_.ary(_.take, 2), 1, 0), 2);
var partialMap = map(function(value) { mapCount++; return value * value; }),
partialFilter = filter(function(value) { filterCount++; return value % 2 == 0; }),
partialTake = take(2);
var combined = isFlow
? func(partialMap, partialFilter, _.compact, partialTake)
: func(partialTake, _.compact, partialFilter, partialMap);
deepEqual(combined(_.range(100)), [4, 16]);
if (!isNpm && WeakMap && _.support.funcNames) {
strictEqual(filterCount, 5, 'filterCount');
strictEqual(mapCount, 5, 'mapCount');
}
else {
skipTest(2);
}
});
test('`_.' + methodName + '` should return a wrapped value when chaining', 1, function() { test('`_.' + methodName + '` should return a wrapped value when chaining', 1, function() {
if (!isNpm) { if (!isNpm) {
var wrapped = _(_.noop)[methodName](); var wrapped = _(_.noop)[methodName]();
@@ -2450,7 +2496,7 @@
deepEqual(actual, expected); deepEqual(actual, expected);
}); });
test('should work as an iteratee for `_.map`', 1, function() { test('should work as an iteratee for methods like `_.map`', 1, function() {
var array = [{ 'a': 1 }, { 'a': 1 }, { 'a': 1 }], var array = [{ 'a': 1 }, { 'a': 1 }, { 'a': 1 }],
expected = _.map(array, _.constant(true)), expected = _.map(array, _.constant(true)),
objects = _.map(array, _.create); objects = _.map(array, _.create);
@@ -2596,54 +2642,7 @@
} }
}); });
test('should return the function provided when there is no `this` reference', 2, function() { test('should work as an iteratee for methods like `_.map`', 1, function() {
function a() {}
function b() { return this.b; }
var object = {};
if (_.support.funcDecomp) {
strictEqual(_.callback(a, object), a);
notStrictEqual(_.callback(b, object), b);
}
else {
skipTest(2);
}
});
test('should work with bizarro `_.support.funcNames`', 6, function() {
function a() {}
var b = function() {};
function c() {
return this;
}
var object = {},
supportBizarro = lodashBizarro ? lodashBizarro.support : {},
funcDecomp = supportBizarro.funcDecomp,
funcNames = supportBizarro.funcNames;
supportBizarro.funcNames = !supportBizarro.funcNames;
supportBizarro.funcDecomp = true;
_.each([a, b, c], function(fn) {
if (lodashBizarro && _.support.funcDecomp) {
var callback = lodashBizarro.callback(fn, object);
strictEqual(callback(), fn === c ? object : undefined);
strictEqual(callback === fn, _.support.funcNames && fn === a);
}
else {
skipTest(2);
}
});
supportBizarro.funcDecomp = funcDecomp;
supportBizarro.funcNames = funcNames;
});
test('should work as an iteratee for `_.map`', 1, function() {
var fn = function() { return this instanceof Number; }, var fn = function() { return this instanceof Number; },
array = [fn, fn, fn], array = [fn, fn, fn],
callbacks = _.map(array, _.callback), callbacks = _.map(array, _.callback),
@@ -2983,6 +2982,17 @@
} }
}); });
test('`_.sum` should use `_.callback` internally', 1, function() {
if (!isModularize) {
_.callback = getPropB;
strictEqual(_.sum(objects), 1);
_.callback = callback;
}
else {
skipTest();
}
});
test('`_.takeRightWhile` should use `_.callback` internally', 1, function() { test('`_.takeRightWhile` should use `_.callback` internally', 1, function() {
if (!isModularize) { if (!isModularize) {
_.callback = getPropB; _.callback = getPropB;
@@ -3259,7 +3269,7 @@
fn = function(a, b) { return slice.call(arguments); }, fn = function(a, b) { return slice.call(arguments); },
isCurry = methodName == 'curry'; isCurry = methodName == 'curry';
test('`_.' + methodName + '` should work as an iteratee for `_.map`', 2, function() { test('`_.' + methodName + '` should work as an iteratee for methods like `_.map`', 2, function() {
var array = [fn, fn, fn], var array = [fn, fn, fn],
object = { 'a': fn, 'b': fn, 'c': fn }; object = { 'a': fn, 'b': fn, 'c': fn };
@@ -3539,6 +3549,17 @@
deepEqual(actual, operators); deepEqual(actual, operators);
}); });
test('should deburr combining diacritical marks', 1, function() {
var values = comboMarks.concat(comboHalfs),
expected = _.map(values, _.constant('ei'));
var actual = _.map(values, function(chr) {
return _.deburr('e' + chr + 'i');
});
deepEqual(actual, expected);
});
}()); }());
/*--------------------------------------------------------------------------*/ /*--------------------------------------------------------------------------*/
@@ -3740,11 +3761,12 @@
deepEqual(_.difference([1, NaN, 3], largeArray), [1, 3]); deepEqual(_.difference([1, NaN, 3], largeArray), [1, 3]);
}); });
test('should ignore values that are not arrays or `arguments` objects', 3, function() { test('should ignore values that are not arrays or `arguments` objects', 4, function() {
var array = [0, 1, null, 3]; var array = [1, null, 3];
deepEqual(_.difference(array, 3, null, { '0': 1 }), array); deepEqual(_.difference(args, 3, { '0': 1 }), [1, 2, 3]);
deepEqual(_.difference(null, array, null, [2, 1]), [0, null, 3]); deepEqual(_.difference(null, array, 1), []);
deepEqual(_.difference(array, null, args, null), [0, null]); deepEqual(_.difference(array, args, null), [null]);
deepEqual(_.difference('abc', array, 'b'), []);
}); });
}(1, 2, 3)); }(1, 2, 3));
@@ -3783,7 +3805,7 @@
}); });
}); });
test('should work as an iteratee for `_.map`', 1, function() { test('should work as an iteratee for methods like `_.map`', 1, function() {
var array = [[1, 2, 3], [4, 5, 6], [7, 8, 9]], var array = [[1, 2, 3], [4, 5, 6], [7, 8, 9]],
actual = _.map(array, _.drop); actual = _.map(array, _.drop);
@@ -3853,7 +3875,7 @@
}); });
}); });
test('should work as an iteratee for `_.map`', 1, function() { test('should work as an iteratee for methods like `_.map`', 1, function() {
var array = [[1, 2, 3], [4, 5, 6], [7, 8, 9]], var array = [[1, 2, 3], [4, 5, 6], [7, 8, 9]],
actual = _.map(array, _.dropRight); actual = _.map(array, _.dropRight);
@@ -4200,19 +4222,30 @@
QUnit.module('lodash.escapeRegExp'); QUnit.module('lodash.escapeRegExp');
(function() { (function() {
test('should escape values', 1, function() {
var escaped = '\\.\\*\\+\\?\\^\\$\\{\\}\\(\\)\\|\\[\\]\\/\\\\', var escaped = '\\.\\*\\+\\?\\^\\$\\{\\}\\(\\)\\|\\[\\]\\/\\\\',
unescaped = '.*+?^${}()|[\]\/\\'; unescaped = '.*+?^${}()|[\]\/\\';
escaped += escaped; escaped += escaped;
unescaped += unescaped; unescaped += unescaped;
test('should escape values', 1, function() {
strictEqual(_.escapeRegExp(unescaped), escaped); strictEqual(_.escapeRegExp(unescaped), escaped);
}); });
test('should handle strings with nothing to escape', 1, function() { test('should handle strings with nothing to escape', 1, function() {
strictEqual(_.escapeRegExp('abc'), 'abc'); strictEqual(_.escapeRegExp('abc'), 'abc');
}); });
test('should work with `eval` and `Function`', 2, function() {
var string = '[lodash](https://lodash.com/)',
escaped = _.escapeRegExp(string),
regexp = eval('(/' + escaped + '/)');
ok(regexp.test(string));
regexp = Function('return /' + escaped + '/')();
ok(regexp.test(string));
});
}()); }());
/*--------------------------------------------------------------------------*/ /*--------------------------------------------------------------------------*/
@@ -4276,6 +4309,11 @@
deepEqual(actual, expected); deepEqual(actual, expected);
}); });
test('should work as an iteratee for methods like `_.map`', 1, function() {
var actual = _.map([[1]], _.every);
deepEqual(actual, [true]);
});
test('should be aliased', 1, function() { test('should be aliased', 1, function() {
strictEqual(_.all, _.every); strictEqual(_.all, _.every);
}); });
@@ -4419,7 +4457,7 @@
deepEqual(actual, [['a', 2, 3], ['a', 2, 3], ['a', 2, 3], [1, 'a', 'a'], ['a', 2, 3], [1, 2, 3]]); deepEqual(actual, [['a', 2, 3], ['a', 2, 3], ['a', 2, 3], [1, 'a', 'a'], ['a', 2, 3], [1, 2, 3]]);
}); });
test('should work as an iteratee for `_.map`', 1, function() { test('should work as an iteratee for methods like `_.map`', 1, function() {
var array = [[1, 2], [3, 4]], var array = [[1, 2], [3, 4]],
actual = _.map(array, _.fill); actual = _.map(array, _.fill);
@@ -4639,10 +4677,11 @@
test('should return `undefined` when querying empty arrays', 1, function() { test('should return `undefined` when querying empty arrays', 1, function() {
var array = []; var array = [];
array['-1'] = 1; array['-1'] = 1;
strictEqual(_.first(array), undefined); strictEqual(_.first(array), undefined);
}); });
test('should work as an iteratee for `_.map`', 1, function() { test('should work as an iteratee for methods like `_.map`', 1, function() {
var array = [[1, 2, 3], [4, 5, 6], [7, 8, 9]], var array = [[1, 2, 3], [4, 5, 6], [7, 8, 9]],
actual = _.map(array, _.first); actual = _.map(array, _.first);
@@ -4722,7 +4761,7 @@
}); });
}); });
test('should work as an iteratee for `_.map`', 1, function() { test('should work as an iteratee for methods like `_.map`', 1, function() {
var array = [[1, 2, 3], [4, 5, 6], [7, 8, 9]], var array = [[1, 2, 3], [4, 5, 6], [7, 8, 9]],
actual = _.map(array, _.take); actual = _.map(array, _.take);
@@ -4792,7 +4831,7 @@
}); });
}); });
test('should work as an iteratee for `_.map`', 1, function() { test('should work as an iteratee for methods like `_.map`', 1, function() {
var array = [[1, 2, 3], [4, 5, 6], [7, 8, 9]], var array = [[1, 2, 3], [4, 5, 6], [7, 8, 9]],
actual = _.map(array, _.takeRight); actual = _.map(array, _.takeRight);
@@ -5086,7 +5125,7 @@
deepEqual(_.flattenDeep(array), expected); deepEqual(_.flattenDeep(array), expected);
}); });
test('should work as an iteratee for `_.map`', 2, function() { test('should work as an iteratee for methods like `_.map`', 2, function() {
var array = [[[['a']]], [[['b']]]]; var array = [[[['a']]], [[['b']]]];
deepEqual(_.map(array, _.flatten), [[['a']], [['b']]]); deepEqual(_.map(array, _.flatten), [[['a']], [['b']]]);
@@ -5756,7 +5795,7 @@
deepEqual(actual, expected); deepEqual(actual, expected);
}); });
test('`_.' + methodName + '` should work as an iteratee for `_.reduce`', 1, function() { test('`_.' + methodName + '` should work as an iteratee for methods like `_.reduce`', 1, function() {
var array = [{ 'a': 1 }, { 'b': 2 }, { 'c': 3 }], var array = [{ 'a': 1 }, { 'b': 2 }, { 'c': 3 }],
expected = { 'a': 1, 'b': 2, 'c': 3 }; expected = { 'a': 1, 'b': 2, 'c': 3 };
@@ -6203,6 +6242,13 @@
strictEqual(_.includes([-0], 0), true); strictEqual(_.includes([-0], 0), true);
}); });
test('should work as an iteratee for methods like `_.reduce`', 1, function() {
var array1 = [1, 2, 3],
array2 = [2, 3, 1];
ok(_.every(array1, _.partial(_.includes, array2)));
});
test('should be aliased', 2, function() { test('should be aliased', 2, function() {
strictEqual(_.contains, _.includes); strictEqual(_.contains, _.includes);
strictEqual(_.include, _.includes); strictEqual(_.include, _.includes);
@@ -6454,7 +6500,7 @@
deepEqual(_.initial([]), []); deepEqual(_.initial([]), []);
}); });
test('should work as an iteratee for `_.map`', 1, function() { test('should work as an iteratee for methods like `_.map`', 1, function() {
var array = [[1, 2, 3], [4, 5, 6], [7, 8, 9]], var array = [[1, 2, 3], [4, 5, 6], [7, 8, 9]],
actual = _.map(array, _.initial); actual = _.map(array, _.initial);
@@ -6628,7 +6674,7 @@
ok(_.isEqual(_.invert(object, true), { 'hasOwnProperty': ['a'], 'constructor': ['b'] })); ok(_.isEqual(_.invert(object, true), { 'hasOwnProperty': ['a'], 'constructor': ['b'] }));
}); });
test('should work as an iteratee for `_.map`', 2, function() { test('should work as an iteratee for methods like `_.map`', 2, function() {
var regular = { 'a': 1, 'b': 2, 'c': 1 }, var regular = { 'a': 1, 'b': 2, 'c': 1 },
inverted = { '1': 'c', '2': 'b' }; inverted = { '1': 'c', '2': 'b' };
@@ -8336,7 +8382,8 @@
}); });
test('should return `false` for non-objects', 1, function() { test('should return `false` for non-objects', 1, function() {
var values = falsey.concat(true, 1, 'a'), var symbol = (Symbol || noop)(),
values = falsey.concat(true, 1, 'a', symbol),
expected = _.map(values, _.constant(false)); expected = _.map(values, _.constant(false));
var actual = _.map(values, function(value, index) { var actual = _.map(values, function(value, index) {
@@ -8921,10 +8968,11 @@
test('should return `undefined` when querying empty arrays', 1, function() { test('should return `undefined` when querying empty arrays', 1, function() {
var array = []; var array = [];
array['-1'] = 1; array['-1'] = 1;
strictEqual(_.last([]), undefined); strictEqual(_.last([]), undefined);
}); });
test('should work as an iteratee for `_.map`', 1, function() { test('should work as an iteratee for methods like `_.map`', 1, function() {
var array = [[1, 2, 3], [4, 5, 6], [7, 8, 9]], var array = [[1, 2, 3], [4, 5, 6], [7, 8, 9]],
actual = _.map(array, _.last); actual = _.map(array, _.last);
@@ -9040,7 +9088,8 @@
QUnit.module('indexOf methods'); QUnit.module('indexOf methods');
_.each(['indexOf', 'lastIndexOf'], function(methodName) { _.each(['indexOf', 'lastIndexOf'], function(methodName) {
var func = _[methodName]; var func = _[methodName],
isIndexOf = methodName == 'indexOf';
test('`_.' + methodName + '` should accept a falsey `array` argument', 1, function() { test('`_.' + methodName + '` should accept a falsey `array` argument', 1, function() {
var expected = _.map(falsey, _.constant(-1)); var expected = _.map(falsey, _.constant(-1));
@@ -9073,9 +9122,12 @@
strictEqual(func(array, 0, true), -1); strictEqual(func(array, 0, true), -1);
}); });
test('`_.' + methodName + '` should match `NaN`', 2, function() { test('`_.' + methodName + '` should match `NaN`', 4, function() {
strictEqual(func([1, NaN, 3], NaN), 1); var array = [1, NaN, 3, NaN, 5, NaN];
strictEqual(func([1, 3, NaN], NaN, true), 2); strictEqual(func(array, NaN), isIndexOf ? 1 : 5);
strictEqual(func(array, NaN, 2), isIndexOf ? 3 : 1);
strictEqual(func(array, NaN, -2), isIndexOf ? 5 : 3);
strictEqual(func([1, 2, NaN, NaN], NaN, true), isIndexOf ? 2 : 3);
}); });
test('`_.' + methodName + '` should match `-0` as `0`', 1, function() { test('`_.' + methodName + '` should match `-0` as `0`', 1, function() {
@@ -9459,6 +9511,35 @@
deepEqual(actual, expected); deepEqual(actual, expected);
}); });
test('should match inherited `value` properties', 1, function() {
function Foo() { this.a = 1; }
Foo.prototype.b = 2;
var object = { 'a': new Foo },
matches = _.matches({ 'a': { 'b': 2 } });
strictEqual(matches(object), true);
});
test('should match properties when `value` is a function', 1, function() {
function Foo() {}
Foo.a = function() {};
Foo.a.b = 1;
Foo.a.c = 2;
var matches = _.matches({ 'a': { 'b': 1 } });
strictEqual(matches(Foo), true);
});
test('should match properties when `value` is not a plain object', 1, function() {
function Foo(object) { _.assign(this, object); }
var object = new Foo({ 'a': new Foo({ 'b': 1, 'c': 2 }) }),
matches = _.matches({ 'a': { 'b': 1 } });
strictEqual(matches(object), true);
});
test('should not match by inherited `source` properties', 1, function() { test('should not match by inherited `source` properties', 1, function() {
function Foo() { this.a = 1; } function Foo() { this.a = 1; }
Foo.prototype.b = 2; Foo.prototype.b = 2;
@@ -9609,7 +9690,7 @@
objects = [{ 'a': 1 }, { 'a': 1, 'b': 1 }, { 'a': 1, 'b': undefined }], objects = [{ 'a': 1 }, { 'a': 1, 'b': 1 }, { 'a': 1, 'b': undefined }],
actual = _.map(objects, matches); actual = _.map(objects, matches);
deepEqual(actual, [true, false, true]); deepEqual(actual, [false, false, true]);
matches = _.matchesProperty('a', { 'b': undefined }); matches = _.matchesProperty('a', { 'b': undefined });
objects = [{ 'a': { 'a': 1 } }, { 'a': { 'a': 1, 'b': 1 } }, { 'a': { 'a': 1, 'b': undefined } }]; objects = [{ 'a': { 'a': 1 } }, { 'a': { 'a': 1, 'b': 1 } }, { 'a': { 'a': 1, 'b': undefined } }];
@@ -9618,7 +9699,36 @@
deepEqual(actual, [false, false, true]); deepEqual(actual, [false, false, true]);
}); });
test('should not match by inherited `value` properties', 1, function() { test('should match inherited `value` properties', 1, function() {
function Foo() { this.a = 1; }
Foo.prototype.b = 2;
var object = { 'a': new Foo },
matches = _.matchesProperty('a', { 'b': 2 });
strictEqual(matches(object), true);
});
test('should match properties when `value` is a function', 1, function() {
function Foo() {}
Foo.a = function() {};
Foo.a.b = 1;
Foo.a.c = 2;
var matches = _.matchesProperty('a', { 'b': 1 });
strictEqual(matches(Foo), true);
});
test('should match properties when `value` is not a plain object', 1, function() {
function Foo(object) { _.assign(this, object); }
var object = new Foo({ 'a': new Foo({ 'b': 1, 'c': 2 }) }),
matches = _.matchesProperty('a', { 'b': 1 });
strictEqual(matches(object), true);
});
test('should not match inherited `source` properties', 1, function() {
function Foo() { this.a = 1; } function Foo() { this.a = 1; }
Foo.prototype.b = 2; Foo.prototype.b = 2;
@@ -9982,8 +10092,10 @@
}); });
test('should work with four arguments', 1, function() { test('should work with four arguments', 1, function() {
var expected = { 'a': 4 }; var expected = { 'a': 4 },
deepEqual(_.merge({ 'a': 1 }, { 'a': 2 }, { 'a': 3 }, expected), expected); actual = _.merge({ 'a': 1 }, { 'a': 2 }, { 'a': 3 }, expected);
deepEqual(actual, expected);
}); });
test('should assign `null` values', 1, function() { test('should assign `null` values', 1, function() {
@@ -9996,7 +10108,7 @@
deepEqual(actual, { 'a': 1 }); deepEqual(actual, { 'a': 1 });
}); });
test('should not not error on DOM elements', 1, function() { test('should not error on DOM elements', 1, function() {
var object1 = { 'el': document && document.createElement('div') }, var object1 = { 'el': document && document.createElement('div') },
object2 = { 'el': document && document.createElement('div') }, object2 = { 'el': document && document.createElement('div') },
pairs = [[{}, object1], [object1, object2]], pairs = [[{}, object1], [object1, object2]],
@@ -10025,6 +10137,16 @@
deepEqual(actual, expected); deepEqual(actual, expected);
}); });
test('should convert values to an array when merging with arrays of `source`', 2, function() {
var object = { 'a': { '1': 'y', 'b': 'z', 'length': 2 } },
actual = _.merge(object, { 'a': ['x'] });
deepEqual(actual, { 'a': ['x', 'y'] });
actual = _.merge({ 'a': {} }, { 'a': [] });
deepEqual(actual, { 'a': [] });
});
test('should work with a function `object` value', 2, function() { test('should work with a function `object` value', 2, function() {
function Foo() {} function Foo() {}
@@ -10206,7 +10328,7 @@
strictEqual(func(array), isMax ? 499999 : 0); strictEqual(func(array), isMax ? 499999 : 0);
}); });
test('`_.' + methodName + '` should work as an iteratee for `_.map`', 3, function() { test('`_.' + methodName + '` should work as an iteratee for methods like `_.map`', 3, function() {
var arrays = [[2, 1], [5, 4], [7, 8]], var arrays = [[2, 1], [5, 4], [7, 8]],
objects = [{ 'a': 2, 'b': 1 }, { 'a': 5, 'b': 4 }, { 'a': 7, 'b': 8 }], objects = [{ 'a': 2, 'b': 1 }, { 'a': 5, 'b': 4 }, { 'a': 7, 'b': 8 }],
expected = isMax ? [2, 5, 8] : [1, 4, 7]; expected = isMax ? [2, 5, 8] : [1, 4, 7];
@@ -10857,7 +10979,7 @@
strictEqual(_.parseInt('0x20', object), 32); strictEqual(_.parseInt('0x20', object), 32);
}); });
test('should work as an iteratee for `_.map`', 2, function() { test('should work as an iteratee for methods like `_.map`', 2, function() {
var strings = _.map(['6', '08', '10'], Object), var strings = _.map(['6', '08', '10'], Object),
actual = _.map(strings, _.parseInt); actual = _.map(strings, _.parseInt);
@@ -11707,7 +11829,7 @@
ok(actual % 1 && actual >= 2 && actual <= 4); ok(actual % 1 && actual >= 2 && actual <= 4);
}); });
test('should work as an iteratee for `_.map`', 1, function() { test('should work as an iteratee for methods like `_.map`', 1, function() {
var array = [1, 2, 3], var array = [1, 2, 3],
expected = _.map(array, _.constant(true)), expected = _.map(array, _.constant(true)),
randoms = _.map(array, _.random); randoms = _.map(array, _.random);
@@ -11766,7 +11888,7 @@
deepEqual(actual, [[0], [0], [0], [], []]); deepEqual(actual, [[0], [0], [0], [], []]);
}); });
test('should work as an iteratee for `_.map`', 2, function() { test('should work as an iteratee for methods like `_.map`', 2, function() {
var array = [1, 2, 3], var array = [1, 2, 3],
object = { 'a': 1, 'b': 2, 'c': 3 }, object = { 'a': 1, 'b': 2, 'c': 3 },
expected = [[0], [0, 1], [0, 1, 2]]; expected = [[0], [0, 1], [0, 1, 2]];
@@ -12394,7 +12516,7 @@
deepEqual(_.rest([]), []); deepEqual(_.rest([]), []);
}); });
test('should work as an iteratee for `_.map`', 1, function() { test('should work as an iteratee for methods like `_.map`', 1, function() {
var array = [[1, 2, 3], [4, 5, 6], [7, 8, 9]], var array = [[1, 2, 3], [4, 5, 6], [7, 8, 9]],
actual = _.map(array, _.rest); actual = _.map(array, _.rest);
@@ -12460,6 +12582,60 @@
/*--------------------------------------------------------------------------*/ /*--------------------------------------------------------------------------*/
QUnit.module('lodash.restParam');
(function() {
function fn(a, b, c) {
return slice.call(arguments);
}
test('should apply a rest parameter to `func`', 1, function() {
var rp = _.restParam(fn);
deepEqual(rp(1, 2, 3, 4), [1, 2, [3, 4]]);
});
test('should work with `start`', 1, function() {
var rp = _.restParam(fn, 1);
deepEqual(rp(1, 2, 3, 4), [1, [2, 3, 4]]);
});
test('should treat `start` as `0` for negative or `NaN` values', 1, function() {
var values = [-1, NaN, 'x'],
expected = _.map(values, _.constant([[1, 2, 3, 4]]));
var actual = _.map(values, function(value) {
var rp = _.restParam(fn, value);
return rp(1, 2, 3, 4);
});
deepEqual(actual, expected);
});
test('should use an empty array when `start` is not reached', 1, function() {
var rp = _.restParam(fn);
deepEqual(rp(1), [1, undefined, []]);
});
test('should work on functions with more than 3 params', 1, function() {
var rp = _.restParam(function(a, b, c, d) {
return slice.call(arguments);
});
deepEqual(rp(1, 2, 3, 4, 5), [1, 2, 3, [4, 5]]);
});
test('should not set a `this` binding', 1, function() {
var rp = _.restParam(function(x, y) {
return this[x] + this[y[0]];
});
var object = { 'rp': rp, 'x': 4, 'y': 2 };
strictEqual(object.rp('x', 'y'), 6);
});
}());
/*--------------------------------------------------------------------------*/
QUnit.module('lodash.runInContext'); QUnit.module('lodash.runInContext');
(function() { (function() {
@@ -12572,7 +12748,7 @@
ok(actual.length == 2 && actual[0] !== actual[1] && _.includes(array, actual[0]) && _.includes(array, actual[1])); ok(actual.length == 2 && actual[0] !== actual[1] && _.includes(array, actual[0]) && _.includes(array, actual[1]));
}); });
test('should work as an iteratee for `_.map`', 2, function() { test('should work as an iteratee for methods like `_.map`', 2, function() {
var array1 = [[1, 2, 3], [4, 5, 6], [7, 8, 9]], var array1 = [[1, 2, 3], [4, 5, 6], [7, 8, 9]],
array2 = ['abc', 'def', 'ghi']; array2 = ['abc', 'def', 'ghi'];
@@ -12847,7 +13023,7 @@
deepEqual(actual, [[1], [1], [1], [2, 3], [1], []]); deepEqual(actual, [[1], [1], [1], [2, 3], [1], []]);
}); });
test('should work as an iteratee for `_.map`', 2, function() { test('should work as an iteratee for methods like `_.map`', 2, function() {
var array = [[1], [2, 3]], var array = [[1], [2, 3]],
actual = _.map(array, _.slice); actual = _.map(array, _.slice);
@@ -12954,6 +13130,11 @@
deepEqual(actual, expected); deepEqual(actual, expected);
}); });
test('should work as an iteratee for methods like `_.map`', 1, function() {
var actual = _.map([[1]], _.some);
deepEqual(actual, [true]);
});
test('should be aliased', 1, function() { test('should be aliased', 1, function() {
strictEqual(_.any, _.some); strictEqual(_.any, _.some);
}); });
@@ -13068,7 +13249,7 @@
deepEqual(actual, [objects[0], objects[2], objects[1], objects[3]]); deepEqual(actual, [objects[0], objects[2], objects[1], objects[3]]);
}); });
test('should work as an iteratee for `_.map`', 1, function() { test('should work as an iteratee for methods like `_.map`', 1, function() {
var actual = _.map([[2, 1, 3], [3, 2, 1]], _.sortBy); var actual = _.map([[2, 1, 3], [3, 2, 1]], _.sortBy);
deepEqual(actual, [[1, 2, 3], [1, 2, 3]]); deepEqual(actual, [[1, 2, 3], [1, 2, 3]]);
}); });
@@ -13148,7 +13329,7 @@
deepEqual(actual, [objects[2], objects[0], objects[3], objects[1], undefined]); deepEqual(actual, [objects[2], objects[0], objects[3], objects[1], undefined]);
}); });
test('`_.' + methodName + '` should work as an iteratee for `_.reduce`', 1, function() { test('`_.' + methodName + '` should work as an iteratee for methods like `_.reduce`', 1, function() {
var objects = [ var objects = [
{ 'a': 'x', '0': 3 }, { 'a': 'x', '0': 3 },
{ 'a': 'y', '0': 4 }, { 'a': 'y', '0': 4 },
@@ -13178,8 +13359,7 @@
objects = [{ 'x': 30 }, { 'x': 50 }]; objects = [{ 'x': 30 }, { 'x': 50 }];
test('`_.' + methodName + '` should return the correct insert index', 1, function() { test('`_.' + methodName + '` should return the correct insert index', 1, function() {
var array = [30, 50], var values = [30, 40, 50],
values = [30, 40, 50],
expected = isSortedIndex ? [0, 1, 1] : [1, 1, 2]; expected = isSortedIndex ? [0, 1, 1] : [1, 1, 2];
var actual = _.map(values, function(value) { var actual = _.map(values, function(value) {
@@ -13393,8 +13573,12 @@
QUnit.module('lodash.sum'); QUnit.module('lodash.sum');
(function() { (function() {
var array = [6, 4, 2],
object = { 'a': 2, 'b': 3, 'c': 1 },
objects = [{ 'a': 2 }, { 'a': 3 }, { 'a': 1 }];
test('should return the sum of an array of numbers', 1, function() { test('should return the sum of an array of numbers', 1, function() {
strictEqual(_.sum([6, 4, 2]), 12); strictEqual(_.sum(array), 12);
}); });
test('should return `0` when passing empty `array` values', 1, function() { test('should return `0` when passing empty `array` values', 1, function() {
@@ -13412,7 +13596,7 @@
}); });
test('should iterate an object', 1, function() { test('should iterate an object', 1, function() {
strictEqual(_.sum({ 'a': 1, 'b': 2, 'c': 3 }), 6); strictEqual(_.sum(object), 6);
}); });
test('should iterate a string', 2, function() { test('should iterate a string', 2, function() {
@@ -13420,6 +13604,50 @@
strictEqual(_.sum(value), 6); strictEqual(_.sum(value), 6);
}); });
}); });
test('should work with an `iteratee` argument', 1, function() {
var actual = _.sum(objects, function(object) {
return object.a;
});
deepEqual(actual, 6);
});
test('should provide the correct `iteratee` arguments', 2, function() {
var args;
_.sum(array, function() {
args || (args = slice.call(arguments));
});
deepEqual(args, [6, 0, array]);
args = null;
_.sum(object, function() {
args || (args = slice.call(arguments));
});
deepEqual(args, [2, 'a', object]);
});
test('should support the `thisArg` argument', 1, function() {
var actual = _.sum([6.8, 4.5, 2.6], function(num) {
return this.floor(num);
}, Math);
strictEqual(actual, 12);
});
test('should work with a "_.property" style `iteratee`', 2, function() {
var arrays = [[2], [3], [1]];
strictEqual(_.sum(arrays, 0), 6);
strictEqual(_.sum(objects, 'a'), 6);
});
test('should perform basic sum when used as an iteratee for methods like `_.map`', 1, function() {
var actual = _.map([array, object], _.sum);
deepEqual(actual, [12, 6]);
});
}()); }());
/*--------------------------------------------------------------------------*/ /*--------------------------------------------------------------------------*/
@@ -13915,7 +14143,7 @@
deepEqual(actual, expected); deepEqual(actual, expected);
}); });
test('should work as an iteratee for `_.map`', 1, function() { test('should work as an iteratee for methods like `_.map`', 1, function() {
var array = ['<%= a %>', '<%- b %>', '<% print(c) %>'], var array = ['<%= a %>', '<%- b %>', '<% print(c) %>'],
compiles = _.map(array, _.template), compiles = _.map(array, _.template),
data = { 'a': 'one', 'b': '`two`', 'c': 'three' }; data = { 'a': 'one', 'b': '`two`', 'c': 'three' };
@@ -13981,7 +14209,7 @@
strictEqual(_.trunc({ 'toString': _.constant(string) }, 5), 'hi...'); strictEqual(_.trunc({ 'toString': _.constant(string) }, 5), 'hi...');
}); });
test('should work as an iteratee for `_.map`', 1, function() { test('should work as an iteratee for methods like `_.map`', 1, function() {
var actual = _.map([string, string, string], _.trunc), var actual = _.map([string, string, string], _.trunc),
truncated = 'hi-diddly-ho there, neighbo...'; truncated = 'hi-diddly-ho there, neighbo...';
@@ -14816,7 +15044,7 @@
strictEqual(func(string, ''), string); strictEqual(func(string, ''), string);
}); });
test('`_.' + methodName + '` should work as an iteratee for `_.map`', 1, function() { test('`_.' + methodName + '` should work as an iteratee for methods like `_.map`', 1, function() {
var string = Object(whitespace + 'a b c' + whitespace), var string = Object(whitespace + 'a b c' + whitespace),
trimmed = (index == 2 ? whitespace : '') + 'a b c' + (index == 1 ? whitespace : ''), trimmed = (index == 2 ? whitespace : '') + 'a b c' + (index == 1 ? whitespace : ''),
actual = _.map([string, string, string], func); actual = _.map([string, string, string], func);
@@ -14986,7 +15214,7 @@
deepEqual(actual, arrays.slice(0, 3)); deepEqual(actual, arrays.slice(0, 3));
}); });
test('should perform an unsorted uniq when used as an iteratee for `_.map`', 1, function() { test('should perform an unsorted uniq when used as an iteratee for methods like `_.map`', 1, function() {
var array = [[2, 1, 2], [1, 2, 1]], var array = [[2, 1, 2], [1, 2, 1]],
actual = _.map(array, _.uniq); actual = _.map(array, _.uniq);
@@ -14994,29 +15222,67 @@
}); });
test('should work with large arrays', 1, function() { test('should work with large arrays', 1, function() {
var object = {}; var largeArray = [],
expected = [0, 'a', {}],
count = Math.ceil(LARGE_ARRAY_SIZE / expected.length);
var largeArray = _.times(LARGE_ARRAY_SIZE, function(index) { _.times(count, function() {
switch (index % 3) { push.apply(largeArray, expected);
case 0: return 0;
case 1: return 'a';
case 2: return object;
}
}); });
deepEqual(_.uniq(largeArray), [0, 'a', object]); deepEqual(_.uniq(largeArray), expected);
}); });
test('should work with large arrays of boolean, `NaN`, `null`, and `undefined` values', 1, function() { test('should work with large arrays of boolean, `NaN`, `null`, and `undefined` values', 1, function() {
var array = [], var largeArray = [],
expected = [true, false, NaN, null, undefined], expected = [true, false, NaN, null, undefined],
count = Math.ceil(LARGE_ARRAY_SIZE / expected.length); count = Math.ceil(LARGE_ARRAY_SIZE / expected.length);
_.times(count, function() { _.times(count, function() {
push.apply(array, expected); push.apply(largeArray, expected);
}); });
deepEqual(_.uniq(array), expected); deepEqual(_.uniq(largeArray), expected);
});
test('should work with large arrays of symbols', 1, function() {
if (Symbol) {
var largeArray = _.times(LARGE_ARRAY_SIZE, function() {
return Symbol();
});
deepEqual(_.uniq(largeArray), largeArray);
}
else {
skipTest();
}
});
test('should work with large arrays of well-known symbols', 1, function() {
if (Symbol) {
// See https://people.mozilla.org/~jorendorff/es6-draft.html#sec-well-known-symbols.
var expected = [
Symbol.hasInstance, Symbol.isConcatSpreadable, Symbol.iterator,
Symbol.match, Symbol.replace, Symbol.search, Symbol.species,
Symbol.split, Symbol.toPrimitive, Symbol.toStringTag, Symbol.unscopables
];
var largeArray = [],
count = Math.ceil(LARGE_ARRAY_SIZE / expected.length);
expected = _.map(expected, function(symbol) {
return symbol || {};
});
_.times(count, function() {
push.apply(largeArray, expected);
});
deepEqual(_.uniq(largeArray), expected);
}
else {
skipTest();
}
}); });
test('should distinguish between numbers and numeric strings', 1, function() { test('should distinguish between numbers and numeric strings', 1, function() {
@@ -15163,7 +15429,11 @@
var array = [1, 2, 3, 1, 2, 3]; var array = [1, 2, 3, 1, 2, 3];
deepEqual(_.without(array, 1, 2), [3, 3]); deepEqual(_.without(array, 1, 2), [3, 3]);
}); });
}());
test('should treat string values for `array` as empty', 1, function() {
deepEqual(_.without('abc', 'b'), []);
});
}(1, 2, 3));
/*--------------------------------------------------------------------------*/ /*--------------------------------------------------------------------------*/
@@ -15190,7 +15460,7 @@
deepEqual(actual, expected); deepEqual(actual, expected);
}); });
test('should work as an iteratee for `_.map`', 1, function() { test('should work as an iteratee for methods like `_.map`', 1, function() {
var strings = _.map(['a', 'b', 'c'], Object), var strings = _.map(['a', 'b', 'c'], Object),
actual = _.map(strings, _.words); actual = _.map(strings, _.words);
@@ -16124,7 +16394,7 @@
return '`_.' + methodName + '` should accept falsey primary arguments'; return '`_.' + methodName + '` should accept falsey primary arguments';
} }
deepEqual(_.difference(null, array), array, message('difference')); deepEqual(_.difference(null, array), [], message('difference'));
deepEqual(_.intersection(null, array), array, message('intersection')); deepEqual(_.intersection(null, array), array, message('intersection'));
deepEqual(_.union(null, array), array, message('union')); deepEqual(_.union(null, array), array, message('union'));
deepEqual(_.xor(null, array), array, message('xor')); deepEqual(_.xor(null, array), array, message('xor'));
@@ -16200,6 +16470,7 @@
'partial', 'partial',
'partialRight', 'partialRight',
'rearg', 'rearg',
'restParam',
'spread', 'spread',
'throttle' 'throttle'
]; ];
@@ -16320,7 +16591,7 @@
}); });
}); });
test('should throw an error for falsey arguments', 23, function() { test('should throw an error for falsey arguments', 24, function() {
_.each(rejectFalsey, function(methodName) { _.each(rejectFalsey, function(methodName) {
var expected = _.map(falsey, _.constant(true)), var expected = _.map(falsey, _.constant(true)),
func = _[methodName]; func = _[methodName];